/** A single step in a user flow */ export interface FlowStep { name: string; description: string; file_paths: string[]; notes?: string; } /** A complete flow definition mapping a user workflow to code */ export interface FlowDefinition { id: string; title: string; description: string; entry_point: string; steps: FlowStep[]; files: string[]; tags: string[]; last_verified_sha: string; last_verified_at: string; } /** Top-level flows file schema */ export interface FlowsFile { version: '1'; last_generated: string; flows: FlowDefinition[]; } /** Result of flow validation */ export interface FlowValidationResult { errors: string[]; warnings: string[]; } /** Result of staleness check for a single flow */ export interface FlowStalenessResult { stale: boolean; changedFiles: string[]; } /** Parse and validate a flows JSON string */ export declare function parseFlows(json: string): FlowsFile; /** Validate flows against the filesystem — check file paths resolve, detect issues */ export declare function validateFlows(flows: FlowsFile, cwd: string): FlowValidationResult; /** Check if files in a flow have changed since last_verified_sha */ export declare function checkFlowStaleness(flow: FlowDefinition, currentSha: string, cwd: string): FlowStalenessResult; /** Load and parse flows from a file path. Returns null if file doesn't exist. */ export declare function loadFlows(flowsPath: string): FlowsFile | null; //# sourceMappingURL=flows.d.ts.map