import type { ActorReadParams, ActorUpdateParams } from '../types/actor';
import type { Doc } from '../types/doc';
import type { ListParams, ListResults } from '../types/list';
export declare const getDoc: <D>({ collection, key, ...rest }: {
    collection: string;
} & ActorReadParams & Pick<Doc<D>, "key">) => Promise<Doc<D> | undefined>;
export declare const getManyDocs: ({ docs, ...rest }: {
    docs: ({
        collection: string;
    } & Pick<Doc<any>, "key">)[];
} & ActorReadParams) => Promise<(Doc<any> | undefined)[]>;
export declare const setDoc: <D>({ collection, doc, ...rest }: {
    collection: string;
    doc: Doc<D>;
} & ActorUpdateParams) => Promise<Doc<D>>;
export declare const setManyDocs: ({ docs, ...rest }: {
    docs: {
        collection: string;
        doc: Doc<any>;
    }[];
} & ActorUpdateParams) => Promise<Doc<any>[]>;
export declare const deleteDoc: <D>({ collection, doc, ...rest }: {
    collection: string;
    doc: Doc<D>;
} & ActorUpdateParams) => Promise<void>;
export declare const deleteManyDocs: ({ docs, ...rest }: {
    docs: {
        collection: string;
        doc: Doc<any>;
    }[];
} & ActorUpdateParams) => Promise<void>;
export declare const deleteFilteredDocs: ({ collection, filter, ...rest }: {
    collection: string;
    filter: ListParams;
} & ActorUpdateParams) => Promise<void>;
export declare const listDocs: <D>({ collection, filter, ...rest }: {
    collection: string;
    filter: ListParams;
} & ActorReadParams) => Promise<ListResults<Doc<D>>>;
export declare const countDocs: ({ collection, filter, ...rest }: {
    collection: string;
    filter: ListParams;
} & ActorReadParams) => Promise<bigint>;
