@warp-drive/core 5.6.0-alpha.14 → 5.6.0-alpha.17

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 (287) hide show
  1. package/declarations/build-config/babel-macros.d.ts +1 -2
  2. package/declarations/build-config/canary-features.d.ts +1 -2
  3. package/declarations/build-config/debugging.d.ts +1 -2
  4. package/declarations/build-config/deprecations.d.ts +1 -2
  5. package/declarations/build-config/env.d.ts +1 -2
  6. package/declarations/build-config/macros.d.ts +1 -2
  7. package/declarations/build-config.d.ts +1 -2
  8. package/declarations/configure.d.ts +6 -7
  9. package/declarations/graph/-private/-diff.d.ts +21 -22
  10. package/declarations/graph/-private/-edge-definition.d.ts +134 -135
  11. package/declarations/graph/-private/-state.d.ts +93 -7
  12. package/declarations/graph/-private/-utils.d.ts +18 -13
  13. package/declarations/graph/-private/coerce-id.d.ts +6 -1
  14. package/declarations/graph/-private/debug/assert-polymorphic-type.d.ts +15 -4
  15. package/declarations/graph/-private/edges/collection.d.ts +35 -36
  16. package/declarations/graph/-private/edges/implicit.d.ts +28 -29
  17. package/declarations/graph/-private/edges/resource.d.ts +19 -20
  18. package/declarations/graph/-private/graph.d.ts +83 -48
  19. package/declarations/graph/-private/normalize-link.d.ts +7 -2
  20. package/declarations/graph/-private/operations/add-to-related-records.d.ts +3 -4
  21. package/declarations/graph/-private/operations/merge-identifier.d.ts +2 -3
  22. package/declarations/graph/-private/operations/remove-from-related-records.d.ts +3 -4
  23. package/declarations/graph/-private/operations/replace-related-record.d.ts +2 -3
  24. package/declarations/graph/-private/operations/replace-related-records.d.ts +58 -4
  25. package/declarations/graph/-private/operations/update-relationship.d.ts +11 -9
  26. package/declarations/graph/-private.d.ts +9 -10
  27. package/declarations/index.d.ts +11 -12
  28. package/declarations/reactive/-private/document.d.ts +143 -144
  29. package/declarations/reactive/-private/fields/compute.d.ts +31 -28
  30. package/declarations/reactive/-private/fields/extension.d.ts +8 -0
  31. package/declarations/reactive/-private/fields/managed-array.d.ts +19 -20
  32. package/declarations/reactive/-private/fields/managed-object.d.ts +16 -16
  33. package/declarations/reactive/-private/fields/many-array-manager.d.ts +15 -16
  34. package/declarations/reactive/-private/hooks.d.ts +3 -4
  35. package/declarations/reactive/-private/record.d.ts +61 -58
  36. package/declarations/reactive/-private/schema.d.ts +256 -165
  37. package/declarations/reactive/-private/symbols.d.ts +27 -2
  38. package/declarations/reactive/-private.d.ts +1 -2
  39. package/declarations/reactive.d.ts +4 -5
  40. package/declarations/request/-private/context.d.ts +34 -35
  41. package/declarations/request/-private/debug.d.ts +2 -3
  42. package/declarations/request/-private/fetch.d.ts +23 -24
  43. package/declarations/request/-private/future.d.ts +3 -4
  44. package/declarations/request/-private/manager.d.ts +159 -157
  45. package/declarations/request/-private/promise-cache.d.ts +21 -13
  46. package/declarations/request/-private/types.d.ts +124 -124
  47. package/declarations/request/-private/utils.d.ts +8 -9
  48. package/declarations/request.d.ts +5 -6
  49. package/declarations/store/-private/cache-handler/handler.d.ts +57 -52
  50. package/declarations/store/-private/cache-handler/types.d.ts +95 -96
  51. package/declarations/store/-private/cache-handler/utils.d.ts +16 -16
  52. package/declarations/store/-private/caches/cache-utils.d.ts +7 -4
  53. package/declarations/store/-private/caches/identifier-cache.d.ts +234 -246
  54. package/declarations/store/-private/caches/instance-cache.d.ts +47 -47
  55. package/declarations/store/-private/caches/resource-utils.d.ts +3 -4
  56. package/declarations/store/-private/debug/utils.d.ts +6 -7
  57. package/declarations/store/-private/default-cache-policy.d.ts +362 -361
  58. package/declarations/store/-private/legacy-model-support/record-reference.d.ts +154 -159
  59. package/declarations/store/-private/legacy-model-support/shim-model-class.d.ts +14 -14
  60. package/declarations/store/-private/managers/cache-capabilities-manager.d.ts +21 -22
  61. package/declarations/store/-private/managers/cache-manager.d.ts +440 -425
  62. package/declarations/store/-private/managers/notification-manager.d.ts +88 -83
  63. package/declarations/store/-private/managers/record-array-manager.d.ts +89 -90
  64. package/declarations/store/-private/network/request-cache.d.ts +86 -83
  65. package/declarations/store/-private/new-core-tmp/promise-state.d.ts +252 -244
  66. package/declarations/store/-private/new-core-tmp/reactivity/configure.d.ts +155 -72
  67. package/declarations/store/-private/new-core-tmp/reactivity/internal.d.ts +148 -149
  68. package/declarations/store/-private/new-core-tmp/reactivity/signal.d.ts +28 -23
  69. package/declarations/store/-private/new-core-tmp/request-state.d.ts +263 -241
  70. package/declarations/store/-private/new-core-tmp/request-subscription.d.ts +261 -0
  71. package/declarations/store/-private/record-arrays/identifier-array.d.ts +125 -119
  72. package/declarations/store/-private/record-arrays/many-array.d.ts +180 -182
  73. package/declarations/store/-private/record-arrays/native-proxy-type-fix.d.ts +120 -110
  74. package/declarations/store/-private/store-service.d.ts +1594 -1586
  75. package/declarations/store/-private/utils/coerce-id.d.ts +6 -1
  76. package/declarations/store/-private/utils/construct-resource.d.ts +1 -2
  77. package/declarations/store/-private/utils/is-non-empty-string.d.ts +0 -1
  78. package/declarations/store/-private/utils/normalize-model-name.d.ts +0 -1
  79. package/declarations/store/-private/utils/uuid-polyfill.d.ts +0 -1
  80. package/declarations/store/-private.d.ts +31 -27
  81. package/declarations/store/-types/q/cache-capabilities-manager.d.ts +96 -97
  82. package/declarations/store/-types/q/ds-model.d.ts +17 -18
  83. package/declarations/store/-types/q/identifier.d.ts +11 -12
  84. package/declarations/store/-types/q/record-instance.d.ts +16 -17
  85. package/declarations/store/-types/q/schema-service.d.ts +346 -323
  86. package/declarations/store/-types/q/store.d.ts +25 -28
  87. package/declarations/store.d.ts +1 -2
  88. package/declarations/types/-private.d.ts +16 -8
  89. package/declarations/types/cache/aliases.d.ts +11 -1
  90. package/declarations/types/cache/change.d.ts +4 -5
  91. package/declarations/types/cache/mutations.d.ts +51 -28
  92. package/declarations/types/cache/operations.d.ts +60 -47
  93. package/declarations/types/cache/relationship.d.ts +11 -9
  94. package/declarations/types/cache.d.ts +495 -484
  95. package/declarations/types/graph.d.ts +31 -32
  96. package/declarations/types/identifier.d.ts +83 -82
  97. package/declarations/types/json/raw.d.ts +1 -2
  98. package/declarations/types/params.d.ts +4 -5
  99. package/declarations/types/record.d.ts +117 -76
  100. package/declarations/types/request.d.ts +289 -266
  101. package/declarations/types/runtime.d.ts +8 -9
  102. package/declarations/types/schema/concepts.d.ts +19 -13
  103. package/declarations/types/schema/fields.d.ts +1712 -1587
  104. package/declarations/types/schema/fields.type-test.d.ts +0 -1
  105. package/declarations/types/spec/document.d.ts +28 -22
  106. package/declarations/types/spec/error.d.ts +16 -17
  107. package/declarations/types/spec/json-api-raw.d.ts +102 -102
  108. package/declarations/types/symbols.d.ts +74 -75
  109. package/declarations/types/utils.d.ts +5 -5
  110. package/declarations/types.d.ts +10 -11
  111. package/declarations/utils/string.d.ts +43 -40
  112. package/dist/{configure-BgaZESRo.js → configure-B48bFHOl.js} +38 -2
  113. package/dist/configure.js +1 -1
  114. package/dist/graph/-private.js +2 -2
  115. package/dist/{handler-cHghx9Y9.js → handler-C2T-IyJK.js} +1 -1
  116. package/dist/index.js +3 -3
  117. package/dist/reactive/-private.js +1 -1
  118. package/dist/reactive.js +287 -101
  119. package/dist/{request-state-DgwTEXLU.js → request-state-CjLph1LP.js} +1030 -249
  120. package/dist/store/-private.js +3 -3
  121. package/dist/{symbols-BmDcn6hS.js → symbols-SIstXMLI.js} +3 -3
  122. package/dist/types/-private.js +1 -1
  123. package/dist/types/schema/fields.js +4 -4
  124. package/package.json +4 -4
  125. package/declarations/build-config/babel-macros.d.ts.map +0 -1
  126. package/declarations/build-config/canary-features.d.ts.map +0 -1
  127. package/declarations/build-config/debugging.d.ts.map +0 -1
  128. package/declarations/build-config/deprecations.d.ts.map +0 -1
  129. package/declarations/build-config/env.d.ts.map +0 -1
  130. package/declarations/build-config/macros.d.ts.map +0 -1
  131. package/declarations/build-config.d.ts.map +0 -1
  132. package/declarations/configure.d.ts.map +0 -1
  133. package/declarations/graph/-private/-diff.d.ts.map +0 -1
  134. package/declarations/graph/-private/-edge-definition.d.ts.map +0 -1
  135. package/declarations/graph/-private/-state.d.ts.map +0 -1
  136. package/declarations/graph/-private/-utils.d.ts.map +0 -1
  137. package/declarations/graph/-private/coerce-id.d.ts.map +0 -1
  138. package/declarations/graph/-private/debug/assert-polymorphic-type.d.ts.map +0 -1
  139. package/declarations/graph/-private/edges/collection.d.ts.map +0 -1
  140. package/declarations/graph/-private/edges/implicit.d.ts.map +0 -1
  141. package/declarations/graph/-private/edges/resource.d.ts.map +0 -1
  142. package/declarations/graph/-private/graph.d.ts.map +0 -1
  143. package/declarations/graph/-private/normalize-link.d.ts.map +0 -1
  144. package/declarations/graph/-private/operations/add-to-related-records.d.ts.map +0 -1
  145. package/declarations/graph/-private/operations/merge-identifier.d.ts.map +0 -1
  146. package/declarations/graph/-private/operations/remove-from-related-records.d.ts.map +0 -1
  147. package/declarations/graph/-private/operations/replace-related-record.d.ts.map +0 -1
  148. package/declarations/graph/-private/operations/replace-related-records.d.ts.map +0 -1
  149. package/declarations/graph/-private/operations/update-relationship.d.ts.map +0 -1
  150. package/declarations/graph/-private.d.ts.map +0 -1
  151. package/declarations/index.d.ts.map +0 -1
  152. package/declarations/reactive/-private/document.d.ts.map +0 -1
  153. package/declarations/reactive/-private/fields/compute.d.ts.map +0 -1
  154. package/declarations/reactive/-private/fields/managed-array.d.ts.map +0 -1
  155. package/declarations/reactive/-private/fields/managed-object.d.ts.map +0 -1
  156. package/declarations/reactive/-private/fields/many-array-manager.d.ts.map +0 -1
  157. package/declarations/reactive/-private/hooks.d.ts.map +0 -1
  158. package/declarations/reactive/-private/record.d.ts.map +0 -1
  159. package/declarations/reactive/-private/schema.d.ts.map +0 -1
  160. package/declarations/reactive/-private/symbols.d.ts.map +0 -1
  161. package/declarations/reactive/-private.d.ts.map +0 -1
  162. package/declarations/reactive.d.ts.map +0 -1
  163. package/declarations/request/-private/context.d.ts.map +0 -1
  164. package/declarations/request/-private/debug.d.ts.map +0 -1
  165. package/declarations/request/-private/fetch.d.ts.map +0 -1
  166. package/declarations/request/-private/future.d.ts.map +0 -1
  167. package/declarations/request/-private/manager.d.ts.map +0 -1
  168. package/declarations/request/-private/promise-cache.d.ts.map +0 -1
  169. package/declarations/request/-private/types.d.ts.map +0 -1
  170. package/declarations/request/-private/utils.d.ts.map +0 -1
  171. package/declarations/request.d.ts.map +0 -1
  172. package/declarations/store/-private/cache-handler/handler.d.ts.map +0 -1
  173. package/declarations/store/-private/cache-handler/types.d.ts.map +0 -1
  174. package/declarations/store/-private/cache-handler/utils.d.ts.map +0 -1
  175. package/declarations/store/-private/caches/cache-utils.d.ts.map +0 -1
  176. package/declarations/store/-private/caches/identifier-cache.d.ts.map +0 -1
  177. package/declarations/store/-private/caches/instance-cache.d.ts.map +0 -1
  178. package/declarations/store/-private/caches/resource-utils.d.ts.map +0 -1
  179. package/declarations/store/-private/debug/utils.d.ts.map +0 -1
  180. package/declarations/store/-private/default-cache-policy.d.ts.map +0 -1
  181. package/declarations/store/-private/legacy-model-support/record-reference.d.ts.map +0 -1
  182. package/declarations/store/-private/legacy-model-support/shim-model-class.d.ts.map +0 -1
  183. package/declarations/store/-private/managers/cache-capabilities-manager.d.ts.map +0 -1
  184. package/declarations/store/-private/managers/cache-manager.d.ts.map +0 -1
  185. package/declarations/store/-private/managers/notification-manager.d.ts.map +0 -1
  186. package/declarations/store/-private/managers/record-array-manager.d.ts.map +0 -1
  187. package/declarations/store/-private/network/request-cache.d.ts.map +0 -1
  188. package/declarations/store/-private/new-core-tmp/promise-state.d.ts.map +0 -1
  189. package/declarations/store/-private/new-core-tmp/reactivity/configure.d.ts.map +0 -1
  190. package/declarations/store/-private/new-core-tmp/reactivity/internal.d.ts.map +0 -1
  191. package/declarations/store/-private/new-core-tmp/reactivity/signal.d.ts.map +0 -1
  192. package/declarations/store/-private/new-core-tmp/request-state.d.ts.map +0 -1
  193. package/declarations/store/-private/record-arrays/identifier-array.d.ts.map +0 -1
  194. package/declarations/store/-private/record-arrays/many-array.d.ts.map +0 -1
  195. package/declarations/store/-private/record-arrays/native-proxy-type-fix.d.ts.map +0 -1
  196. package/declarations/store/-private/store-service.d.ts.map +0 -1
  197. package/declarations/store/-private/store-service.type-test.d.ts +0 -2
  198. package/declarations/store/-private/store-service.type-test.d.ts.map +0 -1
  199. package/declarations/store/-private/utils/coerce-id.d.ts.map +0 -1
  200. package/declarations/store/-private/utils/construct-resource.d.ts.map +0 -1
  201. package/declarations/store/-private/utils/is-non-empty-string.d.ts.map +0 -1
  202. package/declarations/store/-private/utils/normalize-model-name.d.ts.map +0 -1
  203. package/declarations/store/-private/utils/uuid-polyfill.d.ts.map +0 -1
  204. package/declarations/store/-private.d.ts.map +0 -1
  205. package/declarations/store/-types/q/cache-capabilities-manager.d.ts.map +0 -1
  206. package/declarations/store/-types/q/ds-model.d.ts.map +0 -1
  207. package/declarations/store/-types/q/identifier.d.ts.map +0 -1
  208. package/declarations/store/-types/q/promise-proxies.d.ts +0 -2
  209. package/declarations/store/-types/q/promise-proxies.d.ts.map +0 -1
  210. package/declarations/store/-types/q/record-data-json-api.d.ts +0 -31
  211. package/declarations/store/-types/q/record-data-json-api.d.ts.map +0 -1
  212. package/declarations/store/-types/q/record-instance.d.ts.map +0 -1
  213. package/declarations/store/-types/q/schema-service.d.ts.map +0 -1
  214. package/declarations/store/-types/q/store.d.ts.map +0 -1
  215. package/declarations/store.d.ts.map +0 -1
  216. package/declarations/types/-private.d.ts.map +0 -1
  217. package/declarations/types/cache/aliases.d.ts.map +0 -1
  218. package/declarations/types/cache/change.d.ts.map +0 -1
  219. package/declarations/types/cache/mutations.d.ts.map +0 -1
  220. package/declarations/types/cache/operations.d.ts.map +0 -1
  221. package/declarations/types/cache/relationship.d.ts.map +0 -1
  222. package/declarations/types/cache.d.ts.map +0 -1
  223. package/declarations/types/graph.d.ts.map +0 -1
  224. package/declarations/types/identifier.d.ts.map +0 -1
  225. package/declarations/types/json/raw.d.ts.map +0 -1
  226. package/declarations/types/params.d.ts.map +0 -1
  227. package/declarations/types/record.d.ts.map +0 -1
  228. package/declarations/types/record.type-test.d.ts +0 -2
  229. package/declarations/types/record.type-test.d.ts.map +0 -1
  230. package/declarations/types/request.d.ts.map +0 -1
  231. package/declarations/types/request.type-test.d.ts +0 -2
  232. package/declarations/types/request.type-test.d.ts.map +0 -1
  233. package/declarations/types/runtime.d.ts.map +0 -1
  234. package/declarations/types/schema/concepts.d.ts.map +0 -1
  235. package/declarations/types/schema/fields.d.ts.map +0 -1
  236. package/declarations/types/schema/fields.type-test.d.ts.map +0 -1
  237. package/declarations/types/spec/document.d.ts.map +0 -1
  238. package/declarations/types/spec/error.d.ts.map +0 -1
  239. package/declarations/types/spec/json-api-raw.d.ts.map +0 -1
  240. package/declarations/types/symbols.d.ts.map +0 -1
  241. package/declarations/types/utils.d.ts.map +0 -1
  242. package/declarations/types.d.ts.map +0 -1
  243. package/declarations/utils/string.d.ts.map +0 -1
  244. package/dist/build-config/babel-macros.js.map +0 -1
  245. package/dist/build-config/canary-features.js.map +0 -1
  246. package/dist/build-config/debugging.js.map +0 -1
  247. package/dist/build-config/deprecations.js.map +0 -1
  248. package/dist/build-config/env.js.map +0 -1
  249. package/dist/build-config/macros.js.map +0 -1
  250. package/dist/build-config.js.map +0 -1
  251. package/dist/configure-BgaZESRo.js.map +0 -1
  252. package/dist/configure.js.map +0 -1
  253. package/dist/context-COmAnXUQ.js.map +0 -1
  254. package/dist/graph/-private.js.map +0 -1
  255. package/dist/handler-cHghx9Y9.js.map +0 -1
  256. package/dist/index.js.map +0 -1
  257. package/dist/reactive/-private.js.map +0 -1
  258. package/dist/reactive.js.map +0 -1
  259. package/dist/request-state-DgwTEXLU.js.map +0 -1
  260. package/dist/request.js.map +0 -1
  261. package/dist/store/-private.js.map +0 -1
  262. package/dist/store.js.map +0 -1
  263. package/dist/symbols-BmDcn6hS.js.map +0 -1
  264. package/dist/types/-private.js.map +0 -1
  265. package/dist/types/cache/aliases.js.map +0 -1
  266. package/dist/types/cache/change.js.map +0 -1
  267. package/dist/types/cache/mutations.js.map +0 -1
  268. package/dist/types/cache/operations.js.map +0 -1
  269. package/dist/types/cache/relationship.js.map +0 -1
  270. package/dist/types/cache.js.map +0 -1
  271. package/dist/types/graph.js.map +0 -1
  272. package/dist/types/identifier.js.map +0 -1
  273. package/dist/types/json/raw.js.map +0 -1
  274. package/dist/types/params.js.map +0 -1
  275. package/dist/types/record.js.map +0 -1
  276. package/dist/types/request.js.map +0 -1
  277. package/dist/types/runtime.js.map +0 -1
  278. package/dist/types/schema/concepts.js.map +0 -1
  279. package/dist/types/schema/fields.js.map +0 -1
  280. package/dist/types/schema/fields.type-test.js.map +0 -1
  281. package/dist/types/spec/document.js.map +0 -1
  282. package/dist/types/spec/error.js.map +0 -1
  283. package/dist/types/spec/json-api-raw.js.map +0 -1
  284. package/dist/types/symbols.js.map +0 -1
  285. package/dist/types/utils.js.map +0 -1
  286. package/dist/types.js.map +0 -1
  287. package/dist/utils/string.js.map +0 -1
