atom.io 0.25.6 → 0.27.0

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 (108) hide show
  1. package/data/dist/index.d.ts +3 -3
  2. package/data/dist/index.js +33 -25
  3. package/data/package.json +1 -4
  4. package/data/src/dict.ts +3 -3
  5. package/dist/chunk-AK23DRMD.js +21 -0
  6. package/dist/{chunk-HYXKCFVY.js → chunk-IBTHB2PI.js} +59 -60
  7. package/dist/{chunk-MR5NETHW.js → chunk-IW6WYRS7.js} +4 -5
  8. package/dist/chunk-XWL6SNVU.js +7 -0
  9. package/dist/index.d.ts +32 -54
  10. package/dist/index.js +33 -21
  11. package/ephemeral/dist/index.d.ts +7 -7
  12. package/ephemeral/dist/index.js +1 -1
  13. package/ephemeral/package.json +1 -4
  14. package/ephemeral/src/find-state.ts +7 -7
  15. package/eslint-plugin/dist/index.js +7 -8
  16. package/eslint-plugin/package.json +1 -4
  17. package/immortal/dist/index.d.ts +7 -7
  18. package/immortal/dist/index.js +1 -1
  19. package/immortal/package.json +1 -4
  20. package/immortal/src/seek-state.ts +8 -8
  21. package/internal/dist/index.d.ts +56 -59
  22. package/internal/dist/index.js +178 -170
  23. package/internal/package.json +1 -4
  24. package/internal/src/families/create-atom-family.ts +4 -4
  25. package/internal/src/families/create-readonly-selector-family.ts +2 -2
  26. package/internal/src/families/create-regular-atom-family.ts +2 -2
  27. package/internal/src/families/create-selector-family.ts +4 -4
  28. package/internal/src/families/create-writable-selector-family.ts +2 -2
  29. package/internal/src/families/dispose-from-store.ts +3 -7
  30. package/internal/src/families/find-in-store.ts +9 -9
  31. package/internal/src/families/init-family-member.ts +25 -37
  32. package/internal/src/families/seek-in-store.ts +11 -10
  33. package/internal/src/get-state/get-from-store.ts +3 -3
  34. package/internal/src/molecule/grow-molecule-in-store.ts +9 -9
  35. package/internal/src/mutable/index.ts +0 -1
  36. package/internal/src/mutable/tracker-family.ts +2 -2
  37. package/internal/src/set-state/set-into-store.ts +4 -4
  38. package/internal/src/store/deposit.ts +3 -3
  39. package/internal/src/store/withdraw.ts +10 -9
  40. package/introspection/dist/index.js +32 -30
  41. package/introspection/package.json +1 -4
  42. package/json/dist/index.d.ts +10 -27
  43. package/json/dist/index.js +3 -3
  44. package/json/package.json +1 -4
  45. package/json/src/index.ts +8 -3
  46. package/json/src/select-json-family.ts +4 -4
  47. package/package.json +36 -65
  48. package/react/dist/index.d.ts +4 -4
  49. package/react/dist/index.js +2 -2
  50. package/react/package.json +1 -4
  51. package/react/src/parse-state-overloads.ts +4 -4
  52. package/react/src/use-i.ts +3 -3
  53. package/react/src/use-json.ts +3 -3
  54. package/react/src/use-o.ts +3 -3
  55. package/react-devtools/dist/index.d.ts +1 -1
  56. package/react-devtools/dist/index.js +90 -72
  57. package/react-devtools/package.json +1 -4
  58. package/react-devtools/src/StateIndex.tsx +5 -4
  59. package/realtime/dist/index.d.ts +3 -3
  60. package/realtime/dist/index.js +8 -9
  61. package/realtime/package.json +1 -4
  62. package/realtime/src/realtime-continuity.ts +2 -2
  63. package/realtime-client/dist/index.js +6 -6
  64. package/realtime-client/package.json +1 -4
  65. package/realtime-react/dist/index.d.ts +4 -4
  66. package/realtime-react/dist/index.js +9 -11
  67. package/realtime-react/package.json +1 -4
  68. package/realtime-react/src/use-pull-atom-family-member.ts +2 -2
  69. package/realtime-react/src/use-pull-mutable-family-member.ts +2 -2
  70. package/realtime-react/src/use-pull-selector-family-member.ts +2 -2
  71. package/realtime-server/dist/index.d.ts +9 -9
  72. package/realtime-server/dist/index.js +59 -54
  73. package/realtime-server/package.json +1 -4
  74. package/realtime-server/src/ipc-sockets/custom-socket.ts +2 -2
  75. package/realtime-server/src/realtime-family-provider.ts +3 -2
  76. package/realtime-server/src/realtime-mutable-family-provider.ts +2 -2
  77. package/realtime-testing/dist/index.js +3 -3
  78. package/realtime-testing/package.json +1 -4
  79. package/src/atom.ts +15 -42
  80. package/src/dispose-state.ts +2 -2
  81. package/src/get-state.ts +4 -4
  82. package/src/index.ts +5 -5
  83. package/src/molecule.ts +4 -3
  84. package/src/selector.ts +17 -39
  85. package/src/set-state.ts +3 -2
  86. package/src/silo.ts +4 -4
  87. package/transceivers/set-rtx/dist/index.js +11 -11
  88. package/transceivers/set-rtx/package.json +1 -4
  89. package/transceivers/set-rtx/src/set-rtx.ts +5 -5
  90. package/data/dist/index.cjs +0 -953
  91. package/dist/chunk-BF4MVQF6.js +0 -44
  92. package/dist/chunk-S4N6XNPH.js +0 -38
  93. package/dist/index.cjs +0 -215
  94. package/ephemeral/dist/index.cjs +0 -11
  95. package/eslint-plugin/dist/index.cjs +0 -388
  96. package/immortal/dist/index.cjs +0 -14
  97. package/internal/dist/index.cjs +0 -3405
  98. package/internal/src/mutable/is-mutable.ts +0 -16
  99. package/introspection/dist/index.cjs +0 -449
  100. package/json/dist/index.cjs +0 -128
  101. package/react/dist/index.cjs +0 -118
  102. package/react-devtools/dist/index.cjs +0 -2191
  103. package/realtime/dist/index.cjs +0 -120
  104. package/realtime-client/dist/index.cjs +0 -569
  105. package/realtime-react/dist/index.cjs +0 -189
  106. package/realtime-server/dist/index.cjs +0 -965
  107. package/realtime-testing/dist/index.cjs +0 -201
  108. package/transceivers/set-rtx/dist/index.cjs +0 -215
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import './chunk-S4N6XNPH.js';
1
+ import './chunk-XWL6SNVU.js';
2
2
  import * as Internal from 'atom.io/internal';
