export declare const OSC_NAMESPACE = ".osc"; export declare const PLAN_STAGES: readonly ["active", "backlog", "blocked", "done"]; export type PlanStage = typeof PLAN_STAGES[number]; export declare const PLAN_CREATION_STAGES: readonly ["active", "backlog", "blocked"]; export type PlanCreationStage = typeof PLAN_CREATION_STAGES[number]; export declare const REQUIRED_PLAN_SECTIONS: readonly ["Status", "Context", "Goal", "Constraints / Out of scope", "Files to touch", "Acceptance criteria", "Verification steps", "Open questions"]; export interface MissionState { path: string; defined: boolean; reason?: string; } export interface PlanSummary { slug: string; path: string; stage: PlanStage; } export interface ScaffoldState { root: string; namespace: '.osc'; mission: MissionState; plans: Record; } export interface CreatedScaffoldFile { root: string; path: string; relativePath: string; slug: string; } export interface CreatedPlanSkeleton extends CreatedScaffoldFile { stage: PlanCreationStage; templateName?: string; } export interface PlanTemplateSummary { name: string; path: string; } export interface CreatedPlanAmendment extends CreatedScaffoldFile { parentPath: string; amendmentNumber: number; changelogStamped: boolean; } export interface ClosedPlanResult { root: string; slug: string; fromStage: PlanStage | 'root'; movedFiles: string[]; changelogStamped: boolean; alreadyDone: boolean; } export interface MovedPlanResult { root: string; slug: string; fromStage: PlanStage | 'root'; toStage: PlanCreationStage; movedFiles: string[]; alreadyInStage: boolean; } export interface ExecutionGroup { name: string; rationale: string; tasks: string; dependsOnPrevious: boolean; } export interface ExecutionStrategy { groups: ExecutionGroup[]; dependencies: string[]; delegationNotes: string[]; } export interface ParsedPlan { path: string; slug: string; status: string; goal: string; sections: Map; filesToTouch: string[]; acceptanceCriteria: string[]; verificationSteps: string[]; openQuestions: string[]; executionStrategy?: ExecutionStrategy; } export declare function inspectMission(root: string): MissionState; export declare function inspectScaffold(root?: string): ScaffoldState; export declare function findScaffoldRoot(start?: string): string | null; export declare function listPlanTemplates(start?: string): PlanTemplateSummary[]; export declare function createPlanSkeleton(slug: string, stage: PlanCreationStage, start?: string, options?: { templateName?: string; }): CreatedPlanSkeleton; export declare function createEvidenceNoteSkeleton(slug: string, start?: string, date?: Date): CreatedScaffoldFile; export declare function movePlan(slug: string, toStage: PlanCreationStage, start?: string): MovedPlanResult; export declare function createPlanAmendment(slug: string, start?: string, message?: string, date?: Date): CreatedPlanAmendment; export declare function closePlan(slug: string, start?: string, message?: string, date?: Date): ClosedPlanResult; export interface ParsedMarkdownSection { heading: string; body: string; line: number; } export declare function normalizeSectionHeading(raw: string): string; export declare function parseMarkdownSections(markdown: string): ParsedMarkdownSection[]; export declare function splitSections(markdown: string): Map; export interface ChecklistItem { text: string; checked: boolean; } export declare function parseChecklist(text: string): ChecklistItem[]; export declare function parsePlanFile(path: string): ParsedPlan; export declare function planToJson(plan: ParsedPlan): unknown;