UNPKG

@akala/core

Version:
20 lines (19 loc) 1.46 kB
import type { AllEventKeys } from "../events/event-bus.js"; import { EventEmitter, type AllEvents } from "../events/event-emitter.js"; import type { EventListener, EventOptions } from "../events/shared.js"; import { IsomorphicBuffer } from "../helpers.js"; import { SocketAdapterAkalaEventMap, SocketAdapter } from "./shared.js"; import { type Subscription } from "../teardown-manager.js"; import { Socket } from 'net'; export declare class TcpSocketAdapter<T extends string | IsomorphicBuffer = string | IsomorphicBuffer> extends EventEmitter<SocketAdapterAkalaEventMap<T>> implements SocketAdapter<T> { private readonly socket; constructor(socket: Socket); pipe(socket: SocketAdapter): void; get open(): boolean; close(): Promise<void>; send(data: string | IsomorphicBuffer): Promise<void>; private readonly messageListeners; off<const TEvent extends AllEventKeys<SocketAdapterAkalaEventMap<T>>>(event: TEvent, handler: EventListener<AllEvents<SocketAdapterAkalaEventMap<T>>[TEvent]>): boolean; on<const TEvent extends AllEventKeys<SocketAdapterAkalaEventMap<T>>>(event: TEvent, handler: EventListener<AllEvents<SocketAdapterAkalaEventMap<T>>[TEvent]>, options?: EventOptions<AllEvents<SocketAdapterAkalaEventMap<T>>[TEvent]>): Subscription; once<const TEvent extends AllEventKeys<SocketAdapterAkalaEventMap<T>>>(event: TEvent, handler: EventListener<AllEvents<SocketAdapterAkalaEventMap<T>>[TEvent]>): Subscription; }