/**
 * Design.md persistence — loading, saving, and reading design system data.
 *
 * The Design.md file is a structured markdown document containing design
 * tokens (colors, typography, spacing, components) extracted from the
 * codebase and approved by the user via HIL. It serves as the single
 * source of truth for all generation and refinement stages.
 */
/** Structured representation of the design system data. */
export interface DesignSystemData {
    /** Raw markdown content of Design.md. */
    raw: string;
    /** Absolute path to the Design.md file. */
    path: string;
}
/**
 * Load an existing Design.md from the given path.
 * Used when the user provides `--design-system=<path>`.
 */
export declare function loadDesignSystem(designSystemPath: string): Promise<DesignSystemData>;
/**
 * Persist the design system builder's output as Design.md in the project root.
 *
 * The builder stage produces a visible session where the agent constructs
 * the Design.md content interactively with the user. We read the transcript
 * and extract the final Design.md content that the agent wrote.
 *
 * For simplicity, the agent in the builder stage is instructed to write
 * Design.md directly to disk. This function reads it back to populate
 * the DesignSystemData for downstream stages.
 */
export declare function persistDesignSystem(root: string): Promise<DesignSystemData>;
/**
 * Read the existing .impeccable.md brand context file, if present.
 * Returns empty string if the file does not exist.
 */
export declare function readImpeccableMd(root: string): Promise<string>;
/**
 * Derive a URL-safe slug from the user's prompt for directory naming.
 */
export declare function slugifyPrompt(prompt: string): string;
/**
 * Ensure the scratch directory exists for intermediate workflow outputs.
 */
export declare function ensureScratchDir(root: string): Promise<string>;
//# sourceMappingURL=design-system.d.ts.map