/** Per-agent searchable profile distilled from its AGENT.md. */
export interface AgentCapabilityProfile {
    id: string;
    name: string;
    role: string;
    title: string;
    /** Trigger phrases from whenToUse (when this agent should be used). */
    whenToUse: string[];
    /** Specialization keywords from focus. */
    focus: string[];
    /** Meaningful tags (import-noise removed). */
    tags: string[];
    /** Weighted term → weight map used for scoring. */
    terms: Map<string, number>;
    sourcePath: string;
}
export interface ScoredAgent {
    id: string;
    name: string;
    role: string;
    score: number;
    /** Query terms that matched, for transparency. */
    matched: string[];
}
export declare class CapabilityIndex {
    private profiles;
    constructor(roots?: string[]);
    get size(): number;
    getProfile(id: string): AgentCapabilityProfile | null;
    private build;
    private buildProfile;
    /** Rank agents by relevance to a free-text query. Returns top `limit`
     *  with score > 0, highest first. Deterministic tie-break by id. */
    search(query: string, limit?: number): ScoredAgent[];
}
