import type { CredentialPayload, CredStoreLike } from './in-memory-cred-store.js'; interface KvHttp { request(method: string, url: string, data?: Uint8Array | Buffer, headers?: Record): Promise<{ status: number; body: Uint8Array | Buffer; }>; } interface PerSubCredStoreOptions { http?: KvHttp; } /** * Validate the decrypted credential blob before trusting it (carryover from the * closed #851). A blob must be an object whose `accounts` is an array of * well-formed AccountConfig. Extra fields (e.g. `outlookTokens`) pass through. */ export declare function isValidCredentialPayload(data: unknown): data is CredentialPayload; export declare class PerSubCredStore implements CredStoreLike { private cache; private backend; constructor(opts?: PerSubCredStoreOptions); private storeFor; save(sub: string, creds: CredentialPayload): Promise; load(sub: string): Promise; clear(sub: string): Promise; listSubs(): Promise; ready(): Promise; } export {}; //# sourceMappingURL=cred-store.d.ts.map