UNPKG

data-transport

Version:
45 lines 1.8 kB
import { listenerKey, originalListensMapKey, requestsMapKey, listensMapKey, senderKey, timeoutKey, prefixKey, produceKey, listenKey, serializerKey, logKey, verboseKey, beforeEmitKey, beforeEmitResolveKey } from './constant'; import type { EmitOptions, Request, Response, TransportOptions, BaseInteraction } from './interface'; export declare const getAction: (prefix: string, name: string) => string; /** * Create a base transport */ export declare abstract class Transport<T extends BaseInteraction = any> { private [listenerKey]; private [listenKey]; private [senderKey]; private [timeoutKey]; private [prefixKey]; private [serializerKey]; private [requestsMapKey]; private [listensMapKey]; private [originalListensMapKey]; private [logKey]?; private [verboseKey]; protected [beforeEmitKey]?: Promise<void>; protected [beforeEmitResolveKey]?: () => void; /** * dispose transport */ dispose: () => any; constructor({ listener, sender, timeout, verbose, prefix, listenKeys, checkListen, serializer, logger, }: TransportOptions); private [produceKey]; /** * Listen an event that transport data. * * @param name A transport action as listen message data action type * @param fn A transport listener */ listen<K extends keyof T['listen']>(name: K, fn: T['listen'][K]): () => void; id: string; /** * Emit an event that transport data. * * @param emitOptions A option for the transport data * @param request A request data * * @returns Return a response for the request. */ emit<K extends keyof T['emit']>(options: EmitOptions<K>, ...request: Request<T['emit'][K]>): Promise<Response<T['emit'][K]>>; } //# sourceMappingURL=transport.d.ts.map