stroid 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +375 -468
  3. package/dist/_tsup-dts-rollup.d.cts +2411 -0
  4. package/dist/_tsup-dts-rollup.d.ts +2411 -0
  5. package/dist/async.cjs +29 -24
  6. package/dist/async.cjs.map +1 -0
  7. package/dist/async.d.cts +9 -40
  8. package/dist/async.d.ts +9 -40
  9. package/dist/async.js +29 -24
  10. package/dist/async.js.map +1 -0
  11. package/dist/computed.cjs +12 -10
  12. package/dist/computed.cjs.map +1 -0
  13. package/dist/computed.d.cts +7 -29
  14. package/dist/computed.d.ts +7 -29
  15. package/dist/computed.js +12 -10
  16. package/dist/computed.js.map +1 -0
  17. package/dist/core.cjs +17 -23
  18. package/dist/core.cjs.map +1 -0
  19. package/dist/core.d.cts +15 -5
  20. package/dist/core.d.ts +15 -5
  21. package/dist/core.js +17 -23
  22. package/dist/core.js.map +1 -0
  23. package/dist/devtools.cjs +2 -1
  24. package/dist/devtools.cjs.map +1 -0
  25. package/dist/devtools.d.cts +5 -19
  26. package/dist/devtools.d.ts +5 -19
  27. package/dist/devtools.js +2 -1
  28. package/dist/devtools.js.map +1 -0
  29. package/dist/feature.cjs +2 -0
  30. package/dist/feature.cjs.map +1 -0
  31. package/dist/feature.d.cts +14 -0
  32. package/dist/feature.d.ts +14 -0
  33. package/dist/feature.js +2 -0
  34. package/dist/feature.js.map +1 -0
  35. package/dist/helpers.cjs +17 -13
  36. package/dist/helpers.cjs.map +1 -0
  37. package/dist/helpers.d.cts +3 -29
  38. package/dist/helpers.d.ts +3 -29
  39. package/dist/helpers.js +17 -13
  40. package/dist/helpers.js.map +1 -0
  41. package/dist/index.cjs +26 -21
  42. package/dist/index.cjs.map +1 -0
  43. package/dist/index.d.cts +33 -130
  44. package/dist/index.d.ts +33 -130
  45. package/dist/index.js +26 -21
  46. package/dist/index.js.map +1 -0
  47. package/dist/install.cjs +2 -0
  48. package/dist/install.cjs.map +1 -0
  49. package/dist/install.d.cts +4 -0
  50. package/dist/install.d.ts +4 -0
  51. package/dist/install.js +2 -0
  52. package/dist/install.js.map +1 -0
  53. package/dist/persist.cjs +2 -1
  54. package/dist/persist.cjs.map +1 -0
  55. package/dist/persist.d.cts +1 -2
  56. package/dist/persist.d.ts +1 -2
  57. package/dist/persist.js +2 -1
  58. package/dist/persist.js.map +1 -0
  59. package/dist/react.cjs +27 -22
  60. package/dist/react.cjs.map +1 -0
  61. package/dist/react.d.cts +7 -52
  62. package/dist/react.d.ts +7 -52
  63. package/dist/react.js +27 -22
  64. package/dist/react.js.map +1 -0
  65. package/dist/runtime-admin.cjs +2 -1
  66. package/dist/runtime-admin.cjs.map +1 -0
  67. package/dist/runtime-admin.d.cts +2 -4
  68. package/dist/runtime-admin.d.ts +2 -4
  69. package/dist/runtime-admin.js +2 -1
  70. package/dist/runtime-admin.js.map +1 -0
  71. package/dist/runtime-tools.cjs +3 -2
  72. package/dist/runtime-tools.cjs.map +1 -0
  73. package/dist/runtime-tools.d.cts +9 -39
  74. package/dist/runtime-tools.d.ts +9 -39
  75. package/dist/runtime-tools.js +3 -2
  76. package/dist/runtime-tools.js.map +1 -0
  77. package/dist/selectors.cjs +2 -1
  78. package/dist/selectors.cjs.map +1 -0
  79. package/dist/selectors.d.cts +2 -4
  80. package/dist/selectors.d.ts +2 -4
  81. package/dist/selectors.js +2 -1
  82. package/dist/selectors.js.map +1 -0
  83. package/dist/server.cjs +11 -9
  84. package/dist/server.cjs.map +1 -0
  85. package/dist/server.d.cts +2 -14
  86. package/dist/server.d.ts +2 -14
  87. package/dist/server.js +11 -9
  88. package/dist/server.js.map +1 -0
  89. package/dist/sync.cjs +2 -1
  90. package/dist/sync.cjs.map +1 -0
  91. package/dist/sync.d.cts +1 -2
  92. package/dist/sync.d.ts +1 -2
  93. package/dist/sync.js +2 -1
  94. package/dist/sync.js.map +1 -0
  95. package/dist/testing.cjs +17 -13
  96. package/dist/testing.cjs.map +1 -0
  97. package/dist/testing.d.cts +4 -16
  98. package/dist/testing.d.ts +4 -16
  99. package/dist/testing.js +17 -13
  100. package/dist/testing.js.map +1 -0
  101. package/package.json +12 -3
  102. package/dist/async-cache-DFHwcBQL.d.cts +0 -52
  103. package/dist/async-cache-DFHwcBQL.d.ts +0 -52
  104. package/dist/computed-BbAZm1Dq.d.cts +0 -17
  105. package/dist/computed-CccdgY5j.d.ts +0 -17
  106. package/dist/options-CB35e3Xo.d.cts +0 -245
  107. package/dist/options-CB35e3Xo.d.ts +0 -245
  108. package/dist/types/adapters/options.d.ts +0 -247
  109. package/dist/types/async/clone.d.ts +0 -2
  110. package/dist/types/async/errors.d.ts +0 -3
  111. package/dist/types/async/inflight.d.ts +0 -13
  112. package/dist/types/async/rate.d.ts +0 -5
  113. package/dist/types/async/request.d.ts +0 -3
  114. package/dist/types/async-cache.d.ts +0 -57
  115. package/dist/types/async-fetch.d.ts +0 -37
  116. package/dist/types/async-registry.d.ts +0 -96
  117. package/dist/types/async-retry.d.ts +0 -10
  118. package/dist/types/async.d.ts +0 -2
  119. package/dist/types/computed-graph.d.ts +0 -31
  120. package/dist/types/computed.d.ts +0 -15
  121. package/dist/types/config.d.ts +0 -2
  122. package/dist/types/core.d.ts +0 -1
  123. package/dist/types/devfreeze.d.ts +0 -1
  124. package/dist/types/feature-registry.d.ts +0 -69
  125. package/dist/types/features/lifecycle.d.ts +0 -28
  126. package/dist/types/index.d.ts +0 -6
  127. package/dist/types/integrations/query.d.ts +0 -8
  128. package/dist/types/internals/config.d.ts +0 -62
  129. package/dist/types/internals/diagnostics.d.ts +0 -21
  130. package/dist/types/internals/hooks-warnings.d.ts +0 -6
  131. package/dist/types/internals/reporting.d.ts +0 -8
  132. package/dist/types/internals/store-admin.d.ts +0 -7
  133. package/dist/types/internals/store-ops.d.ts +0 -3
  134. package/dist/types/runtime-admin.d.ts +0 -2
  135. package/dist/types/store-lifecycle/bind.d.ts +0 -3
  136. package/dist/types/store-lifecycle/hooks.d.ts +0 -44
  137. package/dist/types/store-lifecycle/identity.d.ts +0 -23
  138. package/dist/types/store-lifecycle/registry.d.ts +0 -39
  139. package/dist/types/store-lifecycle/types.d.ts +0 -39
  140. package/dist/types/store-lifecycle/validation.d.ts +0 -45
  141. package/dist/types/store-lifecycle.d.ts +0 -20
  142. package/dist/types/store-name.d.ts +0 -19
  143. package/dist/types/store-notify.d.ts +0 -12
  144. package/dist/types/store-read.d.ts +0 -12
  145. package/dist/types/store-registry.d.ts +0 -74
  146. package/dist/types/store-transaction.d.ts +0 -12
  147. package/dist/types/store-write.d.ts +0 -45
  148. package/dist/types/store.d.ts +0 -7
  149. package/dist/types/utils/clone.d.ts +0 -4
  150. package/dist/types/utils/hash.d.ts +0 -8
  151. package/dist/types/utils/path.d.ts +0 -5
  152. package/dist/types/utils/validation.d.ts +0 -14
  153. package/dist/types/utils.d.ts +0 -5
  154. package/dist/types-grvlY4BX.d.cts +0 -37
  155. package/dist/types-grvlY4BX.d.ts +0 -37
