import type { DependencyManager } from '../../plugins'; import type { ConnectionRecord } from '../connections'; import type { MediationRecord } from './index'; import type { GetRoutingOptions } from './services/RoutingService'; import { AgentConfig } from '../../agent/AgentConfig'; import { Dispatcher } from '../../agent/Dispatcher'; import { EventEmitter } from '../../agent/EventEmitter'; import { MessageSender } from '../../agent/MessageSender'; import { ConnectionService } from '../connections/services'; import { DidsModule } from '../dids'; import { DiscoverFeaturesModule } from '../discover-features'; import { MediationRepository } from './repository'; import { MediationRecipientService } from './services/MediationRecipientService'; import { RoutingService } from './services/RoutingService'; export declare class RecipientModule { private agentConfig; private mediationRecipientService; private connectionService; private dids; private messageSender; private eventEmitter; private logger; private discoverFeaturesModule; private mediationRepository; private routingService; constructor(dispatcher: Dispatcher, agentConfig: AgentConfig, mediationRecipientService: MediationRecipientService, connectionService: ConnectionService, dids: DidsModule, messageSender: MessageSender, eventEmitter: EventEmitter, discoverFeaturesModule: DiscoverFeaturesModule, mediationRepository: MediationRepository, routingService: RoutingService); initialize(): Promise; private sendMessage; private openMediationWebSocket; private openWebSocketAndPickUp; initiateMessagePickup(mediator: MediationRecord): Promise; private sendStatusRequest; private getPickupStrategyForMediator; discoverMediation(): Promise; pickupMessages(mediatorConnection: ConnectionRecord): Promise; setDefaultMediator(mediatorRecord: MediationRecord): Promise; requestMediation(connection: ConnectionRecord): Promise; notifyKeylistUpdate(connection: ConnectionRecord, verkey: string): Promise; findByConnectionId(connectionId: string): Promise; getMediators(): Promise; findDefaultMediator(): Promise; findDefaultMediatorConnection(): Promise; requestAndAwaitGrant(connection: ConnectionRecord, timeoutMs?: number): Promise; /** * Requests mediation for a given connection and sets that as default mediator. * * @param connection connection record which will be used for mediation * @returns mediation record */ provision(connection: ConnectionRecord): Promise; getRouting(options: GetRoutingOptions): Promise; private registerHandlers; /** * Registers the dependencies of the mediator recipient module on the dependency manager. */ static register(dependencyManager: DependencyManager): void; }