/**
 * Compliance checking - ported from lib/validation/compliance-check.sh
 *
 * Validates subagent outputs against protocol requirements, checks manifest
 * entries, research links, return format, and generates compliance metrics.
 *
 * @task T4524
 * @epic T4454
 */
export type ManifestIntegrity = 'valid' | 'partial' | 'invalid' | 'missing';
export type Severity = 'low' | 'medium' | 'high' | 'critical';
export interface ComplianceMetrics {
    timestamp: string;
    category: string;
    source: string;
    sourceId: string;
    period: string;
    compliance: {
        compliancePassRate: number;
        ruleAdherenceScore: number;
        violationCount: number;
        violationSeverity: Severity;
        manifestIntegrity: ManifestIntegrity;
    };
    tags: string[];
    context: {
        taskId: string;
        researchLinked: boolean;
        returnFormatValid: boolean;
    };
}
export interface ManifestEntry {
    id?: string;
    research_id?: string;
    title?: string;
    status?: string;
    key_findings?: string[];
    findings_summary?: string;
    linked_tasks?: string[];
    task_ids?: string[];
    agent_type?: string;
    [key: string]: unknown;
}
export interface TokenMetrics {
    inputTokens: number;
    outputTokens: number;
    totalTokens: number;
    maxTokens: number;
    percentage: number;
    status: string;
}
export interface TokenEfficiency {
    tokensUsed: number;
    maxTokens: number;
    tasksCompleted: number;
    contextUtilization: number;
    tokenUtilizationRate: number;
    contextEfficiency: number;
    inputTokens: number;
    outputTokens: number;
}
export interface OrchestrationOverhead {
    orchestratorTokens: number;
    totalSubagentTokens: number;
    numSubagents: number;
    overheadRatio: number;
    tokensPerSubagent: number;
}
/**
 * Verify a manifest entry for a task has valid required fields.
 * @task T4524
 */
export declare function checkManifestEntry(entry: ManifestEntry | null): ManifestIntegrity;
/**
 * Check if a response matches the expected return format.
 * @task T4524
 */
export declare function checkReturnFormat(response: string): boolean;
/**
 * Calculate comprehensive compliance score for a subagent.
 * @task T4524
 */
export declare function scoreSubagentCompliance(taskId: string, agentId: string, manifestEntry: ManifestEntry | null, researchLinked: boolean, response: string): ComplianceMetrics;
/**
 * Calculate token efficiency metrics.
 * @task T4524
 */
export declare function calculateTokenEfficiency(tokensUsed: number, maxTokens?: number, tasksCompleted?: number, inputTokens?: number, outputTokens?: number): TokenEfficiency;
/**
 * Calculate orchestration overhead metrics.
 * @task T4524
 */
export declare function calculateOrchestrationOverhead(orchestratorTokens: number, totalSubagentTokens: number, numSubagents?: number): OrchestrationOverhead;
//# sourceMappingURL=compliance.d.ts.map