/** * Event Manager * For state notification of asynchronous processing */ export declare class EventEmitter { private events; /** * Register event listener * @param event Event name * @param listener Callback function */ on(event: string, listener: (...args: any[]) => void): void; /** * Register event listener that will only be executed once * @param event Event name * @param listener Callback function */ once(event: string, listener: (...args: any[]) => void): void; /** * Remove event listener * @param event Event name * @param listener Listener to remove (if omitted, all listeners will be removed) */ off(event: string, listener?: (...args: any[]) => void): void; /** * Emit event * @param event Event name * @param args Arguments to pass to the event */ emit(event: string, ...args: any[]): void; /** * Clear all event listeners */ removeAllListeners(): void; }