import { type NativeRecordRepository } from "./codex-native-record-store.js"; import { type DesktopResponseValue } from "./desktop-response-value.js"; import type { DesktopInteraction, DesktopThreadIdentity } from "./desktop-types.js"; export interface DesktopResponseRecord extends DesktopResponseValue { schema: "agent-knock-knock/desktop-response"; version: 1; revision: number; id: string; created_at: string; updated_at: string; target: DesktopThreadIdentity; desktop_id: string; controller_session: string; response_id: string; interaction: DesktopInteraction; client_user_message_id?: string; operation_id?: string; baseline_item_status?: string; state: "reserved" | "uncertain" | "sent" | "confirmed" | "not_sent"; attempts: number; not_sent_history?: { attempt: number; observed_at: string; error_code?: string; baseline_item_status?: string; }[]; evidence?: "exact_async_answer_observed" | "exact_blocking_answer_observed" | "exact_approval_item_advanced"; error_code?: string; } export type DesktopResponseRepository = NativeRecordRepository; export declare function desktopResponseId(target: DesktopThreadIdentity, interactionId: string): string; export declare function assertDesktopResponseIdentity(desktopId: string, target: DesktopThreadIdentity): void; export declare function createDesktopResponseStore(storeDir: string, locks: { acquire(lockPath: string): () => void; }): DesktopResponseRepository;