/** What kind of SDK call the flush worker should make to upload a record. */ export type PendingKind = 'feedback'; export interface PendingRecord { /** Human-readable command name, e.g. "report-blocker". Used in the filename. */ command: string; /** Selects the SDK call used to upload this record on flush. */ kind: PendingKind; /** The exact payload to send (e.g. an LLMRequestLogFeedback object). */ payload: unknown; /** Optional stored-client id to resolve the api key/base url at flush time. */ clientId?: string; /** ISO timestamp of when the record was saved locally. */ savedAt: string; } export declare function pendingDir(): string; /** * Write a record to the pending store and return its absolute path. The filename * combines the command, a filesystem-safe timestamp, and random bytes so concurrent * saves never collide. */ export declare function savePendingRecord(record: PendingRecord): Promise; /** Absolute paths of every saved record, sorted oldest-first by filename. */ export declare function listPendingFiles(): Promise; export declare function countPending(): Promise; export declare function readPendingRecord(filePath: string): Promise; export declare function removePendingRecord(filePath: string): Promise; /** Set the marker that tells the next command a previous flush failed. */ export declare function markFlushFailed(): Promise; export declare function clearFlushFailed(): Promise; export declare function flushFailed(): Promise; //# sourceMappingURL=pending-store.d.ts.map