@nicia-ai/typegraph 0.58.0 → 0.60.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 (179) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +15 -0
  3. package/dist/{atomic-mutation-program-CPcn0ZPu.d.ts → atomic-mutation-program-BNvJ13bq.d.ts} +1 -1
  4. package/dist/{atomic-mutation-program-AqOe51XD.d.cts → atomic-mutation-program-DOVE147J.d.cts} +1 -1
  5. package/dist/backend/drizzle/engine/index.cjs +8 -8
  6. package/dist/backend/drizzle/engine/index.d.cts +9 -9
  7. package/dist/backend/drizzle/engine/index.d.ts +9 -9
  8. package/dist/backend/drizzle/engine/index.js +3 -3
  9. package/dist/backend/drizzle/indexes.cjs +6 -6
  10. package/dist/backend/drizzle/indexes.d.cts +1 -1
  11. package/dist/backend/drizzle/indexes.d.ts +1 -1
  12. package/dist/backend/drizzle/indexes.js +2 -2
  13. package/dist/backend/index.d.cts +7 -7
  14. package/dist/backend/index.d.ts +7 -7
  15. package/dist/backend/postgres/index.cjs +17 -17
  16. package/dist/backend/postgres/index.d.cts +8 -8
  17. package/dist/backend/postgres/index.d.ts +8 -8
  18. package/dist/backend/postgres/index.js +3 -3
  19. package/dist/backend/postgres/pglite-store.cjs +1 -1
  20. package/dist/backend/postgres/pglite-store.d.cts +6 -6
  21. package/dist/backend/postgres/pglite-store.d.ts +6 -6
  22. package/dist/backend/postgres/pglite-store.js +1 -1
  23. package/dist/backend/postgres/pglite.cjs +5 -5
  24. package/dist/backend/postgres/pglite.d.cts +3 -3
  25. package/dist/backend/postgres/pglite.d.ts +3 -3
  26. package/dist/backend/postgres/pglite.js +4 -4
  27. package/dist/backend/sqlite/index.cjs +16 -16
  28. package/dist/backend/sqlite/index.d.cts +7 -7
  29. package/dist/backend/sqlite/index.d.ts +7 -7
  30. package/dist/backend/sqlite/index.js +3 -3
  31. package/dist/backend/sqlite/libsql.cjs +7 -7
  32. package/dist/backend/sqlite/libsql.d.cts +3 -3
  33. package/dist/backend/sqlite/libsql.d.ts +3 -3
  34. package/dist/backend/sqlite/libsql.js +3 -3
  35. package/dist/backend/sqlite/local-store.cjs +1 -1
  36. package/dist/backend/sqlite/local-store.d.cts +6 -6
  37. package/dist/backend/sqlite/local-store.d.ts +6 -6
  38. package/dist/backend/sqlite/local-store.js +1 -1
  39. package/dist/backend/sqlite/local.cjs +5 -5
  40. package/dist/backend/sqlite/local.d.cts +3 -3
  41. package/dist/backend/sqlite/local.d.ts +3 -3
  42. package/dist/backend/sqlite/local.js +4 -4
  43. package/dist/{chunk-7JUD57B4.js → chunk-2DKIJP2R.js} +1044 -84
  44. package/dist/chunk-2DKIJP2R.js.map +1 -0
  45. package/dist/{chunk-QIKO6DL5.js → chunk-2QNFFAMF.js} +3 -3
  46. package/dist/{chunk-QIKO6DL5.js.map → chunk-2QNFFAMF.js.map} +1 -1
  47. package/dist/{chunk-6BVZHDAZ.js → chunk-43DOTETB.js} +3 -3
  48. package/dist/{chunk-6BVZHDAZ.js.map → chunk-43DOTETB.js.map} +1 -1
  49. package/dist/{chunk-US3BLFWM.js → chunk-7GNPCBS2.js} +3 -3
  50. package/dist/{chunk-US3BLFWM.js.map → chunk-7GNPCBS2.js.map} +1 -1
  51. package/dist/{chunk-IV5W7LKW.cjs → chunk-A22XPVBQ.cjs} +2 -2
  52. package/dist/chunk-A22XPVBQ.cjs.map +1 -0
  53. package/dist/{chunk-CVO2ZPW5.js → chunk-B4P4DAW3.js} +4 -4
  54. package/dist/{chunk-CVO2ZPW5.js.map → chunk-B4P4DAW3.js.map} +1 -1
  55. package/dist/{chunk-FHFPUORN.cjs → chunk-CNFKFE5L.cjs} +1375 -415
  56. package/dist/chunk-CNFKFE5L.cjs.map +1 -0
  57. package/dist/{chunk-4MZQVVPX.cjs → chunk-D5CHUSW7.cjs} +33 -2
  58. package/dist/chunk-D5CHUSW7.cjs.map +1 -0
  59. package/dist/{chunk-TKEJR2UL.cjs → chunk-DWO6WZP5.cjs} +6 -6
  60. package/dist/{chunk-TKEJR2UL.cjs.map → chunk-DWO6WZP5.cjs.map} +1 -1
  61. package/dist/{chunk-GUMNJJFP.cjs → chunk-EHDLHPMK.cjs} +9 -9
  62. package/dist/{chunk-GUMNJJFP.cjs.map → chunk-EHDLHPMK.cjs.map} +1 -1
  63. package/dist/{chunk-DV24YZHG.js → chunk-FTDRMXIJ.js} +6 -6
  64. package/dist/{chunk-DV24YZHG.js.map → chunk-FTDRMXIJ.js.map} +1 -1
  65. package/dist/{chunk-BYBMDK6X.js → chunk-GYOQAV6R.js} +3 -3
  66. package/dist/{chunk-BYBMDK6X.js.map → chunk-GYOQAV6R.js.map} +1 -1
  67. package/dist/{chunk-GTW5YKFV.js → chunk-HCNC53MU.js} +3 -3
  68. package/dist/{chunk-GTW5YKFV.js.map → chunk-HCNC53MU.js.map} +1 -1
  69. package/dist/{chunk-M7TRJXFE.js → chunk-ILVXUOQY.js} +3 -3
  70. package/dist/{chunk-M7TRJXFE.js.map → chunk-ILVXUOQY.js.map} +1 -1
  71. package/dist/{chunk-FGKWXSHF.cjs → chunk-KGQVK2II.cjs} +40 -40
  72. package/dist/{chunk-FGKWXSHF.cjs.map → chunk-KGQVK2II.cjs.map} +1 -1
  73. package/dist/{chunk-BMATB57B.cjs → chunk-KW3ON5IU.cjs} +11 -11
  74. package/dist/{chunk-BMATB57B.cjs.map → chunk-KW3ON5IU.cjs.map} +1 -1
  75. package/dist/{chunk-GK62U3S5.js → chunk-LOFUF6L7.js} +3 -3
  76. package/dist/{chunk-GK62U3S5.js.map → chunk-LOFUF6L7.js.map} +1 -1
  77. package/dist/{chunk-BPYZUJX5.cjs → chunk-MTJAT6UO.cjs} +5 -5
  78. package/dist/{chunk-BPYZUJX5.cjs.map → chunk-MTJAT6UO.cjs.map} +1 -1
  79. package/dist/{chunk-YTYB5KCQ.js → chunk-OH7QRGPQ.js} +33 -2
  80. package/dist/chunk-OH7QRGPQ.js.map +1 -0
  81. package/dist/{chunk-U53HFE4L.cjs → chunk-OKA6H3B3.cjs} +22 -22
  82. package/dist/{chunk-U53HFE4L.cjs.map → chunk-OKA6H3B3.cjs.map} +1 -1
  83. package/dist/{chunk-QR6V2BXA.cjs → chunk-PTFO3JI5.cjs} +114 -114
  84. package/dist/{chunk-QR6V2BXA.cjs.map → chunk-PTFO3JI5.cjs.map} +1 -1
  85. package/dist/{chunk-C3CN2C2T.cjs → chunk-Q6ZVQWH7.cjs} +38 -38
  86. package/dist/{chunk-C3CN2C2T.cjs.map → chunk-Q6ZVQWH7.cjs.map} +1 -1
  87. package/dist/{chunk-WAG3NVD7.cjs → chunk-QBQ465OX.cjs} +12 -12
  88. package/dist/{chunk-WAG3NVD7.cjs.map → chunk-QBQ465OX.cjs.map} +1 -1
  89. package/dist/{chunk-CRROO6PK.cjs → chunk-QHP2BCBJ.cjs} +4 -4
  90. package/dist/{chunk-CRROO6PK.cjs.map → chunk-QHP2BCBJ.cjs.map} +1 -1
  91. package/dist/{chunk-HWWPL2YL.js → chunk-QWIR5533.js} +2 -2
  92. package/dist/chunk-QWIR5533.js.map +1 -0
  93. package/dist/{chunk-ZHLWPHNT.cjs → chunk-RJ3GVX73.cjs} +6 -6
  94. package/dist/{chunk-ZHLWPHNT.cjs.map → chunk-RJ3GVX73.cjs.map} +1 -1
  95. package/dist/{chunk-SYKR6MVR.cjs → chunk-T2M2S5YZ.cjs} +59 -59
  96. package/dist/{chunk-SYKR6MVR.cjs.map → chunk-T2M2S5YZ.cjs.map} +1 -1
  97. package/dist/{chunk-OESX3T5K.js → chunk-TNNDNSNH.js} +4 -4
  98. package/dist/{chunk-OESX3T5K.js.map → chunk-TNNDNSNH.js.map} +1 -1
  99. package/dist/{chunk-5C4OYYDD.js → chunk-UVQMUBZ6.js} +6 -6
  100. package/dist/{chunk-5C4OYYDD.js.map → chunk-UVQMUBZ6.js.map} +1 -1
  101. package/dist/{chunk-IV3FENV2.js → chunk-W6K6NSRT.js} +5 -5
  102. package/dist/{chunk-IV3FENV2.js.map → chunk-W6K6NSRT.js.map} +1 -1
  103. package/dist/core/index.d.cts +3 -3
  104. package/dist/core/index.d.ts +3 -3
  105. package/dist/{ddl-wlEdaCQK.d.cts → ddl-B9lzB8Zi.d.cts} +3 -3
  106. package/dist/{ddl-DkFrUTn_.d.ts → ddl-DuZWvxBb.d.ts} +3 -3
  107. package/dist/graph-extension/index.d.cts +2 -2
  108. package/dist/graph-extension/index.d.ts +2 -2
  109. package/dist/graph-merge/index.cjs +122 -122
  110. package/dist/graph-merge/index.d.cts +7 -6
  111. package/dist/graph-merge/index.d.ts +7 -6
  112. package/dist/graph-merge/index.js +10 -10
  113. package/dist/{graph-templates-B4gkXVqg.d.ts → graph-templates-ClBhrXiA.d.ts} +2 -2
  114. package/dist/{graph-templates-6zTU7bNe.d.cts → graph-templates-DfmKDARd.d.cts} +2 -2
  115. package/dist/index.cjs +73 -73
  116. package/dist/index.d.cts +10 -10
  117. package/dist/index.d.ts +10 -10
  118. package/dist/index.js +11 -11
  119. package/dist/indexes/index.cjs +8 -8
  120. package/dist/indexes/index.d.cts +4 -4
  121. package/dist/indexes/index.d.ts +4 -4
  122. package/dist/indexes/index.js +3 -3
  123. package/dist/{ingestion-import-target-im9wEB00.d.cts → ingestion-import-target-BSgJagqI.d.cts} +1 -1
  124. package/dist/{ingestion-import-target-SopMSm-T.d.ts → ingestion-import-target-PNw10V4T.d.ts} +1 -1
  125. package/dist/interchange/index.cjs +29 -29
  126. package/dist/interchange/index.d.cts +7 -6
  127. package/dist/interchange/index.d.ts +7 -6
  128. package/dist/interchange/index.js +6 -6
  129. package/dist/{local-store-impl-ARNXBBSF.cjs → local-store-impl-QGSRYFZF.cjs} +17 -17
  130. package/dist/{local-store-impl-ARNXBBSF.cjs.map → local-store-impl-QGSRYFZF.cjs.map} +1 -1
  131. package/dist/{local-store-impl-FTGRP2V7.js → local-store-impl-VEVK2VGA.js} +14 -14
  132. package/dist/{local-store-impl-FTGRP2V7.js.map → local-store-impl-VEVK2VGA.js.map} +1 -1
  133. package/dist/{pglite-store-impl-CNQZYRBC.cjs → pglite-store-impl-33CI3P3M.cjs} +17 -17
  134. package/dist/{pglite-store-impl-CNQZYRBC.cjs.map → pglite-store-impl-33CI3P3M.cjs.map} +1 -1
  135. package/dist/{pglite-store-impl-NULC2IHH.js → pglite-store-impl-RDPTOOP3.js} +14 -14
  136. package/dist/{pglite-store-impl-NULC2IHH.js.map → pglite-store-impl-RDPTOOP3.js.map} +1 -1
  137. package/dist/{postgres-Dd3TrFku.d.ts → postgres-2FBMdOE_.d.ts} +3 -3
  138. package/dist/{postgres-cLQPlKtp.d.cts → postgres-BR3AeXm9.d.ts} +1 -1
  139. package/dist/{postgres-CLPfTNYN.d.ts → postgres-CRatyTVL.d.cts} +1 -1
  140. package/dist/{postgres-B4VD_rVy.d.cts → postgres-lbZf0zyg.d.cts} +3 -3
  141. package/dist/{profile-Co154QBx.d.ts → profile-BipG05-8.d.ts} +2 -2
  142. package/dist/{profile-BqThShR_.d.cts → profile-DKtvxVyA.d.cts} +2 -2
  143. package/dist/profiler/index.d.cts +8 -7
  144. package/dist/profiler/index.d.ts +8 -7
  145. package/dist/provenance/index.cjs +15 -15
  146. package/dist/provenance/index.cjs.map +1 -1
  147. package/dist/provenance/index.d.cts +6 -5
  148. package/dist/provenance/index.d.ts +6 -5
  149. package/dist/provenance/index.js +2 -2
  150. package/dist/provenance/index.js.map +1 -1
  151. package/dist/{repair-validity-windows-BLoClfCq.d.cts → repair-validity-windows-BnSHFIsR.d.cts} +1 -1
  152. package/dist/{repair-validity-windows-C__28ckL.d.ts → repair-validity-windows-DfRb4gZm.d.ts} +1 -1
  153. package/dist/{resolve-DgFSIK99.d.ts → resolve-BbjZDYTw.d.ts} +1 -1
  154. package/dist/{resolve-DSUxNIqw.d.cts → resolve-mLksuBg2.d.cts} +1 -1
  155. package/dist/schema/index.cjs +36 -36
  156. package/dist/schema/index.d.cts +7 -7
  157. package/dist/schema/index.d.ts +7 -7
  158. package/dist/schema/index.js +6 -6
  159. package/dist/{searchable-CZKn12eY.d.cts → searchable-BEAN91Ce.d.cts} +1 -1
  160. package/dist/{searchable-CUWWphQI.d.ts → searchable-Bg2lMPRm.d.ts} +1 -1
  161. package/dist/{sqlite-mSd_eVk4.d.ts → sqlite-Cal3rHgZ.d.ts} +3 -3
  162. package/dist/{sqlite-RdH7w-ix.d.cts → sqlite-CvajLABd.d.cts} +1 -1
  163. package/dist/{sqlite-qXLIybR2.d.cts → sqlite-DQxKoWAH.d.cts} +3 -3
  164. package/dist/{sqlite-CoBmhiFd.d.ts → sqlite-jH5J-Jb8.d.ts} +1 -1
  165. package/dist/{store-BzmMsCcw.d.ts → store-B5WZ8E5m.d.ts} +313 -177
  166. package/dist/{store-CL6uTm_W.d.cts → store-DdhFpX53.d.cts} +313 -177
  167. package/dist/{types-BUoh7cc3.d.cts → types-BUA3dZ99.d.cts} +1 -1
  168. package/dist/{types-ClC0IFIS.d.ts → types-CPtb7KNf.d.ts} +1 -1
  169. package/dist/{types-Blq8PG_N.d.cts → types-Dky3sCFz.d.cts} +9 -0
  170. package/dist/{types-Blq8PG_N.d.ts → types-Dky3sCFz.d.ts} +9 -0
  171. package/dist/{where-61C-QoM8.d.ts → where-BReEkAiy.d.ts} +1 -1
  172. package/dist/{where-o3Me5iJx.d.cts → where-Cz11nPRu.d.cts} +1 -1
  173. package/package.json +2 -2
  174. package/dist/chunk-4MZQVVPX.cjs.map +0 -1
  175. package/dist/chunk-7JUD57B4.js.map +0 -1
  176. package/dist/chunk-FHFPUORN.cjs.map +0 -1
  177. package/dist/chunk-HWWPL2YL.js.map +0 -1
  178. package/dist/chunk-IV5W7LKW.cjs.map +0 -1
  179. package/dist/chunk-YTYB5KCQ.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
