import type { EscalationConfig } from './escalation.js'; import type { PluginsConfig } from './plugins.js'; export interface SlopeConfig { scorecardDir: string; scorecardPattern: string; minSprint: number; commonIssuesPath: string; sessionsPath: string; registry: 'file' | 'api'; claimsPath: string; roadmapPath: string; flowsPath: string; inspirationsPath: string; skillsPath: string; skillRoots?: string[]; visionPath: string; repoProfilePath: string; transcriptsPath: string; metaphor: string; /** Section headings that must appear in a sprint review before the * review_md gate closes (case-insensitive substring match). */ reviewRequiredSections?: string[]; registryApiUrl?: string; currentSprint?: number; store?: string; store_path?: string; guidance?: { disabled?: string[]; indexPaths?: string[]; hazardRecency?: number; commitInterval?: number; pushInterval?: number; scopeDrift?: boolean; subagentExploreTurns?: number; subagentPlanTurns?: number; subagentAllowModels?: string[]; pushCommitThreshold?: number; handoffsDir?: string; allowMainCommitPatterns?: string[]; protectedBranches?: string[]; mapStaleWarnAt?: number; mapStaleBlockAt?: number; requireSprintForImplementationWrites?: 'ask' | 'deny' | 'off'; prCommitWarnAt?: number; prFileWarnAt?: number; }; orchestration?: { escalation?: EscalationConfig; }; plugins?: PluginsConfig; dashboard?: { port?: number; autoOpen?: boolean; refreshInterval?: number; }; team?: { players?: Record; defaultPlayer?: string; }; projectId?: string; projectName?: string; postgres?: { connectionString: string; projectId?: string; }; embedding?: { endpoint: string; model: string; dimensions: number; apiKey?: string; }; testing?: { setup_steps?: string[]; teardown_steps?: string[]; testPlanPath?: string; sessionLogDir?: string; }; detectedStack?: { language?: string; frameworks?: string[]; packageManager?: string; runtime?: string; }; slopeVersion?: string; /** Default workflow for sprint execution (e.g., 'sprint-standard', 'sprint-lightweight') */ defaultWorkflow?: string; } export declare function loadConfig(cwd?: string): SlopeConfig; export declare function createConfig(cwd?: string): string; /** Write a complete SlopeConfig to .slope/config.json. Expects a full config object (use loadConfig() to read-modify-write). */ export declare function saveConfig(config: SlopeConfig, cwd?: string): string; export declare function resolveConfigPath(config: SlopeConfig, relativePath: string, cwd?: string): string; //# sourceMappingURL=config.d.ts.map