/** * Agentic QE v3 - Base Domain Interface * Template for all domain implementations */ import { DomainName, DomainEvent } from '../shared/types'; import { DomainPlugin, DomainHealth, EventBus, MemoryBackend } from '../kernel/interfaces'; /** * Abstract base class for domain plugins */ export declare abstract class BaseDomainPlugin implements DomainPlugin { protected readonly eventBus: EventBus; protected readonly memory: MemoryBackend; protected _initialized: boolean; protected _health: DomainHealth; constructor(eventBus: EventBus, memory: MemoryBackend); abstract get name(): DomainName; abstract get version(): string; abstract get dependencies(): DomainName[]; isReady(): boolean; getHealth(): DomainHealth; initialize(): Promise; dispose(): Promise; handleEvent(event: DomainEvent): Promise; abstract getAPI(): T; protected onInitialize(): Promise; protected onDispose(): Promise; protected onEvent(_event: DomainEvent): Promise; protected subscribeToEvents(): void; protected publishEvent(type: string, payload: T): Promise; protected updateHealth(updates: Partial): void; } //# sourceMappingURL=domain-interface.d.ts.map