3
3
  import { createStandaloneAtom, IMPLICIT, createAtomFamily, createMoleculeFamily, makeMoleculeInStore, Molecule, createStandaloneSelector, createSelectorFamily, Store, createTransaction, createTimeline, findInStore, getFromStore, setIntoStore, disposeFromStore, timeTravel, subscribeToTimeline, subscribeToTransaction, subscribeToState, arbitrary, actUponStore } from 'atom.io/internal';
4
4
  import { stringifyJson } from 'atom.io/json';
@@ -45,25 +45,22 @@ var AtomIOLogger = class {
45
45
  this.logLevel = logLevel;
46
46
  this.filter = filter;
47
47
  this.logger = logger;
48
- this.error = (...args) => {
49
- var _a, _b;
50
- if (((_b = (_a = this.filter) == null ? void 0 : _a.call(this, ...args)) != null ? _b : true) && this.logLevel !== null) {
51
- this.logger.error(...args);
52
- }
53
- };
54
- this.info = (...args) => {
55
- var _a, _b;
56
- if (((_b = (_a = this.filter) == null ? void 0 : _a.call(this, ...args)) != null ? _b : true) && this.logLevel === `info`) {
57
- this.logger.info(...args);
58
- }
59
- };
60
- this.warn = (...args) => {
61
- var _a, _b;
62
- if (((_b = (_a = this.filter) == null ? void 0 : _a.call(this, ...args)) != null ? _b : true) && this.logLevel !== `error` && this.logLevel !== null) {
63
- this.logger.warn(...args);
64
- }
65
- };
66
48
  }
49
+ error = (...args) => {
50
+ if ((this.filter?.(...args) ?? true) && this.logLevel !== null) {
51
+ this.logger.error(...args);
52
+ }
53
+ };
54
+ info = (...args) => {
55
+ if ((this.filter?.(...args) ?? true) && this.logLevel === `info`) {
56
+ this.logger.info(...args);
57
+ }
58
+ };
59
+ warn = (...args) => {
60
+ if ((this.filter?.(...args) ?? true) && this.logLevel !== `error` && this.logLevel !== null) {
61
+ this.logger.warn(...args);
62
+ }
63
+ };
67
64
  };
68
65
  function moleculeFamily(options) {
69
66
  return createMoleculeFamily(options, IMPLICIT.STORE);
@@ -93,6 +90,22 @@ function setState(token, p1, p2) {
93
90
  }
94
91
  }
95
92
  var Silo = class {
93
+ store;
94
+ atom;
95
+ atomFamily;
96
+ selector;
97
+ selectorFamily;
98
+ transaction;
99
+ timeline;
100
+ findState;
101
+ getState;
102
+ setState;
103
+ disposeState;
104
+ subscribe;
105
+ undo;
106
+ redo;
107
+ moleculeFamily;
108
+ makeMolecule;
96
109
  constructor(config, fromStore = null) {
97
110
  const s = new Store(config, fromStore);
98
111
  function _atom(options) {
@@ -165,8 +178,7 @@ function isToken(knownToken, unknownToken) {
165
178
  return knownToken.key === unknownToken.key;
166
179
  }
167
180
  function belongsTo(family, unknownToken) {
168
- var _a;
169
- return family.key === ((_a = unknownToken.family) == null ? void 0 : _a.key);
181
+ return family.key === unknownToken.family?.key;
170
182
  }
171
183
 
172
184
  export { AtomIOLogger, LOG_LEVELS, Silo, atom, atomFamily, belongsTo, disposeState, getState, isToken, makeMolecule, makeRootMolecule, moleculeFamily, redo, runTransaction, selector, selectorFamily, setState, simpleLog, simpleLogger, subscribe, timeline, transaction, undo };
@@ -1,6 +1,6 @@
1
1
  import { MutableAtomFamilyToken, MutableAtomToken, RegularAtomFamilyToken, RegularAtomToken, WritableSelectorFamilyToken, WritableSelectorToken, ReadonlySelectorFamilyToken, ReadonlySelectorToken, WritableFamilyToken, WritableToken, ReadableFamilyToken, ReadableToken } from 'atom.io';
2
2
  import { Transceiver } from 'atom.io/internal';
3
- import { Json } from 'atom.io/json';
3
+ import { Json, Canonical } from 'atom.io/json';
4
4
 
5
5
  /**
6
6
  * @overload Mutable Atom
@@ -10,7 +10,7 @@ import { Json } from 'atom.io/json';
10
10
  * @returns
11
11
  * The current value of the state.
12
12
  */
13
- declare function findState<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J>;
13
+ declare function findState<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J>;
14
14
  /**
15
15
  * Finds a state in the store.
16
16
  * @param token - The token of the state family.
@@ -18,7 +18,7 @@ declare function findState<T extends Transceiver<any>, J extends Json.Serializab
18
18
  * @returns
19
19
  * The current value of the state.
20
20
  */
21
- declare function findState<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T>;
21
+ declare function findState<T, K extends Canonical, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T>;
22
22
  /**
23
23
  * Finds a state in the store.
24
24
  * @param token - The token of the state family.
@@ -26,7 +26,7 @@ declare function findState<T, K extends Json.Serializable, Key extends K>(token:
26
26
  * @returns
27
27
  * The current value of the state.
28
28
  */
29
- declare function findState<T, K extends Json.Serializable, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T>;
29
+ declare function findState<T, K extends Canonical, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T>;
30
30
  /**
31
31
  * Finds a state in the store.
32
32
  * @param token - The token of the state family.
@@ -34,7 +34,7 @@ declare function findState<T, K extends Json.Serializable, Key extends K>(token:
34
34
  * @returns
35
35
  * The current value of the state.
36
36
  */
37
- declare function findState<T, K extends Json.Serializable, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key): ReadonlySelectorToken<T>;
37
+ declare function findState<T, K extends Canonical, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key): ReadonlySelectorToken<T>;
38
38
  /**
39
39
  * Finds a state in the store.
40
40
  * @param token - The token of the state family.
@@ -42,7 +42,7 @@ declare function findState<T, K extends Json.Serializable, Key extends K>(token:
42
42
  * @returns
43
43
  * The current value of the state.
44
44
  */
45
- declare function findState<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key): WritableToken<T>;
45
+ declare function findState<T, K extends Canonical, Key extends K>(token: WritableFamilyToken<T, K>, key: Key): WritableToken<T>;
46
46
  /**
47
47
  * @public
48
48
  * Finds a {@link ReadableToken} in the store.
@@ -52,6 +52,6 @@ declare function findState<T, K extends Json.Serializable, Key extends K>(token:
52
52
  * The current value of the state.
53
53
  * @overload Unknown
54
54
  */
