@elaraai/east-ui 1.0.68 → 1.0.69

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 (306) hide show
  1. package/README.md +2 -2
  2. package/dist/src/charts/chart/index.d.ts +39 -4
  3. package/dist/src/charts/chart/index.d.ts.map +1 -1
  4. package/dist/src/charts/chart/index.js +3 -3
  5. package/dist/src/charts/chart/index.js.map +1 -1
  6. package/dist/src/charts/spec/index.d.ts +61 -3
  7. package/dist/src/charts/spec/index.d.ts.map +1 -1
  8. package/dist/src/charts/spec/types.d.ts +1 -1
  9. package/dist/src/charts/spec/types.js +1 -1
  10. package/dist/src/collections/blend/index.d.ts +1 -1
  11. package/dist/src/collections/blend/index.d.ts.map +1 -1
  12. package/dist/src/collections/blend/index.js +1 -1
  13. package/dist/src/collections/blend/index.js.map +1 -1
  14. package/dist/src/collections/blend/types.js +1 -1
  15. package/dist/src/collections/blend/types.js.map +1 -1
  16. package/dist/src/collections/board/index.d.ts +4 -4
  17. package/dist/src/collections/board/index.d.ts.map +1 -1
  18. package/dist/src/collections/board/index.js +1 -1
  19. package/dist/src/collections/board/index.js.map +1 -1
  20. package/dist/src/collections/board/types.js +1 -1
  21. package/dist/src/collections/board/types.js.map +1 -1
  22. package/dist/src/collections/calendar/index.d.ts +1 -1
  23. package/dist/src/collections/calendar/index.d.ts.map +1 -1
  24. package/dist/src/collections/deck/index.d.ts +58 -0
  25. package/dist/src/collections/deck/index.d.ts.map +1 -1
  26. package/dist/src/collections/index.d.ts +1 -2
  27. package/dist/src/collections/index.d.ts.map +1 -1
  28. package/dist/src/collections/index.js +1 -2
  29. package/dist/src/collections/index.js.map +1 -1
  30. package/dist/src/collections/library/index.d.ts +29 -0
  31. package/dist/src/collections/library/index.d.ts.map +1 -1
  32. package/dist/src/collections/library/types.d.ts +29 -0
  33. package/dist/src/collections/library/types.d.ts.map +1 -1
  34. package/dist/src/collections/matrix/index.d.ts +1 -1
  35. package/dist/src/collections/matrix/index.d.ts.map +1 -1
  36. package/dist/src/collections/plan/assemble.d.ts +3732 -0
  37. package/dist/src/collections/plan/assemble.d.ts.map +1 -0
  38. package/dist/src/collections/plan/assemble.js +187 -0
  39. package/dist/src/collections/plan/assemble.js.map +1 -0
  40. package/dist/src/collections/plan/builders.d.ts +612 -0
  41. package/dist/src/collections/plan/builders.d.ts.map +1 -0
  42. package/dist/src/collections/plan/builders.js +543 -0
  43. package/dist/src/collections/plan/builders.js.map +1 -0
  44. package/dist/src/collections/plan/data-forms.d.ts +332 -0
  45. package/dist/src/collections/plan/data-forms.d.ts.map +1 -0
  46. package/dist/src/collections/plan/data-forms.js +212 -0
  47. package/dist/src/collections/plan/data-forms.js.map +1 -0
  48. package/dist/src/collections/plan/factories.d.ts +338 -0
  49. package/dist/src/collections/plan/factories.d.ts.map +1 -0
  50. package/dist/src/collections/plan/factories.js +414 -0
  51. package/dist/src/collections/plan/factories.js.map +1 -0
  52. package/dist/src/collections/plan/index.d.ts +271 -0
  53. package/dist/src/collections/plan/index.d.ts.map +1 -0
  54. package/dist/src/collections/plan/index.js +162 -0
  55. package/dist/src/collections/plan/index.js.map +1 -0
  56. package/dist/src/collections/plan/ir.d.ts +3496 -0
  57. package/dist/src/collections/plan/ir.d.ts.map +1 -0
  58. package/dist/src/collections/plan/ir.js +83 -0
  59. package/dist/src/collections/plan/ir.js.map +1 -0
  60. package/dist/src/collections/plan/pick.d.ts +115 -0
  61. package/dist/src/collections/plan/pick.d.ts.map +1 -0
  62. package/dist/src/collections/plan/pick.js +193 -0
  63. package/dist/src/collections/plan/pick.js.map +1 -0
  64. package/dist/src/collections/plan/root.d.ts +210 -0
  65. package/dist/src/collections/plan/root.d.ts.map +1 -0
  66. package/dist/src/collections/plan/root.js +146 -0
  67. package/dist/src/collections/plan/root.js.map +1 -0
  68. package/dist/src/collections/plan/series.d.ts +11890 -0
  69. package/dist/src/collections/plan/series.d.ts.map +1 -0
  70. package/dist/src/collections/plan/series.js +412 -0
  71. package/dist/src/collections/plan/series.js.map +1 -0
  72. package/dist/src/collections/plan/types.d.ts +9291 -0
  73. package/dist/src/collections/plan/types.d.ts.map +1 -0
  74. package/dist/src/collections/plan/types.js +940 -0
  75. package/dist/src/collections/plan/types.js.map +1 -0
  76. package/dist/src/collections/roster/index.d.ts +4 -4
  77. package/dist/src/collections/roster/index.d.ts.map +1 -1
  78. package/dist/src/collections/roster/index.js +1 -1
  79. package/dist/src/collections/roster/index.js.map +1 -1
  80. package/dist/src/collections/roster/types.d.ts +1 -1
  81. package/dist/src/collections/roster/types.d.ts.map +1 -1
  82. package/dist/src/collections/roster/types.js +4 -3
  83. package/dist/src/collections/roster/types.js.map +1 -1
  84. package/dist/src/collections/table/index.d.ts +70 -2
  85. package/dist/src/collections/table/index.d.ts.map +1 -1
  86. package/dist/src/collections/table/index.js +55 -11
  87. package/dist/src/collections/table/index.js.map +1 -1
  88. package/dist/src/collections/table/types.d.ts +1 -1
  89. package/dist/src/collections/table/types.d.ts.map +1 -1
  90. package/dist/src/component.d.ts +3898 -1339
  91. package/dist/src/component.d.ts.map +1 -1
  92. package/dist/src/component.js +83 -146
  93. package/dist/src/component.js.map +1 -1
  94. package/dist/src/container/card/types.d.ts +1 -1
  95. package/dist/src/container/card/types.d.ts.map +1 -1
  96. package/dist/src/contracts/approval.d.ts +117 -0
  97. package/dist/src/contracts/approval.d.ts.map +1 -0
  98. package/dist/src/contracts/approval.js +105 -0
  99. package/dist/src/contracts/approval.js.map +1 -0
  100. package/dist/src/contracts/drag.d.ts +3 -3
  101. package/dist/src/contracts/drag.d.ts.map +1 -1
  102. package/dist/src/contracts/drag.js +23 -10
  103. package/dist/src/contracts/drag.js.map +1 -1
  104. package/dist/src/contracts/index.d.ts +4 -1
  105. package/dist/src/contracts/index.d.ts.map +1 -1
  106. package/dist/src/contracts/index.js +4 -1
  107. package/dist/src/contracts/index.js.map +1 -1
  108. package/dist/src/contracts/pick.d.ts +705 -0
  109. package/dist/src/contracts/pick.d.ts.map +1 -0
  110. package/dist/src/contracts/pick.js +360 -0
  111. package/dist/src/contracts/pick.js.map +1 -0
  112. package/dist/src/contracts/review.d.ts +7 -99
  113. package/dist/src/contracts/review.d.ts.map +1 -1
  114. package/dist/src/contracts/review.js +11 -85
  115. package/dist/src/contracts/review.js.map +1 -1
  116. package/dist/src/contracts/slice-affordances.d.ts +13 -4
  117. package/dist/src/contracts/slice-affordances.d.ts.map +1 -1
  118. package/dist/src/contracts/slice-affordances.js +13 -3
  119. package/dist/src/contracts/slice-affordances.js.map +1 -1
  120. package/dist/src/contracts/source.d.ts +432 -0
  121. package/dist/src/contracts/source.d.ts.map +1 -0
  122. package/dist/src/contracts/source.js +505 -0
  123. package/dist/src/contracts/source.js.map +1 -0
  124. package/dist/src/contracts/states.d.ts +130 -0
  125. package/dist/src/contracts/states.d.ts.map +1 -1
  126. package/dist/src/contracts/states.js +122 -0
  127. package/dist/src/contracts/states.js.map +1 -1
  128. package/dist/src/contracts/time.d.ts +76 -0
  129. package/dist/src/contracts/time.d.ts.map +1 -0
  130. package/dist/src/contracts/time.js +78 -0
  131. package/dist/src/contracts/time.js.map +1 -0
  132. package/dist/src/display/trace/types.d.ts +1 -1
  133. package/dist/src/display/trace/types.d.ts.map +1 -1
  134. package/dist/src/index.d.ts +10 -2
  135. package/dist/src/index.d.ts.map +1 -1
  136. package/dist/src/index.js +22 -2
  137. package/dist/src/index.js.map +1 -1
  138. package/dist/src/internal.d.ts +5 -3
  139. package/dist/src/internal.d.ts.map +1 -1
  140. package/dist/src/internal.js +4 -3
  141. package/dist/src/internal.js.map +1 -1
  142. package/dist/src/layout/dock/index.d.ts +1 -1
  143. package/dist/src/layout/dock/index.js +1 -1
  144. package/dist/src/layout/index.d.ts +0 -1
  145. package/dist/src/layout/index.d.ts.map +1 -1
  146. package/dist/src/layout/index.js +0 -1
  147. package/dist/src/layout/index.js.map +1 -1
  148. package/dist/src/overlays/drawer/types.d.ts +1 -1
  149. package/dist/src/overlays/drawer/types.d.ts.map +1 -1
  150. package/dist/src/pick/index.d.ts +443 -0
  151. package/dist/src/pick/index.d.ts.map +1 -0
  152. package/dist/src/pick/index.js +64 -0
  153. package/dist/src/pick/index.js.map +1 -0
  154. package/dist/src/pick/panel/index.d.ts +64 -0
  155. package/dist/src/pick/panel/index.d.ts.map +1 -0
  156. package/dist/src/pick/panel/index.js +61 -0
  157. package/dist/src/pick/panel/index.js.map +1 -0
  158. package/dist/src/platform/slice/index.d.ts +291 -0
  159. package/dist/src/platform/slice/index.d.ts.map +1 -1
  160. package/dist/src/platform/slice/index.js +16 -0
  161. package/dist/src/platform/slice/index.js.map +1 -1
  162. package/dist/src/runtime/collections/deck.d.ts +29 -0
  163. package/dist/src/runtime/collections/deck.d.ts.map +1 -1
  164. package/dist/src/runtime/collections/index.d.ts +1 -2
  165. package/dist/src/runtime/collections/index.d.ts.map +1 -1
  166. package/dist/src/runtime/collections/index.js +1 -2
  167. package/dist/src/runtime/collections/index.js.map +1 -1
  168. package/dist/src/runtime/collections/library.d.ts +1 -1
  169. package/dist/src/runtime/collections/library.js +1 -1
  170. package/dist/src/runtime/collections/plan.d.ts +98 -0
  171. package/dist/src/runtime/collections/plan.d.ts.map +1 -0
  172. package/dist/src/runtime/collections/plan.js +98 -0
  173. package/dist/src/runtime/collections/plan.js.map +1 -0
  174. package/dist/src/runtime/collections/schematic.d.ts +1 -1
  175. package/dist/src/runtime/collections/schematic.js +1 -1
  176. package/dist/src/runtime/collections/table.d.ts +9 -1
  177. package/dist/src/runtime/collections/table.d.ts.map +1 -1
  178. package/dist/src/runtime/collections/table.js +1 -7
  179. package/dist/src/runtime/collections/table.js.map +1 -1
  180. package/dist/src/runtime/layout/dock.d.ts +2 -2
  181. package/dist/src/runtime/layout/dock.js +2 -2
  182. package/dist/src/runtime/layout/index.d.ts +0 -1
  183. package/dist/src/runtime/layout/index.d.ts.map +1 -1
  184. package/dist/src/runtime/layout/index.js +0 -1
  185. package/dist/src/runtime/layout/index.js.map +1 -1
  186. package/dist/src/shared/plot-gutter.d.ts +6 -23
  187. package/dist/src/shared/plot-gutter.d.ts.map +1 -1
  188. package/dist/src/shared/plot-gutter.js +6 -19
  189. package/dist/src/shared/plot-gutter.js.map +1 -1
  190. package/dist/src/shared/reify.d.ts +47 -4
  191. package/dist/src/shared/reify.d.ts.map +1 -1
  192. package/dist/src/shared/reify.js +62 -4
  193. package/dist/src/shared/reify.js.map +1 -1
  194. package/dist/src/slice/breakdown/index.d.ts +27 -0
  195. package/dist/src/slice/breakdown/index.d.ts.map +1 -1
  196. package/dist/src/slice/breakdown/types.d.ts +27 -0
  197. package/dist/src/slice/breakdown/types.d.ts.map +1 -1
  198. package/dist/src/slice/cohort/index.d.ts +54 -0
  199. package/dist/src/slice/cohort/index.d.ts.map +1 -1
  200. package/dist/src/slice/cohort/types.d.ts +27 -0
  201. package/dist/src/slice/cohort/types.d.ts.map +1 -1
  202. package/dist/src/slice/filter/index.d.ts +27 -0
  203. package/dist/src/slice/filter/index.d.ts.map +1 -1
  204. package/dist/src/slice/filter/types.d.ts +27 -0
  205. package/dist/src/slice/filter/types.d.ts.map +1 -1
  206. package/dist/src/slice/index.d.ts +405 -0
  207. package/dist/src/slice/index.d.ts.map +1 -1
  208. package/dist/src/slice/legend/index.d.ts +27 -0
  209. package/dist/src/slice/legend/index.d.ts.map +1 -1
  210. package/dist/src/slice/legend/types.d.ts +27 -0
  211. package/dist/src/slice/legend/types.d.ts.map +1 -1
  212. package/dist/src/slice/range/index.d.ts +60 -18
  213. package/dist/src/slice/range/index.d.ts.map +1 -1
  214. package/dist/src/slice/range/index.js +9 -1
  215. package/dist/src/slice/range/index.js.map +1 -1
  216. package/dist/src/slice/range/types.d.ts +63 -22
  217. package/dist/src/slice/range/types.d.ts.map +1 -1
  218. package/dist/src/slice/range/types.js +12 -5
  219. package/dist/src/slice/range/types.js.map +1 -1
  220. package/dist/src/slice/search/index.d.ts +27 -0
  221. package/dist/src/slice/search/index.d.ts.map +1 -1
  222. package/dist/src/slice/search/types.d.ts +27 -0
  223. package/dist/src/slice/search/types.d.ts.map +1 -1
  224. package/dist/src/slice/summary/index.d.ts +27 -0
  225. package/dist/src/slice/summary/index.d.ts.map +1 -1
  226. package/dist/src/slice/summary/types.d.ts +27 -0
  227. package/dist/src/slice/summary/types.d.ts.map +1 -1
  228. package/dist/src/style/content.d.ts +4 -6
  229. package/dist/src/style/content.d.ts.map +1 -1
  230. package/dist/src/style/content.js +4 -6
  231. package/dist/src/style/content.js.map +1 -1
  232. package/dist/src/style/scheme.js +1 -1
  233. package/dist/src/style/scheme.js.map +1 -1
  234. package/dist/test/collections/index.d.ts +2 -2
  235. package/dist/test/collections/index.d.ts.map +1 -1
  236. package/dist/test/collections/index.js +2 -2
  237. package/dist/test/collections/index.js.map +1 -1
  238. package/dist/test/collections/paged-source.examples.d.ts +9 -0
  239. package/dist/test/collections/paged-source.examples.d.ts.map +1 -0
  240. package/dist/test/collections/paged-source.examples.js +136 -0
  241. package/dist/test/collections/paged-source.examples.js.map +1 -0
  242. package/dist/test/collections/plan.examples.d.ts +125 -0
  243. package/dist/test/collections/plan.examples.d.ts.map +1 -0
  244. package/dist/test/collections/plan.examples.js +2939 -0
  245. package/dist/test/collections/plan.examples.js.map +1 -0
  246. package/dist/test/contracts/pick.examples.d.ts +6 -0
  247. package/dist/test/contracts/pick.examples.d.ts.map +1 -0
  248. package/dist/test/contracts/pick.examples.js +89 -0
  249. package/dist/test/contracts/pick.examples.js.map +1 -0
  250. package/dist/test/layout/dock.examples.d.ts +4 -4
  251. package/dist/test/layout/dock.examples.d.ts.map +1 -1
  252. package/dist/test/layout/dock.examples.js +34 -16
  253. package/dist/test/layout/dock.examples.js.map +1 -1
  254. package/dist/test/slice/slice.examples.d.ts +2 -1
  255. package/dist/test/slice/slice.examples.d.ts.map +1 -1
  256. package/dist/test/slice/slice.examples.js +67 -9
  257. package/dist/test/slice/slice.examples.js.map +1 -1
  258. package/package.json +3 -3
  259. package/dist/src/collections/gantt/index.d.ts +0 -377
  260. package/dist/src/collections/gantt/index.d.ts.map +0 -1
  261. package/dist/src/collections/gantt/index.js +0 -896
  262. package/dist/src/collections/gantt/index.js.map +0 -1
  263. package/dist/src/collections/gantt/types.d.ts +0 -353
  264. package/dist/src/collections/gantt/types.d.ts.map +0 -1
  265. package/dist/src/collections/gantt/types.js +0 -207
  266. package/dist/src/collections/gantt/types.js.map +0 -1
  267. package/dist/src/collections/planner/index.d.ts +0 -624
  268. package/dist/src/collections/planner/index.d.ts.map +0 -1
  269. package/dist/src/collections/planner/index.js +0 -941
  270. package/dist/src/collections/planner/index.js.map +0 -1
  271. package/dist/src/collections/planner/types.d.ts +0 -615
  272. package/dist/src/collections/planner/types.d.ts.map +0 -1
  273. package/dist/src/collections/planner/types.js +0 -423
  274. package/dist/src/collections/planner/types.js.map +0 -1
  275. package/dist/src/layout/aligned-stack/index.d.ts +0 -101
  276. package/dist/src/layout/aligned-stack/index.d.ts.map +0 -1
  277. package/dist/src/layout/aligned-stack/index.js +0 -105
  278. package/dist/src/layout/aligned-stack/index.js.map +0 -1
  279. package/dist/src/layout/aligned-stack/types.d.ts +0 -50
  280. package/dist/src/layout/aligned-stack/types.d.ts.map +0 -1
  281. package/dist/src/layout/aligned-stack/types.js +0 -24
  282. package/dist/src/layout/aligned-stack/types.js.map +0 -1
  283. package/dist/src/runtime/collections/gantt.d.ts +0 -67
  284. package/dist/src/runtime/collections/gantt.d.ts.map +0 -1
  285. package/dist/src/runtime/collections/gantt.js +0 -58
  286. package/dist/src/runtime/collections/gantt.js.map +0 -1
  287. package/dist/src/runtime/collections/planner.d.ts +0 -80
  288. package/dist/src/runtime/collections/planner.d.ts.map +0 -1
  289. package/dist/src/runtime/collections/planner.js +0 -76
  290. package/dist/src/runtime/collections/planner.js.map +0 -1
  291. package/dist/src/runtime/layout/aligned-stack.d.ts +0 -38
  292. package/dist/src/runtime/layout/aligned-stack.d.ts.map +0 -1
  293. package/dist/src/runtime/layout/aligned-stack.js +0 -36
  294. package/dist/src/runtime/layout/aligned-stack.js.map +0 -1
  295. package/dist/test/collections/gantt.examples.d.ts +0 -33
  296. package/dist/test/collections/gantt.examples.d.ts.map +0 -1
  297. package/dist/test/collections/gantt.examples.js +0 -359
  298. package/dist/test/collections/gantt.examples.js.map +0 -1
  299. package/dist/test/collections/planner.examples.d.ts +0 -47
  300. package/dist/test/collections/planner.examples.d.ts.map +0 -1
  301. package/dist/test/collections/planner.examples.js +0 -546
  302. package/dist/test/collections/planner.examples.js.map +0 -1
  303. package/dist/test/layout/aligned-stack.examples.d.ts +0 -25
  304. package/dist/test/layout/aligned-stack.examples.d.ts.map +0 -1
  305. package/dist/test/layout/aligned-stack.examples.js +0 -294
  306. package/dist/test/layout/aligned-stack.examples.js.map +0 -1