- import { $ as NodeType, fp as EdgeType, _ as AnyEdgeType, G as GraphIdentityConfig, e9 as ValueType, hs as PredicateExpression, cm as FulltextQueryMode, ht as VectorMetricType, Q as QueryAst, J as JsonPointer, eP as FieldRef, go as ParameterRef, gQ as TraversalExpansion, f as GraphBackend, q as SqlDialect, gH as SqlSchema, hu as Traversal, hv as NodePredicate, hw as ProjectedField, gn as OrderSpec, hx as AggregateOrderSpec, dS as TemporalMode, R as RecordedInstant, hy as GroupBySpec, fI as HybridFusionOptions, fX as JsonPointerInput, hz as RecursiveCyclePolicy, e as GraphDef, eS as TraversalDirection$1, fm as EdgeRegistration, gf as NodeId, T as TransactionBackend, eO as AggregateExpr, gG as SortDirection, b2 as CompiledSelectSql, d as FulltextStrategy, V as VectorStrategy, hA as VectorSlotMap, hB as RecordedReadBinding, dr as RecursiveTraversalVerdict, hC as SelectiveField, hD as ComposableQuery, hE as SetOperationType, hF as SetOperation, gi as NodeKinds, n as NodeRow, K as KindEntity, fC as ExternalRecordedReadSource, ff as EdgeId, l as EdgeRow, hG as BackendValidityEndMutation, cQ as JsonScalar, gm as NodeRegistration, fg as EdgeKinds, dV as TransactionReadBackend, eV as AllNodeTypes, am as SchemaDiff, S as SchemaVersionRow, a5 as SerializedSchema, fG as GraphAnnotations, cS as KindAnnotations, ai as JsonSchema, d_ as UniquenessScope, aY as Collation, aR as Cardinality, bN as EndpointExistence, cs as GraphExtension, hH as ReadCoordinate, aN as BackendIdentity, cq as GraphEntityReadBackend, dD as SchemaReadBackend, dd as QueryExecutionBackend, dH as SqlCompilationBackend, de as RawQueryExecutionBackend, ec as VectorMetric, aG as TypeGraphError, Y as BackendCapabilities, b$ as ExtensionNodeDef, hI as ExtensionObjectSchema, bV as ExtensionEdgeDef, hJ as ExtensionEdgeProperties, g5 as MaterializeIndexesOptions, g6 as MaterializeIndexesResult, g7 as MaterializeSystemIndexesOptions, C as ContributionDiagnostic, c as ContributionRepairResult, be as ContributionProbeResult, bh as ContributionRebuildScope, bg as ContributionRebuildResult, dU as TransactionOptions, A as AdapterBackend } from './types-Blq8PG_N.js';
3
- import { S as SearchableMetadata, c as EmbeddingValue } from './searchable-CUWWphQI.js';
4
- import { b as BundleVerdictOf, U as UNIQUE_SIDECAR_BATCH, B as BATCH_POINT_READ } from './resolve-DgFSIK99.js';
2
+ import { $ as NodeType, fp as EdgeType, _ as AnyEdgeType, G as GraphIdentityConfig, e9 as ValueType, hs as PredicateExpression, cm as FulltextQueryMode, ht as VectorMetricType, Q as QueryAst, J as JsonPointer, eP as FieldRef, go as ParameterRef, gQ as TraversalExpansion, f as GraphBackend, q as SqlDialect, gH as SqlSchema, hu as Traversal, hv as NodePredicate, hw as ProjectedField, gn as OrderSpec, hx as AggregateOrderSpec, dS as TemporalMode, R as RecordedInstant, hy as GroupBySpec, fI as HybridFusionOptions, fX as JsonPointerInput, hz as RecursiveCyclePolicy, e as GraphDef, eS as TraversalDirection$1, fm as EdgeRegistration, gf as NodeId, T as TransactionBackend, b2 as CompiledSelectSql, eO as AggregateExpr, gG as SortDirection, d as FulltextStrategy, V as VectorStrategy, hA as VectorSlotMap, hB as RecordedReadBinding, dr as RecursiveTraversalVerdict, hC as SelectiveField, hD as ComposableQuery, hE as SetOperationType, hF as SetOperation, fg as EdgeKinds, eV as AllNodeTypes, gi as NodeKinds, n as NodeRow, K as KindEntity, fC as ExternalRecordedReadSource, ff as EdgeId, l as EdgeRow, hG as BackendValidityEndMutation, cQ as JsonScalar, gm as NodeRegistration, dV as TransactionReadBackend, am as SchemaDiff, S as SchemaVersionRow, a5 as SerializedSchema, fG as GraphAnnotations, cS as KindAnnotations, ai as JsonSchema, d_ as UniquenessScope, aY as Collation, aR as Cardinality, bN as EndpointExistence, cs as GraphExtension, hH as ReadCoordinate, aN as BackendIdentity, cq as GraphEntityReadBackend, dD as SchemaReadBackend, dd as QueryExecutionBackend, dH as SqlCompilationBackend, de as RawQueryExecutionBackend, ec as VectorMetric, aG as TypeGraphError, Y as BackendCapabilities, b$ as ExtensionNodeDef, hI as ExtensionObjectSchema, bV as ExtensionEdgeDef, hJ as ExtensionEdgeProperties, g5 as MaterializeIndexesOptions, g6 as MaterializeIndexesResult, g7 as MaterializeSystemIndexesOptions, C as ContributionDiagnostic, c as ContributionRepairResult, be as ContributionProbeResult, bh as ContributionRebuildScope, bg as ContributionRebuildResult, dU as TransactionOptions, A as AdapterBackend } from './types-Dky3sCFz.js';
3
+ import { S as SearchableMetadata, c as EmbeddingValue } from './searchable-Bg2lMPRm.js';
4
+ import { b as BundleVerdictOf, U as UNIQUE_SIDECAR_BATCH, B as BATCH_POINT_READ } from './resolve-BbjZDYTw.js';
5
5
 
