@cohesivesystems/presentation-core 0.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/LICENSE +55 -0
  2. package/dist/api-scope-request.d.ts +43 -0
  3. package/dist/api-scope-request.d.ts.map +1 -0
  4. package/dist/api-scope-request.js +96 -0
  5. package/dist/api-scope-request.js.map +1 -0
  6. package/dist/collection-chrome-icons.d.ts +18 -0
  7. package/dist/collection-chrome-icons.d.ts.map +1 -0
  8. package/dist/collection-chrome-icons.js +57 -0
  9. package/dist/collection-chrome-icons.js.map +1 -0
  10. package/dist/collection-chrome-runtime.d.ts +25 -0
  11. package/dist/collection-chrome-runtime.d.ts.map +1 -0
  12. package/dist/collection-chrome-runtime.js +72 -0
  13. package/dist/collection-chrome-runtime.js.map +1 -0
  14. package/dist/collection-chrome-slot-renderer-registry.d.ts +110 -0
  15. package/dist/collection-chrome-slot-renderer-registry.d.ts.map +1 -0
  16. package/dist/collection-chrome-slot-renderer-registry.js +136 -0
  17. package/dist/collection-chrome-slot-renderer-registry.js.map +1 -0
  18. package/dist/collection-selection-state.d.ts +18 -0
  19. package/dist/collection-selection-state.d.ts.map +1 -0
  20. package/dist/collection-selection-state.js +2 -0
  21. package/dist/collection-selection-state.js.map +1 -0
  22. package/dist/data-source-projection.d.ts +475 -0
  23. package/dist/data-source-projection.d.ts.map +1 -0
  24. package/dist/data-source-projection.js +880 -0
  25. package/dist/data-source-projection.js.map +1 -0
  26. package/dist/data-source-query-lowering.d.ts +35 -0
  27. package/dist/data-source-query-lowering.d.ts.map +1 -0
  28. package/dist/data-source-query-lowering.js +104 -0
  29. package/dist/data-source-query-lowering.js.map +1 -0
  30. package/dist/date-time-filter-model.d.ts +20 -0
  31. package/dist/date-time-filter-model.d.ts.map +1 -0
  32. package/dist/date-time-filter-model.js +115 -0
  33. package/dist/date-time-filter-model.js.map +1 -0
  34. package/dist/document-badge-icons.d.ts +4 -0
  35. package/dist/document-badge-icons.d.ts.map +1 -0
  36. package/dist/document-badge-icons.js +4 -0
  37. package/dist/document-badge-icons.js.map +1 -0
  38. package/dist/document-module.d.ts +268 -0
  39. package/dist/document-module.d.ts.map +1 -0
  40. package/dist/document-module.js +347 -0
  41. package/dist/document-module.js.map +1 -0
  42. package/dist/document-summary-model.d.ts +2 -0
  43. package/dist/document-summary-model.d.ts.map +1 -0
  44. package/dist/document-summary-model.js +2 -0
  45. package/dist/document-summary-model.js.map +1 -0
  46. package/dist/document-workspace-chrome-projection.d.ts +18 -0
  47. package/dist/document-workspace-chrome-projection.d.ts.map +1 -0
  48. package/dist/document-workspace-chrome-projection.js +35 -0
  49. package/dist/document-workspace-chrome-projection.js.map +1 -0
  50. package/dist/document-workspace-surface-slots.d.ts +75 -0
  51. package/dist/document-workspace-surface-slots.d.ts.map +1 -0
  52. package/dist/document-workspace-surface-slots.js +268 -0
  53. package/dist/document-workspace-surface-slots.js.map +1 -0
  54. package/dist/endpoint-executor.d.ts +62 -0
  55. package/dist/endpoint-executor.d.ts.map +1 -0
  56. package/dist/endpoint-executor.js +35 -0
  57. package/dist/endpoint-executor.js.map +1 -0
  58. package/dist/field-display-resolution.d.ts +5 -0
  59. package/dist/field-display-resolution.d.ts.map +1 -0
  60. package/dist/field-display-resolution.js +50 -0
  61. package/dist/field-display-resolution.js.map +1 -0
  62. package/dist/index.d.ts +90 -0
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +89 -0
  65. package/dist/index.js.map +1 -0
  66. package/dist/module.d.ts +48 -0
  67. package/dist/module.d.ts.map +1 -0
  68. package/dist/module.js +108 -0
  69. package/dist/module.js.map +1 -0
  70. package/dist/navigation-shell-frame-renderer-registry.d.ts +12 -0
  71. package/dist/navigation-shell-frame-renderer-registry.d.ts.map +1 -0
  72. package/dist/navigation-shell-frame-renderer-registry.js +29 -0
  73. package/dist/navigation-shell-frame-renderer-registry.js.map +1 -0
  74. package/dist/navigation-shell-layout-runtime.d.ts +29 -0
  75. package/dist/navigation-shell-layout-runtime.d.ts.map +1 -0
  76. package/dist/navigation-shell-layout-runtime.js +50 -0
  77. package/dist/navigation-shell-layout-runtime.js.map +1 -0
  78. package/dist/navigation-shell-region-component-registry.d.ts +96 -0
  79. package/dist/navigation-shell-region-component-registry.d.ts.map +1 -0
  80. package/dist/navigation-shell-region-component-registry.js +108 -0
  81. package/dist/navigation-shell-region-component-registry.js.map +1 -0
  82. package/dist/navigation-shell-runtime.d.ts +48 -0
  83. package/dist/navigation-shell-runtime.d.ts.map +1 -0
  84. package/dist/navigation-shell-runtime.js +457 -0
  85. package/dist/navigation-shell-runtime.js.map +1 -0
  86. package/dist/navigation-shell-slot-renderer-registry.d.ts +15 -0
  87. package/dist/navigation-shell-slot-renderer-registry.d.ts.map +1 -0
  88. package/dist/navigation-shell-slot-renderer-registry.js +48 -0
  89. package/dist/navigation-shell-slot-renderer-registry.js.map +1 -0
  90. package/dist/navigation.d.ts +84 -0
  91. package/dist/navigation.d.ts.map +1 -0
  92. package/dist/navigation.js +167 -0
  93. package/dist/navigation.js.map +1 -0
  94. package/dist/object-path.d.ts +23 -0
  95. package/dist/object-path.d.ts.map +1 -0
  96. package/dist/object-path.js +63 -0
  97. package/dist/object-path.js.map +1 -0
  98. package/dist/page-host-renderer-registry.d.ts +119 -0
  99. package/dist/page-host-renderer-registry.d.ts.map +1 -0
  100. package/dist/page-host-renderer-registry.js +305 -0
  101. package/dist/page-host-renderer-registry.js.map +1 -0
  102. package/dist/presentation-action-endpoint-request-projection.d.ts +23 -0
  103. package/dist/presentation-action-endpoint-request-projection.d.ts.map +1 -0
  104. package/dist/presentation-action-endpoint-request-projection.js +117 -0
  105. package/dist/presentation-action-endpoint-request-projection.js.map +1 -0
  106. package/dist/presentation-action-endpoint.d.ts +24 -0
  107. package/dist/presentation-action-endpoint.d.ts.map +1 -0
  108. package/dist/presentation-action-endpoint.js +56 -0
  109. package/dist/presentation-action-endpoint.js.map +1 -0
  110. package/dist/presentation-action-icons.d.ts +4 -0
  111. package/dist/presentation-action-icons.d.ts.map +1 -0
  112. package/dist/presentation-action-icons.js +4 -0
  113. package/dist/presentation-action-icons.js.map +1 -0
  114. package/dist/presentation-action-result-state.d.ts +48 -0
  115. package/dist/presentation-action-result-state.d.ts.map +1 -0
  116. package/dist/presentation-action-result-state.js +109 -0
  117. package/dist/presentation-action-result-state.js.map +1 -0
  118. package/dist/presentation-action-runtime-binding.d.ts +48 -0
  119. package/dist/presentation-action-runtime-binding.d.ts.map +1 -0
  120. package/dist/presentation-action-runtime-binding.js +52 -0
  121. package/dist/presentation-action-runtime-binding.js.map +1 -0
  122. package/dist/presentation-action-runtime-diagnostics.d.ts +18 -0
  123. package/dist/presentation-action-runtime-diagnostics.d.ts.map +1 -0
  124. package/dist/presentation-action-runtime-diagnostics.js +69 -0
  125. package/dist/presentation-action-runtime-diagnostics.js.map +1 -0
  126. package/dist/presentation-action-runtime-labels.d.ts +15 -0
  127. package/dist/presentation-action-runtime-labels.d.ts.map +1 -0
  128. package/dist/presentation-action-runtime-labels.js +28 -0
  129. package/dist/presentation-action-runtime-labels.js.map +1 -0
  130. package/dist/presentation-action-runtime-projection.d.ts +17 -0
  131. package/dist/presentation-action-runtime-projection.d.ts.map +1 -0
  132. package/dist/presentation-action-runtime-projection.js +31 -0
  133. package/dist/presentation-action-runtime-projection.js.map +1 -0
  134. package/dist/presentation-badge-resolution.d.ts +8 -0
  135. package/dist/presentation-badge-resolution.d.ts.map +1 -0
  136. package/dist/presentation-badge-resolution.js +73 -0
  137. package/dist/presentation-badge-resolution.js.map +1 -0
  138. package/dist/presentation-collection-pagination.d.ts +32 -0
  139. package/dist/presentation-collection-pagination.d.ts.map +1 -0
  140. package/dist/presentation-collection-pagination.js +275 -0
  141. package/dist/presentation-collection-pagination.js.map +1 -0
  142. package/dist/presentation-content-diagnostics.d.ts +17 -0
  143. package/dist/presentation-content-diagnostics.d.ts.map +1 -0
  144. package/dist/presentation-content-diagnostics.js +61 -0
  145. package/dist/presentation-content-diagnostics.js.map +1 -0
  146. package/dist/presentation-content-resolution.d.ts +9 -0
  147. package/dist/presentation-content-resolution.d.ts.map +1 -0
  148. package/dist/presentation-content-resolution.js +19 -0
  149. package/dist/presentation-content-resolution.js.map +1 -0
  150. package/dist/presentation-data-source-binding-model.d.ts +81 -0
  151. package/dist/presentation-data-source-binding-model.d.ts.map +1 -0
  152. package/dist/presentation-data-source-binding-model.js +56 -0
  153. package/dist/presentation-data-source-binding-model.js.map +1 -0
  154. package/dist/presentation-data-source-runtime.d.ts +62 -0
  155. package/dist/presentation-data-source-runtime.d.ts.map +1 -0
  156. package/dist/presentation-data-source-runtime.js +80 -0
  157. package/dist/presentation-data-source-runtime.js.map +1 -0
  158. package/dist/presentation-design-intent-diagnostics.d.ts +25 -0
  159. package/dist/presentation-design-intent-diagnostics.d.ts.map +1 -0
  160. package/dist/presentation-design-intent-diagnostics.js +55 -0
  161. package/dist/presentation-design-intent-diagnostics.js.map +1 -0
  162. package/dist/presentation-icon-diagnostics.d.ts +45 -0
  163. package/dist/presentation-icon-diagnostics.d.ts.map +1 -0
  164. package/dist/presentation-icon-diagnostics.js +235 -0
  165. package/dist/presentation-icon-diagnostics.js.map +1 -0
  166. package/dist/presentation-icon-registry.d.ts +36 -0
  167. package/dist/presentation-icon-registry.d.ts.map +1 -0
  168. package/dist/presentation-icon-registry.js +81 -0
  169. package/dist/presentation-icon-registry.js.map +1 -0
  170. package/dist/presentation-navigation-action-runtime-bindings.d.ts +13 -0
  171. package/dist/presentation-navigation-action-runtime-bindings.d.ts.map +1 -0
  172. package/dist/presentation-navigation-action-runtime-bindings.js +29 -0
  173. package/dist/presentation-navigation-action-runtime-bindings.js.map +1 -0
  174. package/dist/presentation-pagination.d.ts +98 -0
  175. package/dist/presentation-pagination.d.ts.map +1 -0
  176. package/dist/presentation-pagination.js +427 -0
  177. package/dist/presentation-pagination.js.map +1 -0
  178. package/dist/presentation-projection-coverage.d.ts +38 -0
  179. package/dist/presentation-projection-coverage.d.ts.map +1 -0
  180. package/dist/presentation-projection-coverage.js +2429 -0
  181. package/dist/presentation-projection-coverage.js.map +1 -0
  182. package/dist/presentation-projection-diagnostics.d.ts +33 -0
  183. package/dist/presentation-projection-diagnostics.d.ts.map +1 -0
  184. package/dist/presentation-projection-diagnostics.js +17 -0
  185. package/dist/presentation-projection-diagnostics.js.map +1 -0
  186. package/dist/presentation-projection-trace.d.ts +97 -0
  187. package/dist/presentation-projection-trace.d.ts.map +1 -0
  188. package/dist/presentation-projection-trace.js +110 -0
  189. package/dist/presentation-projection-trace.js.map +1 -0
  190. package/dist/presentation-query-form-state.d.ts +15 -0
  191. package/dist/presentation-query-form-state.d.ts.map +1 -0
  192. package/dist/presentation-query-form-state.js +20 -0
  193. package/dist/presentation-query-form-state.js.map +1 -0
  194. package/dist/presentation-renderer-registry.d.ts +86 -0
  195. package/dist/presentation-renderer-registry.d.ts.map +1 -0
  196. package/dist/presentation-renderer-registry.js +108 -0
  197. package/dist/presentation-renderer-registry.js.map +1 -0
  198. package/dist/presentation-semantics.d.ts +288 -0
  199. package/dist/presentation-semantics.d.ts.map +1 -0
  200. package/dist/presentation-semantics.js +560 -0
  201. package/dist/presentation-semantics.js.map +1 -0
  202. package/dist/presentation-standards.d.ts +8 -0
  203. package/dist/presentation-standards.d.ts.map +1 -0
  204. package/dist/presentation-standards.js +9 -0
  205. package/dist/presentation-standards.js.map +1 -0
  206. package/dist/presentation-test-selectors.d.ts +146 -0
  207. package/dist/presentation-test-selectors.d.ts.map +1 -0
  208. package/dist/presentation-test-selectors.js +113 -0
  209. package/dist/presentation-test-selectors.js.map +1 -0
  210. package/dist/presentation-value-formatting.d.ts +12 -0
  211. package/dist/presentation-value-formatting.d.ts.map +1 -0
  212. package/dist/presentation-value-formatting.js +33 -0
  213. package/dist/presentation-value-formatting.js.map +1 -0
  214. package/dist/presentation-value-resolution.d.ts +7 -0
  215. package/dist/presentation-value-resolution.d.ts.map +1 -0
  216. package/dist/presentation-value-resolution.js +69 -0
  217. package/dist/presentation-value-resolution.js.map +1 -0
  218. package/dist/presentation-view-tree.d.ts +6 -0
  219. package/dist/presentation-view-tree.d.ts.map +1 -0
  220. package/dist/presentation-view-tree.js +15 -0
  221. package/dist/presentation-view-tree.js.map +1 -0
  222. package/dist/process-task-model.d.ts +80 -0
  223. package/dist/process-task-model.d.ts.map +1 -0
  224. package/dist/process-task-model.js +52 -0
  225. package/dist/process-task-model.js.map +1 -0
  226. package/dist/process-task-projection.d.ts +46 -0
  227. package/dist/process-task-projection.d.ts.map +1 -0
  228. package/dist/process-task-projection.js +233 -0
  229. package/dist/process-task-projection.js.map +1 -0
  230. package/dist/projected-action-status-projection.d.ts +18 -0
  231. package/dist/projected-action-status-projection.d.ts.map +1 -0
  232. package/dist/projected-action-status-projection.js +19 -0
  233. package/dist/projected-action-status-projection.js.map +1 -0
  234. package/dist/projected-activity-state-model.d.ts +22 -0
  235. package/dist/projected-activity-state-model.d.ts.map +1 -0
  236. package/dist/projected-activity-state-model.js +87 -0
  237. package/dist/projected-activity-state-model.js.map +1 -0
  238. package/dist/projected-collection-action-runtime-bindings.d.ts +12 -0
  239. package/dist/projected-collection-action-runtime-bindings.d.ts.map +1 -0
  240. package/dist/projected-collection-action-runtime-bindings.js +37 -0
  241. package/dist/projected-collection-action-runtime-bindings.js.map +1 -0
  242. package/dist/projected-collection-action-runtime-diagnostics.d.ts +23 -0
  243. package/dist/projected-collection-action-runtime-diagnostics.d.ts.map +1 -0
  244. package/dist/projected-collection-action-runtime-diagnostics.js +168 -0
  245. package/dist/projected-collection-action-runtime-diagnostics.js.map +1 -0
  246. package/dist/projected-collection-runtime.d.ts +475 -0
  247. package/dist/projected-collection-runtime.d.ts.map +1 -0
  248. package/dist/projected-collection-runtime.js +832 -0
  249. package/dist/projected-collection-runtime.js.map +1 -0
  250. package/dist/projected-document-action-diagnostics.d.ts +16 -0
  251. package/dist/projected-document-action-diagnostics.d.ts.map +1 -0
  252. package/dist/projected-document-action-diagnostics.js +113 -0
  253. package/dist/projected-document-action-diagnostics.js.map +1 -0
  254. package/dist/projected-document-action-enablements.d.ts +25 -0
  255. package/dist/projected-document-action-enablements.d.ts.map +1 -0
  256. package/dist/projected-document-action-enablements.js +38 -0
  257. package/dist/projected-document-action-enablements.js.map +1 -0
  258. package/dist/projected-document-action-projection.d.ts +45 -0
  259. package/dist/projected-document-action-projection.d.ts.map +1 -0
  260. package/dist/projected-document-action-projection.js +201 -0
  261. package/dist/projected-document-action-projection.js.map +1 -0
  262. package/dist/projected-document-action-runtime-profile-diagnostics.d.ts +16 -0
  263. package/dist/projected-document-action-runtime-profile-diagnostics.d.ts.map +1 -0
  264. package/dist/projected-document-action-runtime-profile-diagnostics.js +168 -0
  265. package/dist/projected-document-action-runtime-profile-diagnostics.js.map +1 -0
  266. package/dist/projected-document-action-runtime-profile.d.ts +64 -0
  267. package/dist/projected-document-action-runtime-profile.d.ts.map +1 -0
  268. package/dist/projected-document-action-runtime-profile.js +33 -0
  269. package/dist/projected-document-action-runtime-profile.js.map +1 -0
  270. package/dist/projected-document-action-status-notice-diagnostics.d.ts +10 -0
  271. package/dist/projected-document-action-status-notice-diagnostics.d.ts.map +1 -0
  272. package/dist/projected-document-action-status-notice-diagnostics.js +64 -0
  273. package/dist/projected-document-action-status-notice-diagnostics.js.map +1 -0
  274. package/dist/projected-document-badge-formatting.d.ts +2 -0
  275. package/dist/projected-document-badge-formatting.d.ts.map +1 -0
  276. package/dist/projected-document-badge-formatting.js +7 -0
  277. package/dist/projected-document-badge-formatting.js.map +1 -0
  278. package/dist/projected-document-editor-model.d.ts +4 -0
  279. package/dist/projected-document-editor-model.d.ts.map +1 -0
  280. package/dist/projected-document-editor-model.js +2 -0
  281. package/dist/projected-document-editor-model.js.map +1 -0
  282. package/dist/projected-document-field-navigation.d.ts +72 -0
  283. package/dist/projected-document-field-navigation.d.ts.map +1 -0
  284. package/dist/projected-document-field-navigation.js +143 -0
  285. package/dist/projected-document-field-navigation.js.map +1 -0
  286. package/dist/projected-document-field-semantics.d.ts +5 -0
  287. package/dist/projected-document-field-semantics.d.ts.map +1 -0
  288. package/dist/projected-document-field-semantics.js +16 -0
  289. package/dist/projected-document-field-semantics.js.map +1 -0
  290. package/dist/projected-document-workspace-data-source-bindings.d.ts +69 -0
  291. package/dist/projected-document-workspace-data-source-bindings.d.ts.map +1 -0
  292. package/dist/projected-document-workspace-data-source-bindings.js +81 -0
  293. package/dist/projected-document-workspace-data-source-bindings.js.map +1 -0
  294. package/dist/projected-document-workspace-notice-diagnostics.d.ts +12 -0
  295. package/dist/projected-document-workspace-notice-diagnostics.d.ts.map +1 -0
  296. package/dist/projected-document-workspace-notice-diagnostics.js +13 -0
  297. package/dist/projected-document-workspace-notice-diagnostics.js.map +1 -0
  298. package/dist/projected-input-form-runtime.d.ts +62 -0
  299. package/dist/projected-input-form-runtime.d.ts.map +1 -0
  300. package/dist/projected-input-form-runtime.js +2 -0
  301. package/dist/projected-input-form-runtime.js.map +1 -0
  302. package/dist/projected-process-task-notice-diagnostics.d.ts +13 -0
  303. package/dist/projected-process-task-notice-diagnostics.d.ts.map +1 -0
  304. package/dist/projected-process-task-notice-diagnostics.js +170 -0
  305. package/dist/projected-process-task-notice-diagnostics.js.map +1 -0
  306. package/dist/projected-query-form-runtime.d.ts +46 -0
  307. package/dist/projected-query-form-runtime.d.ts.map +1 -0
  308. package/dist/projected-query-form-runtime.js +2 -0
  309. package/dist/projected-query-form-runtime.js.map +1 -0
  310. package/dist/prompt-document-preview-projection.d.ts +46 -0
  311. package/dist/prompt-document-preview-projection.d.ts.map +1 -0
  312. package/dist/prompt-document-preview-projection.js +173 -0
  313. package/dist/prompt-document-preview-projection.js.map +1 -0
  314. package/dist/prompt-icons.d.ts +4 -0
  315. package/dist/prompt-icons.d.ts.map +1 -0
  316. package/dist/prompt-icons.js +4 -0
  317. package/dist/prompt-icons.js.map +1 -0
  318. package/dist/prompt-status-message-resolution.d.ts +18 -0
  319. package/dist/prompt-status-message-resolution.d.ts.map +1 -0
  320. package/dist/prompt-status-message-resolution.js +83 -0
  321. package/dist/prompt-status-message-resolution.js.map +1 -0
  322. package/dist/query-form-lowering.d.ts +16 -0
  323. package/dist/query-form-lowering.d.ts.map +1 -0
  324. package/dist/query-form-lowering.js +38 -0
  325. package/dist/query-form-lowering.js.map +1 -0
  326. package/dist/query-form-url-state.d.ts +44 -0
  327. package/dist/query-form-url-state.d.ts.map +1 -0
  328. package/dist/query-form-url-state.js +197 -0
  329. package/dist/query-form-url-state.js.map +1 -0
  330. package/dist/query-offset-page.d.ts +13 -0
  331. package/dist/query-offset-page.d.ts.map +1 -0
  332. package/dist/query-offset-page.js +24 -0
  333. package/dist/query-offset-page.js.map +1 -0
  334. package/dist/relation-query-input-form-target.d.ts +10 -0
  335. package/dist/relation-query-input-form-target.d.ts.map +1 -0
  336. package/dist/relation-query-input-form-target.js +30 -0
  337. package/dist/relation-query-input-form-target.js.map +1 -0
  338. package/dist/scope-selection.d.ts +94 -0
  339. package/dist/scope-selection.d.ts.map +1 -0
  340. package/dist/scope-selection.js +95 -0
  341. package/dist/scope-selection.js.map +1 -0
  342. package/dist/target-bindings.d.ts +39 -0
  343. package/dist/target-bindings.d.ts.map +1 -0
  344. package/dist/target-bindings.js +40 -0
  345. package/dist/target-bindings.js.map +1 -0
  346. package/dist/view-chrome-content-diagnostics.d.ts +8 -0
  347. package/dist/view-chrome-content-diagnostics.d.ts.map +1 -0
  348. package/dist/view-chrome-content-diagnostics.js +84 -0
  349. package/dist/view-chrome-content-diagnostics.js.map +1 -0
  350. package/dist/view-chrome-icons.d.ts +12 -0
  351. package/dist/view-chrome-icons.d.ts.map +1 -0
  352. package/dist/view-chrome-icons.js +50 -0
  353. package/dist/view-chrome-icons.js.map +1 -0
  354. package/dist/view-chrome-slot-renderer-registry.d.ts +19 -0
  355. package/dist/view-chrome-slot-renderer-registry.d.ts.map +1 -0
  356. package/dist/view-chrome-slot-renderer-registry.js +62 -0
  357. package/dist/view-chrome-slot-renderer-registry.js.map +1 -0
  358. package/package.json +53 -0
  359. package/src/api-scope-request.ts +186 -0
  360. package/src/collection-chrome-icons.ts +89 -0
  361. package/src/collection-chrome-runtime.ts +151 -0
  362. package/src/collection-chrome-slot-renderer-registry.ts +227 -0
  363. package/src/collection-selection-state.ts +32 -0
  364. package/src/data-source-projection.ts +2149 -0
  365. package/src/data-source-query-lowering.ts +217 -0
  366. package/src/date-time-filter-model.ts +156 -0
  367. package/src/document-badge-icons.ts +3 -0
  368. package/src/document-module.ts +741 -0
  369. package/src/document-summary-model.ts +1 -0
  370. package/src/document-workspace-chrome-projection.ts +62 -0
  371. package/src/document-workspace-surface-slots.ts +458 -0
  372. package/src/endpoint-executor.ts +122 -0
  373. package/src/field-display-resolution.ts +99 -0
  374. package/src/index.ts +104 -0
  375. package/src/module.ts +281 -0
  376. package/src/navigation-shell-frame-renderer-registry.ts +65 -0
  377. package/src/navigation-shell-layout-runtime.ts +124 -0
  378. package/src/navigation-shell-region-component-registry.ts +242 -0
  379. package/src/navigation-shell-runtime.ts +579 -0
  380. package/src/navigation-shell-slot-renderer-registry.ts +94 -0
  381. package/src/navigation.ts +364 -0
  382. package/src/object-path.ts +99 -0
  383. package/src/page-host-renderer-registry.ts +615 -0
  384. package/src/presentation-action-endpoint-request-projection.ts +223 -0
  385. package/src/presentation-action-endpoint.ts +130 -0
  386. package/src/presentation-action-icons.ts +3 -0
  387. package/src/presentation-action-result-state.ts +189 -0
  388. package/src/presentation-action-runtime-binding.ts +177 -0
  389. package/src/presentation-action-runtime-diagnostics.ts +120 -0
  390. package/src/presentation-action-runtime-labels.ts +57 -0
  391. package/src/presentation-action-runtime-projection.ts +67 -0
  392. package/src/presentation-badge-resolution.ts +138 -0
  393. package/src/presentation-collection-pagination.ts +436 -0
  394. package/src/presentation-content-diagnostics.ts +121 -0
  395. package/src/presentation-content-resolution.ts +46 -0
  396. package/src/presentation-data-source-binding-model.ts +140 -0
  397. package/src/presentation-data-source-runtime.ts +190 -0
  398. package/src/presentation-design-intent-diagnostics.ts +104 -0
  399. package/src/presentation-icon-diagnostics.ts +368 -0
  400. package/src/presentation-icon-registry.ts +181 -0
  401. package/src/presentation-navigation-action-runtime-bindings.ts +54 -0
  402. package/src/presentation-pagination.ts +694 -0
  403. package/src/presentation-projection-coverage.ts +3257 -0
  404. package/src/presentation-projection-diagnostics.ts +71 -0
  405. package/src/presentation-projection-trace.ts +293 -0
  406. package/src/presentation-query-form-state.ts +54 -0
  407. package/src/presentation-renderer-registry.ts +269 -0
  408. package/src/presentation-semantics.ts +1028 -0
  409. package/src/presentation-standards.ts +14 -0
  410. package/src/presentation-test-selectors.ts +312 -0
  411. package/src/presentation-value-formatting.ts +65 -0
  412. package/src/presentation-value-resolution.ts +100 -0
  413. package/src/presentation-view-tree.ts +33 -0
  414. package/src/process-task-model.ts +158 -0
  415. package/src/process-task-projection.ts +398 -0
  416. package/src/projected-action-status-projection.ts +43 -0
  417. package/src/projected-activity-state-model.ts +123 -0
  418. package/src/projected-collection-action-runtime-bindings.ts +76 -0
  419. package/src/projected-collection-action-runtime-diagnostics.ts +289 -0
  420. package/src/projected-collection-runtime.ts +1772 -0
  421. package/src/projected-document-action-diagnostics.ts +196 -0
  422. package/src/projected-document-action-enablements.ts +99 -0
  423. package/src/projected-document-action-projection.ts +464 -0
  424. package/src/projected-document-action-runtime-profile-diagnostics.ts +250 -0
  425. package/src/projected-document-action-runtime-profile.ts +133 -0
  426. package/src/projected-document-action-status-notice-diagnostics.ts +116 -0
  427. package/src/projected-document-badge-formatting.ts +7 -0
  428. package/src/projected-document-editor-model.ts +7 -0
  429. package/src/projected-document-field-navigation.ts +300 -0
  430. package/src/projected-document-field-semantics.ts +27 -0
  431. package/src/projected-document-workspace-data-source-bindings.ts +182 -0
  432. package/src/projected-document-workspace-notice-diagnostics.ts +41 -0
  433. package/src/projected-input-form-runtime.ts +86 -0
  434. package/src/projected-process-task-notice-diagnostics.ts +283 -0
  435. package/src/projected-query-form-runtime.ts +62 -0
  436. package/src/prompt-document-preview-projection.ts +345 -0
  437. package/src/prompt-icons.ts +3 -0
  438. package/src/prompt-status-message-resolution.ts +158 -0
  439. package/src/query-form-lowering.ts +77 -0
  440. package/src/query-form-url-state.ts +346 -0
  441. package/src/query-offset-page.ts +50 -0
  442. package/src/relation-query-input-form-target.ts +61 -0
  443. package/src/scope-selection.ts +201 -0
  444. package/src/target-bindings.ts +123 -0
  445. package/src/view-chrome-content-diagnostics.ts +139 -0
  446. package/src/view-chrome-icons.ts +81 -0
  447. package/src/view-chrome-slot-renderer-registry.ts +128 -0
