import { PropertyChangedEvents } from './propertyChangedEvents'; import { Disposable } from './disposable'; export declare class EventManager extends Disposable { dispose(): void; private _handlers; call(type: K, args?: EventType[K]): void; addHandler(type: K, listener: (this: Sender, ev: EventType[K]) => any): void; removeHandler(type: K, listener: (this: Sender, ev: EventType[K]) => any): void; on(type: K, listener: (this: Sender, ev: EventType[K]) => any): () => void; } export declare class EventPropertyManager extends EventManager { call(type: K, _args?: PropertyChangedEvents[K]): void; }