/**
* Phase 2C (0.12.12+) — `.brewing/patterns/` directory.
*
* Patterns are short markdown recipes hand-written by the project
* team that describe project-specific conventions: "how cursor
* pagination works in this codebase", "the standard handler shape
* with auth + RLS", "how to write a tier-1 test against
* mockSupabase". They live at `.brewing/patterns/*.md` and are NOT
* auto-generated by slowcook — the team owns them.
*
* Selective loading: brew injects only the *index* (title + one-line
* summary per pattern) into its cached prefix. The agent decides
* which patterns are relevant to the current target and reads the
* full markdown via the existing `read_file` tool. Index-only is
* cheap (~50 tokens per pattern); the full body only enters context
* when the agent asks for it.
*
* Pattern file convention:
*
* #
*
* >
*
* ## When to use
* ...
* ## Example
* ```ts
* ...
* ```
*
* The `# Title` and `> Summary` lines are the parts the index needs;
* everything else is for the agent's eyes once it `read_file`s the
* pattern.
*/
export declare const PATTERNS_DIR = ".brewing/patterns";
export interface PatternEntry {
slug: string;
title: string;
summary: string | null;
path: string;
}
/**
* Walk `.brewing/patterns/*.md` and return one entry per file.
* Returns an empty array when the directory doesn't exist (the
* common case on greenfield projects).
*/
export declare function gatherPatternIndex(repoRoot: string): PatternEntry[];
/**
* Render the pattern index as a markdown block for the brew system /
* cached prefix. Returns an empty string when no patterns exist —
* caller can drop the block entirely.
*/
export declare function renderPatternIndexBlock(patterns: PatternEntry[]): string;
//# sourceMappingURL=patterns.d.ts.map