@@ -1,180 +1,271 @@
1
- import type { Store } from '../../store/-private.ts';
2
- import type { SchemaService as SchemaServiceInterface } from '../../types.ts';
3
- import type { StableRecordIdentifier } from '../../types/identifier.ts';
4
- import type { ObjectValue, Value } from '../../types/json/raw.ts';
5
- import type { Derivation, HashFn } from '../../types/schema/concepts.ts';
6
- import { type ArrayField, type DerivedField, type FieldSchema, type GenericField, type HashField, type LegacyAttributeField, type LegacyBelongsToField, type LegacyHasManyField, type LegacyRelationshipField, type ObjectField, type ObjectSchema, type PolarisResourceSchema, type ResourceSchema } from '../../types/schema/fields.ts';
7
- import { Type } from '../../types/symbols.ts';
8
- import type { WithPartial } from '../../types/utils.ts';
9
- import type { ReactiveResource } from './record.ts';
1
+ import type { Store } from "../../store/-private.js";
2
+ import type { SchemaService as SchemaServiceInterface } from "../../types.js";
3
+ import type { StableRecordIdentifier } from "../../types/identifier.js";
4
+ import type { ObjectValue, Value } from "../../types/json/raw.js";
5
+ import type { Derivation, HashFn } from "../../types/schema/concepts.js";
6
+ import { type ArrayField, type DerivedField, type FieldSchema, type GenericField, type HashField, type LegacyAttributeField, type LegacyBelongsToField, type LegacyHasManyField, type LegacyRelationshipField, type ObjectField, type ObjectSchema, type PolarisResourceSchema, type ResourceSchema } from "../../types/schema/fields.js";
7
+ import { Type } from "../../types/symbols.js";
8
+ import type { WithPartial } from "../../types/utils.js";
9
+ import type { ReactiveResource } from "./record.js";
10
10
  /**
11
- * Utility for constructing a ResourceSchema with the recommended
12
- * fields for the PolarisMode experience.
13
- *
14
- * Using this requires registering the PolarisMode derivations
15
- *
16
- * ```ts
17
- * import { registerDerivations } from '@warp-drive/schema-record';
18
- *
19
- * registerDerivations(schema);
20
- * ```
21
- *
22
- * @public
23
- * @param schema
24
- * @return {PolarisResourceSchema}
25
- */
26
- export declare function withDefaults(schema: WithPartial<PolarisResourceSchema, 'identity'>): ResourceSchema;
27
- /**
28
- * A derivation that computes its value from the
29
- * record's identity.
30
- *
31
- * It can be used via a derived field definition like:
32
- *
33
- * ```ts
34
- * {
35
- * kind: 'derived',
36
- * name: 'id',
37
- * type: '@identity',
38
- * options: { key: 'id' }
39
- * }
40
- * ```
41
- *
42
- * Valid keys are `'id'`, `'lid'`, `'type'`, and `'^'`.
43
- *
44
- * `^` returns the entire identifier object.
45
- *
46
- * @public
47
- */
48
- export declare function fromIdentity(record: ReactiveResource, options: {
49
- key: 'lid';
11
+ * Extensions allow providing non-schema driven behaviors to
12
+ * reactive resources and arrays.
13
+ */
14
+ export interface CAUTION_MEGA_DANGER_ZONE_Extension {
15
+ /**
16
+ * Whether this extension extends the behaviors of objects
17
+ * or of arrays.
18
+ */
19
+ kind: "object" | "array";
20
+ /**
21
+ * The name of the extension, to be used when specifying
22
+ * either `objectExtensions` or `arrayExtensions`
23
+ */
24
+ name: string;
25
+ /**
26
+ * An object with iterable keys whose values are the getters
27
+ * or methods to expose on the object or array.
28
+ *
29
+ * or
30
+ *
31
+ * A constructable such as a Function or Class whose prototype
32
+ * will be iterated with getOwnPropertyNames.
33
+ */
34
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
35
+ features: Record<string | symbol, unknown> | Function;
36
+ }
37
+ export type ExtensionDef = {
38
+ kind: "method";
39
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
40
+ fn: Function;
41
+ } | {
42
+ kind: "readonly-value";
43
+ value: unknown;
44
+ } | {
45
+ kind: "mutable-value";
46
+ value: unknown;
47
+ } | {
48
+ kind: "readonly-field";
49
+ get: () => unknown;
50
+ } | {
51
+ kind: "mutable-field";
52
+ get: () => unknown;
53
+ set: (value: unknown) => void;
50
54
  } | {
51
- key: 'type';
52
- }, key: string): string;
53
- export declare function fromIdentity(record: ReactiveResource, options: {
54
- key: 'id';
55
- }, key: string): string | null;
56
- export declare function fromIdentity(record: ReactiveResource, options: {
57
- key: '^';
58
- }, key: string): StableRecordIdentifier;
59
- export declare function fromIdentity(record: ReactiveResource, options: null, key: string): asserts options;
60
- export declare namespace fromIdentity { }
55
+ kind: "writeonly-field";
56
+ set: (value: unknown) => void;
57
+ };
58
+ export interface ProcessedExtension {
59
+ kind: "object" | "array";
60
+ name: string;
61
+ features: Map<string | symbol, ExtensionDef>;
62
+ }
63
+ export interface ExtensibleField {
64
+ kind: "schema-object" | "schema-array" | "array" | "object" | "hasMany";
65
+ options?: {
66
+ objectExtensions?: string[];
67
+ arrayExtensions?: string[];
68
+ };
69
+ }
70
+ /**
71
+ * Utility for constructing a ResourceSchema with the recommended
72
+ * fields for the PolarisMode experience.
73
+ *
74
+ * Using this requires registering the PolarisMode derivations
75
+ *
76
+ * ```ts
77
+ * import { registerDerivations } from '@warp-drive/schema-record';
78
+ *
79
+ * registerDerivations(schema);
80
+ * ```
81
+ *
82
+ * @public
83
+ * @param schema
84
+ * @return {PolarisResourceSchema}
85
+ */
86
+ export declare function withDefaults(schema: WithPartial<PolarisResourceSchema, "identity">): ResourceSchema;
87
+ interface FromIdentityDerivation {
88
+ (record: ReactiveResource, options: {
89
+ key: "lid";
90
+ } | {
91
+ key: "type";
92
+ }, key: string): string;
93
+ (record: ReactiveResource, options: {
94
+ key: "id";
95
+ }, key: string): string | null;
96
+ (record: ReactiveResource, options: {
97
+ key: "^";
98
+ }, key: string): StableRecordIdentifier;
99
+ (record: ReactiveResource, options: null, key: string): asserts options;
100
+ (record: ReactiveResource, options: {
101
+ key: "id" | "lid" | "type" | "^";
102
+ } | null, key: string): StableRecordIdentifier | string | null;
103
+ [Type]: "@identity";
104
+ }
105
+ /**
106
+ * A derivation that computes its value from the
107
+ * record's identity.
108
+ *
109
+ * It can be used via a derived field definition like:
110
+ *
111
+ * ```ts
112
+ * {
113
+ * kind: 'derived',
114
+ * name: 'id',
115
+ * type: '@identity',
116
+ * options: { key: 'id' }
117
+ * }
118
+ * ```
119
+ *
120
+ * Valid keys are `'id'`, `'lid'`, `'type'`, and `'^'`.
121
+ *
122
+ * `^` returns the entire identifier object.
123
+ *
124
+ * @public
125
+ */
126
+ export declare const fromIdentity: FromIdentityDerivation;
61
127
  /**
62
- * Registers the default derivations for records that want
63
- * to use the PolarisMode defaults provided by
64
- *
65
- * ```ts
66
- * import { withDefaults } from '@warp-drive/schema-record';
67
- * ```
68
- *
69
- * @public
70
- * @param {SchemaService} schema
71
- */
128
+ * Registers the default derivations for records that want
129
+ * to use the PolarisMode defaults provided by
130
+ *
131
+ * ```ts
132
+ * import { withDefaults } from '@warp-drive/schema-record';
133
+ * ```
134
+ *
135
+ * @public
136
+ * @param {SchemaService} schema
137
+ */
72
138
  export declare function registerDerivations(schema: SchemaServiceInterface): void;
