import { PureObject } from '../../types';
import { Ref } from 'vue';

export declare const checkStoreNamespace: (name: string) => boolean;
interface CreateBusinessStore {
    <T extends PureObject<any>>(name: string, initStore: T, reactive?: false): T;
    <T extends PureObject<any>>(name: string, initStore: T, reactive: true): Ref<PureObject<any>>;
}
/**
 * 创建一份store，默认返回普通数据，第三个参数设置为true，则会返回响应式数据用于vue
 * @param name 模块名称
 */
export declare const createBusinessStore: CreateBusinessStore;
/**
 * 获得store数据，会返回响应式数据
 * @param name 模块名称
 */
export declare const useBusinessStore: <T extends PureObject>(name: string) => Ref<T>;
/**
 * 获得store数据，不可以将该数据用于vue：ref
 * @param name 模块名称
 */
export declare const getBusinessStore: <T extends PureObject>(name: string) => T | undefined;
/**
 * 直接设置store数据变动，通过`getBusinessStore`可以拿到最新数据，vue响应异步处理
 * @param name 模块名称
 * @param value 需要变更的数据对象
 */
export declare const setBusinessStore: <T extends PureObject>(name: string, value: Partial<T>) => void;
export {};
