export interface SessionSettingsOpts { sessionId: string; relayScript: string; statusLineDir?: string; appendSystemPrompt?: string; } interface HookCommand { type: "command"; command: string; } interface HookMatcher { hooks: HookCommand[]; } export interface ClaudeSettings { hooks: Record<"SessionStart" | "UserPromptSubmit" | "Stop" | "StopFailure" | "PreToolUse" | "PostToolUse" | "Notification", HookMatcher[]>; statusLine?: HookCommand; appendSystemPrompt?: string; } export declare function buildSessionSettings(opts: SessionSettingsOpts): ClaudeSettings; export declare function sessionSettingsPath(dir: string, sessionId: string): string; export declare function writeSessionSettings(dir: string, sessionId: string, opts: SessionSettingsOpts): string; export declare function cleanupSessionSettings(dir: string, sessionId: string): void; /** * Idempotently mark a project directory trusted and complete non-destructive global * onboarding in the real ~/.claude.json. * * Recent Claude Code versions gate the interactive TUI behind blocking first-run * Host startup must not accept Claude Code's Bypass Permissions consent on the user's * behalf. The Docker entrypoint handles that container-only consent explicitly inside * the dedicated Claude volume; this host path only handles ordinary onboarding and * per-project trust. See upstream issue #66. */ export declare function seedTrust(claudeJsonFile: string, projectDir: string): void; export {}; //# sourceMappingURL=claude-settings.d.ts.map