API Reference

IWatchinterface

Reference-counted watch handle with observables and keyed listener registration.

Overview

Watch-factory runtime that provides keyed, reference-counted watch handles and zero-allocation listener dispatch hooks.

Declaration

export interface IWatch extends IDisposable {
  readonly changed: Observable<IStateChange>;
  readonly contextChange: Observable<IContextChanged>;
  readonly startChangeCycle: Observable<IChangeCycleIndex>;
  readonly endChangeCycle: Observable<IChangeCycleIndex>;
  readonly context: unknown;
  readonly index: unknown;
  readonly value: unknown;
  watch(): void;
  unwatch(): void;
  /** Zero-allocation alternative to subscribing to the four Observables individually. */
  addListeners(key: unknown, callbacks: IWatchCallbacks): void;
  removeListeners(key: unknown): void;
}

Import

import type { IWatch } from '@rs-x/state-manager';

Members

10 members in this interface.

readonly changed
propertyreadonly
readonly changed: Observable<IStateChange>

Type

Observable<IStateChange>

readonly context
propertyreadonly
readonly context: unknown

Type

unknown

readonly contextChange
propertyreadonly
readonly contextChange: Observable<IContextChanged>

Type

Observable<IContextChanged>

readonly endChangeCycle
propertyreadonly
readonly endChangeCycle: Observable<IChangeCycleIndex>

Type

Observable<IChangeCycleIndex>

readonly index
propertyreadonly
readonly index: unknown

Type

unknown

readonly startChangeCycle
propertyreadonly
readonly startChangeCycle: Observable<IChangeCycleIndex>

Type

Observable<IChangeCycleIndex>

readonly value
propertyreadonly
readonly value: unknown

Type

unknown

removeListeners
method
removeListeners(key: unknown): void

Parameters

NameTypeRequired
keyunknownrequired

Returns

void

unwatch
method
unwatch(): void

Parameters

No parameters.

Returns

void

watch
method
watch(): void

Parameters

No parameters.

Returns

void