import type * as PUPPET from 'wechaty-puppet';
import { FlashStore } from 'flash-store';
interface PayloadStoreOptions {
    token: string;
}
interface StoreRoomMemberPayload {
    [roomMemberContactId: string]: PUPPET.payloads.RoomMember;
}
declare class PayloadStore {
    private options;
    contact?: FlashStore<string, PUPPET.payloads.Contact>;
    roomMember?: FlashStore<string, StoreRoomMemberPayload>;
    room?: FlashStore<string, PUPPET.payloads.Room>;
    protected storeDir: string;
    protected accountId?: string;
    constructor(options: PayloadStoreOptions);
    /**
     * When starting the store, we need to know the accountId
     *  so that we can save the payloads under a specific account folder.
     */
    start(accountId: string): Promise<void>;
    stop(): Promise<void>;
    destroy(): Promise<void>;
}
export { PayloadStore };
//# sourceMappingURL=payload-store.d.ts.map