6
6
  /**
7
7
  * Who allocates recorded-time revisions for a backend: TypeGraph's own
@@ -593,6 +593,31 @@ type QueryCoordinateState = "open" | "sealed";
593
593
  type BatchableQuery<R = unknown> = Readonly<{
594
594
  executeOn: (backend: GraphBackend | TransactionBackend) => Promise<readonly R[]>;
595
595
  }>;
596
+ /** A read whose result can be embedded in an exact-one-statement batch. */
597
+ type OneStatementBatchableQuery<R = unknown> = Readonly<{
598
+ execute?: () => Promise<R>;
599
+ /** @internal Resolved by `store.batchOnce()` before execution. */
600
+ compileOneStatementBatchItem?: () => Readonly<{
601
+ query: CompiledSelectSql;
602
+ outputNames: readonly string[];
603
+ orderBy: readonly Readonly<{
604
+ column: string;
605
+ direction: "asc" | "desc";
606
+ nulls: "first" | "last";
607
+ }>[];
608
+ mapRows: (rows: readonly Record<string, unknown>[]) => R;
609
+ }>;
610
+ }>;
611
+ /** A cold read with a concrete one-statement batch compilation contract. */
612
+ type CompiledOneStatementRead<R> = Required<Pick<OneStatementBatchableQuery<R>, "compileOneStatementBatchItem">>;
613
+ /** A read that can be embedded in an exact-one-statement batch. */
614
+ type EmbeddableOneStatementRead<R> = OneStatementBatchableQuery<R> & (BatchableQuery<unknown> | CompiledOneStatementRead<R>);
615
+ /** An embeddable one-statement read that can also execute independently. */
616
+ type ExecutableOneStatementRead<R> = CompiledOneStatementRead<R> & Required<Pick<OneStatementBatchableQuery<R>, "execute">>;
617
+ /** Preserves each input query's result type in an exact-one-statement batch. */
618
+ type OneStatementBatchResults<Queries extends readonly EmbeddableOneStatementRead<unknown>[]> = {
619
+ -readonly [K in keyof Queries]: Queries[K] extends (EmbeddableOneStatementRead<infer R>) ? R : never;
620
+ };
596
621
  /**
597
622
  * Maps a tuple of BatchableQuery types to their result types.
598
623
  *
@@ -1347,6 +1372,17 @@ declare class UnionableQuery<G extends GraphDef, R> {
1347
1372
  * transaction support.
1348
1373
  */
1349
1374
  executeOn(backend: GraphBackend | TransactionBackend): Promise<readonly R[]>;
1375
+ /** @internal Embedding contract consumed by `store.batchOnce()`. */
1376
+ compileOneStatementBatchItem?(): Readonly<{
1377
+ query: CompiledSelectSql;
1378
+ outputNames: readonly string[];
1379
+ orderBy: readonly Readonly<{
1380
+ column: string;
1381
+ direction: "asc" | "desc";
1382
+ nulls: "first" | "last";
1383
+ }>[];
1384
+ mapRows: (rows: readonly Record<string, unknown>[]) => readonly R[];
1385
+ }>;
1350
1386
  }
1351
1387
 
1352
1388
  /**
@@ -1492,6 +1528,17 @@ declare class ExecutableQuery<G extends GraphDef, Aliases extends AliasMap, Edge
1492
1528
  * The fallback clears the fast path for this instance.
1493
1529
  */
1494
1530
  executeOn(backend: GraphBackend | TransactionBackend): Promise<readonly R[]>;
1531
+ /** @internal Embedding contract consumed by `store.batchOnce()`. */
1532
+ compileOneStatementBatchItem?(): Readonly<{
1533
+ query: CompiledSelectSql;
1534
+ outputNames: readonly string[];
1535
+ orderBy: readonly Readonly<{
1536
+ column: string;
1537
+ direction: "asc" | "desc";
1538
+ nulls: "first" | "last";
1539
+ }>[];
1540
+ mapRows: (rows: readonly Record<string, unknown>[]) => readonly R[];
1541
+ }>;
1495
1542
  /**
1496
1543
  * Executes a paginated query using cursor-based keyset pagination.
1497
1544
  *
@@ -1883,6 +1930,215 @@ declare const IDENTITY_READ_NAMES: readonly ["representativeOf", "membersOf", "n
1883
1930
  /** Recorded-time collection point reads that reconstruct safely by id. */
1884
1931
  declare const RECORDED_POINT_READ_NAMES: readonly ["getById", "getByIds"];
1885
1932
 
