import type { HookHandler } from './hooks.js'; import type { PermissionMode } from './types/sdk-types.js'; import type { ElicitationRequest, ElicitationResult } from './types/sdk-types.js'; import type { TraceSink } from './trace/index.js'; export interface AfkModeGateOptions { approvalTimeoutMs?: number; promptForApproval?: boolean; route?: (request: ElicitationRequest, options: { signal: AbortSignal; onActive?: () => void; sessionId?: string; }) => Promise; sessionId?: string; traceWriter?: TraceSink; } export declare function createAfkModeGate(getMode: () => PermissionMode, cwd?: string, getCwd?: () => string | undefined, opts?: AfkModeGateOptions): HookHandler;