import { PerfectWS, WSClientOptions, WSClientResult, WSServerResult } from '../PerfectWS.js'; import { NetworkEventListener } from '../utils/NetworkEventListener.js'; import { WSLike, WebSocketForce } from '../utils/WebSocketForce.js'; import { TransformAll } from './TransformAll.js'; import { TransformInstruction } from './transform/CustomTransformers.js'; type PerfectWSAdvancedConfig = { maxTransformDepth: number; /** Maximum serialized binary value in bytes. */ maxMessageSize: number; /** Enables live object RPC. Both peers must opt in. */ fullTrustedRPC: boolean; /** Maximum live PureRPC handles per request channel. */ maxPureRPCHandles: number; /** Maximum in-flight or unacknowledged callback/PureRPC operations per request channel. */ maxRPCOperations: number; /** Treats otherwise-unhandled class instances as PureRPC values. */ autoWrapUnknownClasses: boolean; /** Maximum process-global symbol keys accepted during this router's lifetime. */ maxGlobalSymbols: number; }; export declare class PerfectWSAdvanced extends PerfectWS { transformers: TransformInstruction[]; private _callbacks; private _globalSymbols; protected _getTransforms(events: NetworkEventListener): TransformAll; protected serializeRequestData(data: any, events: NetworkEventListener): any; protected prepareRequestData(data: any, events: NetworkEventListener): { data: any; hasLiveResources: boolean; commit: () => void; rollback: () => void; }; protected deserializeRequestData(data: any, events: NetworkEventListener): any; protected shouldKeepResponseAlive(events: NetworkEventListener): boolean; protected releaseRequestResources(events: NetworkEventListener): void; protected static _newInstance(): PerfectWSAdvanced; static client(config?: WSClientOptions): WSClientResult>; static client(server: WSType | WebSocketForce, config?: WSClientOptions): WSClientResult>; static server(): WSServerResult>; } export {};