1933
+ /** Edge metadata fields accepted by bounded neighbor and subgraph reads. */
1934
+ type NeighborOrderField = "createdAt" | "id" | "updatedAt" | "validFrom" | "validTo";
1935
+ /** Node property names accepted by adjacent-node ordering. */
1936
+ type NeighborNodeOrderField<G extends GraphDef> = {
1937
+ [K in keyof G["nodes"] & string]: Exclude<keyof Node<G["nodes"][K]["type"]>, "id" | "kind" | "meta"> & string;
1938
+ }[keyof G["nodes"] & string];
1939
+ type NeighborOrder<G extends GraphDef> = Readonly<{
1940
+ by?: "edge";
1941
+ field: NeighborOrderField;
1942
+ direction?: "asc" | "desc";
1943
+ }> | Readonly<{
1944
+ by: "node";
1945
+ field: NeighborNodeOrderField<G>;
1946
+ direction?: "asc" | "desc";
1947
+ }>;
1948
+ /** Per-edge-kind ordering and bound applied before traversal expands an edge. */
1949
+ type EdgeReadWindow = Readonly<{
1950
+ limit: number;
1951
+ /** Direction for this edge kind; defaults to the traversal direction. */
1952
+ direction?: "both" | "in" | "out";
1953
+ orderBy?: Readonly<{
1954
+ field: NeighborOrderField;
1955
+ direction?: "asc" | "desc";
1956
+ }>;
1957
+ }>;
1958
+ /** Options for reading adjacent edge-node pairs without hydrating all targets. */
1959
+ type NeighborReadOptionsBoundary<G extends GraphDef, K extends EdgeKinds<G>> = Readonly<{
1960
+ edges?: readonly K[];
1961
+ direction?: "both" | "in" | "out";
1962
+ orderBy?: NeighborOrder<G>;
1963
+ limit?: number;
1964
+ temporalMode?: TemporalMode;
1965
+ asOf?: string;
1966
+ }>;
1967
+ type NeighborReadOptions<G extends GraphDef, K extends EdgeKinds<G>> = NeighborReadOptionsBoundary<G, K> & Required<Pick<NeighborReadOptionsBoundary<G, K>, "edges">>;
1968
+ /** One edge and the node it reaches from the requested source and direction. */
1969
+ type NeighborResult<G extends GraphDef, K extends EdgeKinds<G>> = Readonly<{
1970
+ edge: GraphEdgeForKinds<G, K>;
1971
+ node: Node<AllNodeTypes<G>>;
1972
+ }>;
1973
+
1974
+ /**
1975
+ * Discriminated union of all Node runtime types in a graph.
1976
+ *
1977
+ * Unlike `AllNodeTypes<G>` which gives the union of *type definitions*,
1978
+ * `AnyNode<G>` gives the union of *runtime node instances*.
1979
+ */
1980
+ type AnyNode<G extends GraphDef> = {
1981
+ [K in NodeKinds<G>]: Node<G["nodes"][K]["type"]>;
1982
+ }[NodeKinds<G>];
1983
+ /**
1984
+ * Discriminated union of all Edge runtime types in a graph.
1985
+ */
1986
+ type AnyEdge<G extends GraphDef> = {
1987
+ [K in EdgeKinds<G>]: Edge<G["edges"][K]["type"]>;
1988
+ }[EdgeKinds<G>];
1989
+ /**
1990
+ * Discriminated union of Node runtime types narrowed to a subset of kinds.
1991
+ */
1992
+ type SubsetNode<G extends GraphDef, K extends NodeKinds<G>> = {
1993
+ [Kind in K]: Node<G["nodes"][Kind]["type"]>;
1994
+ }[K];
1995
+ /**
1996
+ * Discriminated union of Edge runtime types narrowed to a subset of kinds.
1997
+ */
1998
+ type SubsetEdge<G extends GraphDef, K extends EdgeKinds<G>> = {
1999
+ [Kind in K]: Edge<G["edges"][Kind]["type"]>;
2000
+ }[K];
2001
+ type EmptyShape = Readonly<Record<never, never>>;
2002
+ type NodeProjectionPropertyKey<N extends NodeType> = Exclude<keyof Node<N>, "id" | "kind" | "meta"> & string;
2003
+ type EdgeProjectionPropertyKey<E extends AnyEdgeType> = Exclude<keyof Edge<E>, "id" | "kind" | "fromKind" | "fromId" | "toKind" | "toId" | "meta"> & string;
2004
+ type SubgraphNodeProjectionField<N extends NodeType = NodeType> = NodeProjectionPropertyKey<N> | "meta";
2005
+ type SubgraphEdgeProjectionField<E extends AnyEdgeType = AnyEdgeType> = EdgeProjectionPropertyKey<E> | "meta";
2006
+ type SubgraphNodeProjectionMap<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>> = Readonly<{
2007
+ [K in NodeKinds<G>]?: K extends NK ? readonly SubgraphNodeProjectionField<G["nodes"][K]["type"]>[] : never;
2008
+ }>;
2009
+ type SubgraphEdgeProjectionMap<G extends GraphDef, EK extends EdgeKinds<G> = EdgeKinds<G>> = Readonly<{
2010
+ [K in EdgeKinds<G>]?: K extends EK ? readonly SubgraphEdgeProjectionField<G["edges"][K]["type"]>[] : never;
2011
+ }>;
2012
+ type SubgraphProject<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>, EK extends EdgeKinds<G> = EdgeKinds<G>> = Readonly<{
2013
+ /**
2014
+ * Node fields to keep per kind.
2015
+ *
2016
+ * Projected nodes always retain `kind` and `id`.
2017
+ * Use `"meta"` to include the full metadata object; omit it to exclude metadata entirely.
2018
+ * Only kinds present in `includeKinds` (or all node kinds when omitted) are valid keys.
2019
+ */
2020
+ nodes?: SubgraphNodeProjectionMap<G, NK>;
2021
+ /**
2022
+ * Edge fields to keep per kind.
2023
+ *
2024
+ * Projected edges always retain `id`, `kind`, `fromKind`, `fromId`,
2025
+ * `toKind`, and `toId`.
2026
+ * Use `"meta"` to include the full metadata object; omit it to exclude metadata entirely.
2027
+ * Only edge kinds listed in `edges` are valid keys.
2028
+ */
2029
+ edges?: SubgraphEdgeProjectionMap<G, EK>;
2030
+ }>;
2031
+ /**
2032
+ * Identity function that preserves literal types for reusable projection configs.
2033
+ *
2034
+ * Without this helper, storing a projection in a typed variable widens the
2035
+ * field arrays to `string[]`, defeating compile-time narrowing on results.
2036
+ *
2037
+ * @example
2038
+ * ```ts
2039
+ * const project = defineSubgraphProject(graph)({
2040
+ * nodes: { Task: ["title", "meta"] },
2041
+ * edges: { uses_skill: [] },
2042
+ * });
2043
+ * const result = await store.subgraph(rootId, { edges: ["uses_skill"], project });
2044
+ * // result.nodes narrowed correctly — task.status is a type error
2045
+ * ```
2046
+ */
2047
+ declare function defineSubgraphProject<G extends GraphDef>(_graph: G): <const P extends SubgraphProject<G>>(project: P) => P;
2048
+ type HasMeta<Selection extends readonly string[] | undefined> = Selection extends readonly string[] ? "meta" extends Selection[number] ? true : false : false;
2049
+ type SelectedNodeProps<N extends NodeType, Selection extends readonly string[] | undefined> = Selection extends readonly string[] ? Pick<Node<N>, Extract<Selection[number], NodeProjectionPropertyKey<N>>> : EmptyShape;
2050
+ type SelectedEdgeProps<E extends AnyEdgeType, Selection extends readonly string[] | undefined> = Selection extends readonly string[] ? Pick<Edge<E>, Extract<Selection[number], EdgeProjectionPropertyKey<E>>> : EmptyShape;
2051
+ type ProjectedNodeResult<N extends NodeType, Selection extends readonly string[] | undefined> = Readonly<Pick<Node<N>, "id" | "kind">> & Readonly<SelectedNodeProps<N, Selection>> & (HasMeta<Selection> extends true ? Readonly<{
2052
+ meta: NodeMeta;
2053
+ }> : EmptyShape);
2054
+ type ProjectedEdgeResult<E extends AnyEdgeType, Selection extends readonly string[] | undefined> = Readonly<Pick<Edge<E>, "id" | "kind" | "fromKind" | "fromId" | "toKind" | "toId">> & Readonly<SelectedEdgeProps<E, Selection>> & (HasMeta<Selection> extends true ? Readonly<{
2055
+ meta: EdgeMeta;
2056
+ }> : EmptyShape);
2057
+ type ProjectionSelection<P, Key extends "nodes" | "edges", Kind extends string> = P extends Readonly<{
2058
+ [K in Key]?: infer Map;
2059
+ }> ? Map extends Readonly<Record<string, readonly string[] | undefined>> ? Kind extends keyof Map ? Map[Kind] : undefined : undefined : undefined;
2060
+ type SubgraphNodeResultForKind<G extends GraphDef, Kind extends NodeKinds<G>, P> = ProjectionSelection<P, "nodes", Kind> extends readonly string[] ? ProjectedNodeResult<G["nodes"][Kind]["type"], ProjectionSelection<P, "nodes", Kind>> : Node<G["nodes"][Kind]["type"]>;
2061
+ type SubgraphEdgeResultForKind<G extends GraphDef, Kind extends EdgeKinds<G>, P> = ProjectionSelection<P, "edges", Kind> extends readonly string[] ? ProjectedEdgeResult<G["edges"][Kind]["type"], ProjectionSelection<P, "edges", Kind>> : Edge<G["edges"][Kind]["type"]>;
2062
+ type SubgraphOptions<G extends GraphDef, EK extends EdgeKinds<G>, NK extends NodeKinds<G>, P extends SubgraphProject<G, NK, EK> | undefined = undefined> = Readonly<{
2063
+ /** Edge kinds to follow during traversal. Edges not listed are not traversed. */
2064
+ edges: readonly EK[];
2065
+ /** Maximum traversal depth from root (default: 10). */
2066
+ maxDepth?: number;
2067
+ /**
2068
+ * Node kinds to include in the result. Nodes of other kinds are still
2069
+ * traversed through but omitted from the output. When omitted, all
2070
+ * reachable node kinds are included.
2071
+ */
2072
+ includeKinds?: readonly NK[];
2073
+ /** Exclude the root node from the result (default: false). */
2074
+ excludeRoot?: boolean;
2075
+ /**
2076
+ * Edge direction policy (default: "out").
2077
+ * - "out": follow edges in their defined direction only
2078
+ * - "both": follow edges in both directions (undirected traversal)
2079
+ */
2080
+ direction?: "out" | "both";
2081
+ /** Cycle policy — reuse RecursiveCyclePolicy (default: "prevent"). */
2082
+ cyclePolicy?: RecursiveCyclePolicy;
2083
+ /**
2084
+ * Temporal mode applied to both nodes and edges along the traversal and in
2085
+ * the hydrated result. Defaults to `graph.defaults.temporalMode`.
2086
+ */
2087
+ temporalMode?: TemporalMode;
2088
+ /** ISO-8601 timestamp used when `temporalMode === "asOf"`. */
2089
+ asOf?: string;
2090
+ /** @internal Recorded coordinates are supplied by StoreView only. */
2091
+ recordedAsOf?: never;
2092
+ /**
2093
+ * Optional field-level projection per node/edge kind.
2094
+ *
2095
+ * Projected nodes keep `kind` and `id`; projected edges keep their structural
2096
+ * endpoint fields. Kinds omitted from `project` remain fully hydrated.
2097
+ * Projection applies to every returned entity, including the root node.
2098
+ *
2099
+ * Only kinds present in `includeKinds` (nodes) or `edges` (edges) are valid
2100
+ * projection keys. Specifying a kind outside those sets is a compile-time error.
2101
+ */
2102
+ project?: P;
2103
+ /**
2104
+ * Per-edge-kind windows applied while traversing and hydrating. Each limit
2105
+ * is partitioned by the current endpoint, so append-only edge histories can
2106
+ * contribute only their newest N targets at every hop.
2107
+ */
2108
+ edgeWindows?: Readonly<Partial<Record<EK, EdgeReadWindow>>>;
2109
+ }>;
2110
+ /**
2111
+ * Subgraph options as seen by the internal executor: identical to the public
2112
+ * {@link SubgraphOptions} except the recorded/system-time pin is a branded
2113
+ * instant the StoreView seam supplies. The public surface keeps
2114
+ * `recordedAsOf?: never`;
2115
+ * recorded reads reach the executor only through `store.subgraphAtCoordinate`.
2116
+ */
2117
+ type InternalSubgraphOptions<G extends GraphDef, EK extends EdgeKinds<G>, NK extends NodeKinds<G>, P extends SubgraphProject<G, NK, EK> | undefined = undefined> = Omit<SubgraphOptions<G, EK, NK, P>, "recordedAsOf"> & Readonly<{
2118
+ recordedAsOf?: RecordedInstant;
2119
+ }>;
2120
+ /**
2121
+ * Union of all node result types in a subgraph, respecting projection.
2122
+ */
2123
+ type SubgraphNodeResult<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>, P = undefined> = {
2124
+ [Kind in NK]: SubgraphNodeResultForKind<G, Kind, P>;
2125
+ }[NK];
2126
+ /**
2127
+ * Union of all edge result types in a subgraph, respecting projection.
2128
+ */
2129
+ type SubgraphEdgeResult<G extends GraphDef, EK extends EdgeKinds<G> = EdgeKinds<G>, P = undefined> = {
2130
+ [Kind in EK]: SubgraphEdgeResultForKind<G, Kind, P>;
2131
+ }[EK];
2132
+ type SubgraphResult<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>, EK extends EdgeKinds<G> = EdgeKinds<G>, P extends SubgraphProject<G, NK, EK> | undefined = undefined> = Readonly<{
2133
+ /** The root node, or undefined if the root was not found or excluded. */
2134
+ root: SubgraphNodeResult<G, NK, P> | undefined;
2135
+ nodes: ReadonlyMap<string, SubgraphNodeResult<G, NK, P>>;
2136
+ /** Forward adjacency: fromId → edgeKind → edges to targets. */
2137
+ adjacency: ReadonlyMap<string, ReadonlyMap<EK, readonly SubgraphEdgeResult<G, EK, P>[]>>;
2138
+ /** Reverse adjacency: toId → edgeKind → edges from sources. */
2139
+ reverseAdjacency: ReadonlyMap<string, ReadonlyMap<EK, readonly SubgraphEdgeResult<G, EK, P>[]>>;
2140
+ }>;
2141
+
1886
2142
  /**
1887
2143
  * Store types for TypeGraph operations.
1888
2144
  */
@@ -3506,11 +3762,21 @@ type TransactionCollections<G extends GraphDef> = Readonly<{
3506
3762
  identity: IdentityFacade<G>;
3507
3763
  }> : Readonly<Record<never, never>>);
3508
3764
  /**
3509
- * A portable transaction context containing only TypeGraph-owned graph
3510
- * operations. Managed Stores use this surface so adapter-native handles never
3511
- * enter their public contract.
3765
+ * A portable transaction context containing TypeGraph-owned collections and
3766
+ * transaction-bound graph reads. Managed Stores use this surface so
3767
+ * adapter-native handles never enter their public contract.
3512
3768
  */
3513
- type TransactionContext<G extends GraphDef> = TransactionCollections<G>;
3769
+ type TransactionContext<G extends GraphDef> = TransactionCollections<G> & Readonly<{
3770
+ query: () => InitialQueryBuilder<G, "open">;
3771
+ batchOnce: <const Queries extends readonly [
3772
+ EmbeddableOneStatementRead<unknown>,
3773
+ EmbeddableOneStatementRead<unknown>,
3774
+ ...EmbeddableOneStatementRead<unknown>[]
3775
+ ]>(build: (read: BatchReadBuilder<G>) => Queries) => Promise<OneStatementBatchResults<Queries>>;
3776
+ neighbors: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: NeighborReadOptions<G, K>) => Promise<readonly NeighborResult<G, K>[]>;
3777
+ countNeighbors: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: Omit<NeighborReadOptions<G, K>, "limit" | "orderBy">) => Promise<number>;
3778
+ subgraph: <const EK extends EdgeKinds<G>, const NK extends NodeKinds<G> = NodeKinds<G>, const P extends SubgraphProject<G, NK, EK> | undefined = undefined>(rootId: NodeId<AllNodeTypes<G>>, options: SubgraphOptions<G, EK, NK, P>) => Promise<SubgraphResult<G, NK, EK, P>>;
3779
+ }>;
3514
3780
  /**
3515
3781
  * A transaction context exposed by an {@link AdapterStore}. In addition to the
3516
3782
  * portable graph collections, it carries the adapter-native handle when that
@@ -3518,7 +3784,7 @@ type TransactionContext<G extends GraphDef> = TransactionCollections<G>;
3518
3784
  * read projection as the portable context; adapter-native writes intentionally
3519
3785
  * go through `sql`, making that escape hatch explicit.
3520
3786
  */