73
139
  interface InternalSchema {
74
- original: ResourceSchema | ObjectSchema;
75
- traits: Set<string>;
76
- fields: Map<string, FieldSchema>;
77
- attributes: Record<string, LegacyAttributeField>;
78
- relationships: Record<string, LegacyRelationshipField>;
140
+ original: ResourceSchema | ObjectSchema;
141
+ traits: Set<string>;
142
+ fields: Map<string, FieldSchema>;
143
+ attributes: Record<string, LegacyAttributeField>;
144
+ relationships: Record<string, LegacyRelationshipField>;
79
145
  }
80
- export type Transformation<T extends Value = Value, PT = unknown> = {
81
- serialize(value: PT, options: Record<string, unknown> | null, record: ReactiveResource): T;
82
- hydrate(value: T | undefined, options: Record<string, unknown> | null, record: ReactiveResource): PT;
83
- defaultValue?(options: Record<string, unknown> | null, identifier: StableRecordIdentifier): T;
84
- [Type]: string;
146
+ export type Transformation<
147
+ T extends Value = Value,
148
+ PT = unknown
149
+ > = {
150
+ serialize(value: PT, options: Record<string, unknown> | null, record: ReactiveResource): T;
151
+ hydrate(value: T | undefined, options: Record<string, unknown> | null, record: ReactiveResource): PT;
152
+ defaultValue?(options: Record<string, unknown> | null, identifier: StableRecordIdentifier): T;
153
+ [Type]: string;
85
154
  };
86
155
  interface KindFns {
87
- belongsTo: {
88
- get: (store: Store, record: object, resourceKey: StableRecordIdentifier, field: LegacyBelongsToField) => unknown;
89
- set: (store: Store, record: object, cacheKey: StableRecordIdentifier, field: LegacyBelongsToField, value: unknown) => void;
90
- };
91
- hasMany: {
92
- get: (store: Store, record: object, resourceKey: StableRecordIdentifier, field: LegacyHasManyField) => unknown;
93
- set: (store: Store, record: object, cacheKey: StableRecordIdentifier, field: LegacyHasManyField, value: unknown) => void;
94
- notify: (store: Store, record: object, cacheKey: StableRecordIdentifier, field: LegacyHasManyField) => boolean;
95
- };
156
+ belongsTo: {
157
+ get: (store: Store, record: object, resourceKey: StableRecordIdentifier, field: LegacyBelongsToField) => unknown;
158
+ set: (store: Store, record: object, cacheKey: StableRecordIdentifier, field: LegacyBelongsToField, value: unknown) => void;
159
+ };
160
+ hasMany: {
161
+ get: (store: Store, record: object, resourceKey: StableRecordIdentifier, field: LegacyHasManyField) => unknown;
162
+ set: (store: Store, record: object, cacheKey: StableRecordIdentifier, field: LegacyHasManyField, value: unknown) => void;
163
+ notify: (store: Store, record: object, cacheKey: StableRecordIdentifier, field: LegacyHasManyField) => boolean;
164
+ };
96
165
  }
97
166
  export interface SchemaService {
98
- doesTypeExist(type: string): boolean;
99
- attributesDefinitionFor(identifier: {
100
- type: string;
101
- }): InternalSchema['attributes'];
102
- relationshipsDefinitionFor(identifier: {
103
- type: string;
104
- }): InternalSchema['relationships'];
167
+ doesTypeExist(type: string): boolean;
168
+ attributesDefinitionFor(identifier: {
169
+ type: string;
170
+ }): InternalSchema["attributes"];
171
+ relationshipsDefinitionFor(identifier: {
172
+ type: string;
173
+ }): InternalSchema["relationships"];
105
174
  }
106
175
  /**
107
- * A SchemaService designed to work with dynamically registered schemas.
108
- *
109
- * @class SchemaService
110
- * @public
111
- */
176
+ * A SchemaService designed to work with dynamically registered schemas.
177
+ *
178
+ * @class SchemaService
179
+ * @public
180
+ */
112
181
  export declare class SchemaService implements SchemaServiceInterface {
113
- /** @internal */
114
- _schemas: Map<string, InternalSchema>;
115
- /** @internal */
116
- _transforms: Map<string, Transformation>;
117
- /** @internal */
118
- _hashFns: Map<string, HashFn>;
119
- /** @internal */
120
- _derivations: Map<string, Derivation<any, any, any>>;
121
- /** @internal */
122
- _traits: Set<string>;
123
- /** @internal */
124
- _modes: Map<string, KindFns>;
125
- constructor();
126
- resourceTypes(): Readonly<string[]>;
127
- hasTrait(type: string): boolean;
128
- resourceHasTrait(resource: StableRecordIdentifier | {
129
- type: string;
130
- }, trait: string): boolean;
131
- transformation(field: GenericField | ObjectField | ArrayField | {
132
- type: string;
133
- }): Transformation;
134
- derivation(field: DerivedField | {
135
- type: string;
136
- }): Derivation;
137
- hashFn(field: HashField | {
138
- type: string;
139
- }): HashFn;
140
- resource(resource: StableRecordIdentifier | {
141
- type: string;
142
- }): ResourceSchema | ObjectSchema;
143
- registerResources(schemas: Array<ResourceSchema | ObjectSchema>): void;
144
- registerResource(schema: ResourceSchema | ObjectSchema): void;
145
- registerTransformation<T extends Value = string, PT = unknown>(transformation: Transformation<T, PT>): void;
146
- registerDerivation<R, T, FM extends ObjectValue | null>(derivation: Derivation<R, T, FM>): void;
147
- /**
148
- * This is an internal method used to register behaviors for legacy mode.
149
- * It is not intended for public use.
150
- *
151
- * We do think a generalized `kind` registration system would be useful,
152
- * but we have not yet designed it.
153
- *
154
- * See https://github.com/emberjs/data/issues/9534
155
- *
156
- * @internal
157
- */
158
- _registerMode(mode: string, kinds: KindFns): void;
159
- /**
160
- * This is an internal method used to enable legacy behaviors for legacy mode.
161
- * It is not intended for public use.
162
- *
163
- * We do think a generalized `kind` registration system would be useful,
164
- * but we have not yet designed it.
165
- *
166
- * See https://github.com/emberjs/data/issues/9534
167
- *
168
- * @internal
169
- */
170
- _kind<T extends keyof KindFns>(mode: string, kind: T): KindFns[T];
171
- registerHashFn<T extends object>(hashFn: HashFn<T>): void;
172
- fields({ type }: {
173
- type: string;
174
- }): InternalSchema['fields'];
175
- hasResource(resource: {
176
- type: string;
177
- }): boolean;
182
+ /** @internal */
183
+ _schemas: Map<string, InternalSchema>;
184
+ /** @internal */
185
+ _transforms: Map<string, Transformation>;
186
+ /** @internal */
187
+ _hashFns: Map<string, HashFn>;
188
+ /** @internal */
189
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
190
+ _derivations: Map<string, Derivation<any, any, any>>;
191
+ /** @internal */
192
+ _traits: Set<string>;
193
+ /** @internal */
194
+ _modes: Map<string, KindFns>;
195
+ /** @internal */
196
+ _extensions: {
197
+ object: Map<string, ProcessedExtension>;
198
+ array: Map<string, ProcessedExtension>;
199
+ };
200
+ _cachedFieldExtensionsByField: {
201
+ object: Map<object, ProcessedExtension["features"] | null>;
202
+ array: Map<object, ProcessedExtension["features"] | null>;
203
+ };
204
+ constructor();
205
+ resourceTypes(): Readonly<string[]>;
206
+ hasTrait(type: string): boolean;
207
+ resourceHasTrait(resource: StableRecordIdentifier | {
208
+ type: string;
209
+ }, trait: string): boolean;
210
+ transformation(field: GenericField | ObjectField | ArrayField | {
211
+ type: string;
212
+ }): Transformation;
213
+ derivation(field: DerivedField | {
214
+ type: string;
215
+ }): Derivation;
216
+ hashFn(field: HashField | {
217
+ type: string;
218
+ }): HashFn;
219
+ resource(resource: StableRecordIdentifier | {
220
+ type: string;
221
+ }): ResourceSchema | ObjectSchema;
222
+ registerResources(schemas: Array<ResourceSchema | ObjectSchema>): void;
223
+ registerResource(schema: ResourceSchema | ObjectSchema): void;
224
+ registerTransformation<
225
+ T extends Value = string,
226
+ PT = unknown
227
+ >(transformation: Transformation<T, PT>): void;
228
+ registerDerivation<
229
+ R,
230
+ T,
231
+ FM extends ObjectValue | null
232
+ >(derivation: Derivation<R, T, FM>): void;
233
+ CAUTION_MEGA_DANGER_ZONE_registerExtension(extension: CAUTION_MEGA_DANGER_ZONE_Extension): void;
234
+ CAUTION_MEGA_DANGER_ZONE_resourceExtensions(resource: StableRecordIdentifier | {
235
+ type: string;
236
+ }): null | ProcessedExtension["features"];
237
+ CAUTION_MEGA_DANGER_ZONE_objectExtensions(field: ExtensibleField): null | ProcessedExtension["features"];
238
+ CAUTION_MEGA_DANGER_ZONE_arrayExtensions(field: ExtensibleField): null | ProcessedExtension["features"];
239
+ /**
240
+ * This is an internal method used to register behaviors for legacy mode.
241
+ * It is not intended for public use.
242
+ *
243
+ * We do think a generalized `kind` registration system would be useful,
244
+ * but we have not yet designed it.
245
+ *
246
+ * See https://github.com/emberjs/data/issues/9534
247
+ *
248
+ * @internal
249
+ */
250
+ _registerMode(mode: string, kinds: KindFns): void;
251
+ /**
252
+ * This is an internal method used to enable legacy behaviors for legacy mode.
253
+ * It is not intended for public use.
254
+ *
255
+ * We do think a generalized `kind` registration system would be useful,
256
+ * but we have not yet designed it.
257
+ *
258
+ * See https://github.com/emberjs/data/issues/9534
259
+ *
260
+ * @internal
261
+ */
262
+ _kind<T extends keyof KindFns>(mode: string, kind: T): KindFns[T];
263
+ registerHashFn<T extends object>(hashFn: HashFn<T>): void;
264
+ fields({ type }: {
265
+ type: string;
266
+ }): InternalSchema["fields"];
267
+ hasResource(resource: {
268
+ type: string;
269
+ }): boolean;
178
270
  }
179
271
  export {};
180
- //# sourceMappingURL=schema.d.ts.map
@@ -1,3 +1,29 @@
1
+ // Great, got your attention with that warning didn't we?
2
+ // Good. Here's the deal: typescript treats symbols as unique types.
3
+ // If by accident a module creating a symbol is processed more than
4
+ // once, the symbol will be different in each processing. This will
5
+ // cause a type error.
6
+ // It could also cause a runtime error if the symbol is used innapropriately.
7
+ // However, this case is extremely hard to hit and would require other things
8
+ // to go wrong first.
9
+ //
10
+ // So, why do the warning? And why do we lie about the types of the symbols?
11
+ //
12
+ // Because we intentionally create multiple copies of them within the types
13
+ // at build time. This is because we rollup our d.ts files in order to give
14
+ // our consumers a better experience.
15
+ //
16
+ // However, no tool today supports rolling up d.ts files with multiple entry
17
+ // points correctly. The tool we use currently (vite-plugin-dts) uses @microsoft/api-extractor
18
+ // which creates a fully unique stand-alone types file per-entry-point. Thus
19
+ // every entry point that uses one of these symbols somewhere will have accidentally
20
+ // created a new symbol type.
21
+ //
22
+ // This cast allows us to rollup these types using this tool while not encountering
23
+ // the unique symbol type issue.
24
+ //
25
+ // Note that none of these symbols are part of the public API, these are used for
26
+ // debugging DX and as a safe way to provide an intimate contract on public objects.
1
27
  export declare const SOURCE: "___(unique) Symbol(SOURCE)";
2
28
  export declare const MUTATE: "___(unique) Symbol(MUTATE)";
3
29
  export declare const Destroy: "___(unique) Symbol(Destroy)";
@@ -7,5 +33,4 @@ export declare const Parent: "___(unique) Symbol(Parent)";
7
33
  export declare const Checkout: "___(unique) Symbol(Checkout)";
8
34
  export declare const Legacy: "___(unique) Symbol(Legacy)";
9
35
  export declare const EmbeddedPath: "___(unique) Symbol(EmbeddedPath)";
10
- export declare const EmbeddedType: "___(unique) Symbol(EmbeddedType)";
11
- //# sourceMappingURL=symbols.d.ts.map
36
+ export declare const EmbeddedField: "___(unique) Symbol(EmbeddedField)";
@@ -1,2 +1 @@
1
- export { Editable, Legacy } from './-private/symbols';
2
- //# sourceMappingURL=-private.d.ts.map
1
+ export { Editable, Legacy } from "./-private/symbols.js";
@@ -1,5 +1,4 @@
1
- export { instantiateRecord, teardownRecord } from './reactive/-private/hooks';
2
- export { type Transformation, SchemaService, withDefaults, fromIdentity, registerDerivations, } from './reactive/-private/schema';
3
- export { type ReactiveResource } from './reactive/-private/record';
4
- export { Checkout } from './reactive/-private/symbols';
5
- //# sourceMappingURL=reactive.d.ts.map
1
+ export { instantiateRecord, teardownRecord } from "./reactive/-private/hooks.js";
2
+ export { type CAUTION_MEGA_DANGER_ZONE_Extension, type ProcessedExtension, type ExtensionDef, type Transformation, SchemaService, withDefaults, fromIdentity, registerDerivations } from "./reactive/-private/schema.js";
3
+ export { type ReactiveResource } from "./reactive/-private/record.js";
4
+ export { Checkout } from "./reactive/-private/symbols.js";
@@ -1,42 +1,41 @@
1
- import type { StableDocumentIdentifier } from '../../types/identifier';
2
- import type { ImmutableHeaders, ImmutableRequestInfo, RequestInfo, ResponseInfo } from '../../types/request';
3
- import type { DeferredStream, GodContext } from './types';
1
+ import type { StableDocumentIdentifier } from "../../types/identifier.js";
2
+ import type { ImmutableHeaders, ImmutableRequestInfo, RequestInfo, ResponseInfo } from "../../types/request.js";
3
+ import type { DeferredStream, GodContext } from "./types.js";
4
4
  export declare function upgradeHeaders(headers: Headers | ImmutableHeaders): ImmutableHeaders;
5
5
  export declare function cloneResponseProperties(response: Response): ResponseInfo;
6
6
  export declare class ContextOwner {
7
- hasSetStream: boolean;
8
- hasSetResponse: boolean;
9
- hasSubscribers: boolean;
10
- stream: DeferredStream;
11
- response: ResponseInfo | null;
12
- request: ImmutableRequestInfo;
13
- enhancedRequest: ImmutableRequestInfo;
14
- nextCalled: number;
15
- god: GodContext;
16
- controller: AbortController;
17
- requestId: number;
18
- isRoot: boolean;
19
- constructor(request: RequestInfo, god: GodContext, isRoot?: boolean);
20
- get hasRequestedStream(): boolean;
21
- getResponse(): ResponseInfo | null;
22
- getStream(): Promise<ReadableStream | null>;
23
- abort(reason: DOMException): void;
24
- setStream(stream: ReadableStream | Promise<ReadableStream | null> | null): void;
25
- resolveStream(): void;
26
- setResponse(response: ResponseInfo | Response | null): void;
7
+ hasSetStream: boolean;
8
+ hasSetResponse: boolean;
9
+ hasSubscribers: boolean;
10
+ stream: DeferredStream;
11
+ response: ResponseInfo | null;
12
+ request: ImmutableRequestInfo;
13
+ enhancedRequest: ImmutableRequestInfo;
14
+ nextCalled: number;
15
+ god: GodContext;
16
+ controller: AbortController;
17
+ requestId: number;
18
+ isRoot: boolean;
19
+ constructor(request: RequestInfo, god: GodContext, isRoot?: boolean);
20
+ get hasRequestedStream(): boolean;
21
+ getResponse(): ResponseInfo | null;
22
+ getStream(): Promise<ReadableStream | null>;
23
+ abort(reason: DOMException): void;
24
+ setStream(stream: ReadableStream | Promise<ReadableStream | null> | null): void;
25
+ resolveStream(): void;
26
+ setResponse(response: ResponseInfo | Response | null): void;
27
27
  }
28
28
  export declare class Context {
29
- #private;
30
- request: ImmutableRequestInfo;
31
- id: number;
32
- private _isCacheHandler;
33
- private _finalized;
34
- constructor(owner: ContextOwner, isCacheHandler: boolean);
35
- setStream(stream: ReadableStream | Promise<ReadableStream | null>): void;
36
- setResponse(response: ResponseInfo | Response | null): void;
37
- setIdentifier(identifier: StableDocumentIdentifier): void;
38
- get hasRequestedStream(): boolean;
39
- _finalize(): void;
29
+ #private;
30
+ request: ImmutableRequestInfo;
31
+ id: number;
32
+ private _isCacheHandler;
33
+ private _finalized;
34
+ constructor(owner: ContextOwner, isCacheHandler: boolean);
35
+ setStream(stream: ReadableStream | Promise<ReadableStream | null>): void;
36
+ setResponse(response: ResponseInfo | Response | null): void;
37
+ setIdentifier(identifier: StableDocumentIdentifier): void;
38
+ get hasRequestedStream(): boolean;
39
+ _finalize(): void;
40
40
  }
41
41
  export type HandlerRequestContext = Context;
42
- //# sourceMappingURL=context.d.ts.map
@@ -1,5 +1,4 @@
1
- import type { RequestInfo } from '../../types/request';
2
- import { Context } from './context';
1
+ import type { RequestInfo } from "../../types/request.js";
2
+ import { Context } from "./context.js";
3
3
  export declare function deepFreeze<T = unknown>(value: T): T;
4
4
  export declare function assertValidRequest(request: RequestInfo | Context, isTopLevel: boolean): asserts request is RequestInfo;
5
- //# sourceMappingURL=debug.d.ts.map
@@ -1,32 +1,31 @@
1
- import { type Context } from './context';
1
+ import { type Context } from "./context.js";
2
2
  interface FastbootRequest extends Request {
3
- protocol: string;
4
- host: string;
3
+ protocol: string;
4
+ host: string;
5
5
  }
6
6
  export interface FastBoot {
7
- require(moduleName: string): unknown;
8
- isFastBoot: boolean;
9
- request: FastbootRequest;
7
+ require(moduleName: string): unknown;
8
+ isFastBoot: boolean;
9
+ request: FastbootRequest;
10
10
  }
11
11
  /**
12
- * ```ts
13
- * import { Fetch } from '@warp-drive/core';
14
- * ```
15
- *
16
- * A basic Fetch Handler which converts a request into a
17
- * `fetch` call presuming the response to be `json`.
18
- *
19
- * ```ts
20
- * import { RequestManager, Fetch } from '@warp-drive/core';
21
- *
22
- * const manager = new RequestManager()
23
- * .use([Fetch]);
24
- * ```
25
- *
26
- * @public
27
- */
12
+ * ```ts
13
+ * import { Fetch } from '@warp-drive/core';
14
+ * ```
15
+ *
16
+ * A basic Fetch Handler which converts a request into a
17
+ * `fetch` call presuming the response to be `json`.
18
+ *
19
+ * ```ts
20
+ * import { RequestManager, Fetch } from '@warp-drive/core';
21
+ *
22
+ * const manager = new RequestManager()
23
+ * .use([Fetch]);
24
+ * ```
25
+ *
26
+ * @public
27
+ */
28
28
  declare const Fetch: {
29
- request<T>(context: Context): Promise<T>;
29
+ request<T>(context: Context): Promise<T>;
30
30
  };
31
31
  export { Fetch };
32
- //# sourceMappingURL=fetch.d.ts.map
@@ -1,8 +1,7 @@
1
- import { type StructuredDocument } from '../../types/request';
2
- import type { ContextOwner } from './context';
3
- import type { Deferred, DeferredFuture, Future } from './types';
1
+ import { type StructuredDocument } from "../../types/request.js";
2
+ import type { ContextOwner } from "./context.js";
3
+ import type { Deferred, DeferredFuture, Future } from "./types.js";
4
4
  export declare function isFuture<T>(maybe: unknown): maybe is Future<T>;
5
5
  export declare function createDeferred<T>(): Deferred<T>;
6
6
  export declare function upgradePromise<T>(promise: Promise<StructuredDocument<T>>, future: Future<T>): Future<T>;
7
7
  export declare function createFuture<T>(owner: ContextOwner): DeferredFuture<T>;
8
- //# sourceMappingURL=future.d.ts.map