@elytracms/core 0.0.6

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 (521) hide show
  1. package/LICENSE +21 -0
  2. package/dist/clipboard/build.d.ts +77 -0
  3. package/dist/clipboard/build.js +128 -0
  4. package/dist/clipboard/build.js.map +1 -0
  5. package/dist/clipboard/clipboard.d.ts +33 -0
  6. package/dist/clipboard/clipboard.js +45 -0
  7. package/dist/clipboard/clipboard.js.map +1 -0
  8. package/dist/clipboard/fragment.d.ts +112 -0
  9. package/dist/clipboard/fragment.js +79 -0
  10. package/dist/clipboard/fragment.js.map +1 -0
  11. package/dist/clipboard/html.d.ts +26 -0
  12. package/dist/clipboard/html.js +82 -0
  13. package/dist/clipboard/html.js.map +1 -0
  14. package/dist/clipboard/index.d.ts +15 -0
  15. package/dist/clipboard/index.js +16 -0
  16. package/dist/clipboard/index.js.map +1 -0
  17. package/dist/clipboard/references.d.ts +50 -0
  18. package/dist/clipboard/references.js +0 -0
  19. package/dist/clipboard/references.js.map +1 -0
  20. package/dist/clipboard/serialize.d.ts +69 -0
  21. package/dist/clipboard/serialize.js +130 -0
  22. package/dist/clipboard/serialize.js.map +1 -0
  23. package/dist/cms-core/collections.d.ts +82 -0
  24. package/dist/cms-core/collections.js +187 -0
  25. package/dist/cms-core/collections.js.map +1 -0
  26. package/dist/cms-core/documents.d.ts +71 -0
  27. package/dist/cms-core/documents.js +67 -0
  28. package/dist/cms-core/documents.js.map +1 -0
  29. package/dist/cms-core/envelopes.d.ts +80 -0
  30. package/dist/cms-core/envelopes.js +124 -0
  31. package/dist/cms-core/envelopes.js.map +1 -0
  32. package/dist/cms-core/fields.d.ts +220 -0
  33. package/dist/cms-core/fields.js +250 -0
  34. package/dist/cms-core/fields.js.map +1 -0
  35. package/dist/cms-core/fixtures.d.ts +92 -0
  36. package/dist/cms-core/fixtures.js +357 -0
  37. package/dist/cms-core/fixtures.js.map +1 -0
  38. package/dist/cms-core/hierarchy.d.ts +113 -0
  39. package/dist/cms-core/hierarchy.js +223 -0
  40. package/dist/cms-core/hierarchy.js.map +1 -0
  41. package/dist/cms-core/index.d.ts +25 -0
  42. package/dist/cms-core/index.js +26 -0
  43. package/dist/cms-core/index.js.map +1 -0
  44. package/dist/cms-core/infer.d.ts +103 -0
  45. package/dist/cms-core/infer.js +57 -0
  46. package/dist/cms-core/infer.js.map +1 -0
  47. package/dist/cms-core/issues.d.ts +92 -0
  48. package/dist/cms-core/issues.js +74 -0
  49. package/dist/cms-core/issues.js.map +1 -0
  50. package/dist/cms-core/json-schema.d.ts +25 -0
  51. package/dist/cms-core/json-schema.js +110 -0
  52. package/dist/cms-core/json-schema.js.map +1 -0
  53. package/dist/cms-core/localization.d.ts +51 -0
  54. package/dist/cms-core/localization.js +89 -0
  55. package/dist/cms-core/localization.js.map +1 -0
  56. package/dist/cms-core/routes.d.ts +76 -0
  57. package/dist/cms-core/routes.js +220 -0
  58. package/dist/cms-core/routes.js.map +1 -0
  59. package/dist/cms-core/self-type.d.ts +41 -0
  60. package/dist/cms-core/self-type.js +191 -0
  61. package/dist/cms-core/self-type.js.map +1 -0
  62. package/dist/cms-core/url-for-document.d.ts +39 -0
  63. package/dist/cms-core/url-for-document.js +138 -0
  64. package/dist/cms-core/url-for-document.js.map +1 -0
  65. package/dist/cms-core/validate-document.d.ts +121 -0
  66. package/dist/cms-core/validate-document.js +871 -0
  67. package/dist/cms-core/validate-document.js.map +1 -0
  68. package/dist/cms-core/versions.d.ts +75 -0
  69. package/dist/cms-core/versions.js +97 -0
  70. package/dist/cms-core/versions.js.map +1 -0
  71. package/dist/collaboration/approval.d.ts +68 -0
  72. package/dist/collaboration/approval.js +104 -0
  73. package/dist/collaboration/approval.js.map +1 -0
  74. package/dist/collaboration/collaboration.d.ts +49 -0
  75. package/dist/collaboration/collaboration.js +56 -0
  76. package/dist/collaboration/collaboration.js.map +1 -0
  77. package/dist/collaboration/comments.d.ts +72 -0
  78. package/dist/collaboration/comments.js +118 -0
  79. package/dist/collaboration/comments.js.map +1 -0
  80. package/dist/collaboration/core.d.ts +25 -0
  81. package/dist/collaboration/core.js +26 -0
  82. package/dist/collaboration/core.js.map +1 -0
  83. package/dist/collaboration/index.d.ts +14 -0
  84. package/dist/collaboration/index.js +15 -0
  85. package/dist/collaboration/index.js.map +1 -0
  86. package/dist/collaboration/presence.d.ts +62 -0
  87. package/dist/collaboration/presence.js +85 -0
  88. package/dist/collaboration/presence.js.map +1 -0
  89. package/dist/collaboration/publishing.d.ts +60 -0
  90. package/dist/collaboration/publishing.js +93 -0
  91. package/dist/collaboration/publishing.js.map +1 -0
  92. package/dist/collaboration/versions.d.ts +52 -0
  93. package/dist/collaboration/versions.js +81 -0
  94. package/dist/collaboration/versions.js.map +1 -0
  95. package/dist/component-registry/index.d.ts +3 -0
  96. package/dist/component-registry/index.js +4 -0
  97. package/dist/component-registry/index.js.map +1 -0
  98. package/dist/component-registry/issues.d.ts +6 -0
  99. package/dist/component-registry/issues.js +2 -0
  100. package/dist/component-registry/issues.js.map +1 -0
  101. package/dist/component-registry/manifest.d.ts +164 -0
  102. package/dist/component-registry/manifest.js +129 -0
  103. package/dist/component-registry/manifest.js.map +1 -0
  104. package/dist/component-registry/registry.d.ts +33 -0
  105. package/dist/component-registry/registry.js +90 -0
  106. package/dist/component-registry/registry.js.map +1 -0
  107. package/dist/content/__fixtures__/filterable-collections.d.ts +14 -0
  108. package/dist/content/__fixtures__/filterable-collections.js +15 -0
  109. package/dist/content/__fixtures__/filterable-collections.js.map +1 -0
  110. package/dist/content/__fixtures__/sample-accessor-types.d.ts +56 -0
  111. package/dist/content/__fixtures__/sample-accessor-types.js +5 -0
  112. package/dist/content/__fixtures__/sample-accessor-types.js.map +1 -0
  113. package/dist/content/__fixtures__/sample-delivery-types.d.ts +122 -0
  114. package/dist/content/__fixtures__/sample-delivery-types.js +5 -0
  115. package/dist/content/__fixtures__/sample-delivery-types.js.map +1 -0
  116. package/dist/content/assets.d.ts +53 -0
  117. package/dist/content/assets.js +38 -0
  118. package/dist/content/assets.js.map +1 -0
  119. package/dist/content/binding-sources.d.ts +53 -0
  120. package/dist/content/binding-sources.js +73 -0
  121. package/dist/content/binding-sources.js.map +1 -0
  122. package/dist/content/client.d.ts +90 -0
  123. package/dist/content/client.js +383 -0
  124. package/dist/content/client.js.map +1 -0
  125. package/dist/content/codegen.d.ts +54 -0
  126. package/dist/content/codegen.js +305 -0
  127. package/dist/content/codegen.js.map +1 -0
  128. package/dist/content/context.d.ts +38 -0
  129. package/dist/content/context.js +21 -0
  130. package/dist/content/context.js.map +1 -0
  131. package/dist/content/cursor.d.ts +33 -0
  132. package/dist/content/cursor.js +104 -0
  133. package/dist/content/cursor.js.map +1 -0
  134. package/dist/content/index.d.ts +28 -0
  135. package/dist/content/index.js +29 -0
  136. package/dist/content/index.js.map +1 -0
  137. package/dist/content/locale.d.ts +30 -0
  138. package/dist/content/locale.js +26 -0
  139. package/dist/content/locale.js.map +1 -0
  140. package/dist/content/perspective.d.ts +29 -0
  141. package/dist/content/perspective.js +31 -0
  142. package/dist/content/perspective.js.map +1 -0
  143. package/dist/content/populate.d.ts +25 -0
  144. package/dist/content/populate.js +22 -0
  145. package/dist/content/populate.js.map +1 -0
  146. package/dist/content/query.d.ts +122 -0
  147. package/dist/content/query.js +257 -0
  148. package/dist/content/query.js.map +1 -0
  149. package/dist/content/raw.d.ts +13 -0
  150. package/dist/content/raw.js +14 -0
  151. package/dist/content/raw.js.map +1 -0
  152. package/dist/content/resolve.d.ts +97 -0
  153. package/dist/content/resolve.js +261 -0
  154. package/dist/content/resolve.js.map +1 -0
  155. package/dist/content/serialize.d.ts +30 -0
  156. package/dist/content/serialize.js +57 -0
  157. package/dist/content/serialize.js.map +1 -0
  158. package/dist/content/tags.d.ts +54 -0
  159. package/dist/content/tags.js +40 -0
  160. package/dist/content/tags.js.map +1 -0
  161. package/dist/data-binding/fixtures.d.ts +20 -0
  162. package/dist/data-binding/fixtures.js +47 -0
  163. package/dist/data-binding/fixtures.js.map +1 -0
  164. package/dist/data-binding/index.d.ts +14 -0
  165. package/dist/data-binding/index.js +15 -0
  166. package/dist/data-binding/index.js.map +1 -0
  167. package/dist/data-binding/issues.d.ts +45 -0
  168. package/dist/data-binding/issues.js +46 -0
  169. package/dist/data-binding/issues.js.map +1 -0
  170. package/dist/data-binding/resolve.d.ts +87 -0
  171. package/dist/data-binding/resolve.js +204 -0
  172. package/dist/data-binding/resolve.js.map +1 -0
  173. package/dist/data-binding/sample.d.ts +21 -0
  174. package/dist/data-binding/sample.js +23 -0
  175. package/dist/data-binding/sample.js.map +1 -0
  176. package/dist/data-binding/sources.d.ts +225 -0
  177. package/dist/data-binding/sources.js +154 -0
  178. package/dist/data-binding/sources.js.map +1 -0
  179. package/dist/data-binding/tokens.d.ts +62 -0
  180. package/dist/data-binding/tokens.js +150 -0
  181. package/dist/data-binding/tokens.js.map +1 -0
  182. package/dist/design-tokens/css.d.ts +34 -0
  183. package/dist/design-tokens/css.js +51 -0
  184. package/dist/design-tokens/css.js.map +1 -0
  185. package/dist/design-tokens/index.d.ts +10 -0
  186. package/dist/design-tokens/index.js +11 -0
  187. package/dist/design-tokens/index.js.map +1 -0
  188. package/dist/design-tokens/style-guide.d.ts +30 -0
  189. package/dist/design-tokens/style-guide.js +31 -0
  190. package/dist/design-tokens/style-guide.js.map +1 -0
  191. package/dist/design-tokens/tokens.d.ts +89 -0
  192. package/dist/design-tokens/tokens.js +112 -0
  193. package/dist/design-tokens/tokens.js.map +1 -0
  194. package/dist/export-sync/builder-source.d.ts +85 -0
  195. package/dist/export-sync/builder-source.js +124 -0
  196. package/dist/export-sync/builder-source.js.map +1 -0
  197. package/dist/export-sync/check.d.ts +61 -0
  198. package/dist/export-sync/check.js +126 -0
  199. package/dist/export-sync/check.js.map +1 -0
  200. package/dist/export-sync/cli.d.ts +89 -0
  201. package/dist/export-sync/cli.js +323 -0
  202. package/dist/export-sync/cli.js.map +1 -0
  203. package/dist/export-sync/core.d.ts +58 -0
  204. package/dist/export-sync/core.js +41 -0
  205. package/dist/export-sync/core.js.map +1 -0
  206. package/dist/export-sync/eject.d.ts +28 -0
  207. package/dist/export-sync/eject.js +21 -0
  208. package/dist/export-sync/eject.js.map +1 -0
  209. package/dist/export-sync/fixtures.d.ts +25 -0
  210. package/dist/export-sync/fixtures.js +87 -0
  211. package/dist/export-sync/fixtures.js.map +1 -0
  212. package/dist/export-sync/generate.d.ts +7 -0
  213. package/dist/export-sync/generate.js +505 -0
  214. package/dist/export-sync/generate.js.map +1 -0
  215. package/dist/export-sync/index.d.ts +37 -0
  216. package/dist/export-sync/index.js +39 -0
  217. package/dist/export-sync/index.js.map +1 -0
  218. package/dist/export-sync/init.d.ts +123 -0
  219. package/dist/export-sync/init.js +234 -0
  220. package/dist/export-sync/init.js.map +1 -0
  221. package/dist/export-sync/manifest-host.d.ts +48 -0
  222. package/dist/export-sync/manifest-host.js +73 -0
  223. package/dist/export-sync/manifest-host.js.map +1 -0
  224. package/dist/export-sync/node.d.ts +20 -0
  225. package/dist/export-sync/node.js +101 -0
  226. package/dist/export-sync/node.js.map +1 -0
  227. package/dist/export-sync/push.d.ts +76 -0
  228. package/dist/export-sync/push.js +197 -0
  229. package/dist/export-sync/push.js.map +1 -0
  230. package/dist/export-sync/registry-sync-client.d.ts +59 -0
  231. package/dist/export-sync/registry-sync-client.js +97 -0
  232. package/dist/export-sync/registry-sync-client.js.map +1 -0
  233. package/dist/export-sync/sync.d.ts +47 -0
  234. package/dist/export-sync/sync.js +47 -0
  235. package/dist/export-sync/sync.js.map +1 -0
  236. package/dist/export-sync/typegen.d.ts +40 -0
  237. package/dist/export-sync/typegen.js +45 -0
  238. package/dist/export-sync/typegen.js.map +1 -0
  239. package/dist/export-sync/validate.d.ts +19 -0
  240. package/dist/export-sync/validate.js +102 -0
  241. package/dist/export-sync/validate.js.map +1 -0
  242. package/dist/export-sync/watch.d.ts +66 -0
  243. package/dist/export-sync/watch.js +70 -0
  244. package/dist/export-sync/watch.js.map +1 -0
  245. package/dist/operations/assets.d.ts +198 -0
  246. package/dist/operations/assets.js +75 -0
  247. package/dist/operations/assets.js.map +1 -0
  248. package/dist/operations/authorization.d.ts +49 -0
  249. package/dist/operations/authorization.js +128 -0
  250. package/dist/operations/authorization.js.map +1 -0
  251. package/dist/operations/changesets.d.ts +160 -0
  252. package/dist/operations/changesets.js +442 -0
  253. package/dist/operations/changesets.js.map +1 -0
  254. package/dist/operations/client.d.ts +49 -0
  255. package/dist/operations/client.js +57 -0
  256. package/dist/operations/client.js.map +1 -0
  257. package/dist/operations/core.d.ts +238 -0
  258. package/dist/operations/core.js +269 -0
  259. package/dist/operations/core.js.map +1 -0
  260. package/dist/operations/documents.d.ts +432 -0
  261. package/dist/operations/documents.js +344 -0
  262. package/dist/operations/documents.js.map +1 -0
  263. package/dist/operations/graph.d.ts +138 -0
  264. package/dist/operations/graph.js +78 -0
  265. package/dist/operations/graph.js.map +1 -0
  266. package/dist/operations/index.d.ts +19 -0
  267. package/dist/operations/index.js +20 -0
  268. package/dist/operations/index.js.map +1 -0
  269. package/dist/operations/members.d.ts +87 -0
  270. package/dist/operations/members.js +56 -0
  271. package/dist/operations/members.js.map +1 -0
  272. package/dist/operations/publishing.d.ts +89 -0
  273. package/dist/operations/publishing.js +57 -0
  274. package/dist/operations/publishing.js.map +1 -0
  275. package/dist/operations/references.d.ts +222 -0
  276. package/dist/operations/references.js +177 -0
  277. package/dist/operations/references.js.map +1 -0
  278. package/dist/operations/schema.d.ts +413 -0
  279. package/dist/operations/schema.js +138 -0
  280. package/dist/operations/schema.js.map +1 -0
  281. package/dist/operations/tokens.d.ts +79 -0
  282. package/dist/operations/tokens.js +102 -0
  283. package/dist/operations/tokens.js.map +1 -0
  284. package/dist/persistence/adapter.d.ts +79 -0
  285. package/dist/persistence/adapter.js +55 -0
  286. package/dist/persistence/adapter.js.map +1 -0
  287. package/dist/persistence/assets.d.ts +120 -0
  288. package/dist/persistence/assets.js +141 -0
  289. package/dist/persistence/assets.js.map +1 -0
  290. package/dist/persistence/backend-validation.d.ts +43 -0
  291. package/dist/persistence/backend-validation.js +57 -0
  292. package/dist/persistence/backend-validation.js.map +1 -0
  293. package/dist/persistence/cli-tokens.d.ts +50 -0
  294. package/dist/persistence/cli-tokens.js +66 -0
  295. package/dist/persistence/cli-tokens.js.map +1 -0
  296. package/dist/persistence/cms.d.ts +148 -0
  297. package/dist/persistence/cms.js +232 -0
  298. package/dist/persistence/cms.js.map +1 -0
  299. package/dist/persistence/contract-scenarios.d.ts +73 -0
  300. package/dist/persistence/contract-scenarios.js +496 -0
  301. package/dist/persistence/contract-scenarios.js.map +1 -0
  302. package/dist/persistence/core.d.ts +96 -0
  303. package/dist/persistence/core.js +110 -0
  304. package/dist/persistence/core.js.map +1 -0
  305. package/dist/persistence/graph.d.ts +61 -0
  306. package/dist/persistence/graph.js +98 -0
  307. package/dist/persistence/graph.js.map +1 -0
  308. package/dist/persistence/index.d.ts +22 -0
  309. package/dist/persistence/index.js +23 -0
  310. package/dist/persistence/index.js.map +1 -0
  311. package/dist/persistence/members.d.ts +70 -0
  312. package/dist/persistence/members.js +0 -0
  313. package/dist/persistence/members.js.map +1 -0
  314. package/dist/persistence/publishing.d.ts +59 -0
  315. package/dist/persistence/publishing.js +95 -0
  316. package/dist/persistence/publishing.js.map +1 -0
  317. package/dist/persistence/reference-extraction.d.ts +44 -0
  318. package/dist/persistence/reference-extraction.js +204 -0
  319. package/dist/persistence/reference-extraction.js.map +1 -0
  320. package/dist/persistence/reference-indexing.d.ts +68 -0
  321. package/dist/persistence/reference-indexing.js +112 -0
  322. package/dist/persistence/reference-indexing.js.map +1 -0
  323. package/dist/persistence/references.d.ts +257 -0
  324. package/dist/persistence/references.js +0 -0
  325. package/dist/persistence/references.js.map +1 -0
  326. package/dist/persistence/seed.d.ts +55 -0
  327. package/dist/persistence/seed.js +102 -0
  328. package/dist/persistence/seed.js.map +1 -0
  329. package/dist/persistence/self-maintaining-adapter.d.ts +41 -0
  330. package/dist/persistence/self-maintaining-adapter.js +79 -0
  331. package/dist/persistence/self-maintaining-adapter.js.map +1 -0
  332. package/dist/plugins/asset-storage.d.ts +76 -0
  333. package/dist/plugins/asset-storage.js +104 -0
  334. package/dist/plugins/asset-storage.js.map +1 -0
  335. package/dist/plugins/component-package.d.ts +54 -0
  336. package/dist/plugins/component-package.js +92 -0
  337. package/dist/plugins/component-package.js.map +1 -0
  338. package/dist/plugins/data-sources.d.ts +78 -0
  339. package/dist/plugins/data-sources.js +99 -0
  340. package/dist/plugins/data-sources.js.map +1 -0
  341. package/dist/plugins/examples.d.ts +47 -0
  342. package/dist/plugins/examples.js +205 -0
  343. package/dist/plugins/examples.js.map +1 -0
  344. package/dist/plugins/export-targets.d.ts +47 -0
  345. package/dist/plugins/export-targets.js +78 -0
  346. package/dist/plugins/export-targets.js.map +1 -0
  347. package/dist/plugins/field-types.d.ts +86 -0
  348. package/dist/plugins/field-types.js +93 -0
  349. package/dist/plugins/field-types.js.map +1 -0
  350. package/dist/plugins/hooks.d.ts +60 -0
  351. package/dist/plugins/hooks.js +94 -0
  352. package/dist/plugins/hooks.js.map +1 -0
  353. package/dist/plugins/index.d.ts +27 -0
  354. package/dist/plugins/index.js +28 -0
  355. package/dist/plugins/index.js.map +1 -0
  356. package/dist/plugins/marketplace.d.ts +90 -0
  357. package/dist/plugins/marketplace.js +110 -0
  358. package/dist/plugins/marketplace.js.map +1 -0
  359. package/dist/plugins/plugin.d.ts +107 -0
  360. package/dist/plugins/plugin.js +122 -0
  361. package/dist/plugins/plugin.js.map +1 -0
  362. package/dist/plugins/templates.d.ts +66 -0
  363. package/dist/plugins/templates.js +74 -0
  364. package/dist/plugins/templates.js.map +1 -0
  365. package/dist/project-graph/binding.d.ts +68 -0
  366. package/dist/project-graph/binding.js +39 -0
  367. package/dist/project-graph/binding.js.map +1 -0
  368. package/dist/project-graph/container.d.ts +126 -0
  369. package/dist/project-graph/container.js +221 -0
  370. package/dist/project-graph/container.js.map +1 -0
  371. package/dist/project-graph/edit.d.ts +66 -0
  372. package/dist/project-graph/edit.js +201 -0
  373. package/dist/project-graph/edit.js.map +1 -0
  374. package/dist/project-graph/fixtures.d.ts +51 -0
  375. package/dist/project-graph/fixtures.js +224 -0
  376. package/dist/project-graph/fixtures.js.map +1 -0
  377. package/dist/project-graph/ids.d.ts +17 -0
  378. package/dist/project-graph/ids.js +19 -0
  379. package/dist/project-graph/ids.js.map +1 -0
  380. package/dist/project-graph/index.d.ts +12 -0
  381. package/dist/project-graph/index.js +13 -0
  382. package/dist/project-graph/index.js.map +1 -0
  383. package/dist/project-graph/issues.d.ts +61 -0
  384. package/dist/project-graph/issues.js +44 -0
  385. package/dist/project-graph/issues.js.map +1 -0
  386. package/dist/project-graph/json.d.ts +6 -0
  387. package/dist/project-graph/json.js +10 -0
  388. package/dist/project-graph/json.js.map +1 -0
  389. package/dist/project-graph/node.d.ts +48 -0
  390. package/dist/project-graph/node.js +42 -0
  391. package/dist/project-graph/node.js.map +1 -0
  392. package/dist/project-graph/normalize.d.ts +17 -0
  393. package/dist/project-graph/normalize.js +110 -0
  394. package/dist/project-graph/normalize.js.map +1 -0
  395. package/dist/project-graph/serialize.d.ts +36 -0
  396. package/dist/project-graph/serialize.js +51 -0
  397. package/dist/project-graph/serialize.js.map +1 -0
  398. package/dist/project-graph/structure.d.ts +40 -0
  399. package/dist/project-graph/structure.js +36 -0
  400. package/dist/project-graph/structure.js.map +1 -0
  401. package/dist/project-graph/validate.d.ts +84 -0
  402. package/dist/project-graph/validate.js +158 -0
  403. package/dist/project-graph/validate.js.map +1 -0
  404. package/dist/rich-text/adapter.d.ts +43 -0
  405. package/dist/rich-text/adapter.js +24 -0
  406. package/dist/rich-text/adapter.js.map +1 -0
  407. package/dist/rich-text/dom-editor.d.ts +101 -0
  408. package/dist/rich-text/dom-editor.js +482 -0
  409. package/dist/rich-text/dom-editor.js.map +1 -0
  410. package/dist/rich-text/embed.d.ts +70 -0
  411. package/dist/rich-text/embed.js +70 -0
  412. package/dist/rich-text/embed.js.map +1 -0
  413. package/dist/rich-text/fixtures.d.ts +25 -0
  414. package/dist/rich-text/fixtures.js +115 -0
  415. package/dist/rich-text/fixtures.js.map +1 -0
  416. package/dist/rich-text/html.d.ts +5 -0
  417. package/dist/rich-text/html.js +309 -0
  418. package/dist/rich-text/html.js.map +1 -0
  419. package/dist/rich-text/index.d.ts +19 -0
  420. package/dist/rich-text/index.js +20 -0
  421. package/dist/rich-text/index.js.map +1 -0
  422. package/dist/rich-text/markdown.d.ts +7 -0
  423. package/dist/rich-text/markdown.js +235 -0
  424. package/dist/rich-text/markdown.js.map +1 -0
  425. package/dist/rich-text/portable-text.d.ts +50 -0
  426. package/dist/rich-text/portable-text.js +223 -0
  427. package/dist/rich-text/portable-text.js.map +1 -0
  428. package/dist/rich-text/registry.d.ts +48 -0
  429. package/dist/rich-text/registry.js +16 -0
  430. package/dist/rich-text/registry.js.map +1 -0
  431. package/dist/rich-text/render.d.ts +69 -0
  432. package/dist/rich-text/render.js +205 -0
  433. package/dist/rich-text/render.js.map +1 -0
  434. package/dist/rich-text/schema.d.ts +86 -0
  435. package/dist/rich-text/schema.js +80 -0
  436. package/dist/rich-text/schema.js.map +1 -0
  437. package/dist/rich-text/test-support.d.ts +7 -0
  438. package/dist/rich-text/test-support.js +8 -0
  439. package/dist/rich-text/test-support.js.map +1 -0
  440. package/dist/runtime-renderer/client.d.ts +14 -0
  441. package/dist/runtime-renderer/client.js +15 -0
  442. package/dist/runtime-renderer/client.js.map +1 -0
  443. package/dist/runtime-renderer/condition.d.ts +8 -0
  444. package/dist/runtime-renderer/condition.js +48 -0
  445. package/dist/runtime-renderer/condition.js.map +1 -0
  446. package/dist/runtime-renderer/content-client.d.ts +62 -0
  447. package/dist/runtime-renderer/content-client.js +37 -0
  448. package/dist/runtime-renderer/content-client.js.map +1 -0
  449. package/dist/runtime-renderer/context.d.ts +185 -0
  450. package/dist/runtime-renderer/context.js +7 -0
  451. package/dist/runtime-renderer/context.js.map +1 -0
  452. package/dist/runtime-renderer/fallback.d.ts +39 -0
  453. package/dist/runtime-renderer/fallback.js +45 -0
  454. package/dist/runtime-renderer/fallback.js.map +1 -0
  455. package/dist/runtime-renderer/index.d.ts +13 -0
  456. package/dist/runtime-renderer/index.js +13 -0
  457. package/dist/runtime-renderer/index.js.map +1 -0
  458. package/dist/runtime-renderer/primitives.d.ts +85 -0
  459. package/dist/runtime-renderer/primitives.js +442 -0
  460. package/dist/runtime-renderer/primitives.js.map +1 -0
  461. package/dist/runtime-renderer/render.d.ts +138 -0
  462. package/dist/runtime-renderer/render.js +825 -0
  463. package/dist/runtime-renderer/render.js.map +1 -0
  464. package/dist/runtime-renderer/rich-text.d.ts +26 -0
  465. package/dist/runtime-renderer/rich-text.js +113 -0
  466. package/dist/runtime-renderer/rich-text.js.map +1 -0
  467. package/dist/starter-kits/index.d.ts +13 -0
  468. package/dist/starter-kits/index.js +14 -0
  469. package/dist/starter-kits/index.js.map +1 -0
  470. package/dist/starter-kits/instantiate.d.ts +29 -0
  471. package/dist/starter-kits/instantiate.js +24 -0
  472. package/dist/starter-kits/instantiate.js.map +1 -0
  473. package/dist/starter-kits/kit.d.ts +61 -0
  474. package/dist/starter-kits/kit.js +37 -0
  475. package/dist/starter-kits/kit.js.map +1 -0
  476. package/dist/starter-kits/kits.d.ts +7 -0
  477. package/dist/starter-kits/kits.js +201 -0
  478. package/dist/starter-kits/kits.js.map +1 -0
  479. package/dist/starter-kits/manifests.d.ts +7 -0
  480. package/dist/starter-kits/manifests.js +111 -0
  481. package/dist/starter-kits/manifests.js.map +1 -0
  482. package/dist/starter-kits/upgrade.d.ts +39 -0
  483. package/dist/starter-kits/upgrade.js +54 -0
  484. package/dist/starter-kits/upgrade.js.map +1 -0
  485. package/dist/starter-kits/validate.d.ts +16 -0
  486. package/dist/starter-kits/validate.js +77 -0
  487. package/dist/starter-kits/validate.js.map +1 -0
  488. package/dist/studio-core/context.d.ts +27 -0
  489. package/dist/studio-core/context.js +44 -0
  490. package/dist/studio-core/context.js.map +1 -0
  491. package/dist/studio-core/errors.d.ts +58 -0
  492. package/dist/studio-core/errors.js +74 -0
  493. package/dist/studio-core/errors.js.map +1 -0
  494. package/dist/studio-core/fixtures.d.ts +18 -0
  495. package/dist/studio-core/fixtures.js +83 -0
  496. package/dist/studio-core/fixtures.js.map +1 -0
  497. package/dist/studio-core/ids.d.ts +22 -0
  498. package/dist/studio-core/ids.js +33 -0
  499. package/dist/studio-core/ids.js.map +1 -0
  500. package/dist/studio-core/index.d.ts +11 -0
  501. package/dist/studio-core/index.js +12 -0
  502. package/dist/studio-core/index.js.map +1 -0
  503. package/dist/studio-core/issues.d.ts +50 -0
  504. package/dist/studio-core/issues.js +33 -0
  505. package/dist/studio-core/issues.js.map +1 -0
  506. package/dist/studio-core/metadata.d.ts +109 -0
  507. package/dist/studio-core/metadata.js +74 -0
  508. package/dist/studio-core/metadata.js.map +1 -0
  509. package/dist/studio-core/repository.d.ts +73 -0
  510. package/dist/studio-core/repository.js +202 -0
  511. package/dist/studio-core/repository.js.map +1 -0
  512. package/dist/studio-core/sections.d.ts +73 -0
  513. package/dist/studio-core/sections.js +68 -0
  514. package/dist/studio-core/sections.js.map +1 -0
  515. package/dist/studio-core/validate.d.ts +15 -0
  516. package/dist/studio-core/validate.js +119 -0
  517. package/dist/studio-core/validate.js.map +1 -0
  518. package/dist/studio-core/workspace-config.d.ts +587 -0
  519. package/dist/studio-core/workspace-config.js +434 -0
  520. package/dist/studio-core/workspace-config.js.map +1 -0
  521. package/package.json +104 -0
