UNPKG

react-birch-event-emitter

Version:
28 lines (27 loc) 812 B
declare type Disposer = () => void; declare type Listener = (...args: any[]) => any; export interface IDisposable { dispose(...args: any[]): any; } export declare class Disposable implements IDisposable { private disposer; constructor(disposer: Disposer); dispose(...args: any[]): void; } export declare class DisposablesComposite { private disposables; constructor(); add(disposable: IDisposable): IDisposable; dispose(...args: any[]): void; } export declare class EventEmitter<T> { private listeners; private onceListeners; constructor(); emit(event: T, ...args: any[]): void; on(event: T, cb: Listener): Disposable; once(event: T, cb: Listener): Disposable; emitWithReturn<K>(event: T, ...args: any[]): K[]; clear(event?: T): void; } export {};