/**
 * DEData 模块
 * 这是一个数据管理模块，负责数据的存储、加载、更新和状态管理
 * @module DEData
 */
import { DEDataOptions, IData, DERecord, IDataObject, Tag, ObjTag } from "./DETypes";
/**
 * 获取存储名称
 * @param database 数据库名称
 * @returns [数据库名称, 客户端标识]
 */
export declare const getStoreName: (database?: string) => string[];
/**
 * 获取存储实例
 * @param database 数据库名称
 * @returns 存储实例
 */
export declare const getStore: (database?: string) => import("idb-keyval").UseStore;
/**
 * 检查是否存在数据状态
 * @param tag 数据标签
 * @returns 是否存在数据状态
 */
export declare const hasDataState: (tag: Tag | ObjTag) => boolean;
/**
 * 清空数据库
 * @param database 数据库名称
 */
export declare const clearDatabase: (database?: string) => Promise<void>;
/**
 * 保存数据到数据库
 * @param tag 数据标签
 * @param data 数据对象
 * @param database 数据库名称
 */
export declare const saveToDB: (tag: Tag | ObjTag, data: IDataObject, database?: string) => Promise<void>;
export declare const updateData: (tag: Tag | ObjTag, data: DERecord, database?: string) => void;
export declare const getFromDB: (tag: Tag, database?: string) => Promise<IDataObject>;
export declare const delFromDB: (tag: Tag | ObjTag, database?: string) => Promise<void>;
export declare const clearTempDataState: (tag: Tag | ObjTag) => void;
export declare const clearDataState: (database?: string, tag?: Tag | ObjTag) => Promise<void>;
/**
 * 获取数据对象
 * @param tag 数据标签
 * @returns 数据对象
 */
export declare const getData: <T extends IData>(tag: Tag | ObjTag | string) => T | undefined;
/**
 * 获取或创建数据对象
 * @param tag 数据标签
 * @param options 配置选项
 * @param waitToReady 是否等待就绪
 * @returns 数据对象
 */
declare const fetchData: <T extends IData>(tag: Tag | ObjTag | string, options?: DEDataOptions, waitToReady?: boolean) => Promise<T>;
export default fetchData;
