/** * Agentic QE v3 - Agent Entity * Core agent entity used across all domains */ import { AggregateRoot, EntityProps } from './base-entity'; import { AgentStatus, AgentType, DomainName } from '../types'; export interface AgentProps extends EntityProps { name: string; domain: DomainName; type: AgentType; status: AgentStatus; capabilities: string[]; config?: Record; metrics?: AgentMetrics; } export interface AgentMetrics { tasksCompleted: number; tasksSucceeded: number; tasksFailed: number; averageExecutionTime: number; lastActiveAt?: Date; } export declare class Agent extends AggregateRoot { get name(): string; get domain(): DomainName; get type(): AgentType; get status(): AgentStatus; get capabilities(): string[]; get config(): Record; get metrics(): AgentMetrics; get isAvailable(): boolean; get isRunning(): boolean; start(): void; complete(): void; fail(error: Error): void; reset(): void; hasCapability(capability: string): boolean; static create(props: Omit): Agent; } //# sourceMappingURL=agent.d.ts.map