import type { ApiInterfaceEvents } from '../types'; export declare class Events { #private; protected emit(type: ApiInterfaceEvents, ...args: unknown[]): boolean; /** * @description Attach an eventemitter handler to listen to a specific event * * @param type The type of event to listen to. Available events are `connected`, `disconnected`, `ready` and `error` * @param handler The callback to be called when the event fires. Depending on the event type, it could fire with additional arguments. * * @example *
* * ```javascript * api.on('connected', (): void => { * console.log('API has been connected to the endpoint'); * }); * * api.on('disconnected', (): void => { * console.log('API has been disconnected from the endpoint'); * }); * ``` */ on(type: ApiInterfaceEvents, handler: (...args: any[]) => any): this; /** * @description Remove the given eventemitter handler * * @param type The type of event the callback was attached to. Available events are `connected`, `disconnected`, `ready` and `error` * @param handler The callback to unregister. * * @example *
* * ```javascript * const handler = (): void => { * console.log('Connected !); * }; * * // Start listening * api.on('connected', handler); * * // Stop listening * api.off('connected', handler); * ``` */ off(type: ApiInterfaceEvents, handler: (...args: any[]) => any): this; /** * @description Attach an one-time eventemitter handler to listen to a specific event * * @param type The type of event to listen to. Available events are `connected`, `disconnected`, `ready` and `error` * @param handler The callback to be called when the event fires. Depending on the event type, it could fire with additional arguments. * * @example *
* * ```javascript * api.once('connected', (): void => { * console.log('API has been connected to the endpoint'); * }); * * api.once('disconnected', (): void => { * console.log('API has been disconnected from the endpoint'); * }); * ``` */ once(type: ApiInterfaceEvents, handler: (...args: any[]) => any): this; }