3521
- type AdapterTransactionContext<G extends GraphDef, TNativeTransaction> = TransactionCollections<G> & AdapterTransactionSqlAccess<TNativeTransaction>;
3787
+ type AdapterTransactionContext<G extends GraphDef, TNativeTransaction> = TransactionContext<G> & AdapterTransactionSqlAccess<TNativeTransaction>;
3522
3788
  /**
3523
3789
  * Scoped write measurement, available only on the receipt-enabled transaction
3524
3790
  * contexts (`transactionWithReceipt`, `withRecordedTransaction`). Runs `fn`,
@@ -4817,168 +5083,6 @@ type MaterializeRemovalsResult = Readonly<{
4817
5083
  reclaimedVectorFields: readonly ReclaimedVectorFieldEntry[];
4818
5084
  }>;
4819
5085
 
4820
- /**
4821
- * Discriminated union of all Node runtime types in a graph.
4822
- *
4823
- * Unlike `AllNodeTypes<G>` which gives the union of *type definitions*,
4824
- * `AnyNode<G>` gives the union of *runtime node instances*.
4825
- */
4826
- type AnyNode<G extends GraphDef> = {
4827
- [K in NodeKinds<G>]: Node<G["nodes"][K]["type"]>;
4828
- }[NodeKinds<G>];
4829
- /**
4830
- * Discriminated union of all Edge runtime types in a graph.
4831
- */
4832
- type AnyEdge<G extends GraphDef> = {
4833
- [K in EdgeKinds<G>]: Edge<G["edges"][K]["type"]>;
4834
- }[EdgeKinds<G>];
4835
- /**
4836
- * Discriminated union of Node runtime types narrowed to a subset of kinds.
4837
- */
4838
- type SubsetNode<G extends GraphDef, K extends NodeKinds<G>> = {
4839
- [Kind in K]: Node<G["nodes"][Kind]["type"]>;
4840
- }[K];
4841
- /**
4842
- * Discriminated union of Edge runtime types narrowed to a subset of kinds.
4843
- */
4844
- type SubsetEdge<G extends GraphDef, K extends EdgeKinds<G>> = {
4845
- [Kind in K]: Edge<G["edges"][Kind]["type"]>;
4846
- }[K];
4847
- type EmptyShape = Readonly<Record<never, never>>;
4848
- type NodeProjectionPropertyKey<N extends NodeType> = Exclude<keyof Node<N>, "id" | "kind" | "meta"> & string;
4849
- type EdgeProjectionPropertyKey<E extends AnyEdgeType> = Exclude<keyof Edge<E>, "id" | "kind" | "fromKind" | "fromId" | "toKind" | "toId" | "meta"> & string;
4850
- type SubgraphNodeProjectionField<N extends NodeType = NodeType> = NodeProjectionPropertyKey<N> | "meta";
4851
- type SubgraphEdgeProjectionField<E extends AnyEdgeType = AnyEdgeType> = EdgeProjectionPropertyKey<E> | "meta";
4852
- type SubgraphNodeProjectionMap<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>> = Readonly<{
4853
- [K in NodeKinds<G>]?: K extends NK ? readonly SubgraphNodeProjectionField<G["nodes"][K]["type"]>[] : never;
4854
- }>;
4855
- type SubgraphEdgeProjectionMap<G extends GraphDef, EK extends EdgeKinds<G> = EdgeKinds<G>> = Readonly<{
4856
- [K in EdgeKinds<G>]?: K extends EK ? readonly SubgraphEdgeProjectionField<G["edges"][K]["type"]>[] : never;
4857
- }>;
4858
- type SubgraphProject<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>, EK extends EdgeKinds<G> = EdgeKinds<G>> = Readonly<{
4859
- /**
4860
- * Node fields to keep per kind.
4861
- *
4862
- * Projected nodes always retain `kind` and `id`.
4863
- * Use `"meta"` to include the full metadata object; omit it to exclude metadata entirely.
4864
- * Only kinds present in `includeKinds` (or all node kinds when omitted) are valid keys.
4865
- */
4866
- nodes?: SubgraphNodeProjectionMap<G, NK>;
4867
- /**
4868
- * Edge fields to keep per kind.
4869
- *
4870
- * Projected edges always retain `id`, `kind`, `fromKind`, `fromId`,
4871
- * `toKind`, and `toId`.
4872
- * Use `"meta"` to include the full metadata object; omit it to exclude metadata entirely.
4873
- * Only edge kinds listed in `edges` are valid keys.
4874
- */
4875
- edges?: SubgraphEdgeProjectionMap<G, EK>;
4876
- }>;
4877
- /**
4878
- * Identity function that preserves literal types for reusable projection configs.
4879
- *
4880
- * Without this helper, storing a projection in a typed variable widens the
4881
- * field arrays to `string[]`, defeating compile-time narrowing on results.
4882
- *
4883
- * @example
4884
- * ```ts
4885
- * const project = defineSubgraphProject(graph)({
4886
- * nodes: { Task: ["title", "meta"] },
4887
- * edges: { uses_skill: [] },
4888
- * });
4889
- * const result = await store.subgraph(rootId, { edges: ["uses_skill"], project });
4890
- * // result.nodes narrowed correctly — task.status is a type error
4891
- * ```
4892
- */
4893
- declare function defineSubgraphProject<G extends GraphDef>(_graph: G): <const P extends SubgraphProject<G>>(project: P) => P;
4894
- type HasMeta<Selection extends readonly string[] | undefined> = Selection extends readonly string[] ? "meta" extends Selection[number] ? true : false : false;
4895
- type SelectedNodeProps<N extends NodeType, Selection extends readonly string[] | undefined> = Selection extends readonly string[] ? Pick<Node<N>, Extract<Selection[number], NodeProjectionPropertyKey<N>>> : EmptyShape;
4896
- type SelectedEdgeProps<E extends AnyEdgeType, Selection extends readonly string[] | undefined> = Selection extends readonly string[] ? Pick<Edge<E>, Extract<Selection[number], EdgeProjectionPropertyKey<E>>> : EmptyShape;
4897
- type ProjectedNodeResult<N extends NodeType, Selection extends readonly string[] | undefined> = Readonly<Pick<Node<N>, "id" | "kind">> & Readonly<SelectedNodeProps<N, Selection>> & (HasMeta<Selection> extends true ? Readonly<{
4898
- meta: NodeMeta;
4899
- }> : EmptyShape);
4900
- type ProjectedEdgeResult<E extends AnyEdgeType, Selection extends readonly string[] | undefined> = Readonly<Pick<Edge<E>, "id" | "kind" | "fromKind" | "fromId" | "toKind" | "toId">> & Readonly<SelectedEdgeProps<E, Selection>> & (HasMeta<Selection> extends true ? Readonly<{
4901
- meta: EdgeMeta;
4902
- }> : EmptyShape);
4903
- type ProjectionSelection<P, Key extends "nodes" | "edges", Kind extends string> = P extends Readonly<{
4904
- [K in Key]?: infer Map;
4905
- }> ? Map extends Readonly<Record<string, readonly string[] | undefined>> ? Kind extends keyof Map ? Map[Kind] : undefined : undefined : undefined;
4906
- type SubgraphNodeResultForKind<G extends GraphDef, Kind extends NodeKinds<G>, P> = ProjectionSelection<P, "nodes", Kind> extends readonly string[] ? ProjectedNodeResult<G["nodes"][Kind]["type"], ProjectionSelection<P, "nodes", Kind>> : Node<G["nodes"][Kind]["type"]>;
4907
- type SubgraphEdgeResultForKind<G extends GraphDef, Kind extends EdgeKinds<G>, P> = ProjectionSelection<P, "edges", Kind> extends readonly string[] ? ProjectedEdgeResult<G["edges"][Kind]["type"], ProjectionSelection<P, "edges", Kind>> : Edge<G["edges"][Kind]["type"]>;
4908
- type SubgraphOptions<G extends GraphDef, EK extends EdgeKinds<G>, NK extends NodeKinds<G>, P extends SubgraphProject<G, NK, EK> | undefined = undefined> = Readonly<{
4909
- /** Edge kinds to follow during traversal. Edges not listed are not traversed. */
4910
- edges: readonly EK[];
4911
- /** Maximum traversal depth from root (default: 10). */
4912
- maxDepth?: number;
4913
- /**
4914
- * Node kinds to include in the result. Nodes of other kinds are still
4915
- * traversed through but omitted from the output. When omitted, all
4916
- * reachable node kinds are included.
4917
- */
4918
- includeKinds?: readonly NK[];
4919
- /** Exclude the root node from the result (default: false). */
4920
- excludeRoot?: boolean;
4921
- /**
4922
- * Edge direction policy (default: "out").
4923
- * - "out": follow edges in their defined direction only
4924
- * - "both": follow edges in both directions (undirected traversal)
4925
- */
4926
- direction?: "out" | "both";
4927
- /** Cycle policy — reuse RecursiveCyclePolicy (default: "prevent"). */
4928
- cyclePolicy?: RecursiveCyclePolicy;
4929
- /**
4930
- * Temporal mode applied to both nodes and edges along the traversal and in
4931
- * the hydrated result. Defaults to `graph.defaults.temporalMode`.
4932
- */
4933
- temporalMode?: TemporalMode;
4934
- /** ISO-8601 timestamp used when `temporalMode === "asOf"`. */
4935
- asOf?: string;
4936
- /** @internal Recorded coordinates are supplied by StoreView only. */
4937
- recordedAsOf?: never;
4938
- /**
4939
- * Optional field-level projection per node/edge kind.
4940
- *
4941
- * Projected nodes keep `kind` and `id`; projected edges keep their structural
4942
- * endpoint fields. Kinds omitted from `project` remain fully hydrated.
4943
- * Projection applies to every returned entity, including the root node.
4944
- *
4945
- * Only kinds present in `includeKinds` (nodes) or `edges` (edges) are valid
4946
- * projection keys. Specifying a kind outside those sets is a compile-time error.
4947
- */
4948
- project?: P;
4949
- }>;
4950
- /**
4951
- * Subgraph options as seen by the internal executor: identical to the public
4952
- * {@link SubgraphOptions} except the recorded/system-time pin is a branded
4953
- * instant the StoreView seam supplies. The public surface keeps
4954
- * `recordedAsOf?: never`;
4955
- * recorded reads reach the executor only through `store.subgraphAtCoordinate`.
4956
- */
4957
- type InternalSubgraphOptions<G extends GraphDef, EK extends EdgeKinds<G>, NK extends NodeKinds<G>, P extends SubgraphProject<G, NK, EK> | undefined = undefined> = Omit<SubgraphOptions<G, EK, NK, P>, "recordedAsOf"> & Readonly<{
4958
- recordedAsOf?: RecordedInstant;
4959
- }>;
4960
- /**
4961
- * Union of all node result types in a subgraph, respecting projection.
4962
- */
4963
- type SubgraphNodeResult<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>, P = undefined> = {
4964
- [Kind in NK]: SubgraphNodeResultForKind<G, Kind, P>;
4965
- }[NK];
4966
- /**
4967
- * Union of all edge result types in a subgraph, respecting projection.
4968
- */
4969
- type SubgraphEdgeResult<G extends GraphDef, EK extends EdgeKinds<G> = EdgeKinds<G>, P = undefined> = {
4970
- [Kind in EK]: SubgraphEdgeResultForKind<G, Kind, P>;
4971
- }[EK];
4972
- type SubgraphResult<G extends GraphDef, NK extends NodeKinds<G> = NodeKinds<G>, EK extends EdgeKinds<G> = EdgeKinds<G>, P extends SubgraphProject<G, NK, EK> | undefined = undefined> = Readonly<{
4973
- /** The root node, or undefined if the root was not found or excluded. */
4974
- root: SubgraphNodeResult<G, NK, P> | undefined;
4975
- nodes: ReadonlyMap<string, SubgraphNodeResult<G, NK, P>>;
4976
- /** Forward adjacency: fromId → edgeKind → edges to targets. */
4977
- adjacency: ReadonlyMap<string, ReadonlyMap<EK, readonly SubgraphEdgeResult<G, EK, P>[]>>;
4978
- /** Reverse adjacency: toId → edgeKind → edges from sources. */
4979
- reverseAdjacency: ReadonlyMap<string, ReadonlyMap<EK, readonly SubgraphEdgeResult<G, EK, P>[]>>;
4980
- }>;
4981
-
4982
5086
  declare const STORE_RUNTIME: unique symbol;
