/** * events — typed event primitives. The basis of input/focus/scheduler. * No dependencies. No I/O. */ export interface Disposable { dispose(): void; } export interface EventEmitter { on(listener: (payload: T) => void): Disposable; once(listener: (payload: T) => void): Disposable; emit(payload: T): void; clear(): void; readonly size: number; } export declare function createEmitter(): EventEmitter; export interface Signal { get(): T; set(value: T): void; update(fn: (prev: T) => T): void; subscribe(listener: (value: T) => void): Disposable; } export declare function signal(initial: T): Signal; export declare function combine(...disposables: Disposable[]): Disposable; //# sourceMappingURL=index.d.ts.map