type SerializableObject = object; /** * Manages the communication between the client and the Zoiper5 RPC API server. */ export declare class RPCManager { private _lastScriptObjectId; private _scriptObjectIdMap; private _globalCallbacksMap; private _scriptObjectListStack; private _jrpc; /** * Creates and configures a {@link RPCManager} instance that needs to be initialized via {@link initialize()}. */ constructor(globalCallbacksMap: Record); /** * Registers the provided callback list via the {@link RPCManager:constructor()}, * and starts managing the client-server communication. * @param token An API token obtained in advance. * @returns An instance of the Zoiper5 API root object - an instance of class `Phone`. */ initialize(token: string): Promise; /** * Send a message from the server to the manager for proccessing. * @param message The message that gets sent to the manager. */ processMessage(message: string): Promise; /** * Overridable method that the manager uses for sending messages to the server. * @virtual * @param message The message that gets sent to the server. */ sendMessage(message: string): void; private _assignScriptObjectId; private _createGetter; private _createSetter; private _createMethod; private _findScriptObject; private _callAPIMethod; private _handleAPICallback; private _describeScriptObject; private _serialize; private _deserialize; } export {};