import { GroupCorkFunction, GroupSendFunction } from "./Utils"; import { PackageBufferOptions } from "./PackageBuffer"; import { BatchOption, ComplexTypesOption } from "./Options"; export interface DynamicGroupTransportOptions extends PackageBufferOptions { freeBufferMaxPoolSize: number; } export default class DynamicGroupTransport { options: DynamicGroupTransportOptions; send: GroupSendFunction; cork: GroupCorkFunction; isConnected: (group: string) => boolean; constructor(connector?: { send?: GroupSendFunction; cork?: GroupCorkFunction; isConnected?: (group: string) => boolean; }, options?: DynamicGroupTransportOptions); static readonly DEFAULT_OPTIONS: Readonly; static buildOptions(options: Partial): DynamicGroupTransportOptions; private _freeBuffers; private _usedBuffers; private getGroupBuffer; private _freeGroupBuffer; private _multiSend; private _directSendMultiTransmit; transmit(group: string, receiver: string, data?: any, options?: BatchOption & ComplexTypesOption): void; flushBuffers(): boolean; flushBuffer(group: string): boolean; }