import type { LTAgent, LTAgentStats } from '../../types/agent';
interface ListAgentsFilters {
    status?: string;
    knowledge_domain?: string;
    limit?: number;
    offset?: number;
}
export declare function listAgents(filters?: ListAgentsFilters): Promise<{
    agents: LTAgent[];
    total: number;
}>;
export declare function getAgent(id: string): Promise<LTAgent | null>;
export declare function createAgent(data: Partial<LTAgent> & {
    id: string;
}): Promise<LTAgent>;
export declare function updateAgent(id: string, data: Partial<LTAgent>): Promise<LTAgent | null>;
export declare function deleteAgent(id: string): Promise<boolean>;
/**
 * Seed an agent at startup (insert-if-absent).
 * DB is the source of truth — if the row already exists, log drift warnings
 * but do not overwrite.
 */
export declare function seedAgent(data: Partial<LTAgent> & {
    id: string;
}): Promise<boolean>;
/**
 * Aggregate stats for an agent: knowledge entry count, pending escalation count,
 * and last workflow execution time.
 */
export declare function getAgentStats(agent: LTAgent): Promise<LTAgentStats>;
export {};