4983
5087
  /**
4984
5088
  * @internal Operations used by Store-owned views. The port is absent from the
@@ -5961,6 +6065,11 @@ interface RequiredEdgeCollectionLookup<G extends GraphDef = GraphDef> {
5961
6065
  <K extends EdgeKinds<G>>(kind: K): DynamicEdgeCollection<G["edges"][K]["type"]>;
5962
6066
  (kind: string): DynamicEdgeCollection;
5963
6067
  }
6068
+ type CheckedReadScopeBoundary<G extends GraphDef> = Readonly<{
6069
+ query?: () => InitialQueryBuilder<G, "open">;
6070
+ }>;
6071
+ /** Read scope whose fluent-query executions all verify one schema version. */
6072
+ type CheckedReadScope<G extends GraphDef> = CheckedReadScopeBoundary<G> & Required<Pick<CheckedReadScopeBoundary<G>, "query">>;
5964
6073
  type StoreCore<G extends GraphDef> = Readonly<{
5965
6074
  [STORE_RUNTIME]: StoreRuntime<G>;
5966
6075
  graph: G;
@@ -5995,6 +6104,7 @@ type StoreCore<G extends GraphDef> = Readonly<{
5995
6104
  schemaChanges: () => Promise<SchemaDiff | undefined>;
5996
6105
  requiresMigration: () => Promise<boolean>;
5997
6106
  query: () => InitialQueryBuilder<G, "open">;
6107
+ withCheckedReads?: <T>(expectedSchemaVersion: number | undefined, fn: (reads: CheckedReadScope<G>) => Promise<T>) => Promise<T>;
5998
6108
  asOf: (asOf: string) => StoreView<G>;
5999
6109
  asOfRecorded: (recordedAsOf: RecordedInstant) => RecordedStoreView<G>;
6000
6110
  recordedNow: () => Promise<RecordedInstant | undefined>;
@@ -6007,6 +6117,13 @@ type StoreCore<G extends GraphDef> = Readonly<{
6007
6117
  BatchableQuery<unknown>,
6008
6118
  ...BatchableQuery<unknown>[]
6009
6119
  ]>(...queries: Queries) => Promise<BatchResults<Queries>>;
6120
+ batchOnce?: <const Queries extends readonly [
6121
+ EmbeddableOneStatementRead<unknown>,
6122
+ EmbeddableOneStatementRead<unknown>,
6123
+ ...EmbeddableOneStatementRead<unknown>[]
6124
+ ]>(build: (read: BatchReadBuilder<G>) => Queries) => Promise<OneStatementBatchResults<Queries>>;
6125
+ neighbors?: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: NeighborReadOptions<G, K>) => Promise<readonly NeighborResult<G, K>[]>;
6126
+ countNeighbors?: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: Omit<NeighborReadOptions<G, K>, "limit" | "orderBy">) => Promise<number>;
6010
6127
  bulkFindEdgesFrom: <const K extends EdgeKinds<G>>(params: BulkFindEdgesFromParams<G, K>, options?: EdgeBulkFindEndpointOptions) => Promise<readonly BulkFindEdgesFromResult<G, K>[]>;
6011
6128
  bulkFindEdgesTo: <const K extends EdgeKinds<G>>(params: BulkFindEdgesToParams<G, K>, options?: EdgeBulkFindEndpointOptions) => Promise<readonly BulkFindEdgesToResult<G, K>[]>;
6012
6129
  bulkFindRuntimeEdgesFrom: <NT extends RuntimeNodeKind, ET extends RuntimeEdgeKind>(params: BulkFindRuntimeEdgesFromParams<NT, ET>, options?: EdgeBulkFindEndpointOptions) => Promise<readonly BulkFindRuntimeEdgesFromResult<NT, ET>[]>;
@@ -6057,6 +6174,25 @@ type StoreTransactions<G extends GraphDef> = Readonly<{
6057
6174
  transaction: <T>(fn: (tx: TransactionContext<G>) => Promise<T>, options?: StoreTransactionOptions) => Promise<T>;
6058
6175
  transactionWithReceipt: <T>(fn: (tx: MeasurableTransactionContext<G>) => Promise<T>, options?: StoreTransactionOptions) => Promise<TransactionOutcome<T>>;
6059
6176
  }>;
