import {GecutLogger} from '@gecut/logger'; import type {SubscribeOptions, Subscriber} from '../type.js'; export declare abstract class Signal { protected readonly logger: GecutLogger; protected readonly subscribers: Map, Required>; constructor(name: string, loggerPrefix?: string); protected __$value: T | undefined; protected __$hasDispatched: boolean; protected __$debounceConfig: false | 'AnimationFrame' | 'IdleCallback' | number; unsubscribe(callback: Subscriber): void; subscribe( callback: Subscriber, options?: SubscribeOptions, ): { unsubscribe: () => void; }; protected __$notify(newValue: T): void; private __$debouncedDispatch; private __$dispatch; protected __$clear(): void; protected __$untilNewNotify(): Promise; } //# sourceMappingURL=_signal.d.ts.map