@@ -0,0 +1,612 @@
1
+ /**
2
+ * Copyright (c) 2025 Elara AI Pty Ltd
3
+ * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ */
5
+ /**
6
+ * Plan value builders — shorthand resolvers, the instant sugar
7
+ * ({@link resolveInstant} / `Plan.at`), the axis declarations (`Plan.axis`,
8
+ * `.time` / `.number` / `.ordinal`), element value builders (`Plan.run` /
9
+ * `decision` / `port` / `event` / `marker` / `chip` / `mark`) and cell
10
+ * builders (`heatCells` / `weightCells` / `segmentCells` / `tableCells`).
11
+ * Every element is pure data — rich click/hover surfaces resolve through
12
+ * the ROOT's `popover` / `hover` functions over `PlanElementRefType`
13
+ * (`Plan Data Interface.md` §3.3), never per-element embeds.
14
+ *
15
+ * @packageDocumentation
16
+ */
17
+ import { type EastType, type ExprType, type SubtypeExprOrValue, ArrayType, BooleanType, DateTimeType, FloatType, IntegerType, OptionType, StringType, StructType } from "@elaraai/east";
18
+ import { TickFormatType } from "../../format/types.js";
19
+ import { IconType, type IconName } from "../../display/icon/types.js";
20
+ import { StatusValueType, type StatusValueLiteral } from "../../feedback/status/types.js";
21
+ import { ColorSchemeType, type ColorSchemeLiteral } from "../../style/scheme.js";
22
+ import { EventStateType, type EventStateLiteral } from "../../contracts/states.js";
23
+ import { type MatrixFillLiteral, MatrixFillType } from "../matrix/types.js";
24
+ import { type PlanAxisOptions, type PlanNumberAxisOptions, type PlanOrdinalAxisOptions, PlanInstantType, type PlanInstantLikeType, type PlanInstantInput, type PlanAxisKindLiteral, type PlanKindOf, type PlanInstantExpr, type PlanRunExpr, type PlanDecisionMarkExpr, type PlanPortExpr, type PlanBucketEventExpr, type PlanCellMarkerExpr, type PlanChipExpr, type PlanEventMarkExpr, type PlanHeatCellsExpr, type PlanTableCellsExpr, type PlanTableSeriesExpr, type PlanAxisExpr, type PlanCellsInput, type PlanTableCellsInput, PlanStretchType, type PlanStretchLiteral, PlanContentAlignType, type PlanContentAlignLiteral, PlanAnimationType, type PlanAnimationLiteral, PlanEventMarkKindType, PlanHeatCellType, PlanWeightCellType, PlanSegmentType, PlanSegmentCellType, PlanTableToneType, type PlanTableToneLiteral, PlanLinkType, PlanLaneType, type PlanRowsValue } from "./types.js";
25
+ /**
26
+ * Resolves the shared event-lifecycle string shorthands into an
27
+ * {@link EventStateType} value: `"estimated"`, `"added"`, `"recommended"`,
28
+ * `"removed"` (the three `proposed` flavours), `"confirmed"`,
29
+ * `"in-progress"`, `"actual"`, `"rejected"`.
30
+ *
31
+ * @param state - An `EventStateType` value/expression or a string shorthand
32
+ * @returns The resolved `EventStateType` value
33
+ */
34
+ export declare function resolvePlanEventState(state: SubtypeExprOrValue<EventStateType> | EventStateLiteral): SubtypeExprOrValue<EventStateType>;
35
+ /** Resolve a null-payload variant string shorthand against its East type. */
36
+ export declare function resolveTag<T extends EastType>(v: SubtypeExprOrValue<NoInfer<T>> | string, type: T): ExprType<T>;
37
+ /**
38
+ * An icon input — a bare Font Awesome solid name (`"rocket"`), a
39
+ * `{ prefix, name }` pair, or an `IconType` expression (the Banner envelope
40
+ * precedent). The mounting context pins size and colour; hosts choose the
41
+ * glyph, never the geometry.
42
+ */
43
+ export type PlanIconInput = IconName | {
44
+ prefix: string;
45
+ name: string;
46
+ } | SubtypeExprOrValue<IconType>;
47
+ /** Resolve a {@link PlanIconInput} into an `IconType` value. */
48
+ export declare function resolveIcon(icon: PlanIconInput): SubtypeExprOrValue<IconType>;
49
+ /** An empty flattened-subtree value — the keyed collection with no rows. */
50
+ export declare function emptyRows(): PlanRowsValue;
51
+ /**
52
+ * Resolves an instant input into a {@link PlanInstantType} value — the one
53
+ * place the arm is inferred (#631).
54
+ *
55
+ * @remarks
56
+ * The input is any {@link PlanInstantLikeType} value or expression. JS values
57
+ * wrap by their type (`Date` ⇒ `time`, `number` / `bigint` ⇒ `number`,
58
+ * `string` ⇒ `ordinal`); East expressions wrap by their STATIC type
59
+ * (`DateTimeType` ⇒ `time`, `FloatType` ⇒ `number`, `IntegerType` ⇒ `number`
60
+ * via `toFloat`, `StringType` ⇒ `ordinal`); a {@link PlanInstantType} value
61
+ * or expression passes through (subtype-checked by `East.value`). Nothing
62
+ * here knows the canvas axis — the arm is the INPUT's; the renderer holds it
63
+ * against the root's declaration.
64
+ *
65
+ * @param v - The instant (a value or expression of a {@link PlanInstantLikeType})
66
+ * @param where - The field being resolved, for the error message
67
+ * @returns The instant as a `PlanInstantType` expression
68
+ * @throws {Error} If `v` is an expression of a non-instant type
69
+ */
70
+ export declare function resolveInstant(v: PlanInstantInput, where: string): ExprType<PlanInstantType>;
71
+ /**
72
+ * The `Plan.at` builders — one instant per axis kind, explicitly. The
73
+ * element builders already wrap by type; these are for element RECORDS
74
+ * written as data (`{ at: Plan.at.time(week(27n)), … }` in a
75
+ * `Plan.Types.HeatCell` array) and for reading as a declaration. Each
76
+ * result is BRANDED with its arm ({@link PlanInstantExpr}), so a cell
77
+ * list built from them carries the kind to the root's compile-time check.
78
+ */
79
+ export declare const at: {
80
+ /**
81
+ * A `time` instant.
82
+ *
83
+ * @param v - The UTC instant (a `Date` or `DateTimeType` expression)
84
+ * @returns A `PlanInstantType` expression with the `time` arm, branded `"time"`
85
+ */
86
+ readonly time: (v: SubtypeExprOrValue<DateTimeType>) => PlanInstantExpr<"time">;
87
+ /**
88
+ * A `number` instant.
89
+ *
90
+ * @param v - The position (a number or `FloatType` expression)
91
+ * @returns A `PlanInstantType` expression with the `number` arm, branded `"number"`
92
+ */
93
+ readonly number: (v: SubtypeExprOrValue<FloatType> | number) => PlanInstantExpr<"number">;
94
+ /**
95
+ * An `ordinal` instant.
96
+ *
97
+ * @param v - The declared value (a string or `StringType` expression)
98
+ * @returns A `PlanInstantType` expression with the `ordinal` arm, branded `"ordinal"`
99
+ */
100
+ readonly ordinal: (v: SubtypeExprOrValue<StringType>) => PlanInstantExpr<"ordinal">;
101
+ };
102
+ /**
103
+ * Builds the `time` axis declaration — `Plan.axis({ … })` / `Plan.axis.time`.
104
+ *
105
+ * @param options - Window, resolution(s), now instant and tick format ({@link PlanAxisOptions})
106
+ * @returns An East expression of {@link PlanAxisType} (the `time` arm), branded `"time"` — the root's canvas kind
107
+ *
108
+ * @remarks
109
+ * The window is half-open `[min, max)` in UTC; omit it to follow the bound
110
+ * slice's datetime range (else fit to the data). `resolutions` lists the
111
+ * WEEK/DAY-style segment options (omit ⇒ no segment). When the Plan is
112
+ * slice-bound, slice state supersedes window + resolution after mount — the
113
+ * slice is the single source of truth.
114
+ */
115
+ export declare function createTimeAxis(options: PlanAxisOptions): PlanAxisExpr<"time">;
116
+ /**
117
+ * Builds the `number` axis declaration — `Plan.axis.number({ … })`.
118
+ *
119
+ * @param options - Window, step, now position and tick format ({@link PlanNumberAxisOptions})
120
+ * @returns An East expression of {@link PlanAxisType} (the `number` arm), branded `"number"` — the root's canvas kind
121
+ * @throws {Error} If a literal `step` is not `> 0`
122
+ *
123
+ * @remarks
124
+ * `[min, max)` ÷ `step` = `n` buckets, edges on whole multiples of `step`
125
+ * (the `TimeResolution` rule, numerically). Omit the window to follow the
126
+ * bound slice's `float` / `integer` range (else fit to the data). Element
127
+ * instants on this canvas are numbers — a `FloatType` / `IntegerType`
128
+ * accessor or a bare number wraps to the `number` arm.
129
+ */
130
+ export declare function createNumberAxis(options: PlanNumberAxisOptions): PlanAxisExpr<"number">;
131
+ /**
132
+ * Builds the `ordinal` axis declaration — `Plan.axis.ordinal({ … })`.
133
+ *
134
+ * @param options - The ordered values and the now value ({@link PlanOrdinalAxisOptions})
135
+ * @returns An East expression of {@link PlanAxisType} (the `ordinal` arm), branded `"ordinal"` — the root's canvas kind
136
+ * @throws {Error} If a literal `values` list is empty
137
+ *
138
+ * @remarks
139
+ * The declared values ARE the buckets, one each, in order; the window is
140
+ * the whole list, so there is no slice range to brush and the window keys
141
+ * idle. Element instants on this canvas are the values — a `StringType`
142
+ * accessor or a bare string wraps to the `ordinal` arm.
143
+ */
144
+ export declare function createOrdinalAxis(options: PlanOrdinalAxisOptions): PlanAxisExpr<"ordinal">;
145
+ /**
146
+ * The `Plan.axis` builder — the `time` shorthand, with the explicit
147
+ * per-kind builders as members (the Planner's `Planner.axis.time / .number /
148
+ * .ordinal` names).
149
+ */
150
+ export interface PlanAxisBuilder {
151
+ /** The `time` axis (the shorthand — `Plan.axis({ resolution: "week", … })`). */
152
+ (options: PlanAxisOptions): PlanAxisExpr<"time">;
153
+ /** The `time` axis, explicitly. */
154
+ time: typeof createTimeAxis;
155
+ /** The `number` axis — a numeric window ÷ `step`. */
156
+ number: typeof createNumberAxis;
157
+ /** The `ordinal` axis — a declared list of values. */
158
+ ordinal: typeof createOrdinalAxis;
159
+ }
160
+ /**
161
+ * Builds the shared axis declaration — `Plan.axis({ … })` is the `time`
162
+ * shorthand; `Plan.axis.time` / `.number` / `.ordinal` declare each kind.
163
+ *
164
+ * @param options - The time-axis options ({@link PlanAxisOptions})
165
+ * @returns An East expression of {@link PlanAxisType}, branded with its kind
166
+ */
167
+ export declare const createAxis: PlanAxisBuilder;
168
+ /**
169
+ * Flat input for {@link Plan.run} — one continuous state-run bar.
170
+ *
171
+ * @typeParam S - The `start` input's type — its axis kind brands the result ({@link PlanKindOf})
172
+ * @typeParam E - The `end` input's type
173
+ * @property key - Stable run identity (drag refs, link edges)
174
+ * @property start - Run start (inclusive) — an instant input (a Date / number / string, or a typed expression)
175
+ * @property end - Run end (exclusive)
176
+ * @property label - The bar text (`"RUN · B-214"`)
177
+ * @property quantity - Optional displayed quantity suffix (`"96 t"`)
178
+ * @property qty - Optional numeric quantity (summed into rollup bands)
179
+ * @property state - The lifecycle state (string shorthand or `EventStateType`)
180
+ * @property status - Optional status tint (`"warning"` ⇒ the over-dwell ring)
181
+ * @property moved - Optional same-status churn counter (`moved ×k`)
182
+ * @property icon - Optional leading FA glyph (10px, inherits bar text colour)
183
+ */
184
+ export interface PlanRunInput<S extends PlanInstantInput = PlanInstantInput, E extends PlanInstantInput = PlanInstantInput> {
185
+ /** Stable run identity (drag refs, link edges). */
186
+ key: SubtypeExprOrValue<StringType>;
187
+ /** Run start (inclusive) — wraps to the axis arm by its type (see {@link PlanInstantLikeType}). */
188
+ start: S;
189
+ /** Run end (exclusive). */
190
+ end: E;
191
+ /** The bar text (`"RUN · B-214"`). */
192
+ label: SubtypeExprOrValue<StringType>;
193
+ /** Optional displayed quantity suffix (`"96 t"` — the muted `.q` text). */
194
+ quantity?: SubtypeExprOrValue<StringType>;
195
+ /** Optional numeric quantity — summed into parent rollup bands (pair with the span factory's `unit`). */
196
+ qty?: SubtypeExprOrValue<FloatType>;
197
+ /** The lifecycle state — a string shorthand or an `EventStateType` value. */
198
+ state: SubtypeExprOrValue<EventStateType> | EventStateLiteral;
199
+ /** Optional status tint — `"warning"` draws the `.stuck` over-dwell ring. */
200
+ status?: SubtypeExprOrValue<StatusValueType> | StatusValueLiteral;
201
+ /** Optional same-status churn counter (rendered `moved ×k`, never extra bars). */
202
+ moved?: SubtypeExprOrValue<IntegerType> | number;
203
+ /** Optional leading FA glyph (10px, inherits the bar text colour). */
204
+ icon?: PlanIconInput;
205
+ }
206
+ /**
207
+ * Builds one span run from a flat input. The result is BRANDED with the axis
208
+ * kind `start` / `end` imply ({@link PlanKindOf}) — a `DateTimeType` accessor
209
+ * makes a `"time"` run, a `FloatType` one a `"number"` run — so the series and
210
+ * root can refuse a mismatched kind at compile time; an erased input (an
211
+ * `Expr<PlanInstantType>`) leaves the run unbranded.
212
+ *
213
+ * @typeParam S - The `start` input's type
214
+ * @typeParam E - The `end` input's type
215
+ * @param input - The run configuration ({@link PlanRunInput})
216
+ * @returns An East expression of {@link PlanRunType}, branded with its kind
217
+ */
218
+ export declare function createRun<S extends PlanInstantInput, E extends PlanInstantInput>(input: PlanRunInput<S, E>): PlanRunExpr<PlanKindOf<S | E>>;
219
+ /**
220
+ * Flat input for {@link Plan.decision} — a ◇/◆ diamond on a run transition.
221
+ *
222
+ * @typeParam A - The `at` input's type — its axis kind brands the result
223
+ * @property key - Stable decision identity
224
+ * @property at - The transition instant the diamond sits on
225
+ * @property applied - `true` fills the diamond (◆)
226
+ */
227
+ export interface PlanDecisionInput<A extends PlanInstantInput = PlanInstantInput> {
228
+ /** Stable decision identity. */
229
+ key: SubtypeExprOrValue<StringType>;
230
+ /** The transition instant the diamond sits on (see {@link PlanInstantLikeType}). */
231
+ at: A;
232
+ /** `true` fills the diamond (◆ applied). */
233
+ applied: SubtypeExprOrValue<BooleanType> | boolean;
234
+ }
235
+ /**
236
+ * Builds one decision mark from a flat input, branded with `at`'s kind.
237
+ *
238
+ * @typeParam A - The `at` input's type
239
+ * @param input - The decision configuration ({@link PlanDecisionInput})
240
+ * @returns An East expression of {@link PlanDecisionMarkType}, branded with its kind
241
+ */
242
+ export declare function createDecision<A extends PlanInstantInput>(input: PlanDecisionInput<A>): PlanDecisionMarkExpr<PlanKindOf<A>>;
243
+ /**
244
+ * Flat input for {@link Plan.port} — a quantity in/out glyph on a span row.
245
+ *
246
+ * @typeParam A - The `at` input's type — its axis kind brands the result
247
+ * @property at - The instant the quantity moves
248
+ * @property label - Optional caption (`"−24 t"`)
249
+ */
250
+ export interface PlanPortInput<A extends PlanInstantInput = PlanInstantInput> {
251
+ /** The instant the quantity moves (see {@link PlanInstantLikeType}). */
252
+ at: A;
253
+ /** Optional caption (`"−24 t"`). */
254
+ label?: SubtypeExprOrValue<StringType>;
255
+ }
256
+ /**
257
+ * Builds one port glyph from a flat input, branded with `at`'s kind.
258
+ *
259
+ * @typeParam A - The `at` input's type
260
+ * @param input - The port configuration ({@link PlanPortInput})
261
+ * @returns An East expression of {@link PlanPortType}, branded with its kind
262
+ */
263
+ export declare function createPort<A extends PlanInstantInput>(input: PlanPortInput<A>): PlanPortExpr<PlanKindOf<A>>;
264
+ /**
265
+ * Flat input for {@link Plan.event} — one bucket-row tile (the full Planner
266
+ * point-event grammar).
267
+ *
268
+ * @typeParam A - The `at` input's type — its axis kind brands the result
269
+ * @property key - Stable event identity (drag refs)
270
+ * @property at - The bucket instant
271
+ * @property lane - The lane key (`[]`-laned rows omit it; in a laned row, omitting takes the full cell)
272
+ * @property label - Optional tile text; omitted ⇒ the resting ✓ / `plan` chip
273
+ * @property icon - Optional leading FA glyph (icon-only tile when `label` omitted)
274
+ * @property state - The lifecycle state (string shorthand or value)
275
+ * @property tone - Optional semantic tile tint
276
+ * @property color - Optional raw colour token override
277
+ * @property colorPalette - Optional brand palette override
278
+ * @property stretch - Optional fill axis (`"horizontal"` / `"vertical"` / `"both"`)
279
+ * @property content - Optional two-axis content alignment
280
+ * @property animation - Optional attention animation (`"pulse"`)
281
+ */
282
+ export interface PlanBucketEventInput<A extends PlanInstantInput = PlanInstantInput> {
283
+ /** Stable event identity (drag-grammar cell refs). */
284
+ key: SubtypeExprOrValue<StringType>;
285
+ /** The bucket instant (see {@link PlanInstantLikeType}). */
286
+ at: A;
287
+ /** The lane key. In a laned row, omitting takes the full cell (the mixed grammar). */
288
+ lane?: SubtypeExprOrValue<StringType>;
289
+ /** Optional tile text; omitted ⇒ ✓ (confirmed/actual) or the dashed `plan` chip (proposed). */
290
+ label?: SubtypeExprOrValue<StringType>;
291
+ /** Optional leading FA glyph (chip-sized, inherits chip colour; icon-only tile when `label` omitted). */
292
+ icon?: PlanIconInput;
293
+ /** The lifecycle state — a string shorthand or an `EventStateType` value. */
294
+ state: SubtypeExprOrValue<EventStateType> | EventStateLiteral;
295
+ /** Optional semantic tile tint (keeps the state's border-style). */
296
+ tone?: SubtypeExprOrValue<StatusValueType> | StatusValueLiteral;
297
+ /** Optional raw colour token override (`"teal.solid"`). */
298
+ color?: SubtypeExprOrValue<StringType>;
299
+ /** Optional brand palette override (`"teal"`, `"purple"`). */
300
+ colorPalette?: SubtypeExprOrValue<ColorSchemeType> | ColorSchemeLiteral;
301
+ /** Optional fill axis. */
302
+ stretch?: SubtypeExprOrValue<PlanStretchType> | PlanStretchLiteral;
303
+ /** Optional two-axis content alignment (defaults to top-left). */
304
+ content?: {
305
+ /** Horizontal content alignment (→ `justifyContent`). */
306
+ horizontal?: SubtypeExprOrValue<PlanContentAlignType> | PlanContentAlignLiteral;
307
+ /** Vertical content alignment (→ `alignItems`). */
308
+ vertical?: SubtypeExprOrValue<PlanContentAlignType> | PlanContentAlignLiteral;
309
+ };
310
+ /** Optional attention animation (`"pulse"` honours `prefers-reduced-motion`). */
311
+ animation?: SubtypeExprOrValue<PlanAnimationType> | PlanAnimationLiteral;
312
+ }
313
+ /**
314
+ * Builds one bucket event from a flat input, branded with `at`'s kind.
315
+ *
316
+ * @typeParam A - The `at` input's type
317
+ * @param input - The event configuration ({@link PlanBucketEventInput})
318
+ * @returns An East expression of {@link PlanBucketEventType}, branded with its kind
319
+ */
320
+ export declare function createBucketEvent<A extends PlanInstantInput>(input: PlanBucketEventInput<A>): PlanBucketEventExpr<PlanKindOf<A>>;
321
+ /**
322
+ * Flat input for {@link Plan.lane} — one bucket-row sub-slot lane.
323
+ *
324
+ * @property key - The lane key (`"am"`) — bucket events reference it via `lane`
325
+ * @property label - Optional printed caption (`"AM"`); omitted ⇒ an unlabelled strip
326
+ */
327
+ export interface PlanLaneInput {
328
+ /** The lane key (`"am"`) — bucket events reference it via `lane`. */
329
+ key: SubtypeExprOrValue<StringType>;
330
+ /** Optional printed caption (`"AM"`); omitted ⇒ an unlabelled strip. */
331
+ label?: SubtypeExprOrValue<StringType>;
332
+ }
333
+ /**
334
+ * Builds one bucket-row lane from a flat input.
335
+ *
336
+ * @param input - The lane configuration ({@link PlanLaneInput})
337
+ * @returns An East expression of {@link PlanLaneType}
338
+ */
339
+ export declare function createLane(input: PlanLaneInput): ExprType<PlanLaneType>;
340
+ /**
341
+ * Flat input for {@link Plan.link} — one run-edge quantity link of the
342
+ * canvas's link graph (`Plan.Root`'s `links`).
343
+ *
344
+ * @property from - The source row key
345
+ * @property fromRun - The source run key (the ribbon leaves this run's end edge)
346
+ * @property to - The destination row key
347
+ * @property toRun - The destination run key (the ribbon lands on this run's start edge)
348
+ * @property quantity - The moved quantity (drives ribbon share + opacity)
349
+ * @property label - The printed quantity caption (`"34 t"`)
350
+ */
351
+ export interface PlanLinkInput {
352
+ /** The source row key. */
353
+ from: SubtypeExprOrValue<StringType>;
354
+ /** The source run key (the ribbon leaves this run's end edge). */
355
+ fromRun: SubtypeExprOrValue<StringType>;
356
+ /** The destination row key. */
357
+ to: SubtypeExprOrValue<StringType>;
358
+ /** The destination run key (the ribbon lands on this run's start edge). */
359
+ toRun: SubtypeExprOrValue<StringType>;
360
+ /** The moved quantity (drives ribbon share + opacity). */
361
+ quantity: SubtypeExprOrValue<FloatType> | number;
362
+ /** The printed quantity caption (`"34 t"`). */
363
+ label: SubtypeExprOrValue<StringType>;
364
+ }
365
+ /**
366
+ * Builds one link edge from a flat input. Links are root DATA
367
+ * (`links={transfers.map(($, t) => Plan.link({ … }))}`): the links-focus
368
+ * control gathers a row's transitive upstream/downstream family over them.
369
+ *
370
+ * @param input - The link configuration ({@link PlanLinkInput})
371
+ * @returns An East expression of {@link PlanLinkType}
372
+ */
373
+ export declare function createLink(input: PlanLinkInput): ExprType<PlanLinkType>;
374
+ /**
375
+ * Flat input for {@link Plan.marker} — a bucket-cell status ring.
376
+ *
377
+ * @typeParam A - The `at` input's type — its axis kind brands the result
378
+ * @property at - The bucket instant the marker rings
379
+ * @property lane - The lane key within the cell
380
+ * @property status - The semantic status (default `"danger"`)
381
+ * @property message - The hover-tooltip text
382
+ */
383
+ export interface PlanCellMarkerInput<A extends PlanInstantInput = PlanInstantInput> {
384
+ /** The bucket instant the marker rings (see {@link PlanInstantLikeType}). */
385
+ at: A;
386
+ /** The lane key within the cell. */
387
+ lane?: SubtypeExprOrValue<StringType>;
388
+ /** The semantic status (default `"danger"`). */
389
+ status?: SubtypeExprOrValue<StatusValueType> | StatusValueLiteral;
390
+ /** The hover-tooltip text. */
391
+ message: SubtypeExprOrValue<StringType>;
392
+ }
393
+ /**
394
+ * Builds one cell marker from a flat input, branded with `at`'s kind.
395
+ *
396
+ * @typeParam A - The `at` input's type
397
+ * @param input - The marker configuration ({@link PlanCellMarkerInput})
398
+ * @returns An East expression of {@link PlanCellMarkerType}, branded with its kind
399
+ */
400
+ export declare function createCellMarker<A extends PlanInstantInput>(input: PlanCellMarkerInput<A>): PlanCellMarkerExpr<PlanKindOf<A>>;
401
+ /**
402
+ * Flat input for {@link Plan.chip} — one cards-row shift chip.
403
+ *
404
+ * @typeParam F - The `from` input's type — its axis kind brands the result
405
+ * @typeParam T - The `to` input's type
406
+ * @property key - Stable chip identity
407
+ * @property from - Chip start (inclusive)
408
+ * @property to - Chip end (exclusive)
409
+ * @property label - The chip text (`"80h"`, `"+64h"`)
410
+ * @property state - The lifecycle state (string shorthand or value)
411
+ * @property icon - Optional leading FA glyph
412
+ */
413
+ export interface PlanChipInput<F extends PlanInstantInput = PlanInstantInput, T extends PlanInstantInput = PlanInstantInput> {
414
+ /** Stable chip identity (drag refs). */
415
+ key: SubtypeExprOrValue<StringType>;
416
+ /** Chip start (inclusive) — see {@link PlanInstantLikeType}. */
417
+ from: F;
418
+ /** Chip end (exclusive). */
419
+ to: T;
420
+ /** The chip text (`"80h"`, `"+64h"`). */
421
+ label: SubtypeExprOrValue<StringType>;
422
+ /** The lifecycle state — confirmed tint · proposed dashed · removed strikethrough · estimated ghost. */
423
+ state: SubtypeExprOrValue<EventStateType> | EventStateLiteral;
424
+ /** Optional leading FA glyph (shift-type etc.). */
425
+ icon?: PlanIconInput;
426
+ }
427
+ /**
428
+ * Builds one cards chip from a flat input, branded with the kind `from` /
429
+ * `to` imply.
430
+ *
431
+ * @typeParam F - The `from` input's type
432
+ * @typeParam T - The `to` input's type
433
+ * @param input - The chip configuration ({@link PlanChipInput})
434
+ * @returns An East expression of {@link PlanChipType}, branded with its kind
435
+ */
436
+ export declare function createChip<F extends PlanInstantInput, T extends PlanInstantInput>(input: PlanChipInput<F, T>): PlanChipExpr<PlanKindOf<F | T>>;
437
+ /**
438
+ * Flat input for {@link Plan.mark} — one event-row instant mark.
439
+ *
440
+ * @typeParam A - The `at` input's type — its axis kind brands the result
441
+ * @property key - Stable mark identity
442
+ * @property at - The instant
443
+ * @property kind - `"milestone"` / `"exception"` / `Plan.markKind.decision(applied)`
444
+ * @property icon - Optional FA glyph swap (12px, kind-coloured)
445
+ * @property label - Optional caption (printed when there is room)
446
+ */
447
+ export interface PlanEventMarkInput<A extends PlanInstantInput = PlanInstantInput> {
448
+ /** Stable mark identity. */
449
+ key: SubtypeExprOrValue<StringType>;
450
+ /** The instant (see {@link PlanInstantLikeType}). */
451
+ at: A;
452
+ /** The mark kind — `"milestone"` / `"exception"` string shorthand or a `PlanEventMarkKindType` value (see `Plan.markKind`). */
453
+ kind: SubtypeExprOrValue<PlanEventMarkKindType> | "milestone" | "exception";
454
+ /** Optional FA glyph swap (12px, still kind-coloured). */
455
+ icon?: PlanIconInput;
456
+ /** Optional caption (printed when there is room). */
457
+ label?: SubtypeExprOrValue<StringType>;
458
+ }
459
+ /**
460
+ * Builds one event mark from a flat input, branded with `at`'s kind.
461
+ *
462
+ * @typeParam A - The `at` input's type
463
+ * @param input - The mark configuration ({@link PlanEventMarkInput})
464
+ * @returns An East expression of {@link PlanEventMarkType}, branded with its kind
465
+ */
466
+ export declare function createEventMark<A extends PlanInstantInput>(input: PlanEventMarkInput<A>): PlanEventMarkExpr<PlanKindOf<A>>;
467
+ /** The `Plan.markKind` builders — non-null mark kinds. */
468
+ export declare const markKind: {
469
+ /**
470
+ * A decision diamond mark — ◇ pending / ◆ applied.
471
+ *
472
+ * @param applied - `true` fills the diamond
473
+ * @returns A `PlanEventMarkKindType` expression with the `decision` arm
474
+ */
475
+ readonly decision: (applied: SubtypeExprOrValue<BooleanType> | boolean) => ExprType<PlanEventMarkKindType>;
476
+ };
477
+ /**
478
+ * Options for {@link Plan.heatCells} — the heat scale + warn threshold.
479
+ *
480
+ * @property min - Scale minimum (default: observed)
481
+ * @property max - Scale maximum (default: observed)
482
+ * @property warnAt - Warn-ring threshold (≥ it rings the cell)
483
+ */
484
+ export interface PlanHeatCellsOptions {
485
+ /** Scale minimum (default: the observed extent). */
486
+ min?: SubtypeExprOrValue<FloatType> | number;
487
+ /** Scale maximum (default: the observed extent). */
488
+ max?: SubtypeExprOrValue<FloatType> | number;
489
+ /** Warn-ring threshold (≥ it rings the cell). */
490
+ warnAt?: SubtypeExprOrValue<FloatType> | number;
491
+ }
492
+ /**
493
+ * Wraps per-bucket heat cells into the `heat` arm of {@link PlanHeatCellsType}.
494
+ * Literal records whose `at` is a `Plan.at.*` value brand the result with
495
+ * that kind ({@link PlanCellsInput}); an East array is kind-erased.
496
+ *
497
+ * @typeParam K - The kind inferred from the literal records' `at`
498
+ * @param cells - The cells (`{ at, value, label }` structs; `value: none` ⇒ the no-data hatch)
499
+ * @param options - Scale + warn threshold ({@link PlanHeatCellsOptions})
500
+ * @returns A `PlanHeatCellsType` expression, branded with the cells' kind
501
+ */
502
+ export declare function createHeatCells<K extends PlanAxisKindLiteral = never>(cells: PlanCellsInput<PlanHeatCellType, K>, options?: PlanHeatCellsOptions): PlanHeatCellsExpr<K>;
503
+ /**
504
+ * Wraps per-bucket weight cells into the `weight` arm of
505
+ * {@link PlanHeatCellsType} (booked-vs-free bars; planned ⇒ pale). Literal
506
+ * records with `Plan.at.*` instants brand the result with their kind.
507
+ *
508
+ * @typeParam K - The kind inferred from the literal records' `at`
509
+ * @param cells - The cells (`{ at, fraction, planned }` structs)
510
+ * @returns A `PlanHeatCellsType` expression, branded with the cells' kind
511
+ */
512
+ export declare function createWeightCells<K extends PlanAxisKindLiteral = never>(cells: PlanCellsInput<PlanWeightCellType, K>): PlanHeatCellsExpr<K>;
513
+ /**
514
+ * Wraps per-bucket segment cells into the `segments` arm of
515
+ * {@link PlanHeatCellsType} (committed / pending / slack compositions).
516
+ * Literal records with `Plan.at.*` instants brand the result with their kind.
517
+ *
518
+ * @typeParam K - The kind inferred from the literal records' `at`
519
+ * @param cells - The cells (`{ at, segments }` structs — build segments with `Plan.segment`)
520
+ * @returns A `PlanHeatCellsType` expression, branded with the cells' kind
521
+ */
522
+ export declare function createSegmentCells<K extends PlanAxisKindLiteral = never>(cells: PlanCellsInput<PlanSegmentCellType, K>): PlanHeatCellsExpr<K>;
523
+ /**
524
+ * Flat input for {@link Plan.segment} — one weighted slice of a segment cell.
525
+ *
526
+ * @property fill - The status-leveraged fill (string shorthand or `MatrixFillType`)
527
+ * @property weight - The proportional weight
528
+ * @property label - Optional in-bar text (printed when wide enough)
529
+ */
530
+ export interface PlanSegmentInput {
531
+ /** The status-leveraged fill. */
532
+ fill: SubtypeExprOrValue<MatrixFillType> | MatrixFillLiteral;
533
+ /** The proportional weight (normalised with siblings). */
534
+ weight: SubtypeExprOrValue<FloatType> | number;
535
+ /** Optional in-bar text (printed when the segment is wide enough). */
536
+ label?: SubtypeExprOrValue<StringType>;
537
+ }
538
+ /**
539
+ * Builds one segment from a flat input (the Matrix segment vocabulary).
540
+ *
541
+ * @param input - The segment configuration ({@link PlanSegmentInput})
542
+ * @returns An East expression of {@link PlanSegmentType}
543
+ */
544
+ export declare function createSegment(input: PlanSegmentInput): ExprType<typeof PlanSegmentType>;
545
+ /**
546
+ * Flat input for {@link Plan.tableSeries} — one value series of a
547
+ * multi-series table row. Style is declared ONCE here, per position (never
548
+ * per cell — the wire-lean contract); the cells stay raw values.
549
+ *
550
+ * @typeParam K - The cells' axis kind (a `Plan.tableCells` result carries it)
551
+ * @property cells - The series' cells (a `Plan.tableCells` result / `PlanTableCellType` values)
552
+ * @property format - Numeral format override for this series (else the row's `format`)
553
+ * @property tone - Default tone for the series' values (`"muted"` de-emphasises a plan column)
554
+ * @property strong - Semibold emphasis for this series' values
555
+ * @property rollup - `true` ⇒ this series feeds declared parent aggregation (default: the first)
556
+ */
557
+ export interface PlanTableSeriesInput<K extends PlanAxisKindLiteral = never> {
558
+ /** The series' cells (a `Plan.tableCells` result / `PlanTableCellType` values). */
559
+ cells: PlanTableCellsInput<K>;
560
+ /** Numeral format override for THIS series — a `Format.*` spec (else the row's `format`). */
561
+ format?: SubtypeExprOrValue<TickFormatType>;
562
+ /** Default tone for the series' values; per-cell tones and the derived neg/em-dash win. */
563
+ tone?: SubtypeExprOrValue<PlanTableToneType> | PlanTableToneLiteral;
564
+ /** Semibold emphasis for this series' values. */
565
+ strong?: SubtypeExprOrValue<BooleanType> | boolean;
566
+ /** `true` ⇒ this series feeds declared parent aggregation (default: the first series). */
567
+ rollup?: SubtypeExprOrValue<BooleanType> | boolean;
568
+ }
569
+ /**
570
+ * Builds one table-row value series (see {@link Plan.table}'s `series`) —
571
+ * per-position style declared once, raw cells beneath it; the result carries
572
+ * the cells' axis kind.
573
+ *
574
+ * @typeParam K - The cells' axis kind
575
+ * @param input - The series configuration ({@link PlanTableSeriesInput})
576
+ * @returns An East expression of {@link PlanTableSeriesType}, branded with the cells' kind
577
+ */
578
+ export declare function createTableSeries<K extends PlanAxisKindLiteral = never>(input: PlanTableSeriesInput<K>): PlanTableSeriesExpr<K>;
579
+ /**
580
+ * The raw table-cell record — `{ at, value }`, its `at` any
581
+ * {@link PlanInstantLikeType} (wrapped to the axis arm by its static type).
582
+ */
583
+ export type PlanRawTableCellType = StructType<{
584
+ at: PlanInstantLikeType;
585
+ value: OptionType<FloatType>;
586
+ }>;
587
+ /**
588
+ * Builds per-bucket table cells from raw values. The RENDERER prints each
589
+ * value through the row's `format` (a `Format.*` spec — the shared
590
+ * `TickFormatType`), tones negatives `neg` and renders `none` as the muted
591
+ * em-dash; build `PlanTableCellType` values directly for explicit `text` /
592
+ * `tone` overrides.
593
+ *
594
+ * @remarks
595
+ * The `at` of each raw cell wraps to the axis arm by its type — a
596
+ * `DateTimeType` field to `time`, a numeric field to `number`, a string
597
+ * field to `ordinal`, a {@link PlanInstantType} field as is — so a
598
+ * `{ at: DateTimeType, value }` dataset keeps compiling unchanged.
599
+ *
600
+ * Literal records brand the result with the kind their `at` implies
601
+ * ({@link PlanKindOf}); an East array is kind-erased.
602
+ *
603
+ * @typeParam A - The literal records' `at` type
604
+ * @param cells - The raw cells (`{ at, value }` records; `value` an `Option<Float>`)
605
+ * @returns An `ArrayType(PlanTableCellType)` expression, branded with the cells' kind
606
+ * @throws {Error} If an East array's element `at` is not an instant-typed field
607
+ */
608
+ export declare function createTableCells<A extends PlanInstantInput = never>(cells: {
609
+ at: A;
610
+ value: SubtypeExprOrValue<OptionType<FloatType>>;
611
+ }[] | SubtypeExprOrValue<ArrayType<PlanRawTableCellType>>): PlanTableCellsExpr<PlanKindOf<A>>;
612
+ //# sourceMappingURL=builders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../../../src/collections/plan/builders.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;GAWG;AAEH,OAAO,EACH,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,kBAAkB,EAGvB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,SAAS,EACT,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EAIb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnF,OAAO,EAAE,KAAK,iBAAiB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAEH,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,eAAe,EACf,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EAGxB,eAAe,EACf,KAAK,kBAAkB,EACvB,oBAAoB,EACpB,KAAK,uBAAuB,EAE5B,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EAGnB,iBAAiB,EACjB,KAAK,oBAAoB,EAEzB,YAAY,EAMZ,YAAY,EAEZ,KAAK,aAAa,EACrB,MAAM,YAAY,CAAC;AAMpB;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,GAC9D,kBAAkB,CAAC,cAAc,CAAC,CAYpC;AAED,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAG/G;AAED;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;AAEvG,gEAAgE;AAChE,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAa7E;AAED,4EAA4E;AAC5E,wBAAgB,SAAS,IAAI,aAAa,CAEzC;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,CAqB5F;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,EAAE;IACX;;;;;OAKG;uBACO,kBAAkB,CAAC,YAAY,CAAC,KAAG,eAAe,CAAC,MAAM,CAAC;IAEpE;;;;;OAKG;yBACS,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,KAAG,eAAe,CAAC,QAAQ,CAAC;IAE9E;;;;;OAKG;0BACU,kBAAkB,CAAC,UAAU,CAAC,KAAG,eAAe,CAAC,SAAS,CAAC;CAElE,CAAC;AAMX;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAU7E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAYvF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,sBAAsB,GAAG,YAAY,CAAC,SAAS,CAAC,CAQ1F;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B,gFAAgF;IAChF,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjD,mCAAmC;IACnC,IAAI,EAAE,OAAO,cAAc,CAAC;IAC5B,qDAAqD;IACrD,MAAM,EAAE,OAAO,gBAAgB,CAAC;IAChC,sDAAsD;IACtD,OAAO,EAAE,OAAO,iBAAiB,CAAC;CACrC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE,eAGxB,CAAC;AAMF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IACtH,mDAAmD;IACnD,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,mGAAmG;IACnG,KAAK,EAAE,CAAC,CAAC;IACT,2BAA2B;IAC3B,GAAG,EAAE,CAAC,CAAC;IACP,sCAAsC;IACtC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC1C,yGAAyG;IACzG,GAAG,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACpC,6EAA6E;IAC7E,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC9D,6EAA6E;IAC7E,MAAM,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IAClE,kFAAkF;IAClF,KAAK,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IACjD,sEAAsE;IACtE,IAAI,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,EAC5E,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1B,WAAW,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAahC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC5E,gCAAgC;IAChC,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,oFAAoF;IACpF,EAAE,EAAE,CAAC,CAAC;IACN,4CAA4C;IAC5C,OAAO,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;CACtD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAM3H;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IACxE,wEAAwE;IACxE,EAAE,EAAE,CAAC,CAAC;IACN,oCAAoC;IACpC,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAK3G;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC/E,sDAAsD;IACtD,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,4DAA4D;IAC5D,EAAE,EAAE,CAAC,CAAC;IACN,sFAAsF;IACtF,IAAI,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,+FAA+F;IAC/F,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACvC,yGAAyG;IACzG,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,6EAA6E;IAC7E,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC9D,oEAAoE;IACpE,IAAI,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IAChE,2DAA2D;IAC3D,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACvC,8DAA8D;IAC9D,YAAY,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACxE,0BAA0B;IAC1B,OAAO,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IACnE,kEAAkE;IAClE,OAAO,CAAC,EAAE;QACN,yDAAyD;QACzD,UAAU,CAAC,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,uBAAuB,CAAC;QAChF,mDAAmD;QACnD,QAAQ,CAAC,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,uBAAuB,CAAC;KACjF,CAAC;IACF,iFAAiF;IACjF,SAAS,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;CAC5E;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAqBhI;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC1B,qEAAqE;IACrE,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,wEAAwE;IACxE,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,QAAQ,CAAC,YAAY,CAAC,CAKvE;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC1B,0BAA0B;IAC1B,IAAI,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACrC,kEAAkE;IAClE,OAAO,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACxC,+BAA+B;IAC/B,EAAE,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACnC,2EAA2E;IAC3E,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,0DAA0D;IAC1D,QAAQ,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IACjD,+CAA+C;IAC/C,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CACzC;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,QAAQ,CAAC,YAAY,CAAC,CASvE;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC9E,6EAA6E;IAC7E,EAAE,EAAE,CAAC,CAAC;IACN,oCAAoC;IACpC,IAAI,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,gDAAgD;IAChD,MAAM,CAAC,EAAE,kBAAkB,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IAClE,8BAA8B;IAC9B,OAAO,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC3C;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAO7H;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IACvH,wCAAwC;IACxC,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,gEAAgE;IAChE,IAAI,EAAE,CAAC,CAAC;IACR,4BAA4B;IAC5B,EAAE,EAAE,CAAC,CAAC;IACN,yCAAyC;IACzC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACtC,wGAAwG;IACxG,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC9D,mDAAmD;IACnD,IAAI,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,gBAAgB,EAAE,CAAC,SAAS,gBAAgB,EAC7E,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,YAAY,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CASjC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB;IAC7E,4BAA4B;IAC5B,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACpC,qDAAqD;IACrD,EAAE,EAAE,CAAC,CAAC;IACN,+HAA+H;IAC/H,IAAI,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,GAAG,WAAW,GAAG,WAAW,CAAC;IAC5E,0DAA0D;IAC1D,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,qDAAqD;IACrD,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,gBAAgB,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAQ1H;AAED,0DAA0D;AAC1D,eAAO,MAAM,QAAQ;IACjB;;;;;OAKG;iCACiB,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,KAAG,QAAQ,CAAC,qBAAqB,CAAC;CAEzF,CAAC;AAMX;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACjC,oDAAoD;IACpD,GAAG,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC7C,oDAAoD;IACpD,GAAG,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC7C,iDAAiD;IACjD,MAAM,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;CACnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EACjE,KAAK,EAAE,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAC1C,OAAO,CAAC,EAAE,oBAAoB,GAC/B,iBAAiB,CAAC,CAAC,CAAC,CAOtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EACnE,KAAK,EAAE,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC,GAC7C,iBAAiB,CAAC,CAAC,CAAC,CAEtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EACpE,KAAK,EAAE,cAAc,CAAC,mBAAmB,EAAE,CAAC,CAAC,GAC9C,iBAAiB,CAAC,CAAC,CAAC,CAEtB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC7B,iCAAiC;IACjC,IAAI,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,iBAAiB,CAAC;IAC7D,0DAA0D;IAC1D,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC/C,sEAAsE;IACtE,KAAK,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,QAAQ,CAAC,OAAO,eAAe,CAAC,CAMvF;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK;IACvE,mFAAmF;IACnF,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC9B,6FAA6F;IAC7F,MAAM,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAC5C,2FAA2F;IAC3F,IAAI,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,oBAAoB,CAAC;IACpE,iDAAiD;IACjD,MAAM,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;IACnD,0FAA0F;IAC1F,MAAM,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;CACtD;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,mBAAmB,GAAG,KAAK,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAQ/H;AAED;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC;IAAE,EAAE,EAAE,mBAAmB,CAAC;IAAC,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAA;CAAE,CAAC,CAAC;AAEzG;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,gBAAgB,GAAG,KAAK,EAC/D,KAAK,EACC;IAAE,EAAE,EAAE,CAAC,CAAC;IAAC,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;CAAE,EAAE,GAC7D,kBAAkB,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,GAC1D,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAuCnC"}