6177
+ /** Builds cold reads that {@link Store.batchOnce} can compose in one statement. */
6178
+ type BatchReadBuilder<G extends GraphDef> = Readonly<{
6179
+ neighbors: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: NeighborReadOptions<G, K>) => CompiledOneStatementRead<readonly NeighborResult<G, K>[]>;
6180
+ countNeighbors: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: Omit<NeighborReadOptions<G, K>, "limit" | "orderBy">) => CompiledOneStatementRead<number>;
6181
+ subgraph: <const EK extends EdgeKinds<G>, const NK extends NodeKinds<G> = NodeKinds<G>, const P extends SubgraphProject<G, NK, EK> | undefined = undefined>(rootId: NodeId<AllNodeTypes<G>>, options: SubgraphOptions<G, EK, NK, P>) => CompiledOneStatementRead<SubgraphResult<G, NK, EK, P>>;
6182
+ }>;
6183
+ type AddedStoreReadsBoundary<G extends GraphDef> = Readonly<{
6184
+ withCheckedReads?: <T>(expectedSchemaVersion: number | undefined, fn: (reads: CheckedReadScope<G>) => Promise<T>) => Promise<T>;
6185
+ batchOnce?: <const Queries extends readonly [
6186
+ EmbeddableOneStatementRead<unknown>,
6187
+ EmbeddableOneStatementRead<unknown>,
6188
+ ...EmbeddableOneStatementRead<unknown>[]
6189
+ ]>(build: (read: BatchReadBuilder<G>) => Queries) => Promise<OneStatementBatchResults<Queries>>;
6190
+ neighbors?: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: NeighborReadOptions<G, K>) => Promise<readonly NeighborResult<G, K>[]>;
6191
+ countNeighbors?: <const K extends EdgeKinds<G>>(source: GraphNodeReference<G>, options: Omit<NeighborReadOptions<G, K>, "limit" | "orderBy">) => Promise<number>;
6192
+ }>;
6193
+ type AddedStoreReadKey = keyof AddedStoreReadsBoundary<GraphDef>;
6194
+ type AddedStoreReads<G extends GraphDef> = AddedStoreReadsBoundary<G> & Required<Pick<AddedStoreReadsBoundary<G>, AddedStoreReadKey>>;
6195
+ type ResolvedStoreCore<G extends GraphDef> = StoreCore<G> & AddedStoreReads<G>;
6060
6196
  interface StoreEvolution<G extends GraphDef, TStore extends StoreCore<G>> {
6061
6197
  readonly evolve: <TRefStore extends StoreCore<G> = TStore>(extension: GraphExtension, options?: Readonly<{
6062
6198
  ref?: TStore extends TRefStore ? StoreRef<TRefStore> : never;
@@ -6078,7 +6214,7 @@ interface StoreEvolution<G extends GraphDef, TStore extends StoreCore<G>> {
6078
6214
  * graph-owned transactions while keeping adapter-native handles, backend
6079
6215
  * internals, and caller-owned transaction adoption out of the public surface.
6080
6216
  */
6081
- type Store<G extends GraphDef> = StoreCore<G> & StoreTransactions<G> & StoreEvolution<G, Store<G>>;
6217
+ type Store<G extends GraphDef> = ResolvedStoreCore<G> & StoreTransactions<G> & StoreEvolution<G, Store<G>>;
6082
6218
  /**
6083
6219
  * An opaque, in-memory snapshot of a store's reconciled schema: the merged
6084
6220
  * compile-time + runtime-committed graph plus the committed schema version and
@@ -6135,7 +6271,7 @@ interface AdapterStoreReconciliation<G extends GraphDef, TNativeTransaction, Sel
6135
6271
  * this surface so native transaction handles remain precisely typed without
6136
6272
  * leaking into the default Store contract.
6137
6273
  */
6138
- type AdapterStore<G extends GraphDef, TNativeTransaction> = StoreCore<G> & StoreEvolution<G, AdapterStore<G, TNativeTransaction>> & AdapterStoreTransactions<G, TNativeTransaction> & AdapterStoreReconciliation<G, TNativeTransaction, AdapterStore<G, TNativeTransaction>> & Readonly<{
6274
+ type AdapterStore<G extends GraphDef, TNativeTransaction> = ResolvedStoreCore<G> & StoreEvolution<G, AdapterStore<G, TNativeTransaction>> & AdapterStoreTransactions<G, TNativeTransaction> & AdapterStoreReconciliation<G, TNativeTransaction, AdapterStore<G, TNativeTransaction>> & Readonly<{
6139
6275
  backend: GraphBackend;
6140
6276
  }>;
6141
6277
  type AdapterStoreTransactions<G extends GraphDef, TNativeTransaction> = Readonly<{
@@ -6158,18 +6294,18 @@ type AdapterHistoryTransactionContext<G extends GraphDef, TNativeTransaction> =
6158
6294
  type MeasurableAdapterHistoryTransactionContext<G extends GraphDef, TNativeTransaction> = AdapterHistoryTransactionContext<G, TNativeTransaction> & Readonly<{
6159
6295
  measure: ScopedMeasure<MeasurableAdapterHistoryTransactionContext<G, TNativeTransaction>>;
6160
6296
  }>;
6161
- type AdapterRecordedReadStore<G extends GraphDef, TNativeTransaction> = StoreCore<G> & StoreEvolution<G, AdapterRecordedReadStore<G, TNativeTransaction>> & AdapterStoreTransactions<G, TNativeTransaction> & AdapterStoreReconciliation<G, TNativeTransaction, AdapterRecordedReadStore<G, TNativeTransaction>> & Readonly<{
6297
+ type AdapterRecordedReadStore<G extends GraphDef, TNativeTransaction> = ResolvedStoreCore<G> & StoreEvolution<G, AdapterRecordedReadStore<G, TNativeTransaction>> & AdapterStoreTransactions<G, TNativeTransaction> & AdapterStoreReconciliation<G, TNativeTransaction, AdapterRecordedReadStore<G, TNativeTransaction>> & Readonly<{
6162
6298
  backend: GraphBackend;
6163
6299
  recordedReadBound: true;
6164
6300
  }>;
6165
- type RecordedReadStore<G extends GraphDef> = StoreCore<G> & StoreTransactions<G> & StoreEvolution<G, RecordedReadStore<G>> & Readonly<{
6301
+ type RecordedReadStore<G extends GraphDef> = ResolvedStoreCore<G> & StoreTransactions<G> & StoreEvolution<G, RecordedReadStore<G>> & Readonly<{
6166
6302
  recordedReadBound: true;
6167
6303
  }>;
6168
- type HistoryStore<G extends GraphDef> = StoreCore<G> & StoreTransactions<G> & StoreEvolution<G, HistoryStore<G>> & Readonly<{
6304
+ type HistoryStore<G extends GraphDef> = ResolvedStoreCore<G> & StoreTransactions<G> & StoreEvolution<G, HistoryStore<G>> & Readonly<{
6169
6305
  historyEnabled: true;
6170
6306
  recordedReadBound: true;
6171
6307
  }>;
6172
- type AdapterHistoryStore<G extends GraphDef, TNativeTransaction> = StoreCore<G> & StoreEvolution<G, AdapterHistoryStore<G, TNativeTransaction>> & AdapterHistoryStoreTransactions<G, TNativeTransaction> & AdapterStoreReconciliation<G, TNativeTransaction, AdapterHistoryStore<G, TNativeTransaction>> & Readonly<{
6308
+ type AdapterHistoryStore<G extends GraphDef, TNativeTransaction> = ResolvedStoreCore<G> & StoreEvolution<G, AdapterHistoryStore<G, TNativeTransaction>> & AdapterHistoryStoreTransactions<G, TNativeTransaction> & AdapterStoreReconciliation<G, TNativeTransaction, AdapterHistoryStore<G, TNativeTransaction>> & Readonly<{
6173
6309
  backend: HistoryStoreBackend;
6174
6310
  historyEnabled: true;
6175
6311
  recordedReadBound: true;
@@ -6348,4 +6484,4 @@ declare function createVerifiedAdapterStore<G extends GraphDef, TNativeTransacti
6348
6484
  SchemaValidationResult
6349
6485
  ]>;
6350
6486
 
6351
- export { type AnyNode as $, migrateSchema as A, parseSerializedSchema as B, requiresMigration as C, rollbackSchema as D, type AliasMap as E, type EdgeAliasMap as F, type RecursiveAliasMap as G, type HistoryStoreOptions as H, type IdentityAssertion as I, QueryBuilder as J, KindRegistry as K, type LiveStoreOptions as L, type MigrateSchemaOptions as M, type EmptyRecursiveAliasMap as N, type AdapterHistoryStore as O, type AdapterHistoryTransactionContext as P, type QueryCoordinateState as Q, type RecordedReadStoreOptions as R, type StoreOptions as S, TraversalBuilder as T, type UnboundLiveStoreOptions as U, type AdapterRecordedReadStore as V, type AdapterStore as W, type AdapterTransactionContext as X, type AggregateResult as Y, type AlgorithmCyclePolicy as Z, type AnyEdge as _, type SchemaManagerOptions as a, type HybridSearchHit as a$, type BaseStoreOptions as a0, type BaseTraversalOptions as a1, type BatchResults as a2, type BatchableQuery as a3, type BulkEdgeSourceGroup as a4, type BulkFindEdgesFromParams as a5, type BulkFindEdgesFromResult as a6, type BulkFindEdgesToParams as a7, type BulkFindEdgesToResult as a8, type BulkFindRuntimeEdgesFromParams as a9, type EdgeBatchReads as aA, type EdgeBulkFindEndpointOptions as aB, type EdgeBulkFindOptions as aC, type EdgeCollection as aD, type EdgeCollectionLookup as aE, type EdgeFindByEndpointsOptions as aF, type EdgeGetOrCreateByEndpointsOptions as aG, type EdgeGetOrCreateByEndpointsResult as aH, type EdgeIntrospection as aI, type EdgeTemporalReads as aJ, type EdgeWrites as aK, type EmptyAliasMap as aL, type EmptyEdgeAliasMap as aM, ExecutableAggregateQuery as aN, ExecutableQuery as aO, type FieldAccessor as aP, type FulltextSearchHit as aQ, type FulltextSearchOptions as aR, type GetOrCreateAction as aS, type GraphAlgorithms as aT, type GraphEdgeCollections as aU, type GraphEdgeForKinds as aV, type GraphNodeCollections as aW, type GraphNodeReference as aX, type HistoryStoreBackend as aY, type HookContext as aZ, type HybridFulltextOptions as a_, type BulkFindRuntimeEdgesFromResult as aa, type BulkOperationHookContext as ab, type ClaimOwner as ac, type ClaimTarget as ad, type CompareAndSetAbsent as ae, type CompareAndSetExpected as af, type ConstraintFenceViolation as ag, type ConstraintNames as ah, type CreateEdgeInput as ai, type CreateNodeInput as aj, type DegreeOptions as ak, type DynamicEdgeAccessor as al, type DynamicEdgeCollection as am, type DynamicEdgeType as an, type DynamicFieldBuilder as ao, type DynamicNode as ap, type DynamicNodeAccessor as aq, type DynamicNodeCollection as ar, type DynamicNodeKind as as, type DynamicNodeReference as at, type DynamicNodeType as au, type DynamicSelectableEdge as av, type DynamicSelectableNode as aw, type DynamicStoreViewEdgeCollection as ax, type Edge as ay, type EdgeAccessor as az, type Store as b, type ReembedVectorFieldOptions as b$, type HybridSearchOptions as b0, type HybridVectorOptions as b1, type IdentityAssertionWriteFacade as b2, type IdentityNodeReference as b3, type IdentityTraversalOption as b4, type IdentityValidityWindow as b5, type IfExistsMode as b6, type InitialQueryBuilder as b7, type KindIntrospection as b8, type KindPopulationStatistics as b9, type PageRankScore as bA, type PaginateOptions as bB, type PaginatedResult as bC, type PathNode as bD, type PersonalizedPageRankOptions as bE, type PersonalizedPageRankSeed as bF, type Predicate as bG, PreparedQuery as bH, type PropertyPopulationStatistics as bI, type PropsAccessor as bJ, type QueryHookContext as bK, type QueryOptions as bL, type ReachableNode as bM, type ReachableOptions as bN, type RebuildContributionOptions as bO, type RebuildFulltextOptions as bP, type RebuildFulltextResult as bQ, type ReclaimedVectorFieldEntry as bR, type RecordedScanOptions as bS, type RecordedScanPage as bT, RecordedStoreView as bU, type RecordedStoreViewEdgeCollection as bV, type RecordedStoreViewEdgeCollections as bW, type RecordedStoreViewNodeCollection as bX, type RecordedStoreViewNodeCollections as bY, type RecursiveTraversalOptions as bZ, type ReembedFunction as b_, type LabelPropagationMembership as ba, type LabelPropagationOptions as bb, type MaterializeRemovalsEntry as bc, type MaterializeRemovalsOptions as bd, type MaterializeRemovalsResult as be, type MeasurableAdapterHistoryTransactionContext as bf, type MeasurableAdapterTransactionContext as bg, type MeasurableTransactionContext as bh, type NeighborsOptions as bi, type NoRecordedCoordinate as bj, type Node as bk, type NodeAccessor as bl, type NodeAlias as bm, type NodeBulkFindByIndexOptions as bn, type NodeCollection as bo, type NodeCollectionLookup as bp, type NodeCurrentReads as bq, type NodeGetOrCreateByConstraintOptions as br, type NodeGetOrCreateByConstraintResult as bs, type NodeIdentifier as bt, type NodeRef as bu, type NodeTemporalReads as bv, type NodeWrites as bw, type OntologyIntrospection as bx, type OperationHookContext as by, type PageRankOptions as bz, type HistoryStore as c, type TypedEdgeCollection as c$, type ReembedVectorFieldResult as c0, type RequiredEdgeCollectionLookup as c1, type RequiredNodeCollectionLookup as c2, type RuntimeBulkEdgeSourceGroup as c3, type RuntimeEdgeCollection as c4, type RuntimeEdgeFor as c5, type RuntimeEdgeKind as c6, type RuntimeEdgeTypeFor as c7, type RuntimeNodeCollection as c8, type RuntimeNodeKind as c9, type StoreViewDegreeOptions as cA, type StoreViewEdgeCollection as cB, type StoreViewEdgeCollections as cC, type StoreViewGraphAlgorithms as cD, type StoreViewLabelPropagationOptions as cE, type StoreViewNeighborsOptions as cF, type StoreViewNodeCollection as cG, type StoreViewNodeCollections as cH, type StoreViewPageRankOptions as cI, type StoreViewPersonalizedPageRankOptions as cJ, type StoreViewReachableOptions as cK, type StoreViewShortestPathOptions as cL, type StoreViewSubgraphOptions as cM, type StoreViewWeaklyConnectedComponentsOptions as cN, type StoreViewWeightedShortestPathOptions as cO, type StreamOptions as cP, type SubgraphEdgeResult as cQ, type SubgraphNodeResult as cR, type SubgraphOptions as cS, type SubgraphResult as cT, type SubsetEdge as cU, type SubsetNode as cV, type TemporalAlgorithmOptions as cW, type TransactionContext as cX, type TransactionOutcome as cY, type TransactionReceipt as cZ, type TraversalDirection as c_, type RuntimeNodeReferenceFor as ca, type RuntimeNodeTypeFor as cb, type SchemaIntrospection as cc, type ScopedMeasure as cd, type SearchScopeOptions as ce, type SelectContext as cf, type SelectableEdge as cg, type SelectableNode as ch, type ShortestPathOptions as ci, type ShortestPathResult as cj, type SqlAvailability as ck, StoreAnalysisCursorStaleError as cl, type StoreAnalysisCursorStaleErrorDetails as cm, type StoreAnalysisSchemaCoordinate as cn, type StoreDescription as co, type StoreHooks as cp, type StorePopulationStatistics as cq, type StoreProjection as cr, type StoreRef as cs, StoreSearch as ct, type StoreTransactionOptions as cu, type StoreValidationFailure as cv, type StoreValidationPage as cw, StoreView as cx, type StoreViewCanReachOptions as cy, type StoreViewCoordinate as cz, type RecordedReadStore as d, type TypedRecordedStoreViewEdgeCollection as d0, type TypedStoreViewEdgeCollection as d1, UnionableQuery as d2, type UniqueIntrospection as d3, type UpdateEdgeInput as d4, type UpdateNodeInput as d5, type ValidateStoreOptions as d6, type ValidityEndMutation as d7, type VectorSearchHit as d8, type VectorSearchOptions as d9, type WeaklyConnectedComponentMembership as da, type WeaklyConnectedComponentsOptions as db, type WeightedShortestPathOptions as dc, type WeightedShortestPathResult as dd, type WorkingCopyOptions as de, asIdentityAssertionId as df, compareAndSetAbsent as dg, createAdapterStore as dh, createAdapterStoreWithSchema as di, createQueryBuilder as dj, createStore as dk, createStoreWithSchema as dl, createVerifiedAdapterStore as dm, createVerifiedStore as dn, defineSubgraphProject as dp, exists as dq, fieldRef as dr, inSubquery as ds, isParameterRef as dt, notExists as du, notInSubquery as dv, param as dw, EDGE_TEMPORAL_READ_NAMES as dx, IDENTITY_READ_NAMES as dy, type IdentityAssertionId as e, type IdentityAssertionResult as f, type IdentityFacade as g, type IdentityNode as h, type IdentityNodeRefInput as i, type IdentityPair as j, type IdentityReadFacade as k, type IdentityRelation as l, type IdentityWriteSummary as m, type ReconciledSchema as n, type MigrationHookContext as o, type SchemaValidationResult as p, applyDeprecatedKinds as q, assertSchemaCurrent as r, ensureSchema as s, getActiveSchema as t, getCommittedSchemaVersion as u, getSchemaChanges as v, initializeSchema as w, isSchemaInitialized as x, loadActiveSchemaWithBootstrap as y, loadAndMergeGraphExtensionDocument as z };
6487
+ export { type AlgorithmCyclePolicy as $, migrateSchema as A, type BatchReadBuilder as B, type CompiledOneStatementRead as C, parseSerializedSchema as D, requiresMigration as E, rollbackSchema as F, type AliasMap as G, type HistoryStoreOptions as H, type IdentityAssertion as I, type EdgeAliasMap as J, KindRegistry as K, type LiveStoreOptions as L, type MigrateSchemaOptions as M, type RecursiveAliasMap as N, QueryBuilder as O, type EmptyRecursiveAliasMap as P, type QueryCoordinateState as Q, type RecordedReadStoreOptions as R, type StoreOptions as S, TraversalBuilder as T, type UnboundLiveStoreOptions as U, type AdapterHistoryStore as V, type AdapterHistoryTransactionContext as W, type AdapterRecordedReadStore as X, type AdapterStore as Y, type AdapterTransactionContext as Z, type AggregateResult as _, type SchemaManagerOptions as a, type GraphEdgeForKinds as a$, type AnyEdge as a0, type AnyNode as a1, type BaseStoreOptions as a2, type BaseTraversalOptions as a3, type BatchResults as a4, type BatchableQuery as a5, type BulkEdgeSourceGroup as a6, type BulkFindEdgesFromParams as a7, type BulkFindEdgesFromResult as a8, type BulkFindEdgesToParams as a9, type DynamicStoreViewEdgeCollection as aA, type Edge as aB, type EdgeAccessor as aC, type EdgeBatchReads as aD, type EdgeBulkFindEndpointOptions as aE, type EdgeBulkFindOptions as aF, type EdgeCollection as aG, type EdgeCollectionLookup as aH, type EdgeFindByEndpointsOptions as aI, type EdgeGetOrCreateByEndpointsOptions as aJ, type EdgeGetOrCreateByEndpointsResult as aK, type EdgeIntrospection as aL, type EdgeReadWindow as aM, type EdgeTemporalReads as aN, type EdgeWrites as aO, type EmbeddableOneStatementRead as aP, type EmptyAliasMap as aQ, type EmptyEdgeAliasMap as aR, ExecutableAggregateQuery as aS, type ExecutableOneStatementRead as aT, ExecutableQuery as aU, type FieldAccessor as aV, type FulltextSearchHit as aW, type FulltextSearchOptions as aX, type GetOrCreateAction as aY, type GraphAlgorithms as aZ, type GraphEdgeCollections as a_, type BulkFindEdgesToResult as aa, type BulkFindRuntimeEdgesFromParams as ab, type BulkFindRuntimeEdgesFromResult as ac, type BulkOperationHookContext as ad, type CheckedReadScope as ae, type ClaimOwner as af, type ClaimTarget as ag, type CompareAndSetAbsent as ah, type CompareAndSetExpected as ai, type ConstraintFenceViolation as aj, type ConstraintNames as ak, type CreateEdgeInput as al, type CreateNodeInput as am, type DegreeOptions as an, type DynamicEdgeAccessor as ao, type DynamicEdgeCollection as ap, type DynamicEdgeType as aq, type DynamicFieldBuilder as ar, type DynamicNode as as, type DynamicNodeAccessor as at, type DynamicNodeCollection as au, type DynamicNodeKind as av, type DynamicNodeReference as aw, type DynamicNodeType as ax, type DynamicSelectableEdge as ay, type DynamicSelectableNode as az, type Store as b, type RebuildContributionOptions as b$, type GraphNodeCollections as b0, type GraphNodeReference as b1, type HistoryStoreBackend as b2, type HookContext as b3, type HybridFulltextOptions as b4, type HybridSearchHit as b5, type HybridSearchOptions as b6, type HybridVectorOptions as b7, type IdentityAssertionWriteFacade as b8, type IdentityNodeReference as b9, type NodeCollectionLookup as bA, type NodeCurrentReads as bB, type NodeGetOrCreateByConstraintOptions as bC, type NodeGetOrCreateByConstraintResult as bD, type NodeIdentifier as bE, type NodeRef as bF, type NodeTemporalReads as bG, type NodeWrites as bH, type OneStatementBatchResults as bI, type OneStatementBatchableQuery as bJ, type OntologyIntrospection as bK, type OperationHookContext as bL, type PageRankOptions as bM, type PageRankScore as bN, type PaginateOptions as bO, type PaginatedResult as bP, type PathNode as bQ, type PersonalizedPageRankOptions as bR, type PersonalizedPageRankSeed as bS, type Predicate as bT, PreparedQuery as bU, type PropertyPopulationStatistics as bV, type PropsAccessor as bW, type QueryHookContext as bX, type QueryOptions as bY, type ReachableNode as bZ, type ReachableOptions as b_, type IdentityTraversalOption as ba, type IdentityValidityWindow as bb, type IfExistsMode as bc, type InitialQueryBuilder as bd, type KindIntrospection as be, type KindPopulationStatistics as bf, type LabelPropagationMembership as bg, type LabelPropagationOptions as bh, type MaterializeRemovalsEntry as bi, type MaterializeRemovalsOptions as bj, type MaterializeRemovalsResult as bk, type MeasurableAdapterHistoryTransactionContext as bl, type MeasurableAdapterTransactionContext as bm, type MeasurableTransactionContext as bn, type NeighborNodeOrderField as bo, type NeighborOrder as bp, type NeighborOrderField as bq, type NeighborReadOptions as br, type NeighborResult as bs, type NeighborsOptions as bt, type NoRecordedCoordinate as bu, type Node as bv, type NodeAccessor as bw, type NodeAlias as bx, type NodeBulkFindByIndexOptions as by, type NodeCollection as bz, type HistoryStore as c, type StoreViewWeightedShortestPathOptions as c$, type RebuildFulltextOptions as c0, type RebuildFulltextResult as c1, type ReclaimedVectorFieldEntry as c2, type RecordedScanOptions as c3, type RecordedScanPage as c4, RecordedStoreView as c5, type RecordedStoreViewEdgeCollection as c6, type RecordedStoreViewEdgeCollections as c7, type RecordedStoreViewNodeCollection as c8, type RecordedStoreViewNodeCollections as c9, type StoreAnalysisSchemaCoordinate as cA, type StoreDescription as cB, type StoreHooks as cC, type StorePopulationStatistics as cD, type StoreProjection as cE, type StoreRef as cF, StoreSearch as cG, type StoreTransactionOptions as cH, type StoreValidationFailure as cI, type StoreValidationPage as cJ, StoreView as cK, type StoreViewCanReachOptions as cL, type StoreViewCoordinate as cM, type StoreViewDegreeOptions as cN, type StoreViewEdgeCollection as cO, type StoreViewEdgeCollections as cP, type StoreViewGraphAlgorithms as cQ, type StoreViewLabelPropagationOptions as cR, type StoreViewNeighborsOptions as cS, type StoreViewNodeCollection as cT, type StoreViewNodeCollections as cU, type StoreViewPageRankOptions as cV, type StoreViewPersonalizedPageRankOptions as cW, type StoreViewReachableOptions as cX, type StoreViewShortestPathOptions as cY, type StoreViewSubgraphOptions as cZ, type StoreViewWeaklyConnectedComponentsOptions as c_, type RecursiveTraversalOptions as ca, type ReembedFunction as cb, type ReembedVectorFieldOptions as cc, type ReembedVectorFieldResult as cd, type RequiredEdgeCollectionLookup as ce, type RequiredNodeCollectionLookup as cf, type RuntimeBulkEdgeSourceGroup as cg, type RuntimeEdgeCollection as ch, type RuntimeEdgeFor as ci, type RuntimeEdgeKind as cj, type RuntimeEdgeTypeFor as ck, type RuntimeNodeCollection as cl, type RuntimeNodeKind as cm, type RuntimeNodeReferenceFor as cn, type RuntimeNodeTypeFor as co, type SchemaIntrospection as cp, type ScopedMeasure as cq, type SearchScopeOptions as cr, type SelectContext as cs, type SelectableEdge as ct, type SelectableNode as cu, type ShortestPathOptions as cv, type ShortestPathResult as cw, type SqlAvailability as cx, StoreAnalysisCursorStaleError as cy, type StoreAnalysisCursorStaleErrorDetails as cz, type RecordedReadStore as d, type StreamOptions as d0, type SubgraphEdgeResult as d1, type SubgraphNodeResult as d2, type SubgraphOptions as d3, type SubgraphResult as d4, type SubsetEdge as d5, type SubsetNode as d6, type TemporalAlgorithmOptions as d7, type TransactionContext as d8, type TransactionOutcome as d9, createVerifiedAdapterStore as dA, createVerifiedStore as dB, defineSubgraphProject as dC, exists as dD, fieldRef as dE, inSubquery as dF, isParameterRef as dG, notExists as dH, notInSubquery as dI, param as dJ, EDGE_TEMPORAL_READ_NAMES as dK, IDENTITY_READ_NAMES as dL, type TransactionReceipt as da, type TraversalDirection as db, type TypedEdgeCollection as dc, type TypedRecordedStoreViewEdgeCollection as dd, type TypedStoreViewEdgeCollection as de, UnionableQuery as df, type UniqueIntrospection as dg, type UpdateEdgeInput as dh, type UpdateNodeInput as di, type ValidateStoreOptions as dj, type ValidityEndMutation as dk, type VectorSearchHit as dl, type VectorSearchOptions as dm, type WeaklyConnectedComponentMembership as dn, type WeaklyConnectedComponentsOptions as dp, type WeightedShortestPathOptions as dq, type WeightedShortestPathResult as dr, type WorkingCopyOptions as ds, asIdentityAssertionId as dt, compareAndSetAbsent as du, createAdapterStore as dv, createAdapterStoreWithSchema as dw, createQueryBuilder as dx, createStore as dy, createStoreWithSchema as dz, type IdentityAssertionId as e, type IdentityAssertionResult as f, type IdentityFacade as g, type IdentityNode as h, type IdentityNodeRefInput as i, type IdentityPair as j, type IdentityReadFacade as k, type IdentityRelation as l, type IdentityWriteSummary as m, type ReconciledSchema as n, type MigrationHookContext as o, type SchemaValidationResult as p, applyDeprecatedKinds as q, assertSchemaCurrent as r, ensureSchema as s, getActiveSchema as t, getCommittedSchemaVersion as u, getSchemaChanges as v, initializeSchema as w, isSchemaInitialized as x, loadActiveSchemaWithBootstrap as y, loadAndMergeGraphExtensionDocument as z };