export declare class AgentSpecificationParser {
    private parsedSpecs;
    private lastParseTimes;
    private readonly cacheTimeout;
    constructor();
    parseAgentSpecification(filePath: string): Promise<ParsedAgentSpecification>;
    parseAllSpecifications(directoryPath: string): Promise<Map<string, ParsedAgentSpecification>>;
    findMatchingAgents(criteria: AgentSearchCriteria): ParsedAgentSpecification[];
    getBestAgentForTask(taskDescription: string, domain?: string): AgentRecommendation | null;
    validateSpecification(spec: ParsedAgentSpecification): ValidationResult;
    private parseMarkdownContent;
    private extractMarkdownSections;
    private parseMetadataSection;
    private parseCapabilitiesSection;
    private parseFocusAreasSection;
    private parseConstraintsSection;
    private extractTriggerPatterns;
    private extractDelegationHooks;
    private parseExamplesSection;
    private extractSystemPrompt;
    private parseWorkflowConfiguration;
    private calculateAgentConfidence;
    private getMatchedPatterns;
    private generateRecommendationReasoning;
    private calculateCompletenessScore;
    private parseMetadataValue;
    private parseCommaSeparatedList;
    private deduplicateAndClean;
    private extractKeywordsFromText;
    private inferCategory;
    private inferComplexity;
    clearCache(): void;
    getCacheStats(): {
        cachedSpecs: number;
        oldestCache: Date | null;
        newestCache: Date | null;
    };
}
interface ParsedAgentSpecification {
    id: string;
    filePath: string;
    capabilities: string[];
    focusAreas: string[];
    constraints: string[];
    triggerPatterns: string[];
    delegationHooks: DelegationHooks;
    systemPrompt: string;
    examples: AgentExample[];
    workflowConfig: WorkflowConfiguration;
    metadata: {
        name?: string;
        version?: string;
        description?: string;
        category: string;
        complexity: string;
        author?: string;
        tags?: string[];
        dependencies?: string[];
        lastParsed: Date;
        fileSize: number;
        sectionCount: number;
    };
    rawContent: string;
}
interface DelegationHooks {
    enforcementLevel: 'strict' | 'moderate' | 'advisory';
    bypassProtection: boolean;
    validationRequired: boolean;
    artifactPreservation: boolean;
    autoClassification: boolean;
}
interface AgentExample {
    input: string;
    output: string;
    description?: string;
}
interface WorkflowConfiguration {
    maxSteps: number;
    timeoutMs: number;
    maxRetries: number;
    backoffMs: number;
}
interface AgentSearchCriteria {
    category?: string;
    complexity?: string;
    requiredCapabilities?: string[];
    domain?: string;
    keywords?: string[];
}
interface AgentRecommendation {
    agent: ParsedAgentSpecification;
    confidence: number;
    matchedPatterns: string[];
    reasoning: string[];
}
interface ValidationResult {
    isValid: boolean;
    errors: string[];
    warnings: string[];
    completeness: number;
}
export {};
//# sourceMappingURL=agent-spec-parser.d.ts.map