RenderState

Unpublished development API. This package is under development and is not available as a published release.

Application-owned immutable state with JSON Pointer reads and writes, atomic batches, and change subscriptions.

import type { RenderState } from '@threadplane/content/render-state';

Declaration

export interface RenderState  {
  readonly dispose: () => void;
  readonly get: (path: string) => RenderStateValue;
  readonly getSnapshot: () => RenderStateSnapshot;
  readonly lastChange: () => RenderStateChange | undefined;
  readonly set: (path: string, value: unknown) => void;
  readonly subscribe: (notify: () => void) => () => void;
  readonly update: (updates: Readonly<Record<string, unknown>>) => void;
}

Members

dispose

readonly dispose: () => void;

get

readonly get: (path: string) => RenderStateValue;

getSnapshot

readonly getSnapshot: () => RenderStateSnapshot;

lastChange

readonly lastChange: () => RenderStateChange | undefined;

set

readonly set: (path: string, value: unknown) => void;

subscribe

readonly subscribe: (notify: () => void) => () => void;

update

readonly update: (updates: Readonly<Record<string, unknown>>) => void;