/** * Schema for Claude Code's settings.json file. * * Covers the fields effect-claudecode understands strictly. Nested * sub-schemas are named `Schema.Class` instances so they produce clean * identifiers in error messages and TypeScript hover info. * * @since 0.1.0 */ import * as Schema from 'effect/Schema'; export declare const PermissionMode: Schema.Literals; declare const WorkingDirectoriesConfig_base: Schema.Class>; readonly denied: Schema.optional>; }>, {}>; export declare class WorkingDirectoriesConfig extends WorkingDirectoriesConfig_base { } declare const PermissionsConfig_base: Schema.Class>; readonly allow: Schema.optional>; readonly ask: Schema.optional>; readonly deny: Schema.optional>; readonly additionalDirectories: Schema.optional>; readonly disableBypassPermissionsMode: Schema.optional>; readonly skipDangerousModePermissionPrompt: Schema.optional; /** @deprecated Use `defaultMode`. */ readonly mode: Schema.optional>; /** @deprecated Use `additionalDirectories`. */ readonly workingDirectories: Schema.optional; }>, {}>; export declare class PermissionsConfig extends PermissionsConfig_base { } declare const SandboxFilesystemConfig_base: Schema.Class>; readonly denyWrite: Schema.optional>; readonly denyRead: Schema.optional>; readonly allowRead: Schema.optional>; readonly allowManagedReadPathsOnly: Schema.optional; }>, {}>; export declare class SandboxFilesystemConfig extends SandboxFilesystemConfig_base { } declare const SandboxNetworkConfig_base: Schema.Class>; readonly allowAllUnixSockets: Schema.optional; readonly allowLocalBinding: Schema.optional; readonly allowMachLookup: Schema.optional>; readonly allowedDomains: Schema.optional>; readonly deniedDomains: Schema.optional>; readonly allowManagedDomainsOnly: Schema.optional; readonly httpProxyPort: Schema.optional; readonly socksProxyPort: Schema.optional; }>, {}>; export declare class SandboxNetworkConfig extends SandboxNetworkConfig_base { } declare const SandboxConfig_base: Schema.Class; readonly failIfUnavailable: Schema.optional; readonly autoAllowBashIfSandboxed: Schema.optional; readonly excludedCommands: Schema.optional>; readonly allowUnsandboxedCommands: Schema.optional; readonly filesystem: Schema.optional; readonly network: Schema.optional; readonly enableWeakerNestedSandbox: Schema.optional; readonly enableWeakerNetworkIsolation: Schema.optional; readonly bwrapPath: Schema.optional; readonly socatPath: Schema.optional; }>, {}>; export declare class SandboxConfig extends SandboxConfig_base { } declare const StatusLineConfig_base: Schema.Class; readonly command: Schema.optional; readonly padding: Schema.optional; readonly refreshInterval: Schema.optional; }>, {}>; export declare class StatusLineConfig extends StatusLineConfig_base { } /** * A single MCP server entry inside settings.json. * * The stricter schema lives in `src/Mcp/`; settings keeps this loose so * the Settings namespace does not depend on the MCP module. * * @category Schemas * @since 0.1.0 */ export declare const McpServerEntry: Schema.$Record; export type McpServerEntry = Schema.Schema.Type; declare const DirectorySourceSpec_base: Schema.Class; readonly path: Schema.String; }>, {}>; export declare class DirectorySourceSpec extends DirectorySourceSpec_base { } declare const GithubSourceSpec_base: Schema.Class; readonly repo: Schema.String; readonly ref: Schema.optional; readonly path: Schema.optional; readonly sha: Schema.optional; readonly skipLfs: Schema.optional; }>, {}>; export declare class GithubSourceSpec extends GithubSourceSpec_base { } declare const GitSourceSpec_base: Schema.Class; readonly url: Schema.String; readonly ref: Schema.optional; readonly path: Schema.optional; readonly sha: Schema.optional; readonly skipLfs: Schema.optional; }>, {}>; export declare class GitSourceSpec extends GitSourceSpec_base { } declare const HostPatternSourceSpec_base: Schema.Class; readonly pattern: Schema.String; }>, {}>; export declare class HostPatternSourceSpec extends HostPatternSourceSpec_base { } declare const SettingsSourceSpec_base: Schema.Class; readonly name: Schema.optional; readonly plugins: Schema.optional>>; }>, {}>; export declare class SettingsSourceSpec extends SettingsSourceSpec_base { } export declare const MarketplaceSourceSpec: Schema.Union; declare const DirectoryMarketplace_base: Schema.Class; }>, {}>; export declare class DirectoryMarketplace extends DirectoryMarketplace_base { } declare const GithubMarketplace_base: Schema.Class; }>, {}>; export declare class GithubMarketplace extends GithubMarketplace_base { } declare const GenericMarketplace_base: Schema.Class; readonly autoUpdate: Schema.optional; }>, {}>; export declare class GenericMarketplace extends GenericMarketplace_base { } export declare const Marketplace: Schema.Union; declare const ApiKeyHelperConfig_base: Schema.Class; readonly timeout: Schema.optional; }>, {}>; /** @deprecated `apiKeyHelper` is a string script path in current Claude Code. */ export declare class ApiKeyHelperConfig extends ApiKeyHelperConfig_base { } declare const AttributionConfig_base: Schema.Class; readonly pr: Schema.optional; }>, {}>; export declare class AttributionConfig extends AttributionConfig_base { } export declare const ApiKeyHelper: Schema.Union; declare const McpServerPolicyMatcher_base: Schema.Class; readonly serverCommand: Schema.optional; readonly serverName: Schema.optional; }>, {}>; export declare class McpServerPolicyMatcher extends McpServerPolicyMatcher_base { } declare const PluginOptionsConfig_base: Schema.Class>; }>, {}>; export declare class PluginOptionsConfig extends PluginOptionsConfig_base { } declare const WorktreeConfig_base: Schema.Class; readonly symlinkDirectories: Schema.optional>; readonly sparsePaths: Schema.optional>; readonly bgIsolation: Schema.optional; }>, {}>; export declare class WorktreeConfig extends WorktreeConfig_base { } declare const PolicyHelperConfig_base: Schema.Class; readonly refreshIntervalMs: Schema.optional; }>, {}>; export declare class PolicyHelperConfig extends PolicyHelperConfig_base { } export declare const SettingsRaw: Schema.$Record; export type SettingsRaw = Schema.Schema.Type; declare const SettingsFile_base: Schema.Class>; readonly $schema: Schema.optional; readonly hooks: Schema.optional>>; readonly disableAllHooks: Schema.optional; readonly allowManagedHooksOnly: Schema.optional; readonly permissions: Schema.optional; readonly sandbox: Schema.optional; readonly model: Schema.optional; readonly advisorModel: Schema.optional; readonly availableModels: Schema.optional>; readonly enforceAvailableModels: Schema.optional; readonly fallbackModel: Schema.optional>; readonly effortLevel: Schema.optional>; /** @deprecated Use `effortLevel`. */ readonly effort: Schema.optional>; readonly alwaysThinkingEnabled: Schema.optional; readonly fastMode: Schema.optional; readonly fastModePerSessionOptIn: Schema.optional; readonly ultracode: Schema.optional; readonly outputStyle: Schema.optional; readonly statusLine: Schema.optional; readonly language: Schema.optional; readonly defaultShell: Schema.optional; readonly editorMode: Schema.optional; readonly viewMode: Schema.optional; readonly env: Schema.optional>; readonly apiKeyHelper: Schema.optional>; readonly otelHeadersHelper: Schema.optional; readonly awsAuthRefresh: Schema.optional; readonly awsCredentialExport: Schema.optional; readonly gcpAuthRefresh: Schema.optional; readonly forceLoginMethod: Schema.optional; readonly forceLoginOrgUUID: Schema.optional; readonly policyHelper: Schema.optional; readonly allowedHttpHookUrls: Schema.optional>; readonly httpHookAllowedEnvVars: Schema.optional>; readonly enabledPlugins: Schema.optional>; readonly pluginConfigs: Schema.optional>; readonly extraKnownMarketplaces: Schema.optional>>; readonly blockedMarketplaces: Schema.optional>; readonly strictKnownMarketplaces: Schema.optional; readonly strictPluginOnlyCustomization: Schema.optional; readonly pluginSuggestionMarketplaces: Schema.optional>; readonly pluginTrustMessage: Schema.optional; readonly allowedMcpServers: Schema.optional>; readonly deniedMcpServers: Schema.optional>; readonly allowManagedMcpServersOnly: Schema.optional; readonly allowAllClaudeAiMcps: Schema.optional; readonly enableAllProjectMcpServers: Schema.optional; readonly enabledMcpjsonServers: Schema.optional>; readonly disabledMcpjsonServers: Schema.optional>; readonly attribution: Schema.optional; /** @deprecated Use `attribution`. */ readonly includeCoAuthoredBy: Schema.optional; readonly cleanupPeriodDays: Schema.optional; readonly plansDirectory: Schema.optional; readonly autoMemoryEnabled: Schema.optional; readonly autoMemoryDirectory: Schema.optional; readonly skillOverrides: Schema.optional>; readonly disableSkillShellExecution: Schema.optional; readonly disableBundledSkills: Schema.optional; readonly maxSkillDescriptionChars: Schema.optional; readonly skillListingBudgetFraction: Schema.optional; readonly agent: Schema.optional; readonly worktree: Schema.optional; readonly voice: Schema.optional; readonly voiceEnabled: Schema.optional; readonly spinnerTipsEnabled: Schema.optional; readonly spinnerTipsOverride: Schema.optional>; readonly spinnerVerbs: Schema.optional>; readonly wheelScrollAccelerationEnabled: Schema.optional; readonly awaySummaryEnabled: Schema.optional; readonly autoScrollEnabled: Schema.optional; readonly prefersReducedMotion: Schema.optional; readonly terminalProgressBarEnabled: Schema.optional; readonly syntaxHighlightingDisabled: Schema.optional; readonly showThinkingSummaries: Schema.optional; readonly showTurnDuration: Schema.optional; readonly companyAnnouncements: Schema.optional>; /** @deprecated MCP servers live in `.mcp.json` and `~/.claude.json`. */ readonly mcpServers: Schema.optional>>; /** @deprecated Not a current settings.json key. */ readonly theme: Schema.optional; }>, {}>; /** * A Claude Code settings.json file. All fields are optional. Current * high-impact keys are modeled explicitly, while `raw` exposes the decoded * source object so newer keys are still available to callers before this * library grows first-class fields for them. * * @category Schemas * @since 0.1.0 */ export declare class SettingsFile extends SettingsFile_base { } export {}; //# sourceMappingURL=Schema.d.ts.map