55
- declare function findState<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key): ReadableToken<T>;
55
+ declare function findState<T, K extends Canonical, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key): ReadableToken<T>;
56
56
 
57
57
  export { findState };
@@ -1,4 +1,4 @@
1
- import '../../dist/chunk-S4N6XNPH.js';
1
+ import '../../dist/chunk-XWL6SNVU.js';
2
2
  import { findInStore, IMPLICIT } from 'atom.io/internal';
3
3
 
4
4
  function findState(token, key) {
@@ -2,14 +2,11 @@
2
2
  "name": "atom.io-ephemeral",
3
3
  "type": "module",
4
4
  "private": true,
5
- "main": "dist/index.cjs",
6
- "module": "dist/index.js",
5
+ "main": "dist/index.js",
7
6
  "types": "dist/index.d.ts",
8
7
  "exports": {
9
8
  ".": {
10
9
  "import": "./dist/index.js",
11
- "browser": "./dist/index.js",
12
- "require": "./dist/index.cjs",
13
10
  "types": "./dist/index.d.ts"
14
11
  }
15
12
  }
@@ -14,7 +14,7 @@ import type {
14
14
  } from "atom.io"
15
15
  import type { Transceiver } from "atom.io/internal"
16
16
  import { findInStore, IMPLICIT } from "atom.io/internal"
17
- import type { Json } from "atom.io/json"
17
+ import type { Canonical, Json } from "atom.io/json"
18
18
 
19
19
  /**
20
20
  * @overload Mutable Atom
@@ -27,7 +27,7 @@ import type { Json } from "atom.io/json"
27
27
  export function findState<
28
28
  T extends Transceiver<any>,
29
29
  J extends Json.Serializable,
30
- K extends Json.Serializable,
30
+ K extends Canonical,
31
31
  Key extends K,
32
32
  >(token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J>
33
33
  /**
@@ -37,7 +37,7 @@ export function findState<
37
37
  * @returns
38
38
  * The current value of the state.
39
39
  */
40
- export function findState<T, K extends Json.Serializable, Key extends K>(
40
+ export function findState<T, K extends Canonical, Key extends K>(
41
41
  token: RegularAtomFamilyToken<T, K>,
42
42
  key: Key,
43
43
  ): RegularAtomToken<T>
@@ -48,7 +48,7 @@ export function findState<T, K extends Json.Serializable, Key extends K>(
48
48
  * @returns
49
49
  * The current value of the state.
50
50
  */
51
- export function findState<T, K extends Json.Serializable, Key extends K>(
51
+ export function findState<T, K extends Canonical, Key extends K>(
52
52
  token: WritableSelectorFamilyToken<T, K>,
53
53
  key: Key,
54
54
  ): WritableSelectorToken<T>
@@ -59,7 +59,7 @@ export function findState<T, K extends Json.Serializable, Key extends K>(
59
59
  * @returns
60
60
  * The current value of the state.
61
61
  */
62
- export function findState<T, K extends Json.Serializable, Key extends K>(
62
+ export function findState<T, K extends Canonical, Key extends K>(
63
63
  token: ReadonlySelectorFamilyToken<T, K>,
64
64
  key: Key,
65
65
  ): ReadonlySelectorToken<T>
@@ -70,7 +70,7 @@ export function findState<T, K extends Json.Serializable, Key extends K>(
70
70
  * @returns
71
71
  * The current value of the state.
72
72
  */
73
- export function findState<T, K extends Json.Serializable, Key extends K>(
73
+ export function findState<T, K extends Canonical, Key extends K>(
74
74
  token: WritableFamilyToken<T, K>,
75
75
  key: Key,
76
76
  ): WritableToken<T>
@@ -83,7 +83,7 @@ export function findState<T, K extends Json.Serializable, Key extends K>(
83
83
  * The current value of the state.
84
84
  * @overload Unknown
85
85
  */
86
- export function findState<T, K extends Json.Serializable, Key extends K>(
86
+ export function findState<T, K extends Canonical, Key extends K>(
87
87
  token: ReadableFamilyToken<T, K>,
88
88
  key: Key,
89
89
  ): ReadableToken<T>
@@ -1,4 +1,4 @@
1
- import { __export } from '../../dist/chunk-S4N6XNPH.js';
1
+ import { __export } from '../../dist/chunk-XWL6SNVU.js';
2
2
  import { ESLintUtils } from '@typescript-eslint/utils';
3
3
 
4
4
  // eslint-plugin/src/rules/index.ts
@@ -146,8 +146,7 @@ var lifespan = {
146
146
  ]
147
147
  },
148
148
  create(context) {
149
- var _a;
150
- const storeLifespan = (_a = context.options[0]) != null ? _a : `ephemeral`;
149
+ const storeLifespan = context.options[0] ?? `ephemeral`;
151
150
  return {
152
151
  ImportDeclaration(node) {
153
152
  const importSource = node.source.value;
@@ -168,7 +167,7 @@ var lifespan = {
168
167
  }
169
168
  const functionCallee = node.callee.type === `Identifier` ? node.callee : void 0;
170
169
  const methodCallee = node.callee.type === `MemberExpression` && node.callee.property.type === `Identifier` ? node.callee.property : void 0;
171
- const callee = functionCallee != null ? functionCallee : methodCallee;
170
+ const callee = functionCallee ?? methodCallee;
172
171
  if (callee === void 0) {
173
172
  return;
174
173
  }
@@ -296,8 +295,8 @@ var synchronousSelectorDependencies = {
296
295
  return `key` in prop && `name` in prop.key && prop.key.name === `get`;
297
296
  }
298
297
  );
299
- const selectorLookup = selectorLookupProperty == null ? void 0 : selectorLookupProperty.value;
300
- if ((selectorLookup == null ? void 0 : selectorLookup.type) === `FunctionExpression` || (selectorLookup == null ? void 0 : selectorLookup.type) === `ArrowFunctionExpression`) {
298
+ const selectorLookup = selectorLookupProperty?.value;
299
+ if (selectorLookup?.type === `FunctionExpression` || selectorLookup?.type === `ArrowFunctionExpression`) {
301
300
  if (selectorLookup.body.type === `BlockStatement`) {
302
301
  for (const statement of selectorLookup.body.body) {
303
302
  if (statement.type === `ReturnStatement` && statement.argument) {
@@ -317,10 +316,10 @@ var synchronousSelectorDependencies = {
317
316
  return `key` in prop && `name` in prop.key && prop.key.name === `get`;
318
317
  }
319
318
  );
320
- selectorComputation = selectorComputationProperty == null ? void 0 : selectorComputationProperty.value;
319
+ selectorComputation = selectorComputationProperty?.value;
321
320
  }
322
321
  }
323
- if ((selectorComputation == null ? void 0 : selectorComputation.type) === `FunctionExpression` || (selectorComputation == null ? void 0 : selectorComputation.type) === `ArrowFunctionExpression`) {
322
+ if (selectorComputation?.type === `FunctionExpression` || selectorComputation?.type === `ArrowFunctionExpression`) {
324
323
  const nonDestructuredTransactorsName = selectorComputation.params[0] && `name` in selectorComputation.params[0] ? selectorComputation.params[0].name : void 0;
325
324
  let awaited;
326
325
  let awaitNode;
@@ -2,14 +2,11 @@
2
2
  "name": "atom.io-eslint-plugin",
3
3
  "type": "module",
4
4
  "private": true,
5
- "main": "dist/index.cjs",
6
- "module": "dist/index.js",
5
+ "main": "dist/index.js",
7
6
  "types": "dist/index.d.ts",
8
7
  "exports": {
9
8
  ".": {
10
9
  "import": "./dist/index.js",
11
- "browser": "./dist/index.js",
12
- "require": "./dist/index.cjs",
13
10
  "types": "./dist/index.d.ts"
14
11
  }
15
12
  }
@@ -1,13 +1,13 @@
1
1
  import { MutableAtomFamilyToken, MutableAtomToken, RegularAtomFamilyToken, RegularAtomToken, WritableSelectorFamilyToken, WritableSelectorToken, ReadonlySelectorFamilyToken, ReadonlySelectorToken, WritableFamilyToken, WritableToken, ReadableFamilyToken, ReadableToken, MoleculeConstructor, MoleculeFamilyToken, MoleculeKey, MoleculeToken } from 'atom.io';
2
2
  import { Transceiver } from 'atom.io/internal';
3
- import { Json } from 'atom.io/json';
3
+ import { Json, Canonical } from 'atom.io/json';
4
4
 
5
- declare function seekState<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J> | undefined;
6
- declare function seekState<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T> | undefined;
7
- declare function seekState<T, K extends Json.Serializable, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T> | undefined;
8
- declare function seekState<T, K extends Json.Serializable, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key): ReadonlySelectorToken<T> | undefined;
9
- declare function seekState<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key): WritableToken<T> | undefined;
10
- declare function seekState<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key): ReadableToken<T> | undefined;
5
+ declare function seekState<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key): MutableAtomToken<T, J> | undefined;
6
+ declare function seekState<T, K extends Canonical, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key): RegularAtomToken<T> | undefined;
7
+ declare function seekState<T, K extends Canonical, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key): WritableSelectorToken<T> | undefined;
8
+ declare function seekState<T, K extends Canonical, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key): ReadonlySelectorToken<T> | undefined;
9
+ declare function seekState<T, K extends Canonical, Key extends K>(token: WritableFamilyToken<T, K>, key: Key): WritableToken<T> | undefined;
10
+ declare function seekState<T, K extends Canonical, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key): ReadableToken<T> | undefined;
11
11
  declare function seekState<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, key: MoleculeKey<M>): MoleculeToken<M> | undefined;
12
12
 
13
13
  export { seekState };
@@ -1,4 +1,4 @@
1
- import '../../dist/chunk-S4N6XNPH.js';
1
+ import '../../dist/chunk-XWL6SNVU.js';
2
2
  import { seekInStore, IMPLICIT } from 'atom.io/internal';
3
3
 
4
4
  function seekState(token, key) {
@@ -2,14 +2,11 @@
2
2
  "name": "atom.io-immortal",
3
3
  "type": "module",
4
4
  "private": true,
5
- "main": "dist/index.cjs",
6
- "module": "dist/index.js",
5
+ "main": "dist/index.js",
7
6
  "types": "dist/index.d.ts",
8
7
  "exports": {
9
8
  ".": {
10
9
  "import": "./dist/index.js",
11
- "browser": "./dist/index.js",
12
- "require": "./dist/index.cjs",
13
10
  "types": "./dist/index.d.ts"
14
11
  }
15
12
  }
@@ -18,39 +18,39 @@ import type {
18
18
  } from "atom.io"
19
19
  import type { Transceiver } from "atom.io/internal"
20
20
  import { IMPLICIT, seekInStore } from "atom.io/internal"
21
- import type { Json } from "atom.io/json"
21
+ import type { Canonical, Json } from "atom.io/json"
22
22
 
23
23
  export function seekState<
24
24
  T extends Transceiver<any>,
25
25
  J extends Json.Serializable,
26
- K extends Json.Serializable,
26
+ K extends Canonical,
27
27
  Key extends K,
28
28
  >(
29
29
  token: MutableAtomFamilyToken<T, J, K>,
30
30
  key: Key,
31
31
  ): MutableAtomToken<T, J> | undefined
32
32
 
33
- export function seekState<T, K extends Json.Serializable, Key extends K>(
33
+ export function seekState<T, K extends Canonical, Key extends K>(
34
34
  token: RegularAtomFamilyToken<T, K>,
35
35
  key: Key,
36
36
  ): RegularAtomToken<T> | undefined
37
37
 
38
- export function seekState<T, K extends Json.Serializable, Key extends K>(
38
+ export function seekState<T, K extends Canonical, Key extends K>(
39
39
  token: WritableSelectorFamilyToken<T, K>,
40
40
  key: Key,
41
41
  ): WritableSelectorToken<T> | undefined
42
42
 
43
- export function seekState<T, K extends Json.Serializable, Key extends K>(
43
+ export function seekState<T, K extends Canonical, Key extends K>(
44
44
  token: ReadonlySelectorFamilyToken<T, K>,
45
45
  key: Key,
46
46
  ): ReadonlySelectorToken<T> | undefined
47
47
 
48
- export function seekState<T, K extends Json.Serializable, Key extends K>(
48
+ export function seekState<T, K extends Canonical, Key extends K>(
49
49
  token: WritableFamilyToken<T, K>,
50
50
  key: Key,
51
51
  ): WritableToken<T> | undefined
52
52
 
53
- export function seekState<T, K extends Json.Serializable, Key extends K>(
53
+ export function seekState<T, K extends Canonical, Key extends K>(
54
54
  token: ReadableFamilyToken<T, K>,
55
55
  key: Key,
56
56
  ): ReadableToken<T> | undefined
@@ -62,7 +62,7 @@ export function seekState<M extends MoleculeConstructor>(
62
62
 
63
63
  export function seekState(
64
64
  token: MoleculeFamilyToken<any> | ReadableFamilyToken<any, any>,
65
- key: Json.Serializable,
65
+ key: Canonical,
66
66
  ): MoleculeToken<any> | ReadableToken<any> | undefined {
67
67
  if (token.type === `molecule_family`) {
68
68
  return seekInStore(token, key, IMPLICIT.STORE)
@@ -1,6 +1,6 @@
1
1
  import * as atom_io from 'atom.io';
2
2
  import { TransactionToken, TransactionUpdate, TransactionOptions, ActorToolkit, RegularAtomToken, MutableAtomToken, AtomToken, WritableSelectorToken, ReadonlySelectorToken, SelectorToken, WritableToken, MoleculeToken, MoleculeFamily, MoleculeFamilyToken, ReadableToken, TimelineManageable, StateUpdate, TokenType, FamilyMetadata, StateCreation, StateDisposal, MoleculeConstructor, MoleculeCreation, MoleculeDisposal, TimelineUpdate, TimelineOptions, TimelineToken, WritableSelectorFamily, MutableAtomFamily, RegularAtomFamily, ReadonlySelectorFamily, AtomIOLogger, Logger, AtomFamily, ReadableFamily, SelectorFamily, WritableFamily, RegularAtomFamilyToken, MutableAtomFamilyToken, AtomFamilyToken, ReadonlySelectorFamilyToken, WritableSelectorFamilyToken, SelectorFamilyToken, ReadableFamilyToken, WritableFamilyToken, MutableAtomOptions, MutableAtomFamilyOptions, RegularAtomOptions, RegularAtomFamilyOptions, ReadonlySelectorFamilyOptions, WritableSelectorFamilyOptions, MoleculeKey, KeyedStateUpdate, MoleculeFamilyOptions, MoleculeParams, ReadonlySelectorOptions, WritableSelectorOptions, SetterToolkit, UpdateHandler, TransactionUpdateHandler } from 'atom.io';
3
- import { Json, JsonInterface } from 'atom.io/json';
3
+ import { Canonical, Json, JsonInterface } from 'atom.io/json';
4
4
  import { Join } from 'atom.io/data';
5
5
 
6
6
  type primitive = boolean | number | string | null;
@@ -155,10 +155,10 @@ declare function deposit<T>(state: WritableSelector<T>): WritableSelectorToken<T
155
155
  declare function deposit<T>(state: ReadonlySelector<T>): ReadonlySelectorToken<T>;
156
156
  declare function deposit<T>(state: Selector<T>): SelectorToken<T>;
157
157
  declare function deposit<T>(state: WritableState<T>): WritableToken<T>;
158
- declare function deposit<K extends Json.Serializable, S extends {
158
+ declare function deposit<K extends Canonical, S extends {
159
159
  [key: string]: any;
160
160
  }, P extends any[]>(state: Molecule<any>): MoleculeToken<any>;
161
- declare function deposit<K extends Json.Serializable, S extends {
161
+ declare function deposit<K extends Canonical, S extends {
162
162
  [key: string]: any;
163
163
  }, P extends any[]>(state: MoleculeFamily<any>): MoleculeFamilyToken<any>;
164
164
  declare function deposit<T extends Func>(state: Transaction<T>): TransactionToken<T>;
@@ -295,14 +295,14 @@ declare function withdraw<T>(token: ReadonlySelectorToken<T>, store: Store): Rea
295
295
  declare function withdraw<T>(token: SelectorToken<T>, store: Store): Selector<T>;
296
296
  declare function withdraw<T>(token: WritableToken<T>, store: Store): WritableState<T>;
297
297
  declare function withdraw<T>(token: ReadableToken<T>, store: Store): ReadableState<T>;
298
- declare function withdraw<T, K extends Json.Serializable>(token: RegularAtomFamilyToken<T, K>, store: Store): RegularAtomFamily<T, K>;
299
- declare function withdraw<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable>(token: MutableAtomFamilyToken<T, J, K>, store: Store): MutableAtomFamily<T, J, K>;
300
- declare function withdraw<T, K extends Json.Serializable>(token: AtomFamilyToken<T>, store: Store): AtomFamily<T, any>;
301
- declare function withdraw<T, K extends Json.Serializable>(token: ReadonlySelectorFamilyToken<T, K>, store: Store): ReadonlySelectorFamily<T, any>;
302
- declare function withdraw<T, K extends Json.Serializable>(token: WritableSelectorFamilyToken<T, K>, store: Store): WritableSelectorFamily<T, any>;
303
- declare function withdraw<T, K extends Json.Serializable>(token: SelectorFamilyToken<T, K>, store: Store): SelectorFamily<T, any>;
304
- declare function withdraw<T, K extends Json.Serializable>(token: ReadableFamilyToken<T, K>, store: Store): ReadableFamily<T, any>;
305
- declare function withdraw<T, K extends Json.Serializable>(token: WritableFamilyToken<T, K>, store: Store): WritableFamily<T, any>;
298
+ declare function withdraw<T, K extends Canonical>(token: RegularAtomFamilyToken<T, K>, store: Store): RegularAtomFamily<T, K>;
299
+ declare function withdraw<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(token: MutableAtomFamilyToken<T, J, K>, store: Store): MutableAtomFamily<T, J, K>;
300
+ declare function withdraw<T, K extends Canonical>(token: AtomFamilyToken<T>, store: Store): AtomFamily<T, any>;
301
+ declare function withdraw<T, K extends Canonical>(token: ReadonlySelectorFamilyToken<T, K>, store: Store): ReadonlySelectorFamily<T, any>;
302
+ declare function withdraw<T, K extends Canonical>(token: WritableSelectorFamilyToken<T, K>, store: Store): WritableSelectorFamily<T, any>;
303
+ declare function withdraw<T, K extends Canonical>(token: SelectorFamilyToken<T, K>, store: Store): SelectorFamily<T, any>;
304
+ declare function withdraw<T, K extends Canonical>(token: ReadableFamilyToken<T, K>, store: Store): ReadableFamily<T, any>;
305
+ declare function withdraw<T, K extends Canonical>(token: WritableFamilyToken<T, K>, store: Store): WritableFamily<T, any>;
306
306
  declare function withdraw<M extends MoleculeConstructor>(token: MoleculeToken<M>, store: Store): Molecule<M>;
307
307
  declare function withdraw<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, store: Store): MoleculeFamily<M>;
308
308
  declare function withdraw<T extends Func>(token: TransactionToken<T>, store: Store): Transaction<T extends Func ? T : never>;
@@ -329,9 +329,6 @@ declare const getJsonToken: <Core extends Transceiver<any>, SerializableCore ext
329
329
 
330
330
  declare const getUpdateToken: <Core extends Transceiver<any>, SerializableCore extends Json.Serializable>(mutableAtomToken: MutableAtomToken<Core, SerializableCore>) => RegularAtomToken<Signal<Core>>;
331
331
 
332
- declare function isMutable(atom: Atom<any>): atom is MutableAtom<any, any>;
333
- declare function isMutable(family: AtomFamily<any, any>): family is MutableAtomFamily<any, any, any>;
334
-
335
332
  /**
336
333
  * @internal Give the tracker a transceiver state and a store, and it will
337
334
  * subscribe to the transceiver's inner value. When the inner value changes,
@@ -350,7 +347,7 @@ declare class Tracker<Mutable extends Transceiver<any>> {
350
347
  constructor(mutableState: MutableAtomToken<Mutable, Json.Serializable>, store: Store);
351
348
  }
352
349
 
353
- declare class FamilyTracker<Core extends Transceiver<any>, FamilyMemberKey extends Json.Serializable> {
350
+ declare class FamilyTracker<Core extends Transceiver<any>, FamilyMemberKey extends Canonical> {
354
351
  private readonly Update;
355
352
  readonly latestUpdateAtoms: RegularAtomFamily<typeof this.Update | null, FamilyMemberKey>;
356
353
  readonly mutableAtoms: MutableAtomFamily<Core, any, FamilyMemberKey>;
@@ -394,46 +391,46 @@ declare function cacheValue<T extends Promise<any>>(key: string, value: T, subje
394
391
  declare const readCachedValue: <T>(token: ReadableState<any>, target: Store) => T;
395
392
  declare const evictCachedValue: (key: string, target: Store) => void;
396
393
 
397
- declare function createAtomFamily<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable>(options: MutableAtomFamilyOptions<T, J, K>, store: Store): MutableAtomFamily<T, J, K>;
398
- declare function createAtomFamily<T, K extends Json.Serializable>(options: RegularAtomFamilyOptions<T, K>, store: Store): RegularAtomFamily<T, K>;
394
+ declare function createAtomFamily<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(options: MutableAtomFamilyOptions<T, J, K>, store: Store): MutableAtomFamily<T, J, K>;
395
+ declare function createAtomFamily<T, K extends Canonical>(options: RegularAtomFamilyOptions<T, K>, store: Store): RegularAtomFamily<T, K>;
399
396
 
400
- declare function createReadonlySelectorFamily<T, K extends Json.Serializable>(options: ReadonlySelectorFamilyOptions<T, K>, store: Store): ReadonlySelectorFamily<T, K>;
397
+ declare function createReadonlySelectorFamily<T, K extends Canonical>(options: ReadonlySelectorFamilyOptions<T, K>, store: Store): ReadonlySelectorFamily<T, K>;
401
398
 
402
- declare function createRegularAtomFamily<T, K extends Json.Serializable>(options: RegularAtomFamilyOptions<T, K>, store: Store): RegularAtomFamily<T, K>;
399
+ declare function createRegularAtomFamily<T, K extends Canonical>(options: RegularAtomFamilyOptions<T, K>, store: Store): RegularAtomFamily<T, K>;
403
400
 
404
- declare function createSelectorFamily<T, K extends Json.Serializable>(options: WritableSelectorFamilyOptions<T, K>, store: Store): WritableSelectorFamily<T, K>;
405
- declare function createSelectorFamily<T, K extends Json.Serializable>(options: ReadonlySelectorFamilyOptions<T, K>, store: Store): ReadonlySelectorFamily<T, K>;
401
+ declare function createSelectorFamily<T, K extends Canonical>(options: WritableSelectorFamilyOptions<T, K>, store: Store): WritableSelectorFamily<T, K>;
402
+ declare function createSelectorFamily<T, K extends Canonical>(options: ReadonlySelectorFamilyOptions<T, K>, store: Store): ReadonlySelectorFamily<T, K>;
406
403
 
407
404
  declare function disposeFromStore(token: MoleculeToken<any> | ReadableToken<any>, store: Store): void;
408
- declare function disposeFromStore<K extends Json.Serializable>(token: ReadableFamilyToken<any, K>, key: K, store: Store): void;
405
+ declare function disposeFromStore<K extends Canonical>(token: ReadableFamilyToken<any, K>, key: K, store: Store): void;
409
406
  declare function disposeFromStore<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, key: MoleculeKey<M>, store: Store): void;
410
407
 
411
- declare function findInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J>;
412
- declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T>;
413
- declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: AtomFamilyToken<T, K>, key: Key, store: Store): AtomToken<T>;
414
- declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key, store: Store): WritableSelectorToken<T>;
415
- declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key, store: Store): ReadonlySelectorToken<T>;
416
- declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T>;
417
- declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T>;
418
- declare function findInStore<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T>;
419
-
420
- declare function initFamilyMemberInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J>;
421
- declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T>;
422
- declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: AtomFamilyToken<T, K>, key: Key, store: Store): AtomToken<T>;
423
- declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key, store: Store): WritableSelectorToken<T>;
424
- declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key, store: Store): ReadonlySelectorToken<T>;
425
- declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T>;
426
- declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T>;
427
- declare function initFamilyMemberInStore<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T>;
428
-
429
- declare function seekInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J> | undefined;
430
- declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T> | undefined;
431
- declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: AtomFamilyToken<T, K>, key: Key, store: Store): AtomToken<T> | undefined;
432
- declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key, store: Store): WritableSelectorToken<T> | undefined;
433
- declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key, store: Store): ReadonlySelectorToken<T> | undefined;
434
- declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T> | undefined;
435
- declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T> | undefined;
436
- declare function seekInStore<T, K extends Json.Serializable, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T> | undefined;
408
+ declare function findInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J>;
409
+ declare function findInStore<T, K extends Canonical, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T>;
410
+ declare function findInStore<T, K extends Canonical, Key extends K>(token: AtomFamilyToken<T, K>, key: Key, store: Store): AtomToken<T>;
411
+ declare function findInStore<T, K extends Canonical, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key, store: Store): WritableSelectorToken<T>;
412
+ declare function findInStore<T, K extends Canonical, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key, store: Store): ReadonlySelectorToken<T>;
413
+ declare function findInStore<T, K extends Canonical, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T>;
414
+ declare function findInStore<T, K extends Canonical, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T>;
415
+ declare function findInStore<T, K extends Canonical, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T>;
416
+
417
+ declare function initFamilyMemberInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J>;
418
+ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T>;
419
+ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(token: AtomFamilyToken<T, K>, key: Key, store: Store): AtomToken<T>;
420
+ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key, store: Store): WritableSelectorToken<T>;
421
+ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key, store: Store): ReadonlySelectorToken<T>;
422
+ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T>;
423
+ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T>;
424
+ declare function initFamilyMemberInStore<T, K extends Canonical, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T>;
425
+
426
+ declare function seekInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical, Key extends K>(token: MutableAtomFamilyToken<T, J, K>, key: Key, store: Store): MutableAtomToken<T, J> | undefined;
427
+ declare function seekInStore<T, K extends Canonical, Key extends K>(token: RegularAtomFamilyToken<T, K>, key: Key, store: Store): RegularAtomToken<T> | undefined;
428
+ declare function seekInStore<T, K extends Canonical, Key extends K>(token: AtomFamilyToken<T, K>, key: Key, store: Store): AtomToken<T> | undefined;
429
+ declare function seekInStore<T, K extends Canonical, Key extends K>(token: WritableSelectorFamilyToken<T, K>, key: Key, store: Store): WritableSelectorToken<T> | undefined;
430
+ declare function seekInStore<T, K extends Canonical, Key extends K>(token: ReadonlySelectorFamilyToken<T, K>, key: Key, store: Store): ReadonlySelectorToken<T> | undefined;
431
+ declare function seekInStore<T, K extends Canonical, Key extends K>(token: SelectorFamilyToken<T, K>, key: Key, store: Store): SelectorToken<T> | undefined;
432
+ declare function seekInStore<T, K extends Canonical, Key extends K>(token: WritableFamilyToken<T, K>, key: Key, store: Store): WritableToken<T> | undefined;
433
+ declare function seekInStore<T, K extends Canonical, Key extends K>(token: ReadableFamilyToken<T, K>, key: Key, store: Store): ReadableToken<T> | undefined;
437
434
  declare function seekInStore<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, key: MoleculeKey<M>, store: Store): MoleculeKey<M> | undefined;
438
435
 
439
436
  type EnvironmentData = {
@@ -443,7 +440,7 @@ declare function getEnvironmentData(store: Store): EnvironmentData;
443
440
 
444
441
  declare function getFromStore<T>(token: ReadableToken<T>, store: Store): T;
445
442
  declare function getFromStore<M extends MoleculeConstructor>(token: MoleculeToken<M>, store: Store): InstanceType<M> | undefined;
446
- declare function getFromStore<T, K extends Json.Serializable>(token: ReadableFamilyToken<T, K>, key: K, store: Store): T;
443
+ declare function getFromStore<T, K extends Canonical>(token: ReadableFamilyToken<T, K>, key: K, store: Store): T;
447
444
  declare function getFromStore<M extends MoleculeConstructor>(token: MoleculeFamilyToken<M>, key: MoleculeKey<M>, store: Store): InstanceType<M>;
448
445
 
449
446
  declare const readOrComputeValue: <T>(state: ReadableState<T>, target: Store) => T;
@@ -506,14 +503,14 @@ declare class Molecule<M extends MoleculeConstructor> implements MoleculeToken<M
506
503
  constructor(ctx: Molecule<any> | Molecule<any>[] | undefined, key: MoleculeKey<M>, family?: MoleculeFamilyToken<M>);
507
504
  }
508
505
 
509
- declare function growMoleculeInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Json.Serializable>(molecule: Molecule<any>, family: MutableAtomFamily<T, J, K>, store: Store): MutableAtomToken<T, J>;
510
- declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: RegularAtomFamily<T, K>, store: Store): RegularAtomToken<T>;
511
- declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: AtomFamily<T, K>, store: Store): AtomToken<T>;
512
- declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: WritableSelectorFamily<T, K>, store: Store): WritableSelectorToken<T>;
513
- declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: ReadonlySelectorFamily<T, K>, store: Store): ReadonlySelectorToken<T>;
514
- declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: SelectorFamily<T, K>, store: Store): SelectorToken<T>;
515
- declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: WritableFamily<T, K>, store: Store): WritableToken<T>;
516
- declare function growMoleculeInStore<T, K extends Json.Serializable>(molecule: Molecule<any>, family: ReadableFamily<T, K>, store: Store): ReadableToken<T>;
506
+ declare function growMoleculeInStore<T extends Transceiver<any>, J extends Json.Serializable, K extends Canonical>(molecule: Molecule<any>, family: MutableAtomFamily<T, J, K>, store: Store): MutableAtomToken<T, J>;
507
+ declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: RegularAtomFamily<T, K>, store: Store): RegularAtomToken<T>;
508
+ declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: AtomFamily<T, K>, store: Store): AtomToken<T>;
509
+ declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: WritableSelectorFamily<T, K>, store: Store): WritableSelectorToken<T>;
510
+ declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: ReadonlySelectorFamily<T, K>, store: Store): ReadonlySelectorToken<T>;
511
+ declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: SelectorFamily<T, K>, store: Store): SelectorToken<T>;
512
+ declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: WritableFamily<T, K>, store: Store): WritableToken<T>;
513
+ declare function growMoleculeInStore<T, K extends Canonical>(molecule: Molecule<any>, family: ReadableFamily<T, K>, store: Store): ReadableToken<T>;
517
514
 
518
515
  declare function makeMoleculeInStore<M extends MoleculeConstructor>(store: Store, context: MoleculeToken<M> | MoleculeToken<M>[], familyToken: MoleculeFamilyToken<M>, key: MoleculeKey<M>, ...params: MoleculeParams<M>): MoleculeToken<M>;
519
516
 
@@ -547,7 +544,7 @@ declare const become: <T>(nextVersionOfThing: Modify<T> | T) => (originalThing:
547
544
  declare const setAtomOrSelector: <T>(state: WritableState<T>, value: T | ((oldValue: T) => T), store: Store) => void;
548
545
 
549
546
  declare function setIntoStore<T, New extends T>(token: WritableToken<T>, value: New | ((oldValue: T) => New), store: Store): void;
550
- declare function setIntoStore<T, K extends Json.Serializable, New extends T>(token: WritableFamilyToken<T, K>, key: K, value: New | ((oldValue: T) => New), store: Store): void;
547
+ declare function setIntoStore<T, K extends Canonical, New extends T>(token: WritableFamilyToken<T, K>, key: K, value: New | ((oldValue: T) => New), store: Store): void;
551
548
 
552
549
  declare const subscribeToRootAtoms: <T>(selector: Selector<T>, store: Store) => (() => void)[];
553
550
 
@@ -590,4 +587,4 @@ type Selector<T> = ReadonlySelector<T> | WritableSelector<T>;
590
587
  type WritableState<T> = Atom<T> | WritableSelector<T>;
591
588
  type ReadableState<T> = Atom<T> | Selector<T>;
592
589
 
593
- export { type Atom, type AtomIOState, type AtomKey, type ChildStore, type EnvironmentData, FamilyTracker, type Flat, type Func, Future, IMPLICIT, LazyMap, type Lineage, type Modify, Molecule, type MutableAtom, NotFoundError, type OperationProgress, type ReadableState, type ReadonlySelector, type ReadonlySelectorKey, type RegularAtom, type RootStore, type Selector, type SelectorKey, type Signal, type StateKey, StatefulSubject, Store, Subject, TRANSACTION_PHASES, type Timeline, type TimelineAtomUpdate, type TimelineMoleculeCreation, type TimelineMoleculeDisposal, type TimelineSelectorUpdate, type TimelineStateCreation, type TimelineStateDisposal, type TimelineTransactionUpdate, Tracker, type Transaction, type TransactionEpoch, type TransactionPhase, type TransactionProgress, type Transceiver, type TransceiverMode, type Withdrawable, type WritableSelector, type WritableState, abortTransaction, actUponStore, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, createAtomFamily, createMoleculeFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeMolecule, disposeSelector, eldest, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateToken, growMoleculeInStore, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate, initFamilyMemberInStore, isAtomDefault, isAtomKey, isChildStore, isDone, isMutable, isReadonlySelectorKey, isRootStore, isSelectorKey, isStateKey, isTransceiver, makeMoleculeInStore, markAtomAsDefault, markAtomAsNotDefault, markDone, newest, openOperation, readCachedValue, readOrComputeValue, registerSelector, seekInStore, setAtomOrSelector, setEpochNumberOfAction, setEpochNumberOfContinuity, setIntoStore, subscribeToRootAtoms, subscribeToState, subscribeToTimeline, subscribeToTransaction, timeTravel, traceAllSelectorAtoms, traceSelectorAtoms, updateSelectorAtoms, withdraw };
590
+ export { type Atom, type AtomIOState, type AtomKey, type ChildStore, type EnvironmentData, FamilyTracker, type Flat, type Func, Future, IMPLICIT, LazyMap, type Lineage, type Modify, Molecule, type MutableAtom, NotFoundError, type OperationProgress, type ReadableState, type ReadonlySelector, type ReadonlySelectorKey, type RegularAtom, type RootStore, type Selector, type SelectorKey, type Signal, type StateKey, StatefulSubject, Store, Subject, TRANSACTION_PHASES, type Timeline, type TimelineAtomUpdate, type TimelineMoleculeCreation, type TimelineMoleculeDisposal, type TimelineSelectorUpdate, type TimelineStateCreation, type TimelineStateDisposal, type TimelineTransactionUpdate, Tracker, type Transaction, type TransactionEpoch, type TransactionPhase, type TransactionProgress, type Transceiver, type TransceiverMode, type Withdrawable, type WritableSelector, type WritableState, abortTransaction, actUponStore, applyTransaction, arbitrary, assignTransactionToContinuity, become, buildTransaction, cacheValue, clearStore, closeOperation, createAtomFamily, createMoleculeFamily, createMutableAtom, createMutableAtomFamily, createReadonlySelector, createReadonlySelectorFamily, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneAtom, createStandaloneSelector, createTimeline, createTransaction, createWritableSelector, deposit, disposeAtom, disposeFromStore, disposeMolecule, disposeSelector, eldest, evictCachedValue, findInStore, getContinuityKey, getEnvironmentData, getEpochNumberOfAction, getEpochNumberOfContinuity, getFromStore, getJsonFamily, getJsonToken, getSelectorDependencyKeys, getUpdateToken, growMoleculeInStore, ingestAtomUpdate, ingestCreationEvent, ingestDisposalEvent, ingestMoleculeCreationEvent, ingestMoleculeDisposalEvent, ingestSelectorUpdate, ingestTransactionUpdate, initFamilyMemberInStore, isAtomDefault, isAtomKey, isChildStore, isDone, isReadonlySelectorKey, isRootStore, isSelectorKey, isStateKey, isTransceiver, makeMoleculeInStore, markAtomAsDefault, markAtomAsNotDefault, markDone, newest, openOperation, readCachedValue, readOrComputeValue, registerSelector, seekInStore, setAtomOrSelector, setEpochNumberOfAction, setEpochNumberOfContinuity, setIntoStore, subscribeToRootAtoms, subscribeToState, subscribeToTimeline, subscribeToTransaction, timeTravel, traceAllSelectorAtoms, traceSelectorAtoms, updateSelectorAtoms, withdraw };