UNPKG

@reix/rxjs-bits

Version:

Rxjs integration for the @reix/bits package.

33 lines (30 loc) 837 B
import { BitFieldEmitter } from '@reix/bits'; import { Subject } from 'rxjs'; /** * Interface for data required to emit events. */ interface EmitHandlerArguments<T> { value: T; code?: number; maxBitHint?: number; } /** * Interface for the data emitted by the on$ Subject. */ interface OnHanlerArguments<T> { value: T; code: number; } /** * Generates an $on & an $emit Subject and a dispose function * from a BitFIeldEmitter instance. * * @param emitter The emitter to generate subjects from. * @param code The event code to generate subjects for. */ declare const toSubjects: <T>(emitter: BitFieldEmitter<T>, code: number) => { on$: Subject<OnHanlerArguments<T>>; emit$: Subject<EmitHandlerArguments<T>>; dispose: () => void; }; export { EmitHandlerArguments, OnHanlerArguments, toSubjects };