export type CorpusContentType = 'pattern' | 'playbook' | 'field-note'; export interface CorpusSearchInput { query: string; type?: CorpusContentType | 'all'; limit?: number; } export interface CorpusMatch { id: string; path: string; type: CorpusContentType; title: string; snippet: string; relevance: number; } export interface CorpusSearchResult { matches: CorpusMatch[]; query: string; searched: number; corpus_path: string; } export interface AddPatternInput { id: string; title: string; content: string; category?: string; status?: string; severity?: string; source?: string; owner?: string; tags?: string[]; } export interface AddFieldNoteInput { title: string; content: string; source?: string; owner?: string; status?: string; tags?: string[]; } export interface AddPlaybookInput { title: string; content: string; owner?: string; status?: string; tags?: string[]; } export interface CorpusWriteResult { id: string; path: string; absolute_path: string; title: string; } /** * Search the decibel-corpus for patterns, playbooks, and field notes */ export declare function corpusSearch(input: CorpusSearchInput): Promise; /** * Get the corpus path for display/debugging */ export declare function getCorpusPath(): string; /** * Check if corpus exists at the configured path */ export declare function corpusExists(): Promise; /** * Slugify text for use in filenames. * Lowercases, replaces non-alphanumeric with dashes, trims dashes, max 80 chars. */ export declare function slugify(text: string): string; /** * Add a pattern to decibel-corpus. * Writes to primitives/patterns/{category?}/{id}-{slug}.md */ export declare function addPattern(input: AddPatternInput): Promise; /** * Add a field note to decibel-corpus. * Writes to field-notes/YYYY-MM-DD-{slug}.md */ export declare function addFieldNote(input: AddFieldNoteInput): Promise; /** * Add a playbook to decibel-corpus. * Writes to playbooks/{slug}.md */ export declare function addPlaybook(input: AddPlaybookInput): Promise; //# sourceMappingURL=corpus.d.ts.map