import type { EventBus, SpecialEvents } from "../events/event-bus.js"; import type { IEvent } from "../events/shared.js"; import { IsomorphicBuffer } from "../helpers.js"; export interface SocketAdapterEventMap { message: T; open: Event; error: Event; close: CloseEvent; } export type SocketAdapterAkalaEventMap = { [key in keyof SocketAdapterEventMap]: IEvent<[SocketAdapterEventMap[key]], void>; }; export interface SocketAdapter extends EventBus & Partial> { readonly open: boolean; close(): Promise; send(data: T): Promise; pipe(socket: SocketAdapter): void; } export * from './shared.long-message-protocol-transformer.js'; export * from './shared.transformer.js'; export * from './shared.socket-protocol-adapter.js'; export * from './shared.socket-transformer-with-connection-retry.js';