package/dist/index.d.cts CHANGED
@@ -1,130 +1,33 @@
1
- import { a as StoreDefinition, c as StoreKey, S as StoreName, d as StateFor, W as WriteResult, e as Path, f as PathValue, P as PartialDeep, b as StoreValue } from './types-grvlY4BX.cjs';
2
- export { g as StoreStateMap, h as StrictStoreMap } from './types-grvlY4BX.cjs';
3
- import { S as StoreOptions, b as SnapshotMode, M as MiddlewareCtx, a as StoreValue$1 } from './options-CB35e3Xo.cjs';
4
- export { P as PersistOptions, c as SyncOptions } from './options-CB35e3Xo.cjs';
5
- export { c as createComputed, d as deleteComputed, i as invalidateComputed, a as isComputedStore } from './computed-BbAZm1Dq.cjs';
6
- import { a as FetchInput, F as FetchOptions } from './async-cache-DFHwcBQL.cjs';
7
-
8
- type LooseStoreNames = string extends StoreName ? true : false;
9
- type StorePathFor<Name extends StoreName> = LooseStoreNames extends true ? string | string[] : Path<StateFor<Name>>;
10
- type StorePathValueFor<Name extends StoreName, P extends StorePathFor<Name>> = LooseStoreNames extends true ? unknown : (P extends Path<StateFor<Name>> ? PathValue<StateFor<Name>, P> : never);
11
- type HydrateSnapshot = Partial<{
12
- [K in StoreName]: StateFor<K>;
13
- }>;
14
- type HydrateOptions<Snapshot extends Record<string, unknown>> = Partial<{
15
- [K in keyof Snapshot]: StoreOptions<Snapshot[K]>;
16
- }> & {
17
- default?: StoreOptions;
18
- };
19
- type HydrationTrust<Snapshot extends Record<string, unknown>> = {
20
- allowUntrusted?: boolean;
21
- validate?: (snapshot: Snapshot) => boolean;
22
- };
23
- declare const createStore: <Name extends string, State>(name: Name, initialData: State, option?: StoreOptions<State>) => StoreDefinition<Name, State> | undefined;
24
- declare const createStoreStrict: <Name extends string, State>(name: Name, initialData: State, option?: StoreOptions<State>) => StoreDefinition<Name, State>;
25
- declare function setStore<Name extends string, State, P extends Path<State>>(name: StoreDefinition<Name, State>, path: P, value: PathValue<State, P>): WriteResult;
26
- declare function setStore<Name extends string, State>(name: StoreDefinition<Name, State>, mutator: (draft: State) => void): WriteResult;
27
- declare function setStore<Name extends string, State>(name: StoreDefinition<Name, State>, data: PartialDeep<State>): WriteResult;
28
- declare function setStore<Name extends string, State, P extends Path<State>>(name: StoreKey<Name, State>, path: P, value: PathValue<State, P>): WriteResult;
29
- declare function setStore<Name extends string, State>(name: StoreKey<Name, State>, mutator: (draft: State) => void): WriteResult;
30
- declare function setStore<Name extends string, State>(name: StoreKey<Name, State>, data: PartialDeep<State>): WriteResult;
31
- declare function setStore<Name extends StoreName, P extends StorePathFor<Name>>(name: Name, path: P, value: StorePathValueFor<Name, P>): WriteResult;
32
- declare function setStore<Name extends StoreName>(name: Name, mutator: (draft: StateFor<Name>) => void): WriteResult;
33
- declare function setStore<Name extends StoreName>(name: Name, data: PartialDeep<StateFor<Name>>): WriteResult;
34
- declare function deleteStore<Name extends string, State>(name: StoreDefinition<Name, State>): void;
35
- declare function deleteStore<Name extends string, State>(name: StoreKey<Name, State>): void;
36
- declare function deleteStore<Name extends StoreName>(name: Name): void;
37
- declare function resetStore<Name extends string, State>(name: StoreDefinition<Name, State>): WriteResult;
38
- declare function resetStore<Name extends string, State>(name: StoreKey<Name, State>): WriteResult;
39
- declare function resetStore<Name extends StoreName>(name: Name): WriteResult;
40
- declare const hydrateStores: <Snapshot extends Record<string, unknown> = HydrateSnapshot>(snapshot: Snapshot, options?: HydrateOptions<Snapshot>, trust?: HydrationTrust<Snapshot>) => {
41
- hydrated: string[];
42
- created: string[];
43
- failed: Record<string, string>;
44
- };
45
-
46
- declare const setStoreBatch: (fn: () => unknown) => void;
47
-
48
- type StoreSnapshot<T> = T extends object ? Readonly<T> : T;
49
- declare function getStore<Name extends string, State, P extends Path<State>>(name: StoreDefinition<Name, State>, path: P): StoreSnapshot<PathValue<State, P>> | null;
50
- declare function getStore<Name extends string, State>(name: StoreDefinition<Name, State>, path?: undefined): StoreSnapshot<State> | null;
51
- declare function getStore<Name extends string, State, P extends Path<State>>(name: StoreKey<Name, State>, path: P): StoreSnapshot<PathValue<State, P>> | null;
52
- declare function getStore<Name extends string, State>(name: StoreKey<Name, State>, path?: undefined): StoreSnapshot<State> | null;
53
- declare function getStore<Name extends StoreName, P extends Path<StateFor<Name>>>(name: Name, path: P): StoreSnapshot<PathValue<StateFor<Name>, P>> | null;
54
- declare function getStore<Name extends StoreName>(name: Name, path?: undefined): StoreSnapshot<StateFor<Name>> | null;
55
- declare const hasStore: (name: string) => boolean;
56
-
57
- /**
58
- * Helper to get an auto-completable, literal-typed store handle without creating it.
59
- *
60
- * Example:
61
- * const user = store("user");
62
- * setStore(user, "name", "Alex");
63
- */
64
- declare const store: <Name extends string, State = StoreValue>(name: Name) => StoreKey<Name, State>;
65
- declare const namespace: (ns: string) => {
66
- store: <Name extends string, State = unknown>(name: Name) => StoreKey<Name, State>;
67
- create: <Name extends string, State>(name: Name, data: State, options?: Parameters<typeof createStore>[2]) => StoreDefinition<string, unknown> | undefined;
68
- createStrict: <Name extends string, State>(name: Name, data: State, options?: Parameters<typeof createStore>[2]) => StoreDefinition<string, unknown>;
69
- set: (name: any, ...rest: any[]) => any;
70
- get: (name: any, ...rest: any[]) => any;
71
- delete: (name: string) => void;
72
- reset: (name: string) => WriteResult;
73
- };
74
-
75
- type LogSink = {
76
- log?: (msg: string, meta?: Record<string, unknown>) => void;
77
- warn?: (msg: string, meta?: Record<string, unknown>) => void;
78
- critical?: (msg: string, meta?: Record<string, unknown>) => void;
79
- };
80
- type AsyncCloneMode = "none" | "shallow" | "deep";
81
- type FlushConfig = {
82
- chunkSize?: number;
83
- chunkDelayMs?: number;
84
- priorityStores?: string[];
85
- };
86
- type RevalidateOnFocusConfig = {
87
- debounceMs?: number;
88
- maxConcurrent?: number;
89
- staggerMs?: number;
90
- };
91
- type StroidConfig = {
92
- logSink?: LogSink;
93
- flush?: FlushConfig;
94
- revalidateOnFocus?: RevalidateOnFocusConfig;
95
- namespace?: string;
96
- strictMissingFeatures?: boolean;
97
- strictFeatures?: boolean;
98
- assertRuntime?: boolean;
99
- strictMutatorReturns?: boolean;
100
- asyncAutoCreate?: boolean;
101
- asyncCloneResult?: AsyncCloneMode;
102
- defaultSnapshotMode?: SnapshotMode;
103
- middleware?: Array<(ctx: MiddlewareCtx) => StoreValue$1 | void>;
104
- /**
105
- * Allow hydrateStores to accept untrusted snapshots without explicit opt-in.
106
- * Default: false (hydration requires an explicit trust opt-in).
107
- */
108
- allowUntrustedHydration?: boolean;
109
- /**
110
- * Optional custom mutator engine (e.g. Immer's produce) to enable structural sharing.
111
- */
112
- mutatorProduce?: <T>(base: T, recipe: (draft: T) => void) => T;
113
- };
114
- declare const configureStroid: (next?: StroidConfig) => void;
115
-
116
- type StoreTarget = StoreDefinition<string, unknown> | StoreKey<string, unknown> | StoreName;
117
- declare const reactQueryKey: (storeName: StoreTarget, cacheKey?: string | number) => (string | number)[];
118
- declare const createReactQueryFetcher: (storeName: StoreTarget, input: FetchInput, options?: FetchOptions) => () => Promise<unknown>;
119
- declare const swrKey: (storeName: StoreTarget, cacheKey?: string | number) => (string | number)[];
120
- declare const createSwrFetcher: (storeName: StoreTarget, input: FetchInput, options?: FetchOptions) => () => Promise<unknown>;
121
-
122
- declare const query_createReactQueryFetcher: typeof createReactQueryFetcher;
123
- declare const query_createSwrFetcher: typeof createSwrFetcher;
124
- declare const query_reactQueryKey: typeof reactQueryKey;
125
- declare const query_swrKey: typeof swrKey;
126
- declare namespace query {
127
- export { query_createReactQueryFetcher as createReactQueryFetcher, query_createSwrFetcher as createSwrFetcher, query_reactQueryKey as reactQueryKey, query_swrKey as swrKey };
128
- }
129
-
130
- export { PartialDeep, Path, PathValue, StateFor, StoreDefinition, StoreKey, StoreName, StoreOptions, StoreValue, WriteResult, configureStroid, createStore, createStoreStrict, deleteStore, getStore, hasStore, hydrateStores, namespace, query as queryIntegrations, resetStore, setStore, setStoreBatch, store };
1
+ export { createStore_alias_1 as createStore } from './_tsup-dts-rollup.cjs';
2
+ export { createStoreStrict } from './_tsup-dts-rollup.cjs';
3
+ export { setStore_alias_1 as setStore } from './_tsup-dts-rollup.cjs';
4
+ export { setStoreBatch } from './_tsup-dts-rollup.cjs';
5
+ export { getStore_alias_1 as getStore } from './_tsup-dts-rollup.cjs';
6
+ export { deleteStore_alias_1 as deleteStore } from './_tsup-dts-rollup.cjs';
7
+ export { resetStore } from './_tsup-dts-rollup.cjs';
8
+ export { hasStore } from './_tsup-dts-rollup.cjs';
9
+ export { hydrateStores } from './_tsup-dts-rollup.cjs';
10
+ export { createComputed_alias_2 as createComputed } from './_tsup-dts-rollup.cjs';
11
+ export { invalidateComputed_alias_2 as invalidateComputed } from './_tsup-dts-rollup.cjs';
12
+ export { deleteComputed_alias_2 as deleteComputed } from './_tsup-dts-rollup.cjs';
13
+ export { isComputedStore_alias_2 as isComputedStore } from './_tsup-dts-rollup.cjs';
14
+ export { namespace } from './_tsup-dts-rollup.cjs';
15
+ export { store } from './_tsup-dts-rollup.cjs';
16
+ export { Path_alias_1 as Path } from './_tsup-dts-rollup.cjs';
17
+ export { PathValue_alias_1 as PathValue } from './_tsup-dts-rollup.cjs';
18
+ export { PartialDeep_alias_1 as PartialDeep } from './_tsup-dts-rollup.cjs';
19
+ export { StoreDefinition_alias_1 as StoreDefinition } from './_tsup-dts-rollup.cjs';
20
+ export { StoreValue_alias_1 as StoreValue } from './_tsup-dts-rollup.cjs';
21
+ export { StoreKey_alias_1 as StoreKey } from './_tsup-dts-rollup.cjs';
22
+ export { StoreName_alias_1 as StoreName } from './_tsup-dts-rollup.cjs';
23
+ export { StateFor_alias_1 as StateFor } from './_tsup-dts-rollup.cjs';
24
+ export { StoreStateMap_alias_1 as StoreStateMap } from './_tsup-dts-rollup.cjs';
25
+ export { StrictStoreMap_alias_1 as StrictStoreMap } from './_tsup-dts-rollup.cjs';
26
+ export { WriteResult_alias_1 as WriteResult } from './_tsup-dts-rollup.cjs';
27
+ export { FeatureOptions } from './_tsup-dts-rollup.cjs';
28
+ export { FeatureOptionsMap } from './_tsup-dts-rollup.cjs';
29
+ export { PersistOptions } from './_tsup-dts-rollup.cjs';
30
+ export { StoreOptions } from './_tsup-dts-rollup.cjs';
31
+ export { SyncOptions } from './_tsup-dts-rollup.cjs';
32
+ export { configureStroid_alias_1 as configureStroid } from './_tsup-dts-rollup.cjs';
33
+ export { queryIntegrations } from './_tsup-dts-rollup.cjs';
package/dist/index.d.ts CHANGED
@@ -1,130 +1,33 @@
1
- import { a as StoreDefinition, c as StoreKey, S as StoreName, d as StateFor, W as WriteResult, e as Path, f as PathValue, P as PartialDeep, b as StoreValue } from './types-grvlY4BX.js';
2
- export { g as StoreStateMap, h as StrictStoreMap } from './types-grvlY4BX.js';
3
- import { S as StoreOptions, b as SnapshotMode, M as MiddlewareCtx, a as StoreValue$1 } from './options-CB35e3Xo.js';
4
- export { P as PersistOptions, c as SyncOptions } from './options-CB35e3Xo.js';
5
- export { c as createComputed, d as deleteComputed, i as invalidateComputed, a as isComputedStore } from './computed-CccdgY5j.js';
6
- import { a as FetchInput, F as FetchOptions } from './async-cache-DFHwcBQL.js';
7
-
8
- type LooseStoreNames = string extends StoreName ? true : false;
9
- type StorePathFor<Name extends StoreName> = LooseStoreNames extends true ? string | string[] : Path<StateFor<Name>>;
10
- type StorePathValueFor<Name extends StoreName, P extends StorePathFor<Name>> = LooseStoreNames extends true ? unknown : (P extends Path<StateFor<Name>> ? PathValue<StateFor<Name>, P> : never);
11
- type HydrateSnapshot = Partial<{
12
- [K in StoreName]: StateFor<K>;
13
- }>;
14
- type HydrateOptions<Snapshot extends Record<string, unknown>> = Partial<{
15
- [K in keyof Snapshot]: StoreOptions<Snapshot[K]>;
16
- }> & {
17
- default?: StoreOptions;
18
- };
19
- type HydrationTrust<Snapshot extends Record<string, unknown>> = {
20
- allowUntrusted?: boolean;
21
- validate?: (snapshot: Snapshot) => boolean;
22
- };
23
- declare const createStore: <Name extends string, State>(name: Name, initialData: State, option?: StoreOptions<State>) => StoreDefinition<Name, State> | undefined;
24
- declare const createStoreStrict: <Name extends string, State>(name: Name, initialData: State, option?: StoreOptions<State>) => StoreDefinition<Name, State>;
25
- declare function setStore<Name extends string, State, P extends Path<State>>(name: StoreDefinition<Name, State>, path: P, value: PathValue<State, P>): WriteResult;
26
- declare function setStore<Name extends string, State>(name: StoreDefinition<Name, State>, mutator: (draft: State) => void): WriteResult;
27
- declare function setStore<Name extends string, State>(name: StoreDefinition<Name, State>, data: PartialDeep<State>): WriteResult;
28
- declare function setStore<Name extends string, State, P extends Path<State>>(name: StoreKey<Name, State>, path: P, value: PathValue<State, P>): WriteResult;
29
- declare function setStore<Name extends string, State>(name: StoreKey<Name, State>, mutator: (draft: State) => void): WriteResult;
30
- declare function setStore<Name extends string, State>(name: StoreKey<Name, State>, data: PartialDeep<State>): WriteResult;
31
- declare function setStore<Name extends StoreName, P extends StorePathFor<Name>>(name: Name, path: P, value: StorePathValueFor<Name, P>): WriteResult;
32
- declare function setStore<Name extends StoreName>(name: Name, mutator: (draft: StateFor<Name>) => void): WriteResult;
33
- declare function setStore<Name extends StoreName>(name: Name, data: PartialDeep<StateFor<Name>>): WriteResult;
34
- declare function deleteStore<Name extends string, State>(name: StoreDefinition<Name, State>): void;
35
- declare function deleteStore<Name extends string, State>(name: StoreKey<Name, State>): void;
36
- declare function deleteStore<Name extends StoreName>(name: Name): void;
37
- declare function resetStore<Name extends string, State>(name: StoreDefinition<Name, State>): WriteResult;
38
- declare function resetStore<Name extends string, State>(name: StoreKey<Name, State>): WriteResult;
39
- declare function resetStore<Name extends StoreName>(name: Name): WriteResult;
40
- declare const hydrateStores: <Snapshot extends Record<string, unknown> = HydrateSnapshot>(snapshot: Snapshot, options?: HydrateOptions<Snapshot>, trust?: HydrationTrust<Snapshot>) => {
41
- hydrated: string[];
42
- created: string[];
43
- failed: Record<string, string>;
44
- };
45
-
46
- declare const setStoreBatch: (fn: () => unknown) => void;
47
-
48
- type StoreSnapshot<T> = T extends object ? Readonly<T> : T;
49
- declare function getStore<Name extends string, State, P extends Path<State>>(name: StoreDefinition<Name, State>, path: P): StoreSnapshot<PathValue<State, P>> | null;
50
- declare function getStore<Name extends string, State>(name: StoreDefinition<Name, State>, path?: undefined): StoreSnapshot<State> | null;
51
- declare function getStore<Name extends string, State, P extends Path<State>>(name: StoreKey<Name, State>, path: P): StoreSnapshot<PathValue<State, P>> | null;
52
- declare function getStore<Name extends string, State>(name: StoreKey<Name, State>, path?: undefined): StoreSnapshot<State> | null;
53
- declare function getStore<Name extends StoreName, P extends Path<StateFor<Name>>>(name: Name, path: P): StoreSnapshot<PathValue<StateFor<Name>, P>> | null;
54
- declare function getStore<Name extends StoreName>(name: Name, path?: undefined): StoreSnapshot<StateFor<Name>> | null;
55
- declare const hasStore: (name: string) => boolean;
56
-
57
- /**
58
- * Helper to get an auto-completable, literal-typed store handle without creating it.
59
- *
60
- * Example:
61
- * const user = store("user");
62
- * setStore(user, "name", "Alex");
63
- */
64
- declare const store: <Name extends string, State = StoreValue>(name: Name) => StoreKey<Name, State>;
65
- declare const namespace: (ns: string) => {
66
- store: <Name extends string, State = unknown>(name: Name) => StoreKey<Name, State>;
67
- create: <Name extends string, State>(name: Name, data: State, options?: Parameters<typeof createStore>[2]) => StoreDefinition<string, unknown> | undefined;
68
- createStrict: <Name extends string, State>(name: Name, data: State, options?: Parameters<typeof createStore>[2]) => StoreDefinition<string, unknown>;
69
- set: (name: any, ...rest: any[]) => any;
70
- get: (name: any, ...rest: any[]) => any;
71
- delete: (name: string) => void;
72
- reset: (name: string) => WriteResult;
73
- };
74
-
75
- type LogSink = {
76
- log?: (msg: string, meta?: Record<string, unknown>) => void;
77
- warn?: (msg: string, meta?: Record<string, unknown>) => void;
78
- critical?: (msg: string, meta?: Record<string, unknown>) => void;
79
- };
80
- type AsyncCloneMode = "none" | "shallow" | "deep";
81
- type FlushConfig = {
82
- chunkSize?: number;
83
- chunkDelayMs?: number;
84
- priorityStores?: string[];
85
- };
86
- type RevalidateOnFocusConfig = {
87
- debounceMs?: number;
88
- maxConcurrent?: number;
89
- staggerMs?: number;
90
- };
91
- type StroidConfig = {
92
- logSink?: LogSink;
93
- flush?: FlushConfig;
94
- revalidateOnFocus?: RevalidateOnFocusConfig;
95
- namespace?: string;
96
- strictMissingFeatures?: boolean;
97
- strictFeatures?: boolean;
98
- assertRuntime?: boolean;
99
- strictMutatorReturns?: boolean;
100
- asyncAutoCreate?: boolean;
101
- asyncCloneResult?: AsyncCloneMode;
102
- defaultSnapshotMode?: SnapshotMode;
103
- middleware?: Array<(ctx: MiddlewareCtx) => StoreValue$1 | void>;
104
- /**
105
- * Allow hydrateStores to accept untrusted snapshots without explicit opt-in.
106
- * Default: false (hydration requires an explicit trust opt-in).
107
- */
108
- allowUntrustedHydration?: boolean;
109
- /**
110
- * Optional custom mutator engine (e.g. Immer's produce) to enable structural sharing.
111
- */
112
- mutatorProduce?: <T>(base: T, recipe: (draft: T) => void) => T;
113
- };
114
- declare const configureStroid: (next?: StroidConfig) => void;
115
-
116
- type StoreTarget = StoreDefinition<string, unknown> | StoreKey<string, unknown> | StoreName;
117
- declare const reactQueryKey: (storeName: StoreTarget, cacheKey?: string | number) => (string | number)[];
118
- declare const createReactQueryFetcher: (storeName: StoreTarget, input: FetchInput, options?: FetchOptions) => () => Promise<unknown>;
119
- declare const swrKey: (storeName: StoreTarget, cacheKey?: string | number) => (string | number)[];
120
- declare const createSwrFetcher: (storeName: StoreTarget, input: FetchInput, options?: FetchOptions) => () => Promise<unknown>;
121
-
122
- declare const query_createReactQueryFetcher: typeof createReactQueryFetcher;
123
- declare const query_createSwrFetcher: typeof createSwrFetcher;
124
- declare const query_reactQueryKey: typeof reactQueryKey;
125
- declare const query_swrKey: typeof swrKey;
126
- declare namespace query {
127
- export { query_createReactQueryFetcher as createReactQueryFetcher, query_createSwrFetcher as createSwrFetcher, query_reactQueryKey as reactQueryKey, query_swrKey as swrKey };
128
- }
129
-
130
- export { PartialDeep, Path, PathValue, StateFor, StoreDefinition, StoreKey, StoreName, StoreOptions, StoreValue, WriteResult, configureStroid, createStore, createStoreStrict, deleteStore, getStore, hasStore, hydrateStores, namespace, query as queryIntegrations, resetStore, setStore, setStoreBatch, store };
1
+ export { createStore_alias_1 as createStore } from './_tsup-dts-rollup.js';
2
+ export { createStoreStrict } from './_tsup-dts-rollup.js';
3
+ export { setStore_alias_1 as setStore } from './_tsup-dts-rollup.js';
4
+ export { setStoreBatch } from './_tsup-dts-rollup.js';
5
+ export { getStore_alias_1 as getStore } from './_tsup-dts-rollup.js';
6
+ export { deleteStore_alias_1 as deleteStore } from './_tsup-dts-rollup.js';
7
+ export { resetStore } from './_tsup-dts-rollup.js';
8
+ export { hasStore } from './_tsup-dts-rollup.js';
9
+ export { hydrateStores } from './_tsup-dts-rollup.js';
10
+ export { createComputed_alias_2 as createComputed } from './_tsup-dts-rollup.js';
11
+ export { invalidateComputed_alias_2 as invalidateComputed } from './_tsup-dts-rollup.js';
12
+ export { deleteComputed_alias_2 as deleteComputed } from './_tsup-dts-rollup.js';
13
+ export { isComputedStore_alias_2 as isComputedStore } from './_tsup-dts-rollup.js';
14
+ export { namespace } from './_tsup-dts-rollup.js';
15
+ export { store } from './_tsup-dts-rollup.js';
16
+ export { Path_alias_1 as Path } from './_tsup-dts-rollup.js';
17
+ export { PathValue_alias_1 as PathValue } from './_tsup-dts-rollup.js';
18
+ export { PartialDeep_alias_1 as PartialDeep } from './_tsup-dts-rollup.js';
19
+ export { StoreDefinition_alias_1 as StoreDefinition } from './_tsup-dts-rollup.js';
20
+ export { StoreValue_alias_1 as StoreValue } from './_tsup-dts-rollup.js';
21
+ export { StoreKey_alias_1 as StoreKey } from './_tsup-dts-rollup.js';
22
+ export { StoreName_alias_1 as StoreName } from './_tsup-dts-rollup.js';
23
+ export { StateFor_alias_1 as StateFor } from './_tsup-dts-rollup.js';
24
+ export { StoreStateMap_alias_1 as StoreStateMap } from './_tsup-dts-rollup.js';
25
+ export { StrictStoreMap_alias_1 as StrictStoreMap } from './_tsup-dts-rollup.js';
26
+ export { WriteResult_alias_1 as WriteResult } from './_tsup-dts-rollup.js';
27
+ export { FeatureOptions } from './_tsup-dts-rollup.js';
28
+ export { FeatureOptionsMap } from './_tsup-dts-rollup.js';
29
+ export { PersistOptions } from './_tsup-dts-rollup.js';
30
+ export { StoreOptions } from './_tsup-dts-rollup.js';
31
+ export { SyncOptions } from './_tsup-dts-rollup.js';
32
+ export { configureStroid_alias_1 as configureStroid } from './_tsup-dts-rollup.js';
33
+ export { queryIntegrations } from './_tsup-dts-rollup.js';