import { type Model } from "@bastani/pi-ai"; import type { Settings } from "./settings-schema.ts"; import type { ModelRoutingSettings, TransportSetting } from "./settings-types.ts"; import { type CacheWarmingMode } from "./settings-types.ts"; type CompactionModel = Pick, "provider" | "id">; interface SettingsManagerBasicAccessors { getCacheWarmingMode(): CacheWarmingMode; setCacheWarmingMode(mode: CacheWarmingMode): void; getLastChangelogVersion(): string | undefined; setLastChangelogVersion(version: string): void; /** Replace the global top-level `storage` selection; other settings keep their values. */ setStorage(storage: Settings["storage"]): void; getFirstRunOnboardingStartedVersion(): string | undefined; setFirstRunOnboardingStartedVersion(version: string): void; getOnboardedVersion(): string | undefined; setOnboardedVersion(version: string): void; getDefaultProvider(): string | undefined; getDefaultModel(): string | undefined; getRouterModel(): string; getModelRouting(): ModelRoutingSettings; getCompactionModel(): string; setCompactionModel(model: string, scope?: "global" | "project"): void; setRouterModel(model: string, scope?: "global" | "project"): void; setDefaultProvider(provider: string): void; setDefaultModel(modelId: string): void; setDefaultModelAndProvider(provider: string, modelId: string): void; getSteeringMode(): "all" | "one-at-a-time"; setSteeringMode(mode: "all" | "one-at-a-time"): void; getFollowUpMode(): "all" | "one-at-a-time"; setFollowUpMode(mode: "all" | "one-at-a-time"): void; getThemeSetting(): string | undefined; getTheme(): string | undefined; setTheme(theme: string): void; getEnableAnalytics(): boolean | undefined; setEnableAnalytics(enabled: boolean): void; getTrackingId(): string | undefined; getOrCreateDeviceId(): string; getShowCacheMissNotices(): boolean; setShowCacheMissNotices(enabled: boolean): void; getDefaultThinkingLevel(): "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max" | undefined; setDefaultThinkingLevel(level: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max"): void; getModelThinkingLevel(provider: string, modelId: string): "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max" | undefined; getAllModelThinkingLevels(): Record; setModelThinkingLevel(provider: string, modelId: string, level: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max"): void; removeModelThinkingLevel(provider: string, modelId: string): void; getDefaultTools(): string[] | undefined; getCodemodeMode(): "on" | "only" | undefined; setCodemodeMode(mode: "on" | "only" | undefined): void; getCodemodeInlineBudget(): number; getFallbackModels(): string[]; getTransport(): TransportSetting; setTransport(transport: TransportSetting): void; getCompactionEnabled(): boolean; setCompactionEnabled(enabled: boolean): void; getCompactionReserveTokens(model?: CompactionModel): number; getCompactionCompressionRatio(): number; getCompactionPreserveRecent(model?: CompactionModel): number; getCompactionQuery(): string | undefined; getCompactionSettings(model?: CompactionModel): { enabled: boolean; reserveTokens: number; compression_ratio: number; preserve_recent: number; query?: string; }; getBranchSummarySettings(): { reserveTokens: number; skipPrompt: boolean; }; getBranchSummarySkipPrompt(): boolean; getSessionSummarySettings(): { enabled: boolean; }; getRetryEnabled(): boolean; setRetryEnabled(enabled: boolean): void; getRetrySettings(): { enabled: boolean; maxRetries: number; baseDelayMs: number; maxAgentDelayMs: number; maxRetryDelayMs?: number; }; getHttpProxy(): string | undefined; setHttpProxy(proxy: string | undefined): void; getHttpIdleTimeoutMs(): number; setHttpIdleTimeoutMs(timeoutMs: number): void; getWebSocketConnectTimeoutMs(): number | undefined; getStreamDeadlineMs(): number | undefined; getProviderRetrySettings(): { timeoutMs?: number; maxRetries?: number; maxRetryDelayMs: number; }; } declare module "./settings-manager-core.ts" { interface SettingsManager extends SettingsManagerBasicAccessors { } } export {}; //# sourceMappingURL=settings-manager-basic-accessors.d.ts.map