export declare const TASK_INTENT_KINDS: readonly ["explain", "implement", "review", "impact", "migrate", "document", "debug-flow", "pr-review-risk", "test-generation", "refactor-module", "dead-code", "security-review", "performance-review"]; export type TaskIntentKind = (typeof TASK_INTENT_KINDS)[number]; export type TaskIntentContextKind = 'explain' | 'implement' | 'review' | 'impact'; export type TaskIntentConfidence = 'low' | 'medium' | 'high'; /** * Each rule must define exactly one matcher field so signal semantics stay unambiguous. */ export interface TaskIntentSignalRule { id: string; score: number; any_phrases?: string[]; any_keywords?: string[]; keyword_groups?: string[][]; } export interface TaskIntentDefinition { kind: TaskIntentKind; label: string; description: string; default_context_kind: TaskIntentContextKind; priority: number; rules: TaskIntentSignalRule[]; } export interface TaskIntentScore { kind: TaskIntentKind; score: number; } export interface TaskIntentClassification { version: 1; prompt: string; normalized_prompt: string; kind: TaskIntentKind; default_context_kind: TaskIntentContextKind; confidence: TaskIntentConfidence; matched_rules: string[]; matched_terms: string[]; scores: TaskIntentScore[]; } export declare const TASK_INTENT_DEFINITIONS: TaskIntentDefinition[];