UNPKG

@labelbox/message-bus

Version:

Distributed messaging in Typescript

34 lines (33 loc) 1.35 kB
import { Handler } from './Handler'; import { Channel } from './Channel'; export declare type PendingRequest = { resolve: (data?: any) => void; reject: (e: Error) => void; }; export declare type PendingRequests = { [slotName: string]: { [requestId: string]: PendingRequest; }; }; export declare class Transport { private _channel; private _localHandlers; private _localHandlerRegistrations; private _remoteHandlers; private _remoteHandlerRegistrationCallbacks; private _remoteHandlerDeletionCallbacks; private _pendingRequests; private _channelReady; constructor(_channel: Channel); private _requestReceived; private _responseReceived; private _errorReceived; private _registerRemoteHandler; private _unregisterRemoteHandler; private _unregisterAllRemoteHandlers; private _rejectAllPendingRequests; addRemoteHandlerRegistrationCallback(slotName: string, addLocalHandler: (p: string, h: Handler<any, any>) => void): void; addRemoteHandlerUnregistrationCallback(slotName: string, removeHandler: (p: string, h: Handler<any, any>) => void): void; registerHandler(slotName: string, param: string, handler: Handler<any, any>): void; unregisterHandler(slotName: string, param: string, handler: Handler<any, any>): void; }