@elaraai/e3-ui 1.0.94 → 1.0.95

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 (303) hide show
  1. package/dist/src/allocation/adapters.d.ts +159 -0
  2. package/dist/src/allocation/adapters.d.ts.map +1 -0
  3. package/dist/src/allocation/adapters.js +241 -0
  4. package/dist/src/allocation/adapters.js.map +1 -0
  5. package/dist/src/allocation/functions.d.ts +664 -0
  6. package/dist/src/allocation/functions.d.ts.map +1 -0
  7. package/dist/src/allocation/functions.js +782 -0
  8. package/dist/src/allocation/functions.js.map +1 -0
  9. package/dist/src/allocation/index.d.ts +2985 -0
  10. package/dist/src/allocation/index.d.ts.map +1 -0
  11. package/dist/src/allocation/index.js +499 -0
  12. package/dist/src/allocation/index.js.map +1 -0
  13. package/dist/src/allocation/types.d.ts +832 -0
  14. package/dist/src/allocation/types.d.ts.map +1 -0
  15. package/dist/src/allocation/types.js +360 -0
  16. package/dist/src/allocation/types.js.map +1 -0
  17. package/dist/src/bind/func.d.ts +14 -0
  18. package/dist/src/bind/func.d.ts.map +1 -1
  19. package/dist/src/bind/func.js +22 -1
  20. package/dist/src/bind/func.js.map +1 -1
  21. package/dist/src/calendar/index.d.ts +510 -1639
  22. package/dist/src/calendar/index.d.ts.map +1 -1
  23. package/dist/src/calendar/index.js +56 -29
  24. package/dist/src/calendar/index.js.map +1 -1
  25. package/dist/src/flowchart/canvas.d.ts +9 -21
  26. package/dist/src/flowchart/canvas.d.ts.map +1 -1
  27. package/dist/src/flowchart/canvas.js +10 -22
  28. package/dist/src/flowchart/canvas.js.map +1 -1
  29. package/dist/src/flowchart/flowchart.d.ts +19 -13
  30. package/dist/src/flowchart/flowchart.d.ts.map +1 -1
  31. package/dist/src/flowchart/flowchart.js.map +1 -1
  32. package/dist/src/flowchart/index.d.ts +44 -21
  33. package/dist/src/flowchart/index.d.ts.map +1 -1
  34. package/dist/src/flowchart/index.js +43 -20
  35. package/dist/src/flowchart/index.js.map +1 -1
  36. package/dist/src/flowchart/library.d.ts +166 -81
  37. package/dist/src/flowchart/library.d.ts.map +1 -1
  38. package/dist/src/flowchart/library.js +232 -105
  39. package/dist/src/flowchart/library.js.map +1 -1
  40. package/dist/src/flowchart/over.d.ts +9 -16
  41. package/dist/src/flowchart/over.d.ts.map +1 -1
  42. package/dist/src/flowchart/over.js +9 -16
  43. package/dist/src/flowchart/over.js.map +1 -1
  44. package/dist/src/flowchart/payload.d.ts +710 -508
  45. package/dist/src/flowchart/payload.d.ts.map +1 -1
  46. package/dist/src/flowchart/payload.js +128 -74
  47. package/dist/src/flowchart/payload.js.map +1 -1
  48. package/dist/src/flowchart/window.d.ts +132 -347
  49. package/dist/src/flowchart/window.d.ts.map +1 -1
  50. package/dist/src/flowchart/window.js +48 -55
  51. package/dist/src/flowchart/window.js.map +1 -1
  52. package/dist/src/index.d.ts +11 -7
  53. package/dist/src/index.d.ts.map +1 -1
  54. package/dist/src/index.js +14 -6
  55. package/dist/src/index.js.map +1 -1
  56. package/dist/src/internal.d.ts +18 -7
  57. package/dist/src/internal.d.ts.map +1 -1
  58. package/dist/src/internal.js +28 -9
  59. package/dist/src/internal.js.map +1 -1
  60. package/dist/src/plan/event-rows.d.ts +26 -10
  61. package/dist/src/plan/event-rows.d.ts.map +1 -1
  62. package/dist/src/plan/event-rows.js +39 -13
  63. package/dist/src/plan/event-rows.js.map +1 -1
  64. package/dist/src/plan/ir.d.ts +244 -815
  65. package/dist/src/plan/ir.d.ts.map +1 -1
  66. package/dist/src/plan/ir.js +8 -6
  67. package/dist/src/plan/ir.js.map +1 -1
  68. package/dist/src/plan/library.d.ts +3 -0
  69. package/dist/src/plan/library.d.ts.map +1 -1
  70. package/dist/src/plan/library.js +1 -1
  71. package/dist/src/plan/library.js.map +1 -1
  72. package/dist/src/plan/ordered-source.d.ts +1 -0
  73. package/dist/src/plan/ordered-source.d.ts.map +1 -1
  74. package/dist/src/plan/plan.d.ts +559 -1667
  75. package/dist/src/plan/plan.d.ts.map +1 -1
  76. package/dist/src/plan/plan.js +123 -45
  77. package/dist/src/plan/plan.js.map +1 -1
  78. package/dist/src/plan/root.d.ts +16 -20
  79. package/dist/src/plan/root.d.ts.map +1 -1
  80. package/dist/src/plan/root.js +23 -33
  81. package/dist/src/plan/root.js.map +1 -1
  82. package/dist/src/roster/coverage.d.ts +17 -231
  83. package/dist/src/roster/coverage.d.ts.map +1 -1
  84. package/dist/src/roster/coverage.js +94 -90
  85. package/dist/src/roster/coverage.js.map +1 -1
  86. package/dist/src/roster/fit.d.ts +59 -0
  87. package/dist/src/roster/fit.d.ts.map +1 -0
  88. package/dist/src/roster/fit.js +155 -0
  89. package/dist/src/roster/fit.js.map +1 -0
  90. package/dist/src/roster/index.d.ts +2862 -3662
  91. package/dist/src/roster/index.d.ts.map +1 -1
  92. package/dist/src/roster/index.js +383 -81
  93. package/dist/src/roster/index.js.map +1 -1
  94. package/dist/src/roster/library.d.ts +37 -92
  95. package/dist/src/roster/library.d.ts.map +1 -1
  96. package/dist/src/roster/library.js +25 -64
  97. package/dist/src/roster/library.js.map +1 -1
  98. package/dist/src/roster/lists.d.ts +195 -0
  99. package/dist/src/roster/lists.d.ts.map +1 -0
  100. package/dist/src/roster/lists.js +233 -0
  101. package/dist/src/roster/lists.js.map +1 -0
  102. package/dist/src/roster/rules.d.ts +17 -260
  103. package/dist/src/roster/rules.d.ts.map +1 -1
  104. package/dist/src/roster/rules.js +135 -132
  105. package/dist/src/roster/rules.js.map +1 -1
  106. package/dist/src/roster/targets.d.ts +115 -0
  107. package/dist/src/roster/targets.d.ts.map +1 -0
  108. package/dist/src/roster/targets.js +213 -0
  109. package/dist/src/roster/targets.js.map +1 -0
  110. package/dist/src/roster/times.d.ts +251 -0
  111. package/dist/src/roster/times.d.ts.map +1 -0
  112. package/dist/src/roster/times.js +174 -0
  113. package/dist/src/roster/times.js.map +1 -0
  114. package/dist/src/roster/types.d.ts +828 -183
  115. package/dist/src/roster/types.d.ts.map +1 -1
  116. package/dist/src/roster/types.js +224 -97
  117. package/dist/src/roster/types.js.map +1 -1
  118. package/dist/src/schedule/accessor.d.ts +28 -0
  119. package/dist/src/schedule/accessor.d.ts.map +1 -0
  120. package/dist/src/schedule/accessor.js +39 -0
  121. package/dist/src/schedule/accessor.js.map +1 -0
  122. package/dist/src/schedule/events.d.ts +170 -42
  123. package/dist/src/schedule/events.d.ts.map +1 -1
  124. package/dist/src/schedule/events.js +431 -171
  125. package/dist/src/schedule/events.js.map +1 -1
  126. package/dist/src/schedule/index.d.ts +41 -4
  127. package/dist/src/schedule/index.d.ts.map +1 -1
  128. package/dist/src/schedule/index.js +35 -3
  129. package/dist/src/schedule/index.js.map +1 -1
  130. package/dist/src/schedule/library.d.ts +13 -3
  131. package/dist/src/schedule/library.d.ts.map +1 -1
  132. package/dist/src/schedule/library.js +11 -4
  133. package/dist/src/schedule/library.js.map +1 -1
  134. package/dist/src/schedule/periods.d.ts +115 -0
  135. package/dist/src/schedule/periods.d.ts.map +1 -0
  136. package/dist/src/schedule/periods.js +215 -0
  137. package/dist/src/schedule/periods.js.map +1 -0
  138. package/dist/src/schedule/record-window.d.ts +25 -3
  139. package/dist/src/schedule/record-window.d.ts.map +1 -1
  140. package/dist/src/schedule/record-window.js +31 -18
  141. package/dist/src/schedule/record-window.js.map +1 -1
  142. package/dist/src/schedule/resources.d.ts +82 -4
  143. package/dist/src/schedule/resources.d.ts.map +1 -1
  144. package/dist/src/schedule/resources.js +44 -14
  145. package/dist/src/schedule/resources.js.map +1 -1
  146. package/dist/src/schedule/session.d.ts +69 -0
  147. package/dist/src/schedule/session.d.ts.map +1 -0
  148. package/dist/src/schedule/session.js +121 -0
  149. package/dist/src/schedule/session.js.map +1 -0
  150. package/dist/src/schedule/templates.d.ts +14 -2
  151. package/dist/src/schedule/templates.d.ts.map +1 -1
  152. package/dist/src/schedule/templates.js +5 -3
  153. package/dist/src/schedule/templates.js.map +1 -1
  154. package/dist/src/schedule/types.d.ts +1671 -37
  155. package/dist/src/schedule/types.d.ts.map +1 -1
  156. package/dist/src/schedule/types.js +196 -5
  157. package/dist/src/schedule/types.js.map +1 -1
  158. package/dist/src/schedule/window.d.ts +14 -0
  159. package/dist/src/schedule/window.d.ts.map +1 -1
  160. package/dist/src/schedule/window.js +14 -4
  161. package/dist/src/schedule/window.js.map +1 -1
  162. package/dist/src/schedule/words.d.ts +22 -0
  163. package/dist/src/schedule/words.d.ts.map +1 -0
  164. package/dist/src/schedule/words.js +25 -0
  165. package/dist/src/schedule/words.js.map +1 -0
  166. package/dist/src/sheet/index.d.ts +61 -27
  167. package/dist/src/sheet/index.d.ts.map +1 -1
  168. package/dist/src/sheet/index.js +59 -25
  169. package/dist/src/sheet/index.js.map +1 -1
  170. package/dist/src/sheet/library.d.ts +21 -3
  171. package/dist/src/sheet/library.d.ts.map +1 -1
  172. package/dist/src/sheet/library.js +23 -6
  173. package/dist/src/sheet/library.js.map +1 -1
  174. package/dist/src/sheet/registers.d.ts +100 -85
  175. package/dist/src/sheet/registers.d.ts.map +1 -1
  176. package/dist/src/sheet/registers.js +100 -85
  177. package/dist/src/sheet/registers.js.map +1 -1
  178. package/dist/src/sheet/root.d.ts +8 -12
  179. package/dist/src/sheet/root.d.ts.map +1 -1
  180. package/dist/src/sheet/root.js +6 -40
  181. package/dist/src/sheet/root.js.map +1 -1
  182. package/dist/src/sheet/sheet.d.ts +598 -2349
  183. package/dist/src/sheet/sheet.d.ts.map +1 -1
  184. package/dist/src/sheet/sheet.js +124 -37
  185. package/dist/src/sheet/sheet.js.map +1 -1
  186. package/dist/src/sheet/sub-rows.d.ts +74 -28
  187. package/dist/src/sheet/sub-rows.d.ts.map +1 -1
  188. package/dist/src/sheet/sub-rows.js +74 -28
  189. package/dist/src/sheet/sub-rows.js.map +1 -1
  190. package/dist/src/sheet/templates.d.ts +98 -34
  191. package/dist/src/sheet/templates.d.ts.map +1 -1
  192. package/dist/src/sheet/templates.js +102 -58
  193. package/dist/src/sheet/templates.js.map +1 -1
  194. package/dist/src/sheet/types.d.ts +289 -1359
  195. package/dist/src/sheet/types.d.ts.map +1 -1
  196. package/dist/src/sheet/types.js +20 -26
  197. package/dist/src/sheet/types.js.map +1 -1
  198. package/dist/src/sheet/views.d.ts +10 -11
  199. package/dist/src/sheet/views.d.ts.map +1 -1
  200. package/dist/src/sheet/views.js +15 -20
  201. package/dist/src/sheet/views.js.map +1 -1
  202. package/dist/src/{roster/visibility.d.ts → utils/key-visibility.d.ts} +42 -7
  203. package/dist/src/utils/key-visibility.d.ts.map +1 -0
  204. package/dist/src/utils/key-visibility.js +36 -0
  205. package/dist/src/utils/key-visibility.js.map +1 -0
  206. package/dist/src/utils/ordered-source.d.ts +1 -0
  207. package/dist/src/utils/ordered-source.d.ts.map +1 -1
  208. package/dist/src/utils/ordered-source.js +8 -3
  209. package/dist/src/utils/ordered-source.js.map +1 -1
  210. package/dist/src/utils/record-sources.d.ts +107 -0
  211. package/dist/src/utils/record-sources.d.ts.map +1 -0
  212. package/dist/src/utils/record-sources.js +132 -0
  213. package/dist/src/utils/record-sources.js.map +1 -0
  214. package/dist/test/allocation/allocation.examples.d.ts +2902 -0
  215. package/dist/test/allocation/allocation.examples.d.ts.map +1 -0
  216. package/dist/test/allocation/allocation.examples.js +643 -0
  217. package/dist/test/allocation/allocation.examples.js.map +1 -0
  218. package/dist/test/allocation/fit.examples.d.ts +546 -0
  219. package/dist/test/allocation/fit.examples.d.ts.map +1 -0
  220. package/dist/test/allocation/fit.examples.js +171 -0
  221. package/dist/test/allocation/fit.examples.js.map +1 -0
  222. package/dist/test/allocation/kiln-yard.d.ts +181 -0
  223. package/dist/test/allocation/kiln-yard.d.ts.map +1 -0
  224. package/dist/test/allocation/kiln-yard.js +228 -0
  225. package/dist/test/allocation/kiln-yard.js.map +1 -0
  226. package/dist/test/bind/data/data.examples.d.ts +651 -1
  227. package/dist/test/bind/data/data.examples.d.ts.map +1 -1
  228. package/dist/test/bind/data/data.examples.js +140 -2
  229. package/dist/test/bind/data/data.examples.js.map +1 -1
  230. package/dist/test/bind/func/func.examples.d.ts +10 -1
  231. package/dist/test/bind/func/func.examples.d.ts.map +1 -1
  232. package/dist/test/bind/func/func.examples.js +8 -1
  233. package/dist/test/bind/func/func.examples.js.map +1 -1
  234. package/dist/test/bind/record/record.examples.d.ts +633 -1
  235. package/dist/test/bind/record/record.examples.d.ts.map +1 -1
  236. package/dist/test/bind/record/record.examples.js +26 -2
  237. package/dist/test/bind/record/record.examples.js.map +1 -1
  238. package/dist/test/calendar/calendar-records.examples.d.ts.map +1 -1
  239. package/dist/test/calendar/calendar-records.examples.js +18 -14
  240. package/dist/test/calendar/calendar-records.examples.js.map +1 -1
  241. package/dist/test/calendar/calendar.examples.d.ts +521 -16
  242. package/dist/test/calendar/calendar.examples.d.ts.map +1 -1
  243. package/dist/test/calendar/calendar.examples.js +182 -135
  244. package/dist/test/calendar/calendar.examples.js.map +1 -1
  245. package/dist/test/examples-package.d.ts +75 -0
  246. package/dist/test/examples-package.d.ts.map +1 -0
  247. package/dist/test/examples-package.js +263 -0
  248. package/dist/test/examples-package.js.map +1 -0
  249. package/dist/test/flowchart/flowchart.examples.d.ts +211 -19
  250. package/dist/test/flowchart/flowchart.examples.d.ts.map +1 -1
  251. package/dist/test/flowchart/flowchart.examples.js +102 -75
  252. package/dist/test/flowchart/flowchart.examples.js.map +1 -1
  253. package/dist/test/plan/plan-events.examples.d.ts +1439 -209
  254. package/dist/test/plan/plan-events.examples.d.ts.map +1 -1
  255. package/dist/test/plan/plan-events.examples.js +199 -59
  256. package/dist/test/plan/plan-events.examples.js.map +1 -1
  257. package/dist/test/plan/plan-records.examples.d.ts +420 -0
  258. package/dist/test/plan/plan-records.examples.d.ts.map +1 -1
  259. package/dist/test/plan/plan-records.examples.js +70 -19
  260. package/dist/test/plan/plan-records.examples.js.map +1 -1
  261. package/dist/test/plan/plan-windows.examples.d.ts +636 -55
  262. package/dist/test/plan/plan-windows.examples.d.ts.map +1 -1
  263. package/dist/test/plan/plan-windows.examples.js +69 -33
  264. package/dist/test/plan/plan-windows.examples.js.map +1 -1
  265. package/dist/test/plan/plan.examples.d.ts +153 -31
  266. package/dist/test/plan/plan.examples.d.ts.map +1 -1
  267. package/dist/test/plan/plan.examples.js +178 -101
  268. package/dist/test/plan/plan.examples.js.map +1 -1
  269. package/dist/test/roster/domain.examples.d.ts +467 -250
  270. package/dist/test/roster/domain.examples.d.ts.map +1 -1
  271. package/dist/test/roster/domain.examples.js +92 -29
  272. package/dist/test/roster/domain.examples.js.map +1 -1
  273. package/dist/test/roster/roster-records.examples.d.ts +430 -586
  274. package/dist/test/roster/roster-records.examples.d.ts.map +1 -1
  275. package/dist/test/roster/roster-records.examples.js +102 -43
  276. package/dist/test/roster/roster-records.examples.js.map +1 -1
  277. package/dist/test/roster/roster.examples.d.ts +2319 -606
  278. package/dist/test/roster/roster.examples.d.ts.map +1 -1
  279. package/dist/test/roster/roster.examples.js +456 -148
  280. package/dist/test/roster/roster.examples.js.map +1 -1
  281. package/dist/test/roster/warehouse.d.ts +172 -63
  282. package/dist/test/roster/warehouse.d.ts.map +1 -1
  283. package/dist/test/roster/warehouse.js +172 -39
  284. package/dist/test/roster/warehouse.js.map +1 -1
  285. package/dist/test/schedule/schedule.examples.d.ts +3499 -0
  286. package/dist/test/schedule/schedule.examples.d.ts.map +1 -0
  287. package/dist/test/schedule/schedule.examples.js +192 -0
  288. package/dist/test/schedule/schedule.examples.js.map +1 -0
  289. package/dist/test/sheet/sheet-records.examples.d.ts.map +1 -1
  290. package/dist/test/sheet/sheet-records.examples.js +22 -18
  291. package/dist/test/sheet/sheet-records.examples.js.map +1 -1
  292. package/dist/test/sheet/sheet.examples.d.ts +715 -26
  293. package/dist/test/sheet/sheet.examples.d.ts.map +1 -1
  294. package/dist/test/sheet/sheet.examples.js +204 -130
  295. package/dist/test/sheet/sheet.examples.js.map +1 -1
  296. package/package.json +17 -10
  297. package/dist/src/roster/people.d.ts +0 -50
  298. package/dist/src/roster/people.d.ts.map +0 -1
  299. package/dist/src/roster/people.js +0 -32
  300. package/dist/src/roster/people.js.map +0 -1
  301. package/dist/src/roster/visibility.d.ts.map +0 -1
  302. package/dist/src/roster/visibility.js +0 -25
  303. package/dist/src/roster/visibility.js.map +0 -1
