export interface Settings { turnNotify: boolean; turnNotifyThresholdS: number; notifyCompaction: boolean; showToolCalls: boolean; statusNewqButton: boolean; autoResume: boolean; streamDeltas: boolean; bgContinuation: boolean; eventLog: boolean; diskMonitor: boolean; disableUserContext: boolean; serverUpdateDisable: boolean; hooksLegacy: boolean; managerRotateSteps: number; waitingSweepMs: number; injectWaitMaxS: number; threadMaxDepth: number; taskArtifactTemplates: string[]; taskDispatchMaxConcurrent: number | null; uiCorsOrigins: string[]; adminChannel: string | null; feishuAdminChannel: string | null; } export type SettingKey = keyof Settings; export type SettingSource = 'file' | 'env' | 'default'; export interface SettingSnapshotEntry { key: K; value: Settings[K]; source: SettingSource; } export type SettingType = 'boolean' | 'number' | 'number|null' | 'string[]' | 'string|null'; type EnvVar = string | readonly string[]; export interface SettingSpecEntry { envVar: EnvVar; type: SettingType; default: T; legacyParse: (raw: string) => T; } export declare const SETTINGS_SPEC: { turnNotify: { envVar: string; type: "boolean"; default: true; legacyParse: (raw: string) => boolean; }; turnNotifyThresholdS: { envVar: string; type: "number"; default: number; legacyParse: (raw: string) => number; }; notifyCompaction: { envVar: string; type: "boolean"; default: false; legacyParse: (raw: string) => raw is "1"; }; showToolCalls: { envVar: string; type: "boolean"; default: false; legacyParse: (raw: string) => boolean; }; statusNewqButton: { envVar: string; type: "boolean"; default: false; legacyParse: (raw: string) => boolean; }; autoResume: { envVar: string; type: "boolean"; default: true; legacyParse: (raw: string) => boolean; }; streamDeltas: { envVar: string; type: "boolean"; default: true; legacyParse: (raw: string) => boolean; }; bgContinuation: { envVar: string; type: "boolean"; default: true; legacyParse: (raw: string) => boolean; }; eventLog: { envVar: string; type: "boolean"; default: true; legacyParse: (raw: string) => boolean; }; diskMonitor: { envVar: string; type: "boolean"; default: true; legacyParse: (raw: string) => boolean; }; disableUserContext: { envVar: string; type: "boolean"; default: false; legacyParse: (raw: string) => raw is "1"; }; serverUpdateDisable: { envVar: string; type: "boolean"; default: false; legacyParse: (raw: string) => raw is "1"; }; hooksLegacy: { envVar: string; type: "boolean"; default: false; legacyParse: (raw: string) => raw is "1"; }; managerRotateSteps: { envVar: string; type: "number"; default: number; legacyParse: (raw: string) => number; }; waitingSweepMs: { envVar: string; type: "number"; default: number; legacyParse: (raw: string) => number; }; injectWaitMaxS: { envVar: string; type: "number"; default: number; legacyParse: (raw: string) => number; }; threadMaxDepth: { envVar: string; type: "number"; default: number; legacyParse: (raw: string) => number; }; taskArtifactTemplates: { envVar: string; type: "string[]"; default: string[]; legacyParse: (raw: string) => string[]; }; taskDispatchMaxConcurrent: { envVar: string; type: "number|null"; default: any; legacyParse: (raw: string) => number; }; uiCorsOrigins: { envVar: string; type: "string[]"; default: any[]; legacyParse: (raw: string) => string[]; }; adminChannel: { envVar: string[]; type: "string|null"; default: any; legacyParse: (raw: string) => string; }; feishuAdminChannel: { envVar: string; type: "string|null"; default: any; legacyParse: (raw: string) => string; }; }; export {};