export interface SdDbQuery {
    equals?: {
        [key: string]: any;
    };
    notEquals?: {
        [key: string]: any;
    };
}
export interface SdDbRes<T = any> {
    data: T;
}
export interface SdRegisterOption {
    cacheable?: boolean;
    functionUrl?: string;
    project?: string;
    env?: string;
}
export interface SdDbRegister<T = any> {
    get: (id: string) => Promise<SdDbRes<T>>;
    set: (id: string, data: T) => Promise<void>;
    remove: (id: string) => Promise<void>;
    find: (query?: SdDbQuery) => Promise<SdDbRes<(T & {
        documentId: string;
    })[]>>;
    copy: (source: {
        functionUrl?: string;
        project?: string;
        env: string;
        fromId: string;
    }, toId: string) => Promise<void>;
}