@@ -0,0 +1,136 @@
1
+ import { collectionChromeSlotKindLabels, collectionChromeSlotPlacementLabels, } from '@cohesivesystems/presentation-contracts';
2
+ /**
3
+ * Placement token used by collection chrome renderer keys that apply to any
4
+ * placement for a slot kind.
5
+ */
6
+ export const collectionChromeSlotAnyPlacement = '*';
7
+ /**
8
+ * Builds a normalized collection chrome slot renderer registry from declarative
9
+ * bindings.
10
+ *
11
+ * Later bindings with the same normalized key overwrite earlier bindings.
12
+ *
13
+ * @param bindings Slot renderer bindings to index by kind and placement.
14
+ * @returns Registry suitable for resolver and key-inspection helpers.
15
+ */
16
+ export function createCollectionChromeSlotRendererRegistry(bindings) {
17
+ return Object.fromEntries(bindings.map((binding) => [
18
+ createCollectionChromeSlotRendererKey(binding.kind, binding.placement),
19
+ binding.render,
20
+ ]));
21
+ }
22
+ /**
23
+ * Creates the canonical registry key for a collection chrome slot kind and
24
+ * placement.
25
+ *
26
+ * Generated enum values, enum labels, and string values are normalized into the
27
+ * same lowercase alphanumeric token so backend-generated contracts and
28
+ * handwritten adapters can use the same registry.
29
+ *
30
+ * @param kind Collection chrome slot kind.
31
+ * @param placement Optional slot placement. `null` and `undefined` become the
32
+ * any-placement fallback token.
33
+ */
34
+ export function createCollectionChromeSlotRendererKey(kind, placement) {
35
+ return `${normalizeCollectionChromeSlotKind(kind)}:${placement == null
36
+ ? collectionChromeSlotAnyPlacement
37
+ : normalizeCollectionChromeSlotPlacement(placement)}`;
38
+ }
39
+ /**
40
+ * Returns the normalized keys currently registered in a collection chrome slot
41
+ * renderer registry.
42
+ */
43
+ export function getCollectionChromeSlotRendererRegistryKeys(registry) {
44
+ return Object.keys(registry ?? {});
45
+ }
46
+ /**
47
+ * Checks whether a precomputed key set contains a renderer that could satisfy
48
+ * the provided collection chrome slot.
49
+ *
50
+ * This uses the same candidate-key order as
51
+ * {@link resolveCollectionChromeSlotRenderer}.
52
+ */
53
+ export function hasCollectionChromeSlotRendererBinding(keys, slot) {
54
+ return getCollectionChromeSlotRendererCandidateKeys(slot).some((key) => keys.includes(key));
55
+ }
56
+ /**
57
+ * Resolves the renderer for a collection chrome slot.
58
+ *
59
+ * Exact kind-and-placement bindings are preferred. If no exact binding exists,
60
+ * the resolver falls back to a kind-level any-placement binding.
61
+ *
62
+ * @param registry Registry to resolve from. `null` and `undefined` are treated
63
+ * as empty registries.
64
+ * @param slot Projected collection chrome slot definition.
65
+ * @returns Matching renderer, or `null` when no binding can satisfy the slot.
66
+ */
67
+ export function resolveCollectionChromeSlotRenderer(registry, slot) {
68
+ const renderers = registry ?? {};
69
+ for (const key of getCollectionChromeSlotRendererCandidateKeys(slot)) {
70
+ const renderer = renderers[key];
71
+ if (renderer) {
72
+ return renderer;
73
+ }
74
+ }
75
+ return null;
76
+ }
77
+ /**
78
+ * Checks whether a collection chrome slot is assigned to the provided
79
+ * placement, using the same normalization rules as renderer keys.
80
+ */
81
+ export function isCollectionChromeSlotPlacement(slot, placement) {
82
+ return isCollectionChromeSlotPlacementValue(slot.Placement, placement);
83
+ }
84
+ /**
85
+ * Checks whether a collection chrome slot has the provided semantic kind, using
86
+ * the same normalization rules as renderer keys.
87
+ */
88
+ export function isCollectionChromeSlotKind(slot, kind) {
89
+ return normalizeCollectionChromeSlotKind(slot.Kind) ===
90
+ normalizeCollectionChromeSlotKind(kind);
91
+ }
92
+ /**
93
+ * Checks whether an optional placement value matches a concrete placement.
94
+ *
95
+ * Missing slot placement values never match, including against any-placement
96
+ * fallback renderer bindings.
97
+ */
98
+ export function isCollectionChromeSlotPlacementValue(value, placement) {
99
+ if (value == null) {
100
+ return false;
101
+ }
102
+ return normalizeCollectionChromeSlotPlacement(value) ===
103
+ normalizeCollectionChromeSlotPlacement(placement);
104
+ }
105
+ /**
106
+ * Returns candidate renderer keys for a collection chrome slot in resolution
107
+ * order.
108
+ *
109
+ * The exact kind-and-placement key is first, followed by the kind-level
110
+ * any-placement fallback key.
111
+ */
112
+ export function getCollectionChromeSlotRendererCandidateKeys(slot) {
113
+ return [
114
+ createCollectionChromeSlotRendererKey(slot.Kind, slot.Placement),
115
+ createCollectionChromeSlotRendererKey(slot.Kind),
116
+ ];
117
+ }
118
+ /** Normalizes a slot kind into the registry-key token space. */
119
+ function normalizeCollectionChromeSlotKind(value) {
120
+ return normalizeGeneratedEnumToken(value, collectionChromeSlotKindLabels);
121
+ }
122
+ /** Normalizes a slot placement into the registry-key token space. */
123
+ function normalizeCollectionChromeSlotPlacement(value) {
124
+ return normalizeGeneratedEnumToken(value, collectionChromeSlotPlacementLabels);
125
+ }
126
+ /**
127
+ * Converts generated enum numbers, enum label strings, and handwritten strings
128
+ * into stable registry-key tokens.
129
+ */
130
+ function normalizeGeneratedEnumToken(value, labels) {
131
+ const label = typeof value === 'number'
132
+ ? labels[value] ?? String(value)
133
+ : String(value);
134
+ return label.replace(/[^a-z0-9]/gi, '').toLocaleLowerCase();
135
+ }
136
+ //# sourceMappingURL=collection-chrome-slot-renderer-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-chrome-slot-renderer-registry.js","sourceRoot":"","sources":["../src/collection-chrome-slot-renderer-registry.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,8BAA8B,EAC9B,mCAAmC,GACpC,MAAM,yCAAyC,CAAA;AAEhD;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,CAAA;AAyCnD;;;;;;;;GAQG;AACH,MAAM,UAAU,0CAA0C,CACxD,QAA2E;IAE3E,OAAO,MAAM,CAAC,WAAW,CACvB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QACxB,qCAAqC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC;QACtE,OAAO,CAAC,MAAM;KACf,CAAC,CACH,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qCAAqC,CACnD,IAAgD,EAChD,SAAkE;IAElE,OAAO,GAAG,iCAAiC,CAAC,IAAI,CAAC,IAAI,SAAS,IAAI,IAAI;QACpE,CAAC,CAAC,gCAAgC;QAClC,CAAC,CAAC,sCAAsC,CAAC,SAAS,CAAC,EAAE,CAAA;AACzD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2CAA2C,CACzD,QAAoF;IAEpF,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sCAAsC,CACpD,IAAuB,EACvB,IAAoC;IAEpC,OAAO,4CAA4C,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACrE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;AACvB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mCAAmC,CACjD,QAAoF,EACpF,IAAoC;IAEpC,MAAM,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAA;IAChC,KAAK,MAAM,GAAG,IAAI,4CAA4C,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;QAC/B,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAA;QACjB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAC7C,IAAoC,EACpC,SAA0D;IAE1D,OAAO,oCAAoC,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;AACxE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CACxC,IAAoC,EACpC,IAAgD;IAEhD,OAAO,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC;QACjD,iCAAiC,CAAC,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oCAAoC,CAClD,KAAyE,EACzE,SAA0D;IAE1D,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,sCAAsC,CAAC,KAAK,CAAC;QAClD,sCAAsC,CAAC,SAAS,CAAC,CAAA;AACrD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,4CAA4C,CAC1D,IAAoC;IAEpC,OAAO;QACL,qCAAqC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;QAChE,qCAAqC,CAAC,IAAI,CAAC,IAAI,CAAC;KACjD,CAAA;AACH,CAAC;AAED,gEAAgE;AAChE,SAAS,iCAAiC,CAAC,KAAc;IACvD,OAAO,2BAA2B,CAAC,KAAK,EAAE,8BAA8B,CAAC,CAAA;AAC3E,CAAC;AAED,qEAAqE;AACrE,SAAS,sCAAsC,CAAC,KAAc;IAC5D,OAAO,2BAA2B,CAAC,KAAK,EAAE,mCAAmC,CAAC,CAAA;AAChF,CAAC;AAED;;;GAGG;AACH,SAAS,2BAA2B,CAClC,KAAc,EACd,MAAwC;IAExC,MAAM,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ;QACrC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC;QAChC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACjB,OAAO,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAA;AAC7D,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { CollectionSelectionMode } from './module.js';
2
+ export interface CollectionSelectionStateEntry {
3
+ readonly clearSelection: () => void;
4
+ readonly selectedRowId: string | null;
5
+ readonly selectedRowIds: readonly string[];
6
+ readonly selectionStateId: string;
7
+ readonly selectRowId: (rowId: string, mode: CollectionSelectionMode) => void;
8
+ readonly setSelectedRowIds: (rowIds: readonly string[]) => void;
9
+ readonly toggleRowId: (rowId: string, mode: CollectionSelectionMode) => void;
10
+ }
11
+ export interface CollectionSelectionStateContextValue {
12
+ readonly selectedRowIdsByStateId: Readonly<Record<string, readonly string[]>>;
13
+ readonly clearSelection: (selectionStateId: string) => void;
14
+ readonly selectRowId: (selectionStateId: string, rowId: string, mode: CollectionSelectionMode) => void;
15
+ readonly setSelectedRowIds: (selectionStateId: string, rowIds: readonly string[]) => void;
16
+ readonly toggleRowId: (selectionStateId: string, rowId: string, mode: CollectionSelectionMode) => void;
17
+ }
18
+ //# sourceMappingURL=collection-selection-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-selection-state.d.ts","sourceRoot":"","sources":["../src/collection-selection-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACxB,MAAM,UAAU,CAAA;AAEjB,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,cAAc,EAAE,MAAM,IAAI,CAAA;IACnC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAA;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,KAAK,IAAI,CAAA;IAC5E,QAAQ,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAA;IAC/D,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,uBAAuB,KAAK,IAAI,CAAA;CAC7E;AAED,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;IAC7E,QAAQ,CAAC,cAAc,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3D,QAAQ,CAAC,WAAW,EAAE,CACpB,gBAAgB,EAAE,MAAM,EACxB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,uBAAuB,KAC1B,IAAI,CAAA;IACT,QAAQ,CAAC,iBAAiB,EAAE,CAC1B,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,MAAM,EAAE,KACtB,IAAI,CAAA;IACT,QAAQ,CAAC,WAAW,EAAE,CACpB,gBAAgB,EAAE,MAAM,EACxB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,uBAAuB,KAC1B,IAAI,CAAA;CACV"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=collection-selection-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-selection-state.js","sourceRoot":"","sources":["../src/collection-selection-state.ts"],"names":[],"mappings":""}
@@ -0,0 +1,475 @@
1
+ import { type PresentationBindingDefinition, type DataSourceDefinition, type PresentationModuleDefinition } from './module.js';
2
+ import { type PresentationLocalValueDataSourceBinding, type PresentationLocalValueDataSourceBindingInput, type PresentationDataSourceAuthorizationRequirement, type PresentationDataSourceBinding, type PresentationTanStackQueryDataSourceBindingInput, type PresentationTanStackQueryDataSourceBinding } from './presentation-data-source-binding-model.js';
3
+ import { type DataSourceQueryLoweringTransform } from './data-source-query-lowering.js';
4
+ import { type PresentationQueryFormStateMap } from './presentation-query-form-state.js';
5
+ import type { PresentationActionResultStateValues } from './presentation-action-result-state.js';
6
+ /**
7
+ * Runtime inputs available while projecting semantic data-source definitions
8
+ * into concrete frontend bindings.
9
+ */
10
+ export interface PresentationDataSourceProjectionContext {
11
+ /** Current query-form states keyed by query form or data-source state id. */
12
+ readonly queryFormStates?: PresentationQueryFormStateMap;
13
+ /** Route parameters supplied by the active presentation/navigation host. */
14
+ readonly routeParameters?: Readonly<Record<string, string | undefined>>;
15
+ /** Additional cache-key fragments supplied by the app or route host. */
16
+ readonly queryKeyParts?: readonly unknown[];
17
+ /** Workspace id used to scope local state or cache identity, when available. */
18
+ readonly workspaceId?: string | null;
19
+ }
20
+ /**
21
+ * Context passed to a registry factory while interpreting one semantic
22
+ * data-source definition.
23
+ */
24
+ export interface PresentationDataSourceBindingFactoryContext {
25
+ /** Backend target binding attached to the data source, when one is declared. */
26
+ readonly binding: PresentationBindingDefinition | null;
27
+ /** Projection context shared by all data sources in the current host. */
28
+ readonly context: PresentationDataSourceProjectionContext;
29
+ /** Data-source definition being projected. */
30
+ readonly dataSource: DataSourceDefinition;
31
+ /** Presentation module that owns the data source and related query metadata. */
32
+ readonly module: PresentationModuleDefinition | null;
33
+ }
34
+ /**
35
+ * Factory that projects one data source into a frontend binding.
36
+ *
37
+ * Returning `null` or `undefined` lets later registry fallbacks attempt the
38
+ * projection.
39
+ */
40
+ export type PresentationDataSourceBindingFactory = (context: PresentationDataSourceBindingFactoryContext) => PresentationDataSourceBinding | null | undefined;
41
+ /**
42
+ * Factory that produces TanStack Query binding input before target-level
43
+ * authorization is applied.
44
+ */
45
+ export type PresentationTanStackQueryDataSourceBindingFactory = (context: PresentationDataSourceBindingFactoryContext) => PresentationTargetInterpretedTanStackQueryDataSourceBindingInput | null | undefined;
46
+ /**
47
+ * Executes a backend endpoint id with the already-projected route/query
48
+ * request payload.
49
+ *
50
+ * @typeParam TResult - Result shape returned by the endpoint executor.
51
+ */
52
+ export type PresentationDataSourceEndpointExecutor = <TResult = unknown>(endpointId: string, request: PresentationDataSourceEndpointExecutionRequest) => Promise<TResult>;
53
+ /**
54
+ * Request envelope passed to endpoint executors from projected data-source
55
+ * bindings.
56
+ *
57
+ * @typeParam TQuery - Query payload shape produced by query lowering.
58
+ */
59
+ export interface PresentationDataSourceEndpointExecutionRequest<TQuery = unknown> {
60
+ /** Lowered query payload for endpoint-query data sources. */
61
+ readonly query?: TQuery | null;
62
+ /** Route parameters for endpoint-fetch data sources. */
63
+ readonly routeParameters?: Readonly<Record<string, string | null | undefined>>;
64
+ }
65
+ /**
66
+ * Options read from backend target bindings that steer frontend endpoint and
67
+ * authorization interpretation.
68
+ */
69
+ export interface PresentationDataSourceTargetBindingOptions {
70
+ /** Authorization policy id resolved by the target interpretation. */
71
+ readonly authorizationPolicyId?: string | null;
72
+ /** Endpoint executor target id resolved by the API endpoint interpretation. */
73
+ readonly executionTargetId?: string | null;
74
+ }
75
+ /**
76
+ * Runtime behavior defaults read from data-source annotations and applied to
77
+ * query bindings.
78
+ */
79
+ export interface PresentationDataSourceBindingRuntimeOptions {
80
+ /** Message shown when a successful query returns no presentable items. */
81
+ readonly emptyMessage?: string;
82
+ /** Data used before a query resolves or when a source cannot be materialized. */
83
+ readonly fallbackData?: unknown;
84
+ /** Loading label shown while the binding is pending. */
85
+ readonly pendingLabel?: string;
86
+ /** TanStack Query refetch interval in milliseconds, or `false` to disable it. */
87
+ readonly refetchInterval?: number | false;
88
+ /** TanStack Query retry setting. */
89
+ readonly retry?: boolean | number;
90
+ /** TanStack Query stale time in milliseconds. */
91
+ readonly staleTime?: number;
92
+ }
93
+ /**
94
+ * Local-value binding input whose authorization can be supplied by the active
95
+ * target interpretation instead of every feature-owned binding factory.
96
+ */
97
+ export type PresentationTargetInterpretedLocalValueDataSourceBindingInput = Omit<PresentationLocalValueDataSourceBindingInput, 'authorization'> & {
98
+ readonly authorization?: PresentationDataSourceAuthorizationRequirement;
99
+ };
100
+ /**
101
+ * TanStack Query binding input whose authorization can be supplied by the
102
+ * target interpretation. Feature registries still own request/query shaping.
103
+ */
104
+ export type PresentationTargetInterpretedTanStackQueryDataSourceBindingInput = Omit<PresentationTanStackQueryDataSourceBindingInput, 'authorization'> & {
105
+ readonly authorization?: PresentationDataSourceAuthorizationRequirement;
106
+ };
107
+ /** Resolves a data-source authorization requirement for a target binding. */
108
+ export type PresentationDataSourceAuthorizationFactory = (context: PresentationDataSourceBindingFactoryContext) => PresentationDataSourceAuthorizationRequirement;
109
+ /** Endpoint executors keyed by backend-declared execution target id. */
110
+ export type PresentationDataSourceEndpointExecutorMap = Readonly<Record<string, PresentationDataSourceEndpointExecutor>>;
111
+ /** Authorization factories keyed by backend-declared authorization policy id. */
112
+ export type PresentationDataSourceAuthorizationPolicyMap = Readonly<Record<string, PresentationDataSourceAuthorizationFactory>>;
113
+ /** Target-specific interpretation shared by all data sources of one binding kind. */
114
+ export interface PresentationDataSourceBindingTargetInterpretation {
115
+ /** Default authorization policy for this target binding kind. */
116
+ readonly authorization?: PresentationDataSourceAuthorizationFactory;
117
+ }
118
+ /**
119
+ * Target interpretation for API endpoint data sources. This owns endpoint
120
+ * execution and cross-cutting query defaults; semantic registries can still
121
+ * provide per-source query payloads, labels, and cache keys.
122
+ */
123
+ export interface PresentationDataSourceApiEndpointTargetInterpretation extends PresentationDataSourceBindingTargetInterpretation {
124
+ /** Creates a query key for endpoint-backed data sources. */
125
+ readonly createQueryKey?: (context: PresentationDataSourceApiEndpointFactoryContext) => readonly unknown[];
126
+ /** Default executor for API endpoint data sources. */
127
+ readonly executeEndpoint?: PresentationDataSourceEndpointExecutor;
128
+ /** Executors keyed by target binding `executionTargetId`. */
129
+ readonly executeEndpointByTargetId?: PresentationDataSourceEndpointExecutorMap;
130
+ /** Enables or disables endpoint-backed query execution. */
131
+ readonly isEnabled?: (context: PresentationDataSourceApiEndpointFactoryContext) => boolean;
132
+ /** Default pending label for endpoint-backed query bindings. */
133
+ readonly pendingLabel?: string | ((context: PresentationDataSourceApiEndpointFactoryContext) => string);
134
+ /** Default retry behavior for endpoint-backed query bindings. */
135
+ readonly retry?: boolean;
136
+ }
137
+ /** Target interpretation for backend-declared query lowering transform ids. */
138
+ export interface PresentationDataSourceQueryLoweringTargetInterpretation {
139
+ /** Query-lowering transforms keyed by backend-declared transform id. */
140
+ readonly transformsById?: Readonly<Record<string, DataSourceQueryLoweringTransform>>;
141
+ }
142
+ /**
143
+ * Frontend interpretation of backend data-source target bindings for one
144
+ * concrete presentation target.
145
+ */
146
+ export interface PresentationDataSourceTargetInterpretation {
147
+ /** Interpretation for API endpoint data-source bindings. */
148
+ readonly apiEndpoint?: PresentationDataSourceApiEndpointTargetInterpretation;
149
+ /** Named authorization policies available to target bindings. */
150
+ readonly authorizationPoliciesById?: PresentationDataSourceAuthorizationPolicyMap;
151
+ /** Fallback authorization policy for bindings without a narrower policy. */
152
+ readonly defaultAuthorization?: PresentationDataSourceAuthorizationFactory;
153
+ /** Interpretation for frontend-owned local state data-source bindings. */
154
+ readonly localState?: PresentationDataSourceBindingTargetInterpretation;
155
+ /** Interpretation for backend-declared query-lowering transforms. */
156
+ readonly queryLowering?: PresentationDataSourceQueryLoweringTargetInterpretation;
157
+ }
158
+ /** Options used when invoking a projected endpoint through the target. */
159
+ export interface ExecutePresentationDataSourceTargetEndpointOptions {
160
+ /** Binding whose target options select endpoint executor and authorization policy. */
161
+ readonly binding?: PresentationBindingDefinition | null;
162
+ }
163
+ /**
164
+ * Registry of data-source binding factories used to project semantic data
165
+ * sources onto frontend runtime bindings.
166
+ */
167
+ export interface PresentationDataSourceBindingProjectionRegistry {
168
+ /** Generic factory for API endpoint bindings. */
169
+ readonly apiEndpoint?: PresentationDataSourceBindingFactory;
170
+ /** Exact factories keyed by data-source id. */
171
+ readonly byDataSourceId?: Readonly<Record<string, PresentationDataSourceBindingFactory>>;
172
+ /** Exact factories keyed by endpoint id. */
173
+ readonly byEndpointId?: Readonly<Record<string, PresentationDataSourceBindingFactory>>;
174
+ /** Default authorization policy used by unbound or projected bindings. */
175
+ readonly defaultAuthorization?: (context: PresentationDataSourceBindingFactoryContext) => PresentationDataSourceAuthorizationRequirement;
176
+ /** Last-resort factory when no exact or generic API factory matches. */
177
+ readonly fallback?: PresentationDataSourceBindingFactory;
178
+ }
179
+ /**
180
+ * Options for adapting target-interpreted TanStack Query binding factories into
181
+ * a full data-source projection registry.
182
+ */
183
+ export interface TanStackQueryDataSourceBindingProjectionRegistryOptions {
184
+ /** Generic endpoint factory returning TanStack Query binding input. */
185
+ readonly apiEndpoint?: PresentationTanStackQueryDataSourceBindingFactory;
186
+ /** Exact factories keyed by data-source id. */
187
+ readonly byDataSourceId?: Readonly<Record<string, PresentationDataSourceBindingFactory>>;
188
+ /** Exact endpoint factories keyed by endpoint id. */
189
+ readonly byEndpointId?: Readonly<Record<string, PresentationTanStackQueryDataSourceBindingFactory>>;
190
+ /** Authorization policy applied when a factory does not provide one. */
191
+ readonly defaultAuthorization?: (context: PresentationDataSourceBindingFactoryContext) => PresentationDataSourceAuthorizationRequirement;
192
+ /** Active target interpretation that supplies authorization and execution defaults. */
193
+ readonly targetInterpretation?: PresentationDataSourceTargetInterpretation;
194
+ }
195
+ /**
196
+ * Options for the generic API endpoint TanStack Query projector.
197
+ */
198
+ export interface ApiEndpointTanStackQueryDataSourceBindingProjectionRegistryOptions {
199
+ /** Optional target-specific cache key builder. */
200
+ readonly createQueryKey?: (context: PresentationDataSourceApiEndpointFactoryContext) => readonly unknown[];
201
+ /** Optional endpoint executor overriding the active target interpretation. */
202
+ readonly executeEndpoint?: PresentationDataSourceEndpointExecutor;
203
+ /** Optional query enablement guard. */
204
+ readonly isEnabled?: (context: PresentationDataSourceApiEndpointFactoryContext) => boolean;
205
+ /** Pending label or label factory for generated query bindings. */
206
+ readonly pendingLabel?: string | ((context: PresentationDataSourceApiEndpointFactoryContext) => string);
207
+ /** Retry behavior for generated query bindings. */
208
+ readonly retry?: boolean;
209
+ /** Default authorization policy applied to generated query bindings. */
210
+ readonly defaultAuthorization?: (context: PresentationDataSourceBindingFactoryContext) => PresentationDataSourceAuthorizationRequirement;
211
+ /** Active target interpretation that supplies defaults not provided here. */
212
+ readonly targetInterpretation?: PresentationDataSourceTargetInterpretation;
213
+ }
214
+ /**
215
+ * Factory context for API endpoint data-source bindings after endpoint id and
216
+ * route parameters have been resolved.
217
+ */
218
+ export interface PresentationDataSourceApiEndpointFactoryContext extends PresentationDataSourceBindingFactoryContext {
219
+ /** Resolved API endpoint id. */
220
+ readonly endpointId: string;
221
+ /** Route parameters projected for this data source. */
222
+ readonly routeParameters: Readonly<Record<string, string | null | undefined>>;
223
+ }
224
+ /** Options for projecting a list of semantic data-source ids. */
225
+ export interface ProjectPresentationDataSourceBindingsOptions {
226
+ /** Shared runtime projection context. */
227
+ readonly context?: PresentationDataSourceProjectionContext;
228
+ /** Fallback data-source definitions when the module does not contain an id. */
229
+ readonly dataSourceDefinitions?: readonly DataSourceDefinition[];
230
+ /** Data-source ids to project, de-duplicated before projection. */
231
+ readonly dataSourceIds: readonly string[];
232
+ /** Presentation module that owns data-source definitions and target bindings. */
233
+ readonly module: PresentationModuleDefinition | null;
234
+ /** Projection registry used to resolve concrete frontend bindings. */
235
+ readonly registry: PresentationDataSourceBindingProjectionRegistry;
236
+ }
237
+ /**
238
+ * Options for creating endpoint-query binding input from backend query
239
+ * lowering.
240
+ *
241
+ * @typeParam TRequest - Lowered endpoint query request shape.
242
+ */
243
+ export interface CreateDataSourceEndpointQueryBindingInputOptions<TRequest extends object> {
244
+ /** Factory context for the data source being projected. */
245
+ readonly context: PresentationDataSourceBindingFactoryContext;
246
+ /** Base request values merged into the lowered query request. */
247
+ readonly defaultRequest?: Partial<TRequest>;
248
+ /** Empty-state message for the generated query binding. */
249
+ readonly emptyMessage?: string;
250
+ /** Query enablement override. */
251
+ readonly enabled?: boolean;
252
+ /** Endpoint id to execute. */
253
+ readonly endpointId: string;
254
+ /** Fallback data for the generated query binding. */
255
+ readonly fallbackData?: unknown;
256
+ /** Pagination request merged into the lowered query request. */
257
+ readonly paginationRequest?: object | null;
258
+ /** Pending label for the generated query binding. */
259
+ readonly pendingLabel?: string;
260
+ /** Additional query-key fragments. */
261
+ readonly queryKeyParts?: readonly unknown[];
262
+ /** Refetch interval in milliseconds, or `false` to disable it. */
263
+ readonly refetchInterval?: number | false;
264
+ /** Retry behavior for the generated query binding. */
265
+ readonly retry?: boolean | number;
266
+ /** Stale time in milliseconds. */
267
+ readonly staleTime?: number;
268
+ /** Target interpretation used for endpoint execution and authorization. */
269
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
270
+ /** Per-source query lowering transforms. */
271
+ readonly transforms?: Readonly<Record<string, DataSourceQueryLoweringTransform>>;
272
+ /** Source value used by query lowering. */
273
+ readonly value?: unknown;
274
+ }
275
+ /** Options for creating endpoint-fetch binding input from a data source. */
276
+ export interface CreateDataSourceEndpointFetchBindingInputOptions {
277
+ /** Factory context for the data source being projected. */
278
+ readonly context: PresentationDataSourceBindingFactoryContext;
279
+ /** Empty-state message for the generated query binding. */
280
+ readonly emptyMessage?: string;
281
+ /** Query enablement override. */
282
+ readonly enabled?: boolean;
283
+ /** Endpoint id to execute, defaulting to the data-source binding endpoint. */
284
+ readonly endpointId?: string;
285
+ /** Fallback data for the generated query binding. */
286
+ readonly fallbackData?: unknown;
287
+ /** Pending label for the generated query binding. */
288
+ readonly pendingLabel?: string;
289
+ /** Additional query-key fragments. */
290
+ readonly queryKeyParts?: readonly unknown[];
291
+ /** Refetch interval in milliseconds, or `false` to disable it. */
292
+ readonly refetchInterval?: number | false;
293
+ /** Retry behavior for the generated query binding. */
294
+ readonly retry?: boolean | number;
295
+ /** Route parameters to pass to the endpoint executor. */
296
+ readonly routeParameters?: Readonly<Record<string, string | null | undefined>>;
297
+ /** Stale time in milliseconds. */
298
+ readonly staleTime?: number;
299
+ /** Target interpretation used for endpoint execution and authorization. */
300
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
301
+ }
302
+ /** Options for projecting an aggregate-query data source. */
303
+ export interface CreateDataSourceAggregateQueryBindingOptions {
304
+ /** Factory context for the aggregate data source being projected. */
305
+ readonly context: PresentationDataSourceBindingFactoryContext;
306
+ /** Additional query-key fragments. */
307
+ readonly queryKeyParts?: readonly unknown[];
308
+ /** Target interpretation used to materialize source data. */
309
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
310
+ /** Per-source query lowering transforms used to query the source data source. */
311
+ readonly transforms?: Readonly<Record<string, DataSourceQueryLoweringTransform>>;
312
+ /** Source value used by query lowering. */
313
+ readonly value?: unknown;
314
+ }
315
+ /** Options for creating a collection-query projection registry. */
316
+ export interface CreateCollectionQueryDataSourceBindingProjectionRegistryOptions {
317
+ /** Pagination requests keyed by data-source id. */
318
+ readonly paginationRequestsByDataSourceId?: Readonly<Record<string, object | null | undefined>>;
319
+ /** Static or computed query-key fragments. */
320
+ readonly queryKeyParts?: readonly unknown[] | ((context: PresentationDataSourceBindingFactoryContext) => readonly unknown[]);
321
+ /** Optional local-value override for collection data sources. */
322
+ readonly resolveLocalValue?: (context: PresentationDataSourceBindingFactoryContext) => PresentationTargetInterpretedLocalValueDataSourceBindingInput | null | undefined;
323
+ /** Optional per-source query-lowering transform resolver. */
324
+ readonly resolveTransforms?: (context: PresentationDataSourceBindingFactoryContext) => Readonly<Record<string, DataSourceQueryLoweringTransform>> | undefined;
325
+ /** Optional source value resolver for query lowering. */
326
+ readonly resolveValue?: (context: PresentationDataSourceBindingFactoryContext) => unknown;
327
+ /** Target interpretation used for generated bindings. */
328
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
329
+ }
330
+ /** Options for creating an aggregate-query projection registry. */
331
+ export interface CreateAggregateQueryDataSourceBindingProjectionRegistryOptions {
332
+ /** Static or computed query-key fragments. */
333
+ readonly queryKeyParts?: readonly unknown[] | ((context: PresentationDataSourceBindingFactoryContext) => readonly unknown[]);
334
+ /** Optional per-source query-lowering transform resolver. */
335
+ readonly resolveTransforms?: (context: PresentationDataSourceBindingFactoryContext) => Readonly<Record<string, DataSourceQueryLoweringTransform>> | undefined;
336
+ /** Optional source value resolver for query lowering. */
337
+ readonly resolveValue?: (context: PresentationDataSourceBindingFactoryContext) => unknown;
338
+ /** Target interpretation used for generated bindings. */
339
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
340
+ }
341
+ /** Options for creating endpoint-fetch projection registries. */
342
+ export interface CreateApiEndpointFetchDataSourceBindingProjectionRegistryOptions {
343
+ /** Static or computed query-key fragments. */
344
+ readonly queryKeyParts?: readonly unknown[] | ((context: PresentationDataSourceBindingFactoryContext) => readonly unknown[]);
345
+ /** Target interpretation used for generated bindings. */
346
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
347
+ }
348
+ /** Options for creating local-state projection registries. */
349
+ export interface CreateLocalStateDataSourceBindingProjectionRegistryOptions {
350
+ /** Resolves a local-value binding input for a local-state data source. */
351
+ readonly resolveLocalValue: (context: PresentationDataSourceBindingFactoryContext) => PresentationTargetInterpretedLocalValueDataSourceBindingInput | null | undefined;
352
+ /** Target interpretation used for authorization defaults. */
353
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
354
+ }
355
+ /** Options for projecting action-result state values as data-source bindings. */
356
+ export interface CreateActionResultStateDataSourceBindingProjectionRegistryOptions {
357
+ /** Route-scoped data-source values written by action result policies. */
358
+ readonly values?: PresentationActionResultStateValues;
359
+ /** Target interpretation used for authorization defaults. */
360
+ readonly targetInterpretation: PresentationDataSourceTargetInterpretation;
361
+ }
362
+ /** Static or factory-produced query-key fragments used by binding projectors. */
363
+ export type DataSourceQueryKeyParts = readonly unknown[] | ((context: PresentationDataSourceBindingFactoryContext) => readonly unknown[]);
364
+ /**
365
+ * Per-data-source interpretation hooks used by collection and aggregate query
366
+ * projectors.
367
+ */
368
+ export interface DataSourceQueryInterpretation {
369
+ /** Optional local-value override for the data source. */
370
+ readonly localValue?: (context: PresentationDataSourceBindingFactoryContext) => PresentationTargetInterpretedLocalValueDataSourceBindingInput | null | undefined;
371
+ /** Normalizes a source value before query lowering. */
372
+ readonly normalizeValue?: (value: unknown, context: PresentationDataSourceBindingFactoryContext) => unknown;
373
+ /** Query-key fragments for this data source. */
374
+ readonly queryKeyParts?: DataSourceQueryKeyParts;
375
+ /** Reads the source value used by query lowering. */
376
+ readonly readValue?: (context: PresentationDataSourceBindingFactoryContext) => unknown;
377
+ /** Per-data-source query lowering transforms or transform resolver. */
378
+ readonly transforms?: Readonly<Record<string, DataSourceQueryLoweringTransform>> | ((context: PresentationDataSourceBindingFactoryContext) => Readonly<Record<string, DataSourceQueryLoweringTransform>> | undefined);
379
+ }
380
+ /** Registry of query interpretation hooks keyed by data-source id. */
381
+ export interface DataSourceQueryInterpretationRegistry {
382
+ /** Per-source interpretation hooks keyed by data-source id. */
383
+ readonly byDataSourceId?: Readonly<Record<string, DataSourceQueryInterpretation>>;
384
+ /** Default query-key fragments when a source has no override. */
385
+ readonly defaultQueryKeyParts?: DataSourceQueryKeyParts;
386
+ /** Shared query lowering transforms or transform resolver. */
387
+ readonly transforms?: Readonly<Record<string, DataSourceQueryLoweringTransform>> | ((context: PresentationDataSourceBindingFactoryContext) => Readonly<Record<string, DataSourceQueryLoweringTransform>> | undefined);
388
+ }
389
+ /**
390
+ * Resolvers adapted from a query interpretation registry to the option shape
391
+ * consumed by collection and aggregate binding registry factories.
392
+ */
393
+ export type DataSourceQueryInterpretationResolvers = Pick<CreateCollectionQueryDataSourceBindingProjectionRegistryOptions, 'queryKeyParts' | 'resolveLocalValue' | 'resolveTransforms' | 'resolveValue'> & Pick<CreateAggregateQueryDataSourceBindingProjectionRegistryOptions, 'queryKeyParts' | 'resolveTransforms' | 'resolveValue'>;
394
+ /** Preserves target interpretation objects as a named projection concept. */
395
+ export declare function createPresentationDataSourceTargetInterpretation(interpretation: PresentationDataSourceTargetInterpretation): PresentationDataSourceTargetInterpretation;
396
+ /**
397
+ * Resolves authorization from the target interpretation based on the backend
398
+ * binding kind declared for the data source.
399
+ */
400
+ export declare function resolvePresentationDataSourceTargetAuthorization(targetInterpretation: PresentationDataSourceTargetInterpretation | undefined, context: PresentationDataSourceBindingFactoryContext): PresentationDataSourceAuthorizationRequirement;
401
+ /** Creates a local-value binding with authorization supplied by the target. */
402
+ export declare function createTargetInterpretedLocalValueDataSourceBinding(context: PresentationDataSourceBindingFactoryContext, targetInterpretation: PresentationDataSourceTargetInterpretation | undefined, binding: PresentationTargetInterpretedLocalValueDataSourceBindingInput): PresentationLocalValueDataSourceBinding;
403
+ /** Creates a TanStack Query binding with authorization supplied by the target. */
404
+ export declare function createTargetInterpretedTanStackQueryDataSourceBinding(context: PresentationDataSourceBindingFactoryContext, targetInterpretation: PresentationDataSourceTargetInterpretation | undefined, binding: PresentationTargetInterpretedTanStackQueryDataSourceBindingInput, defaultAuthorization?: PresentationDataSourceAuthorizationFactory): PresentationTanStackQueryDataSourceBinding;
405
+ /** Creates endpoint-query binding input from backend-declared query lowering. */
406
+ export declare function createDataSourceEndpointQueryBindingInput<TRequest extends object = Record<string, unknown>, TResult = unknown>({ context, defaultRequest, emptyMessage, enabled, endpointId, fallbackData, paginationRequest, pendingLabel, queryKeyParts, refetchInterval, retry, staleTime, targetInterpretation, transforms, value, }: CreateDataSourceEndpointQueryBindingInputOptions<TRequest>): PresentationTargetInterpretedTanStackQueryDataSourceBindingInput;
407
+ /** Creates a fully wrapped endpoint-query binding from backend query lowering. */
408
+ export declare function createDataSourceEndpointQueryBinding<TRequest extends object = Record<string, unknown>, TResult = unknown>(options: CreateDataSourceEndpointQueryBindingInputOptions<TRequest>): PresentationTanStackQueryDataSourceBinding;
409
+ /** Creates a default binding registry for backend-declared collection-query data sources. */
410
+ export declare function createCollectionQueryDataSourceBindingProjectionRegistry({ paginationRequestsByDataSourceId, queryKeyParts, resolveLocalValue, resolveTransforms, resolveValue, targetInterpretation, }: CreateCollectionQueryDataSourceBindingProjectionRegistryOptions): PresentationDataSourceBindingProjectionRegistry;
411
+ /** Creates a default binding registry for backend-declared aggregate-query data sources. */
412
+ export declare function createAggregateQueryDataSourceBindingProjectionRegistry({ queryKeyParts, resolveTransforms, resolveValue, targetInterpretation, }: CreateAggregateQueryDataSourceBindingProjectionRegistryOptions): PresentationDataSourceBindingProjectionRegistry;
413
+ /** Creates a default fetch binding registry for endpoint-backed data sources. */
414
+ export declare function createApiEndpointFetchDataSourceBindingProjectionRegistry({ queryKeyParts, targetInterpretation, }: CreateApiEndpointFetchDataSourceBindingProjectionRegistryOptions): PresentationDataSourceBindingProjectionRegistry;
415
+ /** Creates a default binding registry for frontend-owned local-state data sources. */
416
+ export declare function createLocalStateDataSourceBindingProjectionRegistry({ resolveLocalValue, targetInterpretation, }: CreateLocalStateDataSourceBindingProjectionRegistryOptions): PresentationDataSourceBindingProjectionRegistry;
417
+ /**
418
+ * Creates a binding registry that exposes action-result state writes as local
419
+ * values for their target data sources.
420
+ */
421
+ export declare function createActionResultStateDataSourceBindingProjectionRegistry({ targetInterpretation, values, }: CreateActionResultStateDataSourceBindingProjectionRegistryOptions): PresentationDataSourceBindingProjectionRegistry;
422
+ /** Adapts data-source query interpretation metadata to collection/aggregate projector hooks. */
423
+ export declare function createDataSourceQueryInterpretationResolvers({ byDataSourceId, defaultQueryKeyParts, transforms, }: DataSourceQueryInterpretationRegistry): DataSourceQueryInterpretationResolvers;
424
+ /** Creates endpoint-fetch binding input from an API endpoint data source. */
425
+ export declare function createDataSourceEndpointFetchBindingInput<TResult = unknown>({ context, emptyMessage, enabled, endpointId, fallbackData, pendingLabel, queryKeyParts, refetchInterval, retry, routeParameters, staleTime, targetInterpretation, }: CreateDataSourceEndpointFetchBindingInputOptions): PresentationTargetInterpretedTanStackQueryDataSourceBindingInput;
426
+ /** Creates a fully wrapped endpoint-fetch binding from an API endpoint data source. */
427
+ export declare function createDataSourceEndpointFetchBinding<TResult = unknown>(options: CreateDataSourceEndpointFetchBindingInputOptions): PresentationTanStackQueryDataSourceBinding;
428
+ /** Creates a binding that materializes a source data source and evaluates aggregate measures. */
429
+ export declare function createDataSourceAggregateQueryBinding({ context, queryKeyParts, targetInterpretation, transforms, value, }: CreateDataSourceAggregateQueryBindingOptions): PresentationTanStackQueryDataSourceBinding | null;
430
+ /** Executes an API endpoint through the active target interpretation. */
431
+ export declare function executePresentationDataSourceTargetEndpoint<TResult = unknown>(targetInterpretation: PresentationDataSourceTargetInterpretation, endpointId: string, request?: PresentationDataSourceEndpointExecutionRequest, options?: ExecutePresentationDataSourceTargetEndpointOptions): Promise<TResult>;
432
+ /**
433
+ * Composes independently owned data-source binding registries into one
434
+ * projection registry. Later registries override earlier factories for the same
435
+ * data-source or endpoint id so app-level composition can replace defaults at
436
+ * narrower ownership boundaries.
437
+ */
438
+ export declare function mergePresentationDataSourceBindingProjectionRegistries(...registries: readonly PresentationDataSourceBindingProjectionRegistry[]): PresentationDataSourceBindingProjectionRegistry;
439
+ /**
440
+ * Projects semantic data-source definitions onto concrete frontend binding
441
+ * plans. React hooks are deliberately not used here; hook-backed realization is
442
+ * handled later by PresentationDataSourceBinder.
443
+ */
444
+ export declare function projectPresentationDataSourceBindings({ context, dataSourceDefinitions, dataSourceIds, module, registry, }: ProjectPresentationDataSourceBindingsOptions): readonly PresentationDataSourceBinding[];
445
+ /**
446
+ * Adapts TanStack Query binding-input factories into a full projection
447
+ * registry by applying target-level authorization to every produced binding.
448
+ */
449
+ export declare function createTanStackQueryDataSourceBindingProjectionRegistry({ apiEndpoint, byDataSourceId, byEndpointId, defaultAuthorization, targetInterpretation, }: TanStackQueryDataSourceBindingProjectionRegistryOptions): PresentationDataSourceBindingProjectionRegistry;
450
+ /**
451
+ * Creates a generic TanStack Query projection registry for API endpoint data
452
+ * sources. The registry resolves endpoint ids from backend bindings, projects
453
+ * route parameters, applies runtime annotations, and executes through the
454
+ * active target interpretation.
455
+ */
456
+ export declare function createApiEndpointTanStackQueryDataSourceBindingProjectionRegistry({ createQueryKey, defaultAuthorization, executeEndpoint, isEnabled, pendingLabel, retry, targetInterpretation, }: ApiEndpointTanStackQueryDataSourceBindingProjectionRegistryOptions): PresentationDataSourceBindingProjectionRegistry;
457
+ /**
458
+ * Reads target binding options from a backend presentation binding.
459
+ *
460
+ * Option names are matched case-insensitively and may use either camelCase or
461
+ * PascalCase.
462
+ */
463
+ export declare function readPresentationDataSourceTargetBindingOptions(binding: PresentationBindingDefinition | null | undefined): PresentationDataSourceTargetBindingOptions;
464
+ /**
465
+ * Reads runtime query defaults from the standard
466
+ * `cohesive.presentation.data-source.runtime` data-source annotation.
467
+ */
468
+ export declare function readDataSourceBindingRuntimeOptions(dataSource: Pick<DataSourceDefinition, 'Annotations'> | null | undefined): PresentationDataSourceBindingRuntimeOptions;
469
+ /**
470
+ * Resolves the endpoint executor selected by a binding's `executionTargetId`,
471
+ * falling back to the default API endpoint executor on the target
472
+ * interpretation.
473
+ */
474
+ export declare function resolvePresentationDataSourceTargetEndpointExecutor(targetInterpretation: PresentationDataSourceTargetInterpretation | undefined, binding: PresentationBindingDefinition | null | undefined): PresentationDataSourceEndpointExecutor | undefined;
475
+ //# sourceMappingURL=data-source-projection.d.ts.map