export declare type StateUpdater = (val: T, bitmask: number) => void; export declare type BitmaskFactory = (a: T, b: T) => number; export interface ContextValueEmitter { register: (updater: StateUpdater) => void; unregister: (updater: StateUpdater) => void; val: (value?: T) => T; } export declare function createEmitter(initialValue: T, bitmaskFactory: BitmaskFactory): ContextValueEmitter; export declare const noopEmitter: ContextValueEmitter;