import { CID } from 'multiformats/cid'; import { DiagnosticsLogger, IpfsApi, ServiceLogger } from '@dustil/common'; import { StreamID } from '@dustil/streamid'; import { Repository } from './state-management/repository.js'; import { PubsubMessage, QueryMessage, ResponseMessage, UpdateMessage } from './pubsub/pubsub-message.js'; import { Subscription } from 'rxjs'; import { MessageBus } from './pubsub/message-bus.js'; import lru from 'lru_map'; import { TaskQueue } from './pubsub/task-queue.js'; import type { ShutdownSignal } from './shutdown-signal.js'; export declare class Dispatcher { readonly _ipfs: IpfsApi; private readonly topic; readonly repository: Repository; private readonly _logger; private readonly _pubsubLogger; private readonly _shutdownSignal; readonly tasks: TaskQueue; private readonly _ipfsTimeout; readonly messageBus: MessageBus; readonly dagNodeCache: lru.LRUMap; private readonly pubsubCache; constructor(_ipfs: IpfsApi, topic: string, repository: Repository, _logger: DiagnosticsLogger, _pubsubLogger: ServiceLogger, _shutdownSignal: ShutdownSignal, maxQueriesPerSecond: number, tasks?: TaskQueue, _ipfsTimeout?: number); storeCommit(data: any, streamId?: StreamID): Promise; retrieveCommit(cid: CID | string, streamId: StreamID): Promise; retrieveFromIPFS(cid: CID | string, path?: string): Promise; cidExistsInLocalIPFSStore(cid: CID | string): Promise; private _getFromIpfs; _restrictCommitSize(cid: CID | string): Promise; publishTip(streamId: StreamID, tip: CID, model?: StreamID): Subscription; handleMessage(message: PubsubMessage): Promise; _handleTip(tip: CID, streamId: StreamID, model?: StreamID): Promise; _handleUpdateMessage(message: UpdateMessage): Promise; _handleQueryMessage(message: QueryMessage): Promise; _handleResponseMessage(message: ResponseMessage): Promise; close(): Promise; private publish; } //# sourceMappingURL=dispatcher.d.ts.map