import type { AgentDependencies } from './AgentDependencies'; import type { AgentModulesInput } from './AgentModules'; import type { InboundTransport } from '../transport/InboundTransport'; import type { OutboundTransport } from '../transport/OutboundTransport'; import type { InitConfig } from '../types'; import { DependencyManager } from '../plugins'; import { BaseAgent } from './BaseAgent'; import { EventEmitter } from './EventEmitter'; import { FeatureRegistry } from './FeatureRegistry'; interface AgentOptions { config: InitConfig; modules?: AgentModules; dependencies: AgentDependencies; } export declare class Agent extends BaseAgent { private messageSubscription?; constructor(options: AgentOptions, dependencyManager?: DependencyManager); registerInboundTransport(inboundTransport: InboundTransport): void; unregisterInboundTransport(inboundTransport: InboundTransport): Promise; get inboundTransports(): InboundTransport[]; registerOutboundTransport(outboundTransport: OutboundTransport): void; unregisterOutboundTransport(outboundTransport: OutboundTransport): Promise; get outboundTransports(): OutboundTransport[]; get events(): EventEmitter; /** * Agent's feature registry */ get features(): FeatureRegistry; initialize(): Promise; shutdown(): Promise; protected getMediationConnection(mediatorInvitationUrl: string): Promise; } export {};