@@ -3,20 +3,20 @@
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
5
  /** @jsxImportSource @elaraai/e3-ui */
6
- import { DateTimeType, DictType, IntegerType, OptionType, StringType, StructType, variant } from "@elaraai/east";
6
+ import { DateTimeType, DictType, IntegerType, OptionType, StringType, variant } from "@elaraai/east";
7
7
  /** How many presses the works runs: a small authored constant, the presses themselves generated when the dataflow runs. */
8
8
  export declare const planWindowPressCount: import("@elaraai/e3").DatasetDef<IntegerType, [variant<"field", "inputs">, variant<"field", "plan_window_press_count">]>;
9
9
  /**
10
10
  * The presses, generated from their count, by key: each named by its number,
11
11
  * in one of eight halls, printing 6,000 to 15,000 sheets an hour.
12
12
  */
13
- export declare const generateWindowPresses: import("@elaraai/east").CallableFunctionExpr<[IntegerType], DictType<StringType, StructType<{
13
+ export declare const generateWindowPresses: import("@elaraai/east").CallableFunctionExpr<[IntegerType], DictType<StringType, import("@elaraai/east").StructType<{
14
14
  readonly name: StringType;
15
15
  readonly hall: StringType;
16
16
  readonly sheets_per_hour: import("@elaraai/east").FloatType;
17
17
  }>>>;
18
18
  /** The task that generates the presses. */
19
- export declare const planWindowPresses: import("@elaraai/e3").TaskDef<DictType<StringType, StructType<{
19
+ export declare const planWindowPresses: import("@elaraai/e3").TaskDef<DictType<StringType, import("@elaraai/east").StructType<{
20
20
  readonly name: StringType;
21
21
  readonly hall: StringType;
22
22
  readonly sheets_per_hour: import("@elaraai/east").FloatType;
@@ -26,7 +26,7 @@ export declare const planWindowPresses: import("@elaraai/e3").TaskDef<DictType<S
26
26
  * the next day, a run over three days, jobs on presses in each window of 200,
27
27
  * jobs in the weeks after the first two, and four waiting in the backlog.
28
28
  */
29
- export declare const planWindowJobs: import("@elaraai/e3").RecordDef<DictType<StringType, StructType<{
29
+ export declare const planWindowJobs: import("@elaraai/e3").RecordDef<DictType<StringType, import("@elaraai/east").StructType<{
30
30
  readonly title: StringType;
31
31
  readonly start: OptionType<DateTimeType>;
32
32
  readonly end: OptionType<DateTimeType>;
@@ -53,7 +53,7 @@ export declare const planWindowJobs: import("@elaraai/e3").RecordDef<DictType<St
53
53
  readonly due: OptionType<DateTimeType>;
54
54
  }>>, [variant<"field", "records">, variant<"field", "plan_window_jobs">]>;
55
55
  /** The jobs' patch door: every Save commits through it. */
56
- export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"patch", DictType<StringType, StructType<{
56
+ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"patch", DictType<StringType, import("@elaraai/east").StructType<{
57
57
  readonly title: StringType;
58
58
  readonly start: OptionType<DateTimeType>;
59
59
  readonly end: OptionType<DateTimeType>;
@@ -80,8 +80,8 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
80
80
  readonly due: OptionType<DateTimeType>;
81
81
  }>>, [import("@elaraai/east").VariantType<{
82
82
  unchanged: import("@elaraai/east").NullType;
83
- replace: StructType<{
84
- before: DictType<StringType, StructType<{
83
+ replace: import("@elaraai/east").StructType<{
84
+ before: DictType<StringType, import("@elaraai/east").StructType<{
85
85
  readonly title: StringType;
86
86
  readonly start: OptionType<DateTimeType>;
87
87
  readonly end: OptionType<DateTimeType>;
@@ -107,7 +107,7 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
107
107
  }>;
108
108
  readonly due: OptionType<DateTimeType>;
109
109
  }>>;
110
- after: DictType<StringType, StructType<{
110
+ after: DictType<StringType, import("@elaraai/east").StructType<{
111
111
  readonly title: StringType;
112
112
  readonly start: OptionType<DateTimeType>;
113
113
  readonly end: OptionType<DateTimeType>;
@@ -135,7 +135,7 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
135
135
  }>>;
136
136
  }>;
137
137
  patch: DictType<StringType, import("@elaraai/east").VariantType<{
138
- delete: StructType<{
138
+ delete: import("@elaraai/east").StructType<{
139
139
  readonly title: StringType;
140
140
  readonly start: OptionType<DateTimeType>;
141
141
  readonly end: OptionType<DateTimeType>;
@@ -161,7 +161,7 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
161
161
  }>;
162
162
  readonly due: OptionType<DateTimeType>;
163
163
  }>;
164
- insert: StructType<{
164
+ insert: import("@elaraai/east").StructType<{
165
165
  readonly title: StringType;
166
166
  readonly start: OptionType<DateTimeType>;
167
167
  readonly end: OptionType<DateTimeType>;
@@ -189,8 +189,8 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
189
189
  }>;
190
190
  update: import("@elaraai/east").VariantType<{
191
191
  unchanged: import("@elaraai/east").NullType;
192
- replace: StructType<{
193
- before: StructType<{
192
+ replace: import("@elaraai/east").StructType<{
193
+ before: import("@elaraai/east").StructType<{
194
194
  readonly title: StringType;
195
195
  readonly start: OptionType<DateTimeType>;
196
196
  readonly end: OptionType<DateTimeType>;
@@ -216,7 +216,7 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
216
216
  }>;
217
217
  readonly due: OptionType<DateTimeType>;
218
218
  }>;
219
- after: StructType<{
219
+ after: import("@elaraai/east").StructType<{
220
220
  readonly title: StringType;
221
221
  readonly start: OptionType<DateTimeType>;
222
222
  readonly end: OptionType<DateTimeType>;
@@ -243,31 +243,31 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
243
243
  readonly due: OptionType<DateTimeType>;
244
244
  }>;
245
245
  }>;
246
- patch: StructType<{
246
+ patch: import("@elaraai/east").StructType<{
247
247
  readonly title: import("@elaraai/east").VariantType<{
248
248
  unchanged: import("@elaraai/east").NullType;
249
- replace: StructType<{
249
+ replace: import("@elaraai/east").StructType<{
250
250
  before: StringType;
251
251
  after: StringType;
252
252
  }>;
253
253
  }>;
254
254
  readonly start: import("@elaraai/east").VariantType<{
255
255
  unchanged: import("@elaraai/east").NullType;
256
- replace: StructType<{
256
+ replace: import("@elaraai/east").StructType<{
257
257
  before: OptionType<DateTimeType>;
258
258
  after: OptionType<DateTimeType>;
259
259
  }>;
260
260
  patch: import("@elaraai/east").VariantType<{
261
261
  none: import("@elaraai/east").VariantType<{
262
262
  unchanged: import("@elaraai/east").NullType;
263
- replace: StructType<{
263
+ replace: import("@elaraai/east").StructType<{
264
264
  before: import("@elaraai/east").NullType;
265
265
  after: import("@elaraai/east").NullType;
266
266
  }>;
267
267
  }>;
268
268
  some: import("@elaraai/east").VariantType<{
269
269
  unchanged: import("@elaraai/east").NullType;
270
- replace: StructType<{
270
+ replace: import("@elaraai/east").StructType<{
271
271
  before: DateTimeType;
272
272
  after: DateTimeType;
273
273
  }>;
@@ -276,21 +276,21 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
276
276
  }>;
277
277
  readonly end: import("@elaraai/east").VariantType<{
278
278
  unchanged: import("@elaraai/east").NullType;
279
- replace: StructType<{
279
+ replace: import("@elaraai/east").StructType<{
280
280
  before: OptionType<DateTimeType>;
281
281
  after: OptionType<DateTimeType>;
282
282
  }>;
283
283
  patch: import("@elaraai/east").VariantType<{
284
284
  none: import("@elaraai/east").VariantType<{
285
285
  unchanged: import("@elaraai/east").NullType;
286
- replace: StructType<{
286
+ replace: import("@elaraai/east").StructType<{
287
287
  before: import("@elaraai/east").NullType;
288
288
  after: import("@elaraai/east").NullType;
289
289
  }>;
290
290
  }>;
291
291
  some: import("@elaraai/east").VariantType<{
292
292
  unchanged: import("@elaraai/east").NullType;
293
- replace: StructType<{
293
+ replace: import("@elaraai/east").StructType<{
294
294
  before: DateTimeType;
295
295
  after: DateTimeType;
296
296
  }>;
@@ -299,21 +299,21 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
299
299
  }>;
300
300
  readonly press: import("@elaraai/east").VariantType<{
301
301
  unchanged: import("@elaraai/east").NullType;
302
- replace: StructType<{
302
+ replace: import("@elaraai/east").StructType<{
303
303
  before: OptionType<StringType>;
304
304
  after: OptionType<StringType>;
305
305
  }>;
306
306
  patch: import("@elaraai/east").VariantType<{
307
307
  none: import("@elaraai/east").VariantType<{
308
308
  unchanged: import("@elaraai/east").NullType;
309
- replace: StructType<{
309
+ replace: import("@elaraai/east").StructType<{
310
310
  before: import("@elaraai/east").NullType;
311
311
  after: import("@elaraai/east").NullType;
312
312
  }>;
313
313
  }>;
314
314
  some: import("@elaraai/east").VariantType<{
315
315
  unchanged: import("@elaraai/east").NullType;
316
- replace: StructType<{
316
+ replace: import("@elaraai/east").StructType<{
317
317
  before: StringType;
318
318
  after: StringType;
319
319
  }>;
@@ -322,7 +322,7 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
322
322
  }>;
323
323
  readonly state: import("@elaraai/east").VariantType<{
324
324
  unchanged: import("@elaraai/east").NullType;
325
- replace: StructType<{
325
+ replace: import("@elaraai/east").StructType<{
326
326
  before: import("@elaraai/east").VariantType<{
327
327
  readonly estimated: import("@elaraai/east").NullType;
328
328
  readonly proposed: import("@elaraai/east").VariantType<{
@@ -351,14 +351,14 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
351
351
  patch: import("@elaraai/east").VariantType<{
352
352
  readonly estimated: import("@elaraai/east").VariantType<{
353
353
  unchanged: import("@elaraai/east").NullType;
354
- replace: StructType<{
354
+ replace: import("@elaraai/east").StructType<{
355
355
  before: import("@elaraai/east").NullType;
356
356
  after: import("@elaraai/east").NullType;
357
357
  }>;
358
358
  }>;
359
359
  readonly proposed: import("@elaraai/east").VariantType<{
360
360
  unchanged: import("@elaraai/east").NullType;
361
- replace: StructType<{
361
+ replace: import("@elaraai/east").StructType<{
362
362
  before: import("@elaraai/east").VariantType<{
363
363
  readonly added: import("@elaraai/east").NullType;
364
364
  readonly recommended: import("@elaraai/east").NullType;
@@ -373,21 +373,21 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
373
373
  patch: import("@elaraai/east").VariantType<{
374
374
  readonly added: import("@elaraai/east").VariantType<{
375
375
  unchanged: import("@elaraai/east").NullType;
376
- replace: StructType<{
376
+ replace: import("@elaraai/east").StructType<{
377
377
  before: import("@elaraai/east").NullType;
378
378
  after: import("@elaraai/east").NullType;
379
379
  }>;
380
380
  }>;
381
381
  readonly recommended: import("@elaraai/east").VariantType<{
382
382
  unchanged: import("@elaraai/east").NullType;
383
- replace: StructType<{
383
+ replace: import("@elaraai/east").StructType<{
384
384
  before: import("@elaraai/east").NullType;
385
385
  after: import("@elaraai/east").NullType;
386
386
  }>;
387
387
  }>;
388
388
  readonly removed: import("@elaraai/east").VariantType<{
389
389
  unchanged: import("@elaraai/east").NullType;
390
- replace: StructType<{
390
+ replace: import("@elaraai/east").StructType<{
391
391
  before: import("@elaraai/east").NullType;
392
392
  after: import("@elaraai/east").NullType;
393
393
  }>;
@@ -396,28 +396,28 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
396
396
  }>;
397
397
  readonly confirmed: import("@elaraai/east").VariantType<{
398
398
  unchanged: import("@elaraai/east").NullType;
399
- replace: StructType<{
399
+ replace: import("@elaraai/east").StructType<{
400
400
  before: import("@elaraai/east").NullType;
401
401
  after: import("@elaraai/east").NullType;
402
402
  }>;
403
403
  }>;
404
404
  readonly "in-progress": import("@elaraai/east").VariantType<{
405
405
  unchanged: import("@elaraai/east").NullType;
406
- replace: StructType<{
406
+ replace: import("@elaraai/east").StructType<{
407
407
  before: import("@elaraai/east").NullType;
408
408
  after: import("@elaraai/east").NullType;
409
409
  }>;
410
410
  }>;
411
411
  readonly actual: import("@elaraai/east").VariantType<{
412
412
  unchanged: import("@elaraai/east").NullType;
413
- replace: StructType<{
413
+ replace: import("@elaraai/east").StructType<{
414
414
  before: import("@elaraai/east").NullType;
415
415
  after: import("@elaraai/east").NullType;
416
416
  }>;
417
417
  }>;
418
418
  readonly rejected: import("@elaraai/east").VariantType<{
419
419
  unchanged: import("@elaraai/east").NullType;
420
- replace: StructType<{
420
+ replace: import("@elaraai/east").StructType<{
421
421
  before: import("@elaraai/east").NullType;
422
422
  after: import("@elaraai/east").NullType;
423
423
  }>;
@@ -426,21 +426,21 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
426
426
  }>;
427
427
  readonly sheets: import("@elaraai/east").VariantType<{
428
428
  unchanged: import("@elaraai/east").NullType;
429
- replace: StructType<{
429
+ replace: import("@elaraai/east").StructType<{
430
430
  before: import("@elaraai/east").FloatType;
431
431
  after: import("@elaraai/east").FloatType;
432
432
  }>;
433
433
  }>;
434
434
  readonly customer: import("@elaraai/east").VariantType<{
435
435
  unchanged: import("@elaraai/east").NullType;
436
- replace: StructType<{
436
+ replace: import("@elaraai/east").StructType<{
437
437
  before: StringType;
438
438
  after: StringType;
439
439
  }>;
440
440
  }>;
441
441
  readonly stock: import("@elaraai/east").VariantType<{
442
442
  unchanged: import("@elaraai/east").NullType;
443
- replace: StructType<{
443
+ replace: import("@elaraai/east").StructType<{
444
444
  before: import("@elaraai/east").VariantType<{
445
445
  readonly coated: import("@elaraai/east").NullType;
446
446
  readonly uncoated: import("@elaraai/east").NullType;
@@ -455,21 +455,21 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
455
455
  patch: import("@elaraai/east").VariantType<{
456
456
  readonly coated: import("@elaraai/east").VariantType<{
457
457
  unchanged: import("@elaraai/east").NullType;
458
- replace: StructType<{
458
+ replace: import("@elaraai/east").StructType<{
459
459
  before: import("@elaraai/east").NullType;
460
460
  after: import("@elaraai/east").NullType;
461
461
  }>;
462
462
  }>;
463
463
  readonly uncoated: import("@elaraai/east").VariantType<{
464
464
  unchanged: import("@elaraai/east").NullType;
465
- replace: StructType<{
465
+ replace: import("@elaraai/east").StructType<{
466
466
  before: import("@elaraai/east").NullType;
467
467
  after: import("@elaraai/east").NullType;
468
468
  }>;
469
469
  }>;
470
470
  readonly board: import("@elaraai/east").VariantType<{
471
471
  unchanged: import("@elaraai/east").NullType;
472
- replace: StructType<{
472
+ replace: import("@elaraai/east").StructType<{
473
473
  before: import("@elaraai/east").NullType;
474
474
  after: import("@elaraai/east").NullType;
475
475
  }>;
@@ -478,21 +478,21 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
478
478
  }>;
479
479
  readonly due: import("@elaraai/east").VariantType<{
480
480
  unchanged: import("@elaraai/east").NullType;
481
- replace: StructType<{
481
+ replace: import("@elaraai/east").StructType<{
482
482
  before: OptionType<DateTimeType>;
483
483
  after: OptionType<DateTimeType>;
484
484
  }>;
485
485
  patch: import("@elaraai/east").VariantType<{
486
486
  none: import("@elaraai/east").VariantType<{
487
487
  unchanged: import("@elaraai/east").NullType;
488
- replace: StructType<{
488
+ replace: import("@elaraai/east").StructType<{
489
489
  before: import("@elaraai/east").NullType;
490
490
  after: import("@elaraai/east").NullType;
491
491
  }>;
492
492
  }>;
493
493
  some: import("@elaraai/east").VariantType<{
494
494
  unchanged: import("@elaraai/east").NullType;
495
- replace: StructType<{
495
+ replace: import("@elaraai/east").StructType<{
496
496
  before: DateTimeType;
497
497
  after: DateTimeType;
498
498
  }>;
@@ -503,12 +503,53 @@ export declare const planWindowJobsPatch: import("@elaraai/e3").MutationDef<"pat
503
503
  }>;
504
504
  }>>;
505
505
  }>]>;
506
+ /**
507
+ * The jobs over their interval index (#1344): a job is filed by the interval
508
+ * it runs over, so a window reads each job overlapping it once, however many
509
+ * days it runs, and a job in the backlog under its Unset start — what the
510
+ * rail's `job` source narrows them through.
511
+ */
512
+ export declare const planWindowJobsByTime: import("@elaraai/e3").RecordIndexDef<"plan_window_jobs_by_time", DictType<StringType, import("@elaraai/east").StructType<{
513
+ readonly title: StringType;
514
+ readonly start: OptionType<DateTimeType>;
515
+ readonly end: OptionType<DateTimeType>;
516
+ readonly press: OptionType<StringType>;
517
+ readonly state: import("@elaraai/east").VariantType<{
518
+ readonly estimated: import("@elaraai/east").NullType;
519
+ readonly proposed: import("@elaraai/east").VariantType<{
520
+ readonly added: import("@elaraai/east").NullType;
521
+ readonly recommended: import("@elaraai/east").NullType;
522
+ readonly removed: import("@elaraai/east").NullType;
523
+ }>;
524
+ readonly confirmed: import("@elaraai/east").NullType;
525
+ readonly "in-progress": import("@elaraai/east").NullType;
526
+ readonly actual: import("@elaraai/east").NullType;
527
+ readonly rejected: import("@elaraai/east").NullType;
528
+ }>;
529
+ readonly sheets: import("@elaraai/east").FloatType;
530
+ readonly customer: StringType;
531
+ readonly stock: import("@elaraai/east").VariantType<{
532
+ readonly coated: import("@elaraai/east").NullType;
533
+ readonly uncoated: import("@elaraai/east").NullType;
534
+ readonly board: import("@elaraai/east").NullType;
535
+ }>;
536
+ readonly due: OptionType<DateTimeType>;
537
+ }>>, import("@elaraai/east").StructType<Record<never, never> & {
538
+ __interval: IntegerType;
539
+ } & {
540
+ start: OptionType<DateTimeType>;
541
+ }>, import("@elaraai/east").NullType, readonly ["start"]> & {
542
+ interval: {
543
+ readonly from: "start";
544
+ readonly to: "end";
545
+ };
546
+ };
506
547
  /**
507
548
  * The jobs by the days each touches (`Schedule.days`): a scheduled job is
508
549
  * filed under every day it runs into, and a job in the backlog under none —
509
- * the index the canvas reads the days in view through.
550
+ * the index a kind with no rail reads the days in view through (`window`).
510
551
  */
511
- export declare const planWindowJobsByDay: import("@elaraai/e3").RecordIndexDef<"plan_window_jobs_by_day", DictType<StringType, StructType<{
552
+ export declare const planWindowJobsByDay: import("@elaraai/e3").RecordIndexDef<"plan_window_jobs_by_day", DictType<StringType, import("@elaraai/east").StructType<{
512
553
  readonly title: StringType;
513
554
  readonly start: OptionType<DateTimeType>;
514
555
  readonly end: OptionType<DateTimeType>;
@@ -538,9 +579,551 @@ export declare const planWindowJobsByDay: import("@elaraai/e3").RecordIndexDef<"
538
579
  };
539
580
  /**
540
581
  * The jobs with no start, by when they are due (`Schedule.unscheduled`): the
541
- * index the backlog is read through, and nothing scheduled in it.
582
+ * index a kind with no rail reads its backlog through (`backlogWindow`), and
583
+ * nothing scheduled in it.
584
+ */
585
+ export declare const planWindowJobsUnscheduled: import("@elaraai/e3").RecordIndexDef<"plan_window_jobs_unscheduled", DictType<StringType, import("@elaraai/east").StructType<{
586
+ readonly title: StringType;
587
+ readonly start: OptionType<DateTimeType>;
588
+ readonly end: OptionType<DateTimeType>;
589
+ readonly press: OptionType<StringType>;
590
+ readonly state: import("@elaraai/east").VariantType<{
591
+ readonly estimated: import("@elaraai/east").NullType;
592
+ readonly proposed: import("@elaraai/east").VariantType<{
593
+ readonly added: import("@elaraai/east").NullType;
594
+ readonly recommended: import("@elaraai/east").NullType;
595
+ readonly removed: import("@elaraai/east").NullType;
596
+ }>;
597
+ readonly confirmed: import("@elaraai/east").NullType;
598
+ readonly "in-progress": import("@elaraai/east").NullType;
599
+ readonly actual: import("@elaraai/east").NullType;
600
+ readonly rejected: import("@elaraai/east").NullType;
601
+ }>;
602
+ readonly sheets: import("@elaraai/east").FloatType;
603
+ readonly customer: StringType;
604
+ readonly stock: import("@elaraai/east").VariantType<{
605
+ readonly coated: import("@elaraai/east").NullType;
606
+ readonly uncoated: import("@elaraai/east").NullType;
607
+ readonly board: import("@elaraai/east").NullType;
608
+ }>;
609
+ readonly due: OptionType<DateTimeType>;
610
+ }>>, OptionType<DateTimeType>, import("@elaraai/east").NullType, undefined> & {
611
+ interval: undefined;
612
+ };
613
+ /**
614
+ * Print runs on a press, filed as the jobs are: the windows spec commits a
615
+ * day of runs that fills a whole page of their day index, and one on the next
616
+ * day, so a window of the first day reads the page after it to find where the
617
+ * day ends. Empty until the spec commits them.
542
618
  */
543
- export declare const planWindowJobsUnscheduled: import("@elaraai/e3").RecordIndexDef<"plan_window_jobs_unscheduled", DictType<StringType, StructType<{
619
+ export declare const planWindowRuns: import("@elaraai/e3").RecordDef<DictType<StringType, import("@elaraai/east").StructType<{
620
+ readonly title: StringType;
621
+ readonly start: OptionType<DateTimeType>;
622
+ readonly end: OptionType<DateTimeType>;
623
+ readonly press: OptionType<StringType>;
624
+ readonly state: import("@elaraai/east").VariantType<{
625
+ readonly estimated: import("@elaraai/east").NullType;
626
+ readonly proposed: import("@elaraai/east").VariantType<{
627
+ readonly added: import("@elaraai/east").NullType;
628
+ readonly recommended: import("@elaraai/east").NullType;
629
+ readonly removed: import("@elaraai/east").NullType;
630
+ }>;
631
+ readonly confirmed: import("@elaraai/east").NullType;
632
+ readonly "in-progress": import("@elaraai/east").NullType;
633
+ readonly actual: import("@elaraai/east").NullType;
634
+ readonly rejected: import("@elaraai/east").NullType;
635
+ }>;
636
+ readonly sheets: import("@elaraai/east").FloatType;
637
+ readonly customer: StringType;
638
+ readonly stock: import("@elaraai/east").VariantType<{
639
+ readonly coated: import("@elaraai/east").NullType;
640
+ readonly uncoated: import("@elaraai/east").NullType;
641
+ readonly board: import("@elaraai/east").NullType;
642
+ }>;
643
+ readonly due: OptionType<DateTimeType>;
644
+ }>>, [variant<"field", "records">, variant<"field", "plan_window_runs">]>;
645
+ /** The runs' patch door: the spec's commit goes through it. */
646
+ export declare const planWindowRunsPatch: import("@elaraai/e3").MutationDef<"patch", DictType<StringType, import("@elaraai/east").StructType<{
647
+ readonly title: StringType;
648
+ readonly start: OptionType<DateTimeType>;
649
+ readonly end: OptionType<DateTimeType>;
650
+ readonly press: OptionType<StringType>;
651
+ readonly state: import("@elaraai/east").VariantType<{
652
+ readonly estimated: import("@elaraai/east").NullType;
653
+ readonly proposed: import("@elaraai/east").VariantType<{
654
+ readonly added: import("@elaraai/east").NullType;
655
+ readonly recommended: import("@elaraai/east").NullType;
656
+ readonly removed: import("@elaraai/east").NullType;
657
+ }>;
658
+ readonly confirmed: import("@elaraai/east").NullType;
659
+ readonly "in-progress": import("@elaraai/east").NullType;
660
+ readonly actual: import("@elaraai/east").NullType;
661
+ readonly rejected: import("@elaraai/east").NullType;
662
+ }>;
663
+ readonly sheets: import("@elaraai/east").FloatType;
664
+ readonly customer: StringType;
665
+ readonly stock: import("@elaraai/east").VariantType<{
666
+ readonly coated: import("@elaraai/east").NullType;
667
+ readonly uncoated: import("@elaraai/east").NullType;
668
+ readonly board: import("@elaraai/east").NullType;
669
+ }>;
670
+ readonly due: OptionType<DateTimeType>;
671
+ }>>, [import("@elaraai/east").VariantType<{
672
+ unchanged: import("@elaraai/east").NullType;
673
+ replace: import("@elaraai/east").StructType<{
674
+ before: DictType<StringType, import("@elaraai/east").StructType<{
675
+ readonly title: StringType;
676
+ readonly start: OptionType<DateTimeType>;
677
+ readonly end: OptionType<DateTimeType>;
678
+ readonly press: OptionType<StringType>;
679
+ readonly state: import("@elaraai/east").VariantType<{
680
+ readonly estimated: import("@elaraai/east").NullType;
681
+ readonly proposed: import("@elaraai/east").VariantType<{
682
+ readonly added: import("@elaraai/east").NullType;
683
+ readonly recommended: import("@elaraai/east").NullType;
684
+ readonly removed: import("@elaraai/east").NullType;
685
+ }>;
686
+ readonly confirmed: import("@elaraai/east").NullType;
687
+ readonly "in-progress": import("@elaraai/east").NullType;
688
+ readonly actual: import("@elaraai/east").NullType;
689
+ readonly rejected: import("@elaraai/east").NullType;
690
+ }>;
691
+ readonly sheets: import("@elaraai/east").FloatType;
692
+ readonly customer: StringType;
693
+ readonly stock: import("@elaraai/east").VariantType<{
694
+ readonly coated: import("@elaraai/east").NullType;
695
+ readonly uncoated: import("@elaraai/east").NullType;
696
+ readonly board: import("@elaraai/east").NullType;
697
+ }>;
698
+ readonly due: OptionType<DateTimeType>;
699
+ }>>;
700
+ after: DictType<StringType, import("@elaraai/east").StructType<{
701
+ readonly title: StringType;
702
+ readonly start: OptionType<DateTimeType>;
703
+ readonly end: OptionType<DateTimeType>;
704
+ readonly press: OptionType<StringType>;
705
+ readonly state: import("@elaraai/east").VariantType<{
706
+ readonly estimated: import("@elaraai/east").NullType;
707
+ readonly proposed: import("@elaraai/east").VariantType<{
708
+ readonly added: import("@elaraai/east").NullType;
709
+ readonly recommended: import("@elaraai/east").NullType;
710
+ readonly removed: import("@elaraai/east").NullType;
711
+ }>;
712
+ readonly confirmed: import("@elaraai/east").NullType;
713
+ readonly "in-progress": import("@elaraai/east").NullType;
714
+ readonly actual: import("@elaraai/east").NullType;
715
+ readonly rejected: import("@elaraai/east").NullType;
716
+ }>;
717
+ readonly sheets: import("@elaraai/east").FloatType;
718
+ readonly customer: StringType;
719
+ readonly stock: import("@elaraai/east").VariantType<{
720
+ readonly coated: import("@elaraai/east").NullType;
721
+ readonly uncoated: import("@elaraai/east").NullType;
722
+ readonly board: import("@elaraai/east").NullType;
723
+ }>;
724
+ readonly due: OptionType<DateTimeType>;
725
+ }>>;
726
+ }>;
727
+ patch: DictType<StringType, import("@elaraai/east").VariantType<{
728
+ delete: import("@elaraai/east").StructType<{
729
+ readonly title: StringType;
730
+ readonly start: OptionType<DateTimeType>;
731
+ readonly end: OptionType<DateTimeType>;
732
+ readonly press: OptionType<StringType>;
733
+ readonly state: import("@elaraai/east").VariantType<{
734
+ readonly estimated: import("@elaraai/east").NullType;
735
+ readonly proposed: import("@elaraai/east").VariantType<{
736
+ readonly added: import("@elaraai/east").NullType;
737
+ readonly recommended: import("@elaraai/east").NullType;
738
+ readonly removed: import("@elaraai/east").NullType;
739
+ }>;
740
+ readonly confirmed: import("@elaraai/east").NullType;
741
+ readonly "in-progress": import("@elaraai/east").NullType;
742
+ readonly actual: import("@elaraai/east").NullType;
743
+ readonly rejected: import("@elaraai/east").NullType;
744
+ }>;
745
+ readonly sheets: import("@elaraai/east").FloatType;
746
+ readonly customer: StringType;
747
+ readonly stock: import("@elaraai/east").VariantType<{
748
+ readonly coated: import("@elaraai/east").NullType;
749
+ readonly uncoated: import("@elaraai/east").NullType;
750
+ readonly board: import("@elaraai/east").NullType;
751
+ }>;
752
+ readonly due: OptionType<DateTimeType>;
753
+ }>;
754
+ insert: import("@elaraai/east").StructType<{
755
+ readonly title: StringType;
756
+ readonly start: OptionType<DateTimeType>;
757
+ readonly end: OptionType<DateTimeType>;
758
+ readonly press: OptionType<StringType>;
759
+ readonly state: import("@elaraai/east").VariantType<{
760
+ readonly estimated: import("@elaraai/east").NullType;
761
+ readonly proposed: import("@elaraai/east").VariantType<{
762
+ readonly added: import("@elaraai/east").NullType;
763
+ readonly recommended: import("@elaraai/east").NullType;
764
+ readonly removed: import("@elaraai/east").NullType;
765
+ }>;
766
+ readonly confirmed: import("@elaraai/east").NullType;
767
+ readonly "in-progress": import("@elaraai/east").NullType;
768
+ readonly actual: import("@elaraai/east").NullType;
769
+ readonly rejected: import("@elaraai/east").NullType;
770
+ }>;
771
+ readonly sheets: import("@elaraai/east").FloatType;
772
+ readonly customer: StringType;
773
+ readonly stock: import("@elaraai/east").VariantType<{
774
+ readonly coated: import("@elaraai/east").NullType;
775
+ readonly uncoated: import("@elaraai/east").NullType;
776
+ readonly board: import("@elaraai/east").NullType;
777
+ }>;
778
+ readonly due: OptionType<DateTimeType>;
779
+ }>;
780
+ update: import("@elaraai/east").VariantType<{
781
+ unchanged: import("@elaraai/east").NullType;
782
+ replace: import("@elaraai/east").StructType<{
783
+ before: import("@elaraai/east").StructType<{
784
+ readonly title: StringType;
785
+ readonly start: OptionType<DateTimeType>;
786
+ readonly end: OptionType<DateTimeType>;
787
+ readonly press: OptionType<StringType>;
788
+ readonly state: import("@elaraai/east").VariantType<{
789
+ readonly estimated: import("@elaraai/east").NullType;
790
+ readonly proposed: import("@elaraai/east").VariantType<{
791
+ readonly added: import("@elaraai/east").NullType;
792
+ readonly recommended: import("@elaraai/east").NullType;
793
+ readonly removed: import("@elaraai/east").NullType;
794
+ }>;
795
+ readonly confirmed: import("@elaraai/east").NullType;
796
+ readonly "in-progress": import("@elaraai/east").NullType;
797
+ readonly actual: import("@elaraai/east").NullType;
798
+ readonly rejected: import("@elaraai/east").NullType;
799
+ }>;
800
+ readonly sheets: import("@elaraai/east").FloatType;
801
+ readonly customer: StringType;
802
+ readonly stock: import("@elaraai/east").VariantType<{
803
+ readonly coated: import("@elaraai/east").NullType;
804
+ readonly uncoated: import("@elaraai/east").NullType;
805
+ readonly board: import("@elaraai/east").NullType;
806
+ }>;
807
+ readonly due: OptionType<DateTimeType>;
808
+ }>;
809
+ after: import("@elaraai/east").StructType<{
810
+ readonly title: StringType;
811
+ readonly start: OptionType<DateTimeType>;
812
+ readonly end: OptionType<DateTimeType>;
813
+ readonly press: OptionType<StringType>;
814
+ readonly state: import("@elaraai/east").VariantType<{
815
+ readonly estimated: import("@elaraai/east").NullType;
816
+ readonly proposed: import("@elaraai/east").VariantType<{
817
+ readonly added: import("@elaraai/east").NullType;
818
+ readonly recommended: import("@elaraai/east").NullType;
819
+ readonly removed: import("@elaraai/east").NullType;
820
+ }>;
821
+ readonly confirmed: import("@elaraai/east").NullType;
822
+ readonly "in-progress": import("@elaraai/east").NullType;
823
+ readonly actual: import("@elaraai/east").NullType;
824
+ readonly rejected: import("@elaraai/east").NullType;
825
+ }>;
826
+ readonly sheets: import("@elaraai/east").FloatType;
827
+ readonly customer: StringType;
828
+ readonly stock: import("@elaraai/east").VariantType<{
829
+ readonly coated: import("@elaraai/east").NullType;
830
+ readonly uncoated: import("@elaraai/east").NullType;
831
+ readonly board: import("@elaraai/east").NullType;
832
+ }>;
833
+ readonly due: OptionType<DateTimeType>;
834
+ }>;
835
+ }>;
836
+ patch: import("@elaraai/east").StructType<{
837
+ readonly title: import("@elaraai/east").VariantType<{
838
+ unchanged: import("@elaraai/east").NullType;
839
+ replace: import("@elaraai/east").StructType<{
840
+ before: StringType;
841
+ after: StringType;
842
+ }>;
843
+ }>;
844
+ readonly start: import("@elaraai/east").VariantType<{
845
+ unchanged: import("@elaraai/east").NullType;
846
+ replace: import("@elaraai/east").StructType<{
847
+ before: OptionType<DateTimeType>;
848
+ after: OptionType<DateTimeType>;
849
+ }>;
850
+ patch: import("@elaraai/east").VariantType<{
851
+ none: import("@elaraai/east").VariantType<{
852
+ unchanged: import("@elaraai/east").NullType;
853
+ replace: import("@elaraai/east").StructType<{
854
+ before: import("@elaraai/east").NullType;
855
+ after: import("@elaraai/east").NullType;
856
+ }>;
857
+ }>;
858
+ some: import("@elaraai/east").VariantType<{
859
+ unchanged: import("@elaraai/east").NullType;
860
+ replace: import("@elaraai/east").StructType<{
861
+ before: DateTimeType;
862
+ after: DateTimeType;
863
+ }>;
864
+ }>;
865
+ }>;
866
+ }>;
867
+ readonly end: import("@elaraai/east").VariantType<{
868
+ unchanged: import("@elaraai/east").NullType;
869
+ replace: import("@elaraai/east").StructType<{
870
+ before: OptionType<DateTimeType>;
871
+ after: OptionType<DateTimeType>;
872
+ }>;
873
+ patch: import("@elaraai/east").VariantType<{
874
+ none: import("@elaraai/east").VariantType<{
875
+ unchanged: import("@elaraai/east").NullType;
876
+ replace: import("@elaraai/east").StructType<{
877
+ before: import("@elaraai/east").NullType;
878
+ after: import("@elaraai/east").NullType;
879
+ }>;
880
+ }>;
881
+ some: import("@elaraai/east").VariantType<{
882
+ unchanged: import("@elaraai/east").NullType;
883
+ replace: import("@elaraai/east").StructType<{
884
+ before: DateTimeType;
885
+ after: DateTimeType;
886
+ }>;
887
+ }>;
888
+ }>;
889
+ }>;
890
+ readonly press: import("@elaraai/east").VariantType<{
891
+ unchanged: import("@elaraai/east").NullType;
892
+ replace: import("@elaraai/east").StructType<{
893
+ before: OptionType<StringType>;
894
+ after: OptionType<StringType>;
895
+ }>;
896
+ patch: import("@elaraai/east").VariantType<{
897
+ none: import("@elaraai/east").VariantType<{
898
+ unchanged: import("@elaraai/east").NullType;
899
+ replace: import("@elaraai/east").StructType<{
900
+ before: import("@elaraai/east").NullType;
901
+ after: import("@elaraai/east").NullType;
902
+ }>;
903
+ }>;
904
+ some: import("@elaraai/east").VariantType<{
905
+ unchanged: import("@elaraai/east").NullType;
906
+ replace: import("@elaraai/east").StructType<{
907
+ before: StringType;
908
+ after: StringType;
909
+ }>;
910
+ }>;
911
+ }>;
912
+ }>;
913
+ readonly state: import("@elaraai/east").VariantType<{
914
+ unchanged: import("@elaraai/east").NullType;
915
+ replace: import("@elaraai/east").StructType<{
916
+ before: import("@elaraai/east").VariantType<{
917
+ readonly estimated: import("@elaraai/east").NullType;
918
+ readonly proposed: import("@elaraai/east").VariantType<{
919
+ readonly added: import("@elaraai/east").NullType;
920
+ readonly recommended: import("@elaraai/east").NullType;
921
+ readonly removed: import("@elaraai/east").NullType;
922
+ }>;
923
+ readonly confirmed: import("@elaraai/east").NullType;
924
+ readonly "in-progress": import("@elaraai/east").NullType;
925
+ readonly actual: import("@elaraai/east").NullType;
926
+ readonly rejected: import("@elaraai/east").NullType;
927
+ }>;
928
+ after: import("@elaraai/east").VariantType<{
929
+ readonly estimated: import("@elaraai/east").NullType;
930
+ readonly proposed: import("@elaraai/east").VariantType<{
931
+ readonly added: import("@elaraai/east").NullType;
932
+ readonly recommended: import("@elaraai/east").NullType;
933
+ readonly removed: import("@elaraai/east").NullType;
934
+ }>;
935
+ readonly confirmed: import("@elaraai/east").NullType;
936
+ readonly "in-progress": import("@elaraai/east").NullType;
937
+ readonly actual: import("@elaraai/east").NullType;
938
+ readonly rejected: import("@elaraai/east").NullType;
939
+ }>;
940
+ }>;
941
+ patch: import("@elaraai/east").VariantType<{
942
+ readonly estimated: import("@elaraai/east").VariantType<{
943
+ unchanged: import("@elaraai/east").NullType;
944
+ replace: import("@elaraai/east").StructType<{
945
+ before: import("@elaraai/east").NullType;
946
+ after: import("@elaraai/east").NullType;
947
+ }>;
948
+ }>;
949
+ readonly proposed: import("@elaraai/east").VariantType<{
950
+ unchanged: import("@elaraai/east").NullType;
951
+ replace: import("@elaraai/east").StructType<{
952
+ before: import("@elaraai/east").VariantType<{
953
+ readonly added: import("@elaraai/east").NullType;
954
+ readonly recommended: import("@elaraai/east").NullType;
955
+ readonly removed: import("@elaraai/east").NullType;
956
+ }>;
957
+ after: import("@elaraai/east").VariantType<{
958
+ readonly added: import("@elaraai/east").NullType;
959
+ readonly recommended: import("@elaraai/east").NullType;
960
+ readonly removed: import("@elaraai/east").NullType;
961
+ }>;
962
+ }>;
963
+ patch: import("@elaraai/east").VariantType<{
964
+ readonly added: import("@elaraai/east").VariantType<{
965
+ unchanged: import("@elaraai/east").NullType;
966
+ replace: import("@elaraai/east").StructType<{
967
+ before: import("@elaraai/east").NullType;
968
+ after: import("@elaraai/east").NullType;
969
+ }>;
970
+ }>;
971
+ readonly recommended: import("@elaraai/east").VariantType<{
972
+ unchanged: import("@elaraai/east").NullType;
973
+ replace: import("@elaraai/east").StructType<{
974
+ before: import("@elaraai/east").NullType;
975
+ after: import("@elaraai/east").NullType;
976
+ }>;
977
+ }>;
978
+ readonly removed: import("@elaraai/east").VariantType<{
979
+ unchanged: import("@elaraai/east").NullType;
980
+ replace: import("@elaraai/east").StructType<{
981
+ before: import("@elaraai/east").NullType;
982
+ after: import("@elaraai/east").NullType;
983
+ }>;
984
+ }>;
985
+ }>;
986
+ }>;
987
+ readonly confirmed: import("@elaraai/east").VariantType<{
988
+ unchanged: import("@elaraai/east").NullType;
989
+ replace: import("@elaraai/east").StructType<{
990
+ before: import("@elaraai/east").NullType;
991
+ after: import("@elaraai/east").NullType;
992
+ }>;
993
+ }>;
994
+ readonly "in-progress": import("@elaraai/east").VariantType<{
995
+ unchanged: import("@elaraai/east").NullType;
996
+ replace: import("@elaraai/east").StructType<{
997
+ before: import("@elaraai/east").NullType;
998
+ after: import("@elaraai/east").NullType;
999
+ }>;
1000
+ }>;
1001
+ readonly actual: import("@elaraai/east").VariantType<{
1002
+ unchanged: import("@elaraai/east").NullType;
1003
+ replace: import("@elaraai/east").StructType<{
1004
+ before: import("@elaraai/east").NullType;
1005
+ after: import("@elaraai/east").NullType;
1006
+ }>;
1007
+ }>;
1008
+ readonly rejected: import("@elaraai/east").VariantType<{
1009
+ unchanged: import("@elaraai/east").NullType;
1010
+ replace: import("@elaraai/east").StructType<{
1011
+ before: import("@elaraai/east").NullType;
1012
+ after: import("@elaraai/east").NullType;
1013
+ }>;
1014
+ }>;
1015
+ }>;
1016
+ }>;
1017
+ readonly sheets: import("@elaraai/east").VariantType<{
1018
+ unchanged: import("@elaraai/east").NullType;
1019
+ replace: import("@elaraai/east").StructType<{
1020
+ before: import("@elaraai/east").FloatType;
1021
+ after: import("@elaraai/east").FloatType;
1022
+ }>;
1023
+ }>;
1024
+ readonly customer: import("@elaraai/east").VariantType<{
1025
+ unchanged: import("@elaraai/east").NullType;
1026
+ replace: import("@elaraai/east").StructType<{
1027
+ before: StringType;
1028
+ after: StringType;
1029
+ }>;
1030
+ }>;
1031
+ readonly stock: import("@elaraai/east").VariantType<{
1032
+ unchanged: import("@elaraai/east").NullType;
1033
+ replace: import("@elaraai/east").StructType<{
1034
+ before: import("@elaraai/east").VariantType<{
1035
+ readonly coated: import("@elaraai/east").NullType;
1036
+ readonly uncoated: import("@elaraai/east").NullType;
1037
+ readonly board: import("@elaraai/east").NullType;
1038
+ }>;
1039
+ after: import("@elaraai/east").VariantType<{
1040
+ readonly coated: import("@elaraai/east").NullType;
1041
+ readonly uncoated: import("@elaraai/east").NullType;
1042
+ readonly board: import("@elaraai/east").NullType;
1043
+ }>;
1044
+ }>;
1045
+ patch: import("@elaraai/east").VariantType<{
1046
+ readonly coated: import("@elaraai/east").VariantType<{
1047
+ unchanged: import("@elaraai/east").NullType;
1048
+ replace: import("@elaraai/east").StructType<{
1049
+ before: import("@elaraai/east").NullType;
1050
+ after: import("@elaraai/east").NullType;
1051
+ }>;
1052
+ }>;
1053
+ readonly uncoated: import("@elaraai/east").VariantType<{
1054
+ unchanged: import("@elaraai/east").NullType;
1055
+ replace: import("@elaraai/east").StructType<{
1056
+ before: import("@elaraai/east").NullType;
1057
+ after: import("@elaraai/east").NullType;
1058
+ }>;
1059
+ }>;
1060
+ readonly board: import("@elaraai/east").VariantType<{
1061
+ unchanged: import("@elaraai/east").NullType;
1062
+ replace: import("@elaraai/east").StructType<{
1063
+ before: import("@elaraai/east").NullType;
1064
+ after: import("@elaraai/east").NullType;
1065
+ }>;
1066
+ }>;
1067
+ }>;
1068
+ }>;
1069
+ readonly due: import("@elaraai/east").VariantType<{
1070
+ unchanged: import("@elaraai/east").NullType;
1071
+ replace: import("@elaraai/east").StructType<{
1072
+ before: OptionType<DateTimeType>;
1073
+ after: OptionType<DateTimeType>;
1074
+ }>;
1075
+ patch: import("@elaraai/east").VariantType<{
1076
+ none: import("@elaraai/east").VariantType<{
1077
+ unchanged: import("@elaraai/east").NullType;
1078
+ replace: import("@elaraai/east").StructType<{
1079
+ before: import("@elaraai/east").NullType;
1080
+ after: import("@elaraai/east").NullType;
1081
+ }>;
1082
+ }>;
1083
+ some: import("@elaraai/east").VariantType<{
1084
+ unchanged: import("@elaraai/east").NullType;
1085
+ replace: import("@elaraai/east").StructType<{
1086
+ before: DateTimeType;
1087
+ after: DateTimeType;
1088
+ }>;
1089
+ }>;
1090
+ }>;
1091
+ }>;
1092
+ }>;
1093
+ }>;
1094
+ }>>;
1095
+ }>]>;
1096
+ /** The runs by the days each touches (`Schedule.days`), as the jobs are. */
1097
+ export declare const planWindowRunsByDay: import("@elaraai/e3").RecordIndexDef<"plan_window_runs_by_day", DictType<StringType, import("@elaraai/east").StructType<{
1098
+ readonly title: StringType;
1099
+ readonly start: OptionType<DateTimeType>;
1100
+ readonly end: OptionType<DateTimeType>;
1101
+ readonly press: OptionType<StringType>;
1102
+ readonly state: import("@elaraai/east").VariantType<{
1103
+ readonly estimated: import("@elaraai/east").NullType;
1104
+ readonly proposed: import("@elaraai/east").VariantType<{
1105
+ readonly added: import("@elaraai/east").NullType;
1106
+ readonly recommended: import("@elaraai/east").NullType;
1107
+ readonly removed: import("@elaraai/east").NullType;
1108
+ }>;
1109
+ readonly confirmed: import("@elaraai/east").NullType;
1110
+ readonly "in-progress": import("@elaraai/east").NullType;
1111
+ readonly actual: import("@elaraai/east").NullType;
1112
+ readonly rejected: import("@elaraai/east").NullType;
1113
+ }>;
1114
+ readonly sheets: import("@elaraai/east").FloatType;
1115
+ readonly customer: StringType;
1116
+ readonly stock: import("@elaraai/east").VariantType<{
1117
+ readonly coated: import("@elaraai/east").NullType;
1118
+ readonly uncoated: import("@elaraai/east").NullType;
1119
+ readonly board: import("@elaraai/east").NullType;
1120
+ }>;
1121
+ readonly due: OptionType<DateTimeType>;
1122
+ }>>, DateTimeType, import("@elaraai/east").NullType, undefined> & {
1123
+ interval: undefined;
1124
+ };
1125
+ /** The runs with no start, by when they are due (`Schedule.unscheduled`), as the jobs are. */
1126
+ export declare const planWindowRunsUnscheduled: import("@elaraai/e3").RecordIndexDef<"plan_window_runs_unscheduled", DictType<StringType, import("@elaraai/east").StructType<{
544
1127
  readonly title: StringType;
545
1128
  readonly start: OptionType<DateTimeType>;
546
1129
  readonly end: OptionType<DateTimeType>;
@@ -568,17 +1151,15 @@ export declare const planWindowJobsUnscheduled: import("@elaraai/e3").RecordInde
568
1151
  }>>, OptionType<DateTimeType>, import("@elaraai/east").NullType, undefined> & {
569
1152
  interval: undefined;
570
1153
  };
571
- /** A day the canvas shows: what its slice's range runs over. */
572
- export declare const PlanWindowDay: StructType<{
573
- readonly day: DateTimeType;
574
- }>;
575
1154
  /**
576
1155
  * A Plan read a window at a time (`Plan Builder Spec.md` §9.11, PB54–PB55):
577
1156
  * 2,000 presses, paged 200 to a window as the canvas scrolls, the key search
578
- * seeking a press by its key; and the jobs on them read through the record's
579
- * day index — only the days in view, a pan reading the days it brings in — and
580
- * the backlog through the index of jobs with no start, which the library's
581
- * Backlog tab lists. A job filed under several days draws once; one job — the
1157
+ * seeking a press by its key; and the jobs on them narrowed through the Plan's
1158
+ * one rail (#1344) — its `job` source reads them through their interval
1159
+ * index, only the jobs overlapping the window in view, each once, and the
1160
+ * backlog, which the library's Backlog tab lists, through its Unset start. The
1161
+ * source's range is the window: the toolbar's dates, a pan and the horizon
1162
+ * brush write it, and a pan reads the jobs it brings in. One job — the
582
1163
  * inspector's, a draft's — is read by its key through the record's own
583
1164
  * entries. Neither the presses nor the jobs are ever read whole, and Save
584
1165
  * commits through the jobs' patch door, its drafts checked against the