export type SlotCallback = (data?: T) => void; export interface Sig { onConnect(onConnect: (connNo: number) => void): void; onDisconnect(onDisconnect: (connNo: number) => void): void; connNo(): number; connect(callback: SlotCallback, object?: any): void; disconnect(callback: SlotCallback, object?: any): void; disconnectAll(): void; freeze(): void; unfreeze(): void; } export declare class Signal implements Sig { private _slots; private _emit; private _onConnect?; private _onDisconnect?; constructor(); onConnect(onConnect: (connNo: number) => void): void; onDisconnect(onDisconnect: (connNo: number) => void): void; connNo(): number; connect(callback: (data?: T) => void): void; connect(callback: (data?: T) => void, object?: Object): void; disconnect(callback: (data?: T) => void, object?: Object): void; disconnectAll(): void; freeze(): void; unfreeze(): void; emit(this: Signal): any[]; emit(this: Signal, data?: T): any[]; }