@@ -0,0 +1,383 @@
1
+ import { cmsIssue, createRouter, hierarchyMount, isHierarchical, isHierarchyTemplate, resolveByPath, resolveField, splitPath, } from '@elytracms/core/cms-core';
2
+ import { decodeListCursor, encodeListCursor } from './cursor';
3
+ import { selectPerspective } from './perspective';
4
+ import { compareListEntries, filterScalarOf, matchesFieldValue, normalizeWhere, queryError, validateLimit, validateSort, validateWhere, } from './query';
5
+ import { populateRelationRef, resolveDocument } from './resolve';
6
+ import { resolveLocaleValues } from './locale';
7
+ import { cacheTags, documentCacheKeys } from './tags';
8
+ // ---------------------------------------------------------------------------
9
+ // Implementation
10
+ // ---------------------------------------------------------------------------
11
+ function withLocale(context, locale) {
12
+ return locale === undefined || locale === context.locale ? context : { ...context, locale };
13
+ }
14
+ function normalizePath(url) {
15
+ return '/' + splitPath(url).join('/');
16
+ }
17
+ /**
18
+ * Template routes (EC-166): a route-bound document ref may be parameterized —
19
+ * `document: { collection: 'post', id: ':slug' }` — so one route record serves
20
+ * *every* document of a collection through its dynamic pattern. The `:name`
21
+ * placeholder names a dynamic param of the pattern; resolution substitutes the
22
+ * matched URL value, which may be a document id or a slug (the bound-document
23
+ * lookup accepts either).
24
+ */
25
+ function materializeRouteDocumentRef(ref, params) {
26
+ if (!ref.id.startsWith(':'))
27
+ return { ok: true, ref };
28
+ const param = ref.id.slice(1);
29
+ const value = params[param];
30
+ if (value === undefined || value.length === 0)
31
+ return { ok: false, missingParam: param };
32
+ return { ok: true, ref: { collection: ref.collection, id: value } };
33
+ }
34
+ /** The catch-all param name of a hierarchy mount template (`/docs/:path*` → `path`). */
35
+ function mountParamName(route) {
36
+ const last = splitPath(route.pattern).at(-1) ?? '';
37
+ return last.replace(/^:/, '').replace(/\*$/, '');
38
+ }
39
+ /** Create the typed accessor client (vision AD-3 ladder, rungs 1–3). */
40
+ export function createContentClient(init) {
41
+ const { lookup, context } = init;
42
+ const allRoutes = init.routes ?? [];
43
+ // EC-218: a hierarchy mount (`{ pattern: '/:path*', document: { collection } }`)
44
+ // serves a collection's documents by their COMPOSED nested path. Mounts are
45
+ // pulled out of the router and resolved per-request (below) so the URL→document
46
+ // mapping stays perspective-aware (draft vs published) and the path stays
47
+ // derived from the parent chain, never stored. Ordinary routes are unaffected.
48
+ const mounts = allRoutes
49
+ .map((route) => {
50
+ const mount = hierarchyMount(route);
51
+ return mount ? { mount, route } : undefined;
52
+ })
53
+ .filter((m) => m !== undefined);
54
+ const router = createRouter(allRoutes.filter((route) => !isHierarchyTemplate(route)), init.redirects ?? [], { defaultLocale: context.locales.default });
55
+ const resolveBoundDocument = (ctx, ref, issues, docKeys, collections) => {
56
+ collections.push(ref.collection);
57
+ const collection = lookup.collection(ref.collection);
58
+ // Template routes substitute a URL param into the ref id; the value may be
59
+ // a slug rather than an id, so fall back to the deterministic slug lookup.
60
+ const source = lookup.document(ref) ?? (collection ? findBySlug(ctx, collection, ref.id) : undefined);
61
+ if (!source) {
62
+ issues.push(cmsIssue({
63
+ code: 'unknown-route-target',
64
+ message: `Route-bound document "${ref.collection}:${ref.id}" was not found.`,
65
+ path: ['document'],
66
+ collectionId: ref.collection,
67
+ documentId: ref.id,
68
+ }));
69
+ return null;
70
+ }
71
+ const result = resolveDocument(ctx, lookup, source);
72
+ issues.push(...result.issues);
73
+ if (result.document && collection) {
74
+ docKeys.push(...documentCacheKeys(collection, result.document));
75
+ }
76
+ return result.document;
77
+ };
78
+ const resolvePage = (url, locale) => {
79
+ const ctx = withLocale(context, locale);
80
+ const path = normalizePath(url);
81
+ const resolution = router.resolveUrl(path, ctx.locale);
82
+ const issues = [];
83
+ const docKeys = [];
84
+ const collections = [];
85
+ const routePaths = [path];
86
+ if (resolution.status === 'redirect') {
87
+ // Tag every hop: editing any redirect in the chain changes this result.
88
+ const chain = router.followRedirects(path);
89
+ routePaths.push(...chain.chain);
90
+ return {
91
+ status: 'redirect',
92
+ route: null,
93
+ dynamicParams: {},
94
+ localeFallback: false,
95
+ redirect: {
96
+ target: resolution.redirectTarget ?? chain.target,
97
+ permanent: resolution.permanent ?? chain.permanent,
98
+ },
99
+ document: null,
100
+ issues,
101
+ tags: cacheTags({ routes: routePaths, locale: ctx.locale }),
102
+ };
103
+ }
104
+ if (resolution.status === 'notFound') {
105
+ // EC-218: a router miss falls through to the hierarchy mounts — resolve the
106
+ // URL against a collection's composed page tree. Explicit/static routes and
107
+ // templates already had precedence (they would not have missed). The first
108
+ // mount whose prefix matches and that resolves a page wins.
109
+ const urlSegments = splitPath(path);
110
+ for (const { mount, route } of mounts) {
111
+ if (mount.locale !== undefined && mount.locale !== ctx.locale)
112
+ continue;
113
+ if (urlSegments.length <= mount.prefix.length)
114
+ continue;
115
+ if (!mount.prefix.every((seg, i) => urlSegments[i] === seg))
116
+ continue;
117
+ const collection = lookup.collection(mount.collection);
118
+ if (!collection || !isHierarchical(collection))
119
+ continue;
120
+ const rest = urlSegments.slice(mount.prefix.length);
121
+ const source = findByComposedPath(ctx, mount.collection, rest);
122
+ if (!source)
123
+ continue;
124
+ collections.push(mount.collection);
125
+ const result = resolveDocument(ctx, lookup, source);
126
+ issues.push(...result.issues);
127
+ if (!result.document)
128
+ continue;
129
+ docKeys.push(...documentCacheKeys(collection, result.document));
130
+ return {
131
+ status: 'ok',
132
+ route,
133
+ dynamicParams: { [mountParamName(route)]: rest.join('/') },
134
+ localeFallback: false,
135
+ redirect: null,
136
+ document: result.document,
137
+ issues,
138
+ tags: cacheTags({ docs: docKeys, collections, routes: routePaths, locale: ctx.locale }),
139
+ };
140
+ }
141
+ return {
142
+ status: 'notFound',
143
+ route: null,
144
+ dynamicParams: {},
145
+ localeFallback: resolution.fallback,
146
+ redirect: null,
147
+ document: null,
148
+ issues,
149
+ tags: cacheTags({ routes: routePaths, locale: ctx.locale }),
150
+ };
151
+ }
152
+ const route = resolution.route ?? null;
153
+ let document = null;
154
+ let documentMissing = false;
155
+ if (resolution.documentRef) {
156
+ const materialized = materializeRouteDocumentRef(resolution.documentRef, resolution.dynamicParams);
157
+ if (materialized.ok) {
158
+ document = resolveBoundDocument(ctx, materialized.ref, issues, docKeys, collections);
159
+ documentMissing = document === null;
160
+ }
161
+ else {
162
+ documentMissing = true;
163
+ // Parameterized document ref whose param the pattern never captures —
164
+ // a structured issue, never a silent null (EC-166).
165
+ collections.push(resolution.documentRef.collection);
166
+ issues.push(cmsIssue({
167
+ code: 'unknown-route-target',
168
+ message: `Route "${route?.id ?? path}" binds its document to URL parameter ":${materialized.missingParam}", which pattern "${route?.pattern ?? path}" does not capture.`,
169
+ path: ['routes', route?.id ?? path, 'document'],
170
+ collectionId: resolution.documentRef.collection,
171
+ meta: { param: materialized.missingParam, pattern: route?.pattern },
172
+ }));
173
+ }
174
+ }
175
+ // A document-bound route whose document does not resolve in this
176
+ // perspective is NOT a page (EC-177 gap 6): the URL of an unpublished
177
+ // document must be a notFound result — the host's 404 — never a bare
178
+ // contentless template served as 200. The draft perspective still
179
+ // resolves the draft row, so preview keeps seeing the page. The
180
+ // structured issues and the doc/collection cache tags are carried so the
181
+ // cached 404 revalidates the moment the document (re)publishes.
182
+ if (documentMissing) {
183
+ return {
184
+ status: 'notFound',
185
+ route: null,
186
+ dynamicParams: resolution.dynamicParams,
187
+ localeFallback: resolution.fallback,
188
+ redirect: null,
189
+ document: null,
190
+ issues,
191
+ tags: cacheTags({ docs: docKeys, collections, routes: routePaths, locale: ctx.locale }),
192
+ };
193
+ }
194
+ return {
195
+ status: 'ok',
196
+ route,
197
+ dynamicParams: resolution.dynamicParams,
198
+ localeFallback: resolution.fallback,
199
+ redirect: null,
200
+ document,
201
+ issues,
202
+ tags: cacheTags({ docs: docKeys, collections, routes: routePaths, locale: ctx.locale }),
203
+ };
204
+ };
205
+ /** Deterministic slug fallback: visible rows whose `slug` resolves to the value, lowest id wins. */
206
+ const findBySlug = (ctx, collection, slug) => {
207
+ if (!lookup.documents)
208
+ return undefined;
209
+ if (!collection.fields.some((f) => f.name === 'slug'))
210
+ return undefined;
211
+ const matches = [];
212
+ for (const source of lookup.documents(collection.id)) {
213
+ const row = selectPerspective(ctx, source);
214
+ if (!row)
215
+ continue;
216
+ const value = resolveField(collection, row, 'slug', ctx.locale, ctx.locales).value;
217
+ if (value === slug)
218
+ matches.push({ id: row.id, source });
219
+ }
220
+ matches.sort((a, b) => (a.id < b.id ? -1 : a.id > b.id ? 1 : 0));
221
+ return matches[0]?.source;
222
+ };
223
+ /**
224
+ * EC-218: resolve a composed nested path (prefix already stripped) to the page
225
+ * document whose parent chain of slugs matches it. Matches against the rows
226
+ * visible in the active perspective, so an unpublished page simply does not
227
+ * resolve on the published site (correct, not an issue) while preview still
228
+ * sees the draft. Returns the source so the normal `resolveDocument` path runs.
229
+ */
230
+ const findByComposedPath = (ctx, collectionId, segments) => {
231
+ if (!lookup.documents)
232
+ return undefined;
233
+ const rows = [];
234
+ const sourceById = new Map();
235
+ for (const source of lookup.documents(collectionId)) {
236
+ const row = selectPerspective(ctx, source);
237
+ if (!row)
238
+ continue;
239
+ rows.push(row);
240
+ sourceById.set(row.id, source);
241
+ }
242
+ const matched = resolveByPath(segments, rows);
243
+ return matched ? sourceById.get(matched.id) : undefined;
244
+ };
245
+ const getDocument = (collectionId, idOrSlug, locale) => {
246
+ const ctx = withLocale(context, locale);
247
+ const baseTags = { collections: [collectionId], locale: ctx.locale };
248
+ const collection = lookup.collection(collectionId);
249
+ if (!collection) {
250
+ return {
251
+ document: null,
252
+ info: null,
253
+ issues: [
254
+ cmsIssue({
255
+ code: 'unknown-collection',
256
+ message: `Collection "${collectionId}" is not defined.`,
257
+ path: ['collection'],
258
+ collectionId,
259
+ }),
260
+ ],
261
+ tags: cacheTags(baseTags),
262
+ };
263
+ }
264
+ const source = lookup.document({ collection: collectionId, id: idOrSlug }) ??
265
+ findBySlug(ctx, collection, idOrSlug);
266
+ if (!source) {
267
+ return { document: null, info: null, issues: [], tags: cacheTags(baseTags) };
268
+ }
269
+ const result = resolveDocument(ctx, lookup, source);
270
+ const docKeys = result.document ? documentCacheKeys(collection, result.document) : [];
271
+ return {
272
+ // The generated per-collection delivery type (EC-142 codegen) is the
273
+ // static face of what resolveDocument produces for this collection.
274
+ document: result.document,
275
+ info: result.info,
276
+ issues: result.issues,
277
+ tags: cacheTags({ ...baseTags, docs: docKeys }),
278
+ };
279
+ };
280
+ const listDocuments = (collectionId, query = {}) => {
281
+ const ctx = context;
282
+ const errorTags = cacheTags({ collections: [collectionId], locale: ctx.locale });
283
+ const errors = [];
284
+ const collection = lookup.collection(collectionId);
285
+ if (!collection) {
286
+ errors.push(queryError('unknown-collection', `Collection "${collectionId}" is not defined.`, [
287
+ 'collection',
288
+ ]));
289
+ return { ok: false, errors, tags: errorTags };
290
+ }
291
+ if (!lookup.documents) {
292
+ errors.push(queryError('list-not-supported', 'This content lookup does not provide a `documents` capability.', []));
293
+ return { ok: false, errors, tags: errorTags };
294
+ }
295
+ if (query.where)
296
+ errors.push(...validateWhere(collection, query.where));
297
+ if (query.sort)
298
+ errors.push(...validateSort(collection, query.sort));
299
+ if (query.limit !== undefined)
300
+ errors.push(...validateLimit(query.limit));
301
+ const sortField = query.sort?.field ?? null;
302
+ const direction = query.sort?.direction ?? 'asc';
303
+ let after = null;
304
+ if (query.cursor !== undefined) {
305
+ const decoded = decodeListCursor(query.cursor);
306
+ if (!decoded || decoded.sortField !== sortField || decoded.direction !== direction) {
307
+ errors.push(queryError('invalid-cursor', decoded
308
+ ? 'Cursor was minted under a different sort and cannot be reused.'
309
+ : 'Cursor is malformed.', ['cursor']));
310
+ }
311
+ else {
312
+ after = { sortValue: decoded.sortValue, id: decoded.id };
313
+ }
314
+ }
315
+ if (errors.length > 0)
316
+ return { ok: false, errors, tags: errorTags };
317
+ const where = normalizeWhere(query.where ?? {});
318
+ // Filter + order over locale-resolved raw values (EC-018 fallback applies
319
+ // to filtering too); delivery resolution runs only on the returned page.
320
+ const entries = [];
321
+ for (const source of lookup.documents(collectionId)) {
322
+ const row = selectPerspective(ctx, source);
323
+ if (!row || row.collection !== collectionId)
324
+ continue;
325
+ const values = resolveLocaleValues(ctx, collection, row).values;
326
+ const matches = where.every((entry) => matchesFieldValue(values[entry.field], entry.condition));
327
+ if (!matches)
328
+ continue;
329
+ entries.push({
330
+ source,
331
+ id: row.id,
332
+ sortValue: sortField === null ? row.id : filterScalarOf(values[sortField]),
333
+ });
334
+ }
335
+ entries.sort((a, b) => compareListEntries({ id: a.id, sortValue: a.sortValue }, { id: b.id, sortValue: b.sortValue }, direction));
336
+ const afterPosition = after;
337
+ const fromIndex = afterPosition
338
+ ? entries.findIndex((entry) => compareListEntries({ id: entry.id, sortValue: entry.sortValue }, afterPosition, direction) > 0)
339
+ : 0;
340
+ const start = fromIndex === -1 ? entries.length : fromIndex;
341
+ const end = query.limit !== undefined ? start + query.limit : entries.length;
342
+ const pageEntries = entries.slice(start, end);
343
+ const hasMore = end < entries.length;
344
+ const documents = [];
345
+ const issues = [];
346
+ const docKeys = [];
347
+ for (const entry of pageEntries) {
348
+ const result = resolveDocument(ctx, lookup, entry.source);
349
+ issues.push(...result.issues);
350
+ if (result.document) {
351
+ documents.push(result.document);
352
+ docKeys.push(...documentCacheKeys(collection, result.document));
353
+ }
354
+ }
355
+ const last = pageEntries[pageEntries.length - 1];
356
+ const nextCursor = hasMore && last
357
+ ? encodeListCursor({ sortField, direction, sortValue: last.sortValue, id: last.id })
358
+ : null;
359
+ return {
360
+ ok: true,
361
+ // The generated per-collection delivery type (EC-142 codegen) is the
362
+ // static face of what resolveDocument produces for this collection.
363
+ documents: documents,
364
+ nextCursor,
365
+ issues,
366
+ tags: cacheTags({
367
+ docs: docKeys,
368
+ collections: [collectionId],
369
+ locale: ctx.locale,
370
+ }),
371
+ };
372
+ };
373
+ const resolveRelation = (ref) => populateRelationRef(context, lookup, ref).document;
374
+ return {
375
+ context,
376
+ routerIssues: router.issues,
377
+ resolvePage,
378
+ getDocument,
379
+ listDocuments,
380
+ resolveRelation,
381
+ };
382
+ }
383
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/content/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import type { CollectionDef } from '@elytracms/core/cms-core';
2
+ /**
3
+ * Per-collection delivery-type codegen (EC-142, vision AD-4). Emits TypeScript
4
+ * source describing the *delivery shape* of each collection — the shape
5
+ * `resolveDocument` produces — so `article.author.name` just typechecks.
6
+ *
7
+ * Deterministic by construction: collections are emitted sorted by id, fields
8
+ * in declared order, with no timestamps or environment data — the same schema
9
+ * input yields byte-identical output. Consumed by EC-143/EC-145/EC-148.
10
+ *
11
+ * Typing stance: the generated types describe the *valid* delivery shape.
12
+ * Degraded states are always accompanied by structured issues at runtime —
13
+ * a missing relation target yields a `{ id, collection }` stub plus an
14
+ * `unknown-relation-target` issue; a missing asset yields `null` plus an
15
+ * `unknown-asset` issue (which is why asset fields carry `| null`).
16
+ */
17
+ /** The generated TypeScript type name for a collection's delivery shape. */
18
+ export declare function deliveryTypeName(collectionId: string): string;
19
+ /** The generated type name for a collection's depth-1 populated reference. */
20
+ export declare function deliveryRefTypeName(collectionId: string): string;
21
+ /** The generated `where` type name for a collection's list accessor (EC-143). */
22
+ export declare function whereTypeName(collectionId: string): string;
23
+ /** The generated sort-field union type name for a collection (EC-143). */
24
+ export declare function sortFieldTypeName(collectionId: string): string;
25
+ /** The generated list-query type name for a collection (EC-143). */
26
+ export declare function listQueryTypeName(collectionId: string): string;
27
+ /**
28
+ * Generate the per-collection delivery types as a TypeScript module source
29
+ * string. For each collection two interfaces are emitted:
30
+ *
31
+ * - `Name` — the top-level delivery shape (relations populated to depth-1
32
+ * unless declared `populate: false`),
33
+ * - `NameRef` — the depth-1 populated reference shape used by relation fields
34
+ * on *other* collections (its own relations are stubs).
35
+ *
36
+ * Output is deterministic: collections sorted by id, fields in declared
37
+ * order, fixed banner, no timestamps.
38
+ */
39
+ export declare function generateDeliveryTypes(collections: readonly CollectionDef[]): string;
40
+ /**
41
+ * Generate the per-collection accessor types as a TypeScript module source
42
+ * string (EC-143). For each collection three aliases are emitted:
43
+ *
44
+ * - `NameWhere` — `where` keys narrowed to the fields declared `filterable`
45
+ * in the schema; filtering on anything else is a compile error,
46
+ * - `NameSortField` — the sortable field union (the same filterable set),
47
+ * - `NameListQuery` — the full `listDocuments` query for the collection.
48
+ *
49
+ * Collections with no filterable fields get `Record<string, never>` / `never`,
50
+ * so no filter or sort can be expressed at all. Output is deterministic:
51
+ * collections sorted by id, fields in declared order, fixed banner, no
52
+ * timestamps — same schema input, byte-identical output.
53
+ */
54
+ export declare function generateAccessorTypes(collections: readonly CollectionDef[]): string;