export interface Disposable {
    dispose(): Promise<any>;
}
export interface EventNotifier {
    on(event: string, listener: Function): any;
    removeListener(event: string, listener: Function): any;
    removeAllListeners(event?: string): any;
}
export declare function eventPromise<T>(emitter: EventNotifier, resolveEvent: string, rejectEvent: string): Promise<T>;
export declare function delay(ms: number): Promise<any>;
