export type TypedHandlerFunc = (value: T) => boolean | void; export type TUnsubscribeFunc = () => void; export interface ISwsEvent { dispatch(event: T): void; on(handler: TypedHandlerFunc): TUnsubscribeFunc; off(handler: TypedHandlerFunc): void; } export declare class SwsEvent implements ISwsEvent { readonly name: string; private readonly _handlers; private _pDelete?; private _inTrigger; private _paused; private _savedCalls?; constructor(name: string); dispatch(eventData: T): void; private callHandlers; on(handler: TypedHandlerFunc): () => void; private indexOf; off(handler: TypedHandlerFunc): void; private internalOff; private addPendingDelete; private finalizePendingDeletes; freeze(): this; unFreeze(): this; }