Aborted when the store is disposed. Created on first read; already aborted when read after
disposal. Tie work that should live exactly as long as the store to it.
Fine-grained subscription: listen to a specific reducer.property path.
Accepts a dotted path string (e.g., "data.123.title").
Fires when that path (or its ancestors) actually changes.
signature
connect(spec, handler, options?): Unsubscribe
Fine-grained subscription: listen to a specific reducer.property path.
Accepts a dotted path string (e.g., "data.123.title").
Fires when that path (or its ancestors) actually changes.
Releases the store. Afterwards it is inert: emit() resolves { committed: false } without
running anything, call() rejects with CallAbortedError (as does every pending call), and
registration methods throw. StoreInstance.signal aborts last. Idempotent.
signature
dispose(): void
Releases the store. Afterwards it is inert: emit() resolves { committed: false } without
running anything, call() rejects with CallAbortedError (as does every pending call), and
registration methods throw. StoreInstance.signal aborts last. Idempotent.
Registers an instrumentation observer, called once per emitted event
(committed or vetoed) after the synchronous reduce phase, with the exact
changed paths, their old/new values, and reduce timing. This is the typed
seam DevTools agents consume, no as any bridging required.
signature
instrument(observer, options?): Unsubscribe
Registers an instrumentation observer, called once per emitted event
(committed or vetoed) after the synchronous reduce phase, with the exact
changed paths, their old/new values, and reduce timing. This is the typed
seam DevTools agents consume, no as any bridging required.
Subscribe to events by channel and type.
Event subscriptions are intended for the View layer (e.g., React components)
to react to events without affecting the event flow. They are fire-and-forget
and cannot cancel event propagation.
**Phases:**
- 'committed' (default): Events that passed middleware and reached reducers
- 'uncommitted': Events rejected by middleware
- 'written': Events that actually changed state
- 'all': Both committed and uncommitted events (handler receives phase parameter).
Deliberately not written as well: an event that writes is also committed, so folding
it in would notify every existing all subscriber twice for one event.
Subscribe to events by channel and type.
Event subscriptions are intended for the View layer (e.g., React components)
to react to events without affecting the event flow. They are fire-and-forget
and cannot cancel event propagation.
**Phases:**
- 'committed' (default): Events that passed middleware and reached reducers
- 'uncommitted': Events rejected by middleware
- 'written': Events that actually changed state
- 'all': Both committed and uncommitted events (handler receives phase parameter).
Deliberately not written as well: an event that writes is also committed, so folding
it in would notify every existing all subscriber twice for one event.
Mounts a slice and hands back both the widened store and a disposer.
The disposer is **library-private**: after it runs, the widened type still promises a
slice that is gone. Application code should take StoreDecoration.withSlice
instead, which returns no disposer at all.
Mounts a slice and hands back both the widened store and a disposer.
The disposer is **library-private**: after it runs, the widened type still promises a
slice that is gone. Application code should take StoreDecoration.withSlice
instead, which returns no disposer at all.
Slice specs keyed by slice name, each typed with its own slice's state. Every
key is optional: an omitted slice this call owns is removed, and an omitted slice mounted
at runtime is kept. See ReducerReplacement.
Registers middleware and returns the store widened by whatever event map it declares.
Only the **spec form** can widen: MiddlewareFunction's event parameter is
EventUnion<EM>, a mapped type TypeScript cannot infer EM back out of. A bare function
therefore contributes {}.
Registers middleware and returns the store widened by whatever event map it declares.
Only the **spec form** can widen: MiddlewareFunction's event parameter is
EventUnion<EM>, a mapped type TypeScript cannot infer EM back out of. A bare function
therefore contributes {}.