@snaptrude/plugin-core 0.0.0-dev-20260708130115 → 0.0.0-dev-20260827135706

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 (261) hide show
  1. package/CHANGELOG.md +152 -1
  2. package/api-manifest.json +3620 -276
  3. package/dist/api/analysis/daylight.d.ts +603 -0
  4. package/dist/api/analysis/daylight.d.ts.map +1 -0
  5. package/dist/api/analysis/heatmaps.d.ts +658 -0
  6. package/dist/api/analysis/heatmaps.d.ts.map +1 -0
  7. package/dist/api/analysis/illuminance.d.ts +145 -0
  8. package/dist/api/analysis/illuminance.d.ts.map +1 -0
  9. package/dist/api/analysis/index.d.ts +59 -0
  10. package/dist/api/analysis/index.d.ts.map +1 -0
  11. package/dist/api/analysis/shadows.d.ts +165 -0
  12. package/dist/api/analysis/shadows.d.ts.map +1 -0
  13. package/dist/api/analysis/solar.d.ts +249 -0
  14. package/dist/api/analysis/solar.d.ts.map +1 -0
  15. package/dist/api/analysis/sunlightHours.d.ts +208 -0
  16. package/dist/api/analysis/sunlightHours.d.ts.map +1 -0
  17. package/dist/api/analysis/sunpath.d.ts +80 -0
  18. package/dist/api/analysis/sunpath.d.ts.map +1 -0
  19. package/dist/api/analysis/weather.d.ts +193 -0
  20. package/dist/api/analysis/weather.d.ts.map +1 -0
  21. package/dist/api/core/camera/index.d.ts +261 -0
  22. package/dist/api/core/camera/index.d.ts.map +1 -0
  23. package/dist/api/core/comment/index.d.ts +105 -2
  24. package/dist/api/core/comment/index.d.ts.map +1 -1
  25. package/dist/api/core/geom/create/index.d.ts +840 -14
  26. package/dist/api/core/geom/create/index.d.ts.map +1 -1
  27. package/dist/api/core/geom/delete/index.d.ts +8 -2
  28. package/dist/api/core/geom/delete/index.d.ts.map +1 -1
  29. package/dist/api/core/geom/query/arc.d.ts +5 -5
  30. package/dist/api/core/geom/query/brep.d.ts +130 -18
  31. package/dist/api/core/geom/query/brep.d.ts.map +1 -1
  32. package/dist/api/core/geom/query/circle.d.ts +18 -18
  33. package/dist/api/core/geom/query/contour.d.ts +20 -20
  34. package/dist/api/core/geom/query/curve.d.ts +49 -49
  35. package/dist/api/core/geom/query/edge.d.ts +5 -5
  36. package/dist/api/core/geom/query/face.d.ts +16 -16
  37. package/dist/api/core/geom/query/halfedge.d.ts +8 -8
  38. package/dist/api/core/geom/query/profile.d.ts +19 -19
  39. package/dist/api/core/geom/query/vertex.d.ts +8 -8
  40. package/dist/api/core/geom/update/contour.d.ts +14 -14
  41. package/dist/api/core/geom/update/curve.d.ts +7 -7
  42. package/dist/api/core/geom/update/profile.d.ts +16 -16
  43. package/dist/api/core/handles/index.d.ts +210 -0
  44. package/dist/api/core/handles/index.d.ts.map +1 -0
  45. package/dist/api/core/index.d.ts +34 -0
  46. package/dist/api/core/index.d.ts.map +1 -1
  47. package/dist/api/core/io/export/index.d.ts +134 -0
  48. package/dist/api/core/io/export/index.d.ts.map +1 -0
  49. package/dist/api/core/io/import/index.d.ts +453 -0
  50. package/dist/api/core/io/import/index.d.ts.map +1 -0
  51. package/dist/api/core/io/index.d.ts +40 -0
  52. package/dist/api/core/io/index.d.ts.map +1 -0
  53. package/dist/api/core/io/job/index.d.ts +139 -0
  54. package/dist/api/core/io/job/index.d.ts.map +1 -0
  55. package/dist/api/core/io/query/index.d.ts +74 -0
  56. package/dist/api/core/io/query/index.d.ts.map +1 -0
  57. package/dist/api/core/io/terrain/index.d.ts +341 -0
  58. package/dist/api/core/io/terrain/index.d.ts.map +1 -0
  59. package/dist/api/core/io/underlay/index.d.ts +805 -0
  60. package/dist/api/core/io/underlay/index.d.ts.map +1 -0
  61. package/dist/api/core/layers.d.ts +7 -7
  62. package/dist/api/core/mode/index.d.ts +99 -0
  63. package/dist/api/core/mode/index.d.ts.map +1 -0
  64. package/dist/api/core/project/index.d.ts +68 -1
  65. package/dist/api/core/project/index.d.ts.map +1 -1
  66. package/dist/api/core/proposals/index.d.ts +531 -0
  67. package/dist/api/core/proposals/index.d.ts.map +1 -0
  68. package/dist/api/core/storeys/index.d.ts +265 -0
  69. package/dist/api/core/storeys/index.d.ts.map +1 -0
  70. package/dist/api/core/tags.d.ts +24 -0
  71. package/dist/api/core/tags.d.ts.map +1 -1
  72. package/dist/api/core/user.d.ts +44 -0
  73. package/dist/api/core/user.d.ts.map +1 -0
  74. package/dist/api/core/zoom/index.d.ts +4 -0
  75. package/dist/api/core/zoom/index.d.ts.map +1 -1
  76. package/dist/api/design/boolean/index.d.ts +4 -4
  77. package/dist/api/design/create/index.d.ts +568 -45
  78. package/dist/api/design/create/index.d.ts.map +1 -1
  79. package/dist/api/design/delete/index.d.ts +3 -0
  80. package/dist/api/design/delete/index.d.ts.map +1 -1
  81. package/dist/api/design/doors/index.d.ts +195 -0
  82. package/dist/api/design/doors/index.d.ts.map +1 -1
  83. package/dist/api/design/edit/index.d.ts +1 -1
  84. package/dist/api/design/erase/index.d.ts +2 -2
  85. package/dist/api/design/family.d.ts +349 -0
  86. package/dist/api/design/family.d.ts.map +1 -0
  87. package/dist/api/design/furniture/index.d.ts +181 -8
  88. package/dist/api/design/furniture/index.d.ts.map +1 -1
  89. package/dist/api/design/index.d.ts +98 -0
  90. package/dist/api/design/index.d.ts.map +1 -1
  91. package/dist/api/design/lock.d.ts +26 -0
  92. package/dist/api/design/lock.d.ts.map +1 -1
  93. package/dist/api/design/materials/index.d.ts +270 -16
  94. package/dist/api/design/materials/index.d.ts.map +1 -1
  95. package/dist/api/design/query/geometry/index.d.ts +112 -0
  96. package/dist/api/design/query/geometry/index.d.ts.map +1 -1
  97. package/dist/api/design/query/index.d.ts +282 -11
  98. package/dist/api/design/query/index.d.ts.map +1 -1
  99. package/dist/api/design/query/referenceLines.d.ts +45 -0
  100. package/dist/api/design/query/referenceLines.d.ts.map +1 -0
  101. package/dist/api/design/query/spaces.d.ts +181 -8
  102. package/dist/api/design/query/spaces.d.ts.map +1 -1
  103. package/dist/api/design/selection/index.d.ts +144 -0
  104. package/dist/api/design/selection/index.d.ts.map +1 -1
  105. package/dist/api/design/transform/index.d.ts +172 -10
  106. package/dist/api/design/transform/index.d.ts.map +1 -1
  107. package/dist/api/design/types/index.d.ts +181 -0
  108. package/dist/api/design/types/index.d.ts.map +1 -0
  109. package/dist/api/design/update/index.d.ts +553 -2
  110. package/dist/api/design/update/index.d.ts.map +1 -1
  111. package/dist/api/design/visibility.d.ts +126 -0
  112. package/dist/api/design/visibility.d.ts.map +1 -0
  113. package/dist/api/design/windows/index.d.ts +113 -2
  114. package/dist/api/design/windows/index.d.ts.map +1 -1
  115. package/dist/api/entity/buildableEnvelope.d.ts +4 -0
  116. package/dist/api/entity/buildableEnvelope.d.ts.map +1 -1
  117. package/dist/api/entity/referenceLine.d.ts +10 -2
  118. package/dist/api/entity/referenceLine.d.ts.map +1 -1
  119. package/dist/api/entity/space.d.ts +21 -21
  120. package/dist/api/entity/story.d.ts +242 -15
  121. package/dist/api/entity/story.d.ts.map +1 -1
  122. package/dist/api/index.d.ts +10 -0
  123. package/dist/api/index.d.ts.map +1 -1
  124. package/dist/api/presentation/aiInspiration.d.ts +25 -25
  125. package/dist/api/presentation/annotate.d.ts +467 -0
  126. package/dist/api/presentation/annotate.d.ts.map +1 -0
  127. package/dist/api/presentation/diagrams.d.ts +111 -8
  128. package/dist/api/presentation/diagrams.d.ts.map +1 -1
  129. package/dist/api/presentation/export.d.ts +108 -0
  130. package/dist/api/presentation/export.d.ts.map +1 -0
  131. package/dist/api/presentation/import.d.ts +55 -4
  132. package/dist/api/presentation/import.d.ts.map +1 -1
  133. package/dist/api/presentation/index.d.ts +58 -1
  134. package/dist/api/presentation/index.d.ts.map +1 -1
  135. package/dist/api/presentation/placedViews.d.ts +1139 -0
  136. package/dist/api/presentation/placedViews.d.ts.map +1 -0
  137. package/dist/api/presentation/shapes.d.ts +481 -0
  138. package/dist/api/presentation/shapes.d.ts.map +1 -0
  139. package/dist/api/presentation/sheets.d.ts +452 -13
  140. package/dist/api/presentation/sheets.d.ts.map +1 -1
  141. package/dist/api/presentation/slideshow.d.ts +125 -0
  142. package/dist/api/presentation/slideshow.d.ts.map +1 -0
  143. package/dist/api/presentation/tables.d.ts +81 -0
  144. package/dist/api/presentation/tables.d.ts.map +1 -0
  145. package/dist/api/presentation/views.d.ts +367 -7
  146. package/dist/api/presentation/views.d.ts.map +1 -1
  147. package/dist/api/program/areas.d.ts +102 -12
  148. package/dist/api/program/areas.d.ts.map +1 -1
  149. package/dist/api/program/cores.d.ts +3 -99
  150. package/dist/api/program/cores.d.ts.map +1 -1
  151. package/dist/api/program/index.d.ts +7 -15
  152. package/dist/api/program/index.d.ts.map +1 -1
  153. package/dist/api/program/layout.d.ts +346 -11
  154. package/dist/api/program/layout.d.ts.map +1 -1
  155. package/dist/api/program/site.d.ts +469 -13
  156. package/dist/api/program/site.d.ts.map +1 -1
  157. package/dist/api/program/spreadsheet.d.ts +365 -41
  158. package/dist/api/program/spreadsheet.d.ts.map +1 -1
  159. package/dist/api/workspace/index.d.ts +505 -0
  160. package/dist/api/workspace/index.d.ts.map +1 -0
  161. package/dist/errors/codes.d.ts +34 -0
  162. package/dist/errors/codes.d.ts.map +1 -0
  163. package/dist/errors/envelope.d.ts +56 -0
  164. package/dist/errors/envelope.d.ts.map +1 -0
  165. package/dist/errors/index.d.ts +6 -0
  166. package/dist/errors/index.d.ts.map +1 -0
  167. package/dist/errors/plugin-error.d.ts +69 -0
  168. package/dist/errors/plugin-error.d.ts.map +1 -0
  169. package/dist/handles.d.ts +97 -25
  170. package/dist/handles.d.ts.map +1 -1
  171. package/dist/host-utils.d.ts +4 -0
  172. package/dist/host-utils.d.ts.map +1 -1
  173. package/dist/index.cjs +4582 -1422
  174. package/dist/index.cjs.map +1 -1
  175. package/dist/index.d.ts +1 -0
  176. package/dist/index.d.ts.map +1 -1
  177. package/dist/index.js +4171 -1411
  178. package/dist/index.js.map +1 -1
  179. package/package.json +4 -2
  180. package/scripts/generate-manifest.mjs +45 -0
  181. package/scripts/generate-manifest.test.mjs +103 -4
  182. package/src/api/analysis/daylight.ts +470 -0
  183. package/src/api/analysis/heatmaps.ts +683 -0
  184. package/src/api/analysis/illuminance.ts +155 -0
  185. package/src/api/analysis/index.ts +61 -0
  186. package/src/api/analysis/shadows.ts +183 -0
  187. package/src/api/analysis/solar.ts +237 -0
  188. package/src/api/analysis/sunlightHours.ts +211 -0
  189. package/src/api/analysis/sunpath.ts +83 -0
  190. package/src/api/analysis/weather.ts +179 -0
  191. package/src/api/core/camera/index.ts +268 -0
  192. package/src/api/core/comment/index.ts +120 -2
  193. package/src/api/core/geom/create/index.ts +912 -1
  194. package/src/api/core/geom/delete/index.ts +6 -0
  195. package/src/api/core/geom/query/brep.ts +119 -0
  196. package/src/api/core/handles/index.ts +233 -0
  197. package/src/api/core/index.ts +34 -0
  198. package/src/api/core/io/export/index.ts +126 -0
  199. package/src/api/core/io/import/index.ts +496 -0
  200. package/src/api/core/io/index.ts +42 -0
  201. package/src/api/core/io/job/index.ts +140 -0
  202. package/src/api/core/io/query/index.ts +71 -0
  203. package/src/api/core/io/terrain/index.ts +360 -0
  204. package/src/api/core/io/underlay/index.ts +705 -0
  205. package/src/api/core/mode/index.ts +96 -0
  206. package/src/api/core/project/index.ts +62 -1
  207. package/src/api/core/proposals/index.ts +569 -0
  208. package/src/api/core/storeys/index.ts +294 -0
  209. package/src/api/core/tags.ts +27 -0
  210. package/src/api/core/user.ts +46 -0
  211. package/src/api/core/zoom/index.ts +4 -0
  212. package/src/api/design/create/index.ts +670 -30
  213. package/src/api/design/delete/index.ts +3 -0
  214. package/src/api/design/doors/index.ts +208 -0
  215. package/src/api/design/erase/index.ts +1 -1
  216. package/src/api/design/family.ts +388 -0
  217. package/src/api/design/furniture/index.ts +197 -8
  218. package/src/api/design/index.ts +102 -0
  219. package/src/api/design/lock.ts +27 -0
  220. package/src/api/design/materials/index.ts +334 -27
  221. package/src/api/design/query/geometry/index.ts +125 -3
  222. package/src/api/design/query/index.ts +217 -7
  223. package/src/api/design/query/referenceLines.ts +52 -0
  224. package/src/api/design/query/spaces.ts +143 -0
  225. package/src/api/design/selection/index.ts +129 -0
  226. package/src/api/design/transform/index.ts +170 -9
  227. package/src/api/design/types/index.ts +156 -0
  228. package/src/api/design/update/index.ts +631 -3
  229. package/src/api/design/visibility.ts +143 -0
  230. package/src/api/design/windows/index.ts +128 -2
  231. package/src/api/entity/buildableEnvelope.ts +4 -0
  232. package/src/api/entity/referenceLine.ts +8 -0
  233. package/src/api/entity/story.ts +259 -15
  234. package/src/api/index.ts +10 -0
  235. package/src/api/presentation/annotate.ts +385 -0
  236. package/src/api/presentation/diagrams.ts +118 -8
  237. package/src/api/presentation/export.ts +108 -0
  238. package/src/api/presentation/import.ts +51 -4
  239. package/src/api/presentation/index.ts +66 -1
  240. package/src/api/presentation/placedViews.ts +1120 -0
  241. package/src/api/presentation/shapes.ts +274 -0
  242. package/src/api/presentation/sheets.ts +400 -13
  243. package/src/api/presentation/slideshow.ts +134 -0
  244. package/src/api/presentation/tables.ts +84 -0
  245. package/src/api/presentation/views.ts +376 -8
  246. package/src/api/program/areas.ts +88 -15
  247. package/src/api/program/cores.ts +3 -91
  248. package/src/api/program/index.ts +7 -15
  249. package/src/api/program/layout.ts +365 -11
  250. package/src/api/program/site.ts +435 -13
  251. package/src/api/program/spreadsheet.ts +376 -35
  252. package/src/api/workspace/index.ts +563 -0
  253. package/src/errors/codes.ts +136 -0
  254. package/src/errors/envelope.ts +75 -0
  255. package/src/errors/index.ts +21 -0
  256. package/src/errors/plugin-error.ts +134 -0
  257. package/src/handles.ts +123 -13
  258. package/src/host-utils.ts +4 -0
  259. package/src/index.ts +1 -0
  260. package/test/errors.test.mjs +184 -0
  261. package/tsconfig.json +7 -2
@@ -1,5 +1,6 @@
1
1
  import * as z from "zod";
2
2
  import { PluginApiReturn } from "../../types";
3
+ import { ComponentHandle } from "../../handles";
3
4
  /**
4
5
  * Story (floor/storey) management.
5
6
  *
@@ -38,6 +39,8 @@ export declare abstract class PluginStoryApi {
38
39
  * const info = await snaptrude.entity.story.get(1, ["height", "name", "spacesCount"])
39
40
  * console.log(info.name, info.height, info.spacesCount)
40
41
  * ```
42
+ *
43
+ * @deprecated Use `core.storeys.get`
41
44
  */
42
45
  abstract get(storyValue: number, properties: PluginStoryGetProperty[]): PluginApiReturn<PluginStoryGetResult>;
43
46
  /**
@@ -61,6 +64,8 @@ export declare abstract class PluginStoryApi {
61
64
  * console.log(`Story ${s.value}: ${s.name} (id: ${s.id})`)
62
65
  * }
63
66
  * ```
67
+ *
68
+ * @deprecated Use `core.storeys.list`
64
69
  */
65
70
  abstract getAll(): PluginApiReturn<PluginStoryGetAllResult>;
66
71
  /**
@@ -87,33 +92,167 @@ export declare abstract class PluginStoryApi {
87
92
  * // Create a new third floor with custom height
88
93
  * const { storyId } = await snaptrude.entity.story.create(3, 4.5)
89
94
  * ```
95
+ *
96
+ * @deprecated Use `core.storeys.create`
90
97
  */
91
98
  abstract create(storyValue: number, height?: number): PluginApiReturn<PluginStoryCreateResult>;
92
99
  /**
93
- * Update a story's height.
100
+ * Update a story's floor-to-floor `height` and/or `name`.
101
+ *
102
+ * **Height** is the same operation as editing the height in the Stories panel:
103
+ * the walls, columns, and masses on the story are **stretched** to the new
104
+ * height, every story **above shifts up/down** by the delta so the stack stays
105
+ * contiguous, and coupled elements (staircases, parametric curtain walls,
106
+ * furniture offsets) are re-fitted. The whole height cascade is committed as
107
+ * **one undo step**. Height-locked elements are left untouched.
108
+ *
109
+ * **Name** is the same as renaming the story in the Stories panel: it is
110
+ * persisted immediately (saved to the project) but, mirroring the panel, is
111
+ * **not** part of the height undo step.
94
112
  *
95
- * Changes the floor-to-floor height of the specified story. This
96
- * operation is undoable.
113
+ * At least one of `height` or `options.name` must be supplied. Omitting the
114
+ * `height` argument (e.g. for a rename-only update) leaves the height
115
+ * untouched.
97
116
  *
98
117
  * @param storyValue - Integer storey number
99
118
  * identifying the story to update
100
- * @param height - New height value in Babylon
101
- * units
102
- * @returns A {@linkcode PluginStoryUpdateResult} with the updated `storyValue` and `height`
103
- * @throws If the story does not exist or the update fails
119
+ * @param height - New floor-to-floor height in
120
+ * Babylon units. Omit to leave the height unchanged.
121
+ * @param options - `name` (new display name for the story)
122
+ * @returns A {@linkcode PluginStoryUpdateResult} with the story's
123
+ * `storyValue`, `height`, and `name` after the update
124
+ * @throws `PRECONDITION_FAILED` if no story has the given value;
125
+ * `VALIDATION` if neither `height` nor `options.name` is supplied;
126
+ * `STORY_HEIGHT_REJECTED` if the engine rejects the height (e.g. out of
127
+ * range — the change silently reverts host-side and is surfaced as this
128
+ * error); `STORY_UPDATE_FAILED` if the story cannot be re-read after the
129
+ * update
104
130
  *
105
131
  * @examplePrompt Change the ground floor height to 3.5 metres
106
132
  * @examplePrompt Make the second storey taller
133
+ * @examplePrompt Rename the ground floor to "Lobby"
107
134
  * @examplePrompt Set the floor-to-floor height of level 1
108
- * @examplePrompt Increase the height of the third floor
135
+ * @examplePrompt Rename storey 2 and make it taller in one go
109
136
  *
110
137
  * # Example
111
138
  * ```ts
112
- * // Set ground floor height to 5 Babylon units
139
+ * // Set ground floor height to 5 Babylon units — walls stretch and the
140
+ * // floors above move up to match, all in a single undo step.
113
141
  * const result = await snaptrude.entity.story.update(1, 5)
142
+ * // Rename only, leaving the height untouched.
143
+ * await snaptrude.entity.story.update(1, undefined, { name: "Lobby" })
144
+ * ```
145
+ *
146
+ * @deprecated Use `core.storeys.update`
147
+ */
148
+ abstract update(storyValue: number, height?: number, options?: {
149
+ name?: string;
150
+ }): PluginApiReturn<PluginStoryUpdateResult>;
151
+ /**
152
+ * Make a story the active story — the same as clicking it in the storey/layer
153
+ * panel. Subsequent draws and creates target this story, and in 2D the
154
+ * viewport switches to it. This is a view/navigation change: it is **not**
155
+ * undoable and commits nothing to the model.
156
+ *
157
+ * @param storyValue - Integer storey number to activate
158
+ * @returns A {@linkcode PluginStorySetActiveResult} echoing the now-active `storyValue`
159
+ * @throws `PRECONDITION_FAILED` if no story has the given value
160
+ *
161
+ * @examplePrompt Switch to the second floor
162
+ * @examplePrompt Make the ground storey active
163
+ * @examplePrompt Go to the basement level
164
+ * @examplePrompt Set level 3 as the current storey
165
+ *
166
+ * # Example
167
+ * ```ts
168
+ * // Activate story 2, then draw a wall — it lands on story 2.
169
+ * await snaptrude.entity.story.setActive(2)
170
+ * ```
171
+ *
172
+ * @deprecated Use `core.storeys.setActive`
173
+ */
174
+ abstract setActive(storyValue: number): PluginApiReturn<PluginStorySetActiveResult>;
175
+ /**
176
+ * Delete a story and everything on it — the same as removing it from the
177
+ * storey panel. Every element placed on the story (walls, floors, masses, …)
178
+ * is deleted with it, the remaining stories are re-stacked, and the active
179
+ * story falls back to an adjacent one. Committed as a single undo step.
180
+ *
181
+ * @param storyValue - Integer storey number to delete
182
+ * @returns A {@linkcode PluginStoryDeleteResult} with the deleted `storyValue`
183
+ * and the `newActiveStory` the editor fell back to
184
+ * @throws `PRECONDITION_FAILED` if no story has the given value; or if plugin
185
+ * writes are disabled
186
+ *
187
+ * @examplePrompt Delete the top floor
188
+ * @examplePrompt Remove the basement level
189
+ * @examplePrompt Get rid of storey 3
190
+ * @examplePrompt Delete the second floor and everything on it
191
+ *
192
+ * # Example
193
+ * ```ts
194
+ * const { newActiveStory } = await snaptrude.entity.story.delete(3)
195
+ * console.log(`Deleted story 3; now on story ${newActiveStory}`)
196
+ * ```
197
+ *
198
+ * @deprecated Use `core.storeys.delete`
199
+ */
200
+ abstract delete(storyValue: number): PluginApiReturn<PluginStoryDeleteResult>;
201
+ /**
202
+ * Duplicate a story into the adjacent level, up or down.
203
+ *
204
+ * By default the **whole story** is duplicated: every eligible element on the
205
+ * active story (walls, floors, roofs, masses, columns, beams, staircases,
206
+ * ceilings, parametric curtain walls, and furniture) is copied into the story
207
+ * one level `"up"` or `"down"`. Pass `options.components` to duplicate only a
208
+ * subset instead. The target story is **created automatically** if it does not
209
+ * yet exist, inheriting the source story's height.
210
+ *
211
+ * Copies are **instanced** by default (`unique: false`) — they share geometry
212
+ * with the source, so later edits propagate. Set `unique: true` for independent
213
+ * geometry. Doors and windows are never duplicated on their own; they ride along
214
+ * with their host wall. Locked, throw-away, and unsupported elements are skipped
215
+ * and counted in `skipped`. The whole operation is a single undo step.
216
+ *
217
+ * @param direction - `"up"` to duplicate into the story above, `"down"` for below
218
+ * @param options - `components` (restrict to a subset of the story's elements;
219
+ * omit for the whole story) and `unique` (default `false` = instanced copies;
220
+ * `true` = independent geometry)
221
+ * @returns A {@linkcode PluginStoryDuplicateResult} with the `sourceStory`, the
222
+ * `targetStories` the copies landed on, the `created` component handles, the
223
+ * `createdStoryValues` for any stories generated to receive them, and the
224
+ * `skipped` count of ineligible elements
225
+ * @throws `NO_ACTIVE_STRUCTURE` if there is no active structure to duplicate
226
+ * into; `NO_ELIGIBLE_ELEMENTS` if nothing on the source story (or in
227
+ * `options.components`) is duplicable; `HANDLE_INVALID` for a stale or
228
+ * foreign supplied handle; or if plugin writes are disabled
229
+ *
230
+ * @examplePrompt Duplicate this floor to the storey above
231
+ * @examplePrompt Copy the ground floor down into a new basement
232
+ * @examplePrompt Repeat this level upwards with its own independent geometry
233
+ * @examplePrompt Duplicate just the selected walls onto the next floor up
234
+ *
235
+ * @performance For storeys that share a layout, duplicate the storey instead of recreating
236
+ * its contents floor by floor — this copies every eligible element in one call, and the
237
+ * default instanced copies keep the floors linked. To stack many identical floors, either
238
+ * call this per level or capture the storey's component ids and
239
+ * `design.create.copy(ids, oneFloorRise, { count })` to lay them all down in a single call.
240
+ *
241
+ * # Example
242
+ * ```ts
243
+ * // Duplicate the whole active story one level up (instanced copies).
244
+ * const { targetStories, created, skipped } =
245
+ * await snaptrude.entity.story.duplicate("up")
246
+ * console.log(`Copied ${created.length} elements onto story ${targetStories}`)
247
+ * if (skipped) console.log(`${skipped} elements were skipped`)
114
248
  * ```
249
+ *
250
+ * @deprecated Use `core.storeys.copy`
115
251
  */
116
- abstract update(storyValue: number, height: number): PluginApiReturn<PluginStoryUpdateResult>;
252
+ abstract duplicate(direction: "up" | "down", options?: {
253
+ components?: ComponentHandle[];
254
+ unique?: boolean;
255
+ }): PluginApiReturn<PluginStoryDuplicateResult>;
117
256
  }
118
257
  /**
119
258
  * Available properties that can be queried on a story.
@@ -221,29 +360,117 @@ export declare const PluginStoryCreateResult: z.ZodObject<{
221
360
  }, z.core.$strip>;
222
361
  export type PluginStoryCreateResult = z.infer<typeof PluginStoryCreateResult>;
223
362
  /**
224
- * Arguments for {@linkcode PluginStoryApi.update}.
363
+ * Arguments for {@linkcode PluginStoryApi.update}. At least one of `height` or
364
+ * `name` must be supplied.
225
365
  *
226
366
  * | Property | Type | Description |
227
367
  * |---|---|---|
228
368
  * | `storyValue` | `number` (int) | Storey number of the story to update |
229
- * | `height` | `number` | New height in Babylon units |
369
+ * | `height` | `number?` | New height in Babylon units (omit to leave unchanged) |
370
+ * | `name` | `string?` | New display name for the story (omit to leave unchanged) |
230
371
  */
231
372
  export declare const PluginStoryUpdateArgs: z.ZodObject<{
232
373
  storyValue: z.ZodNumber;
233
- height: z.ZodNumber;
374
+ height: z.ZodOptional<z.ZodNumber>;
375
+ name: z.ZodOptional<z.ZodString>;
234
376
  }, z.core.$strip>;
235
377
  export type PluginStoryUpdateArgs = z.infer<typeof PluginStoryUpdateArgs>;
236
378
  /**
237
- * Result of {@linkcode PluginStoryApi.update}.
379
+ * Result of {@linkcode PluginStoryApi.update} — the story's state after the update.
238
380
  *
239
381
  * | Property | Type | Description |
240
382
  * |---|---|---|
241
383
  * | `storyValue` | `number` | The storey number of the updated story |
242
- * | `height` | `number` | The new height after the update |
384
+ * | `height` | `number` | The height after the update |
385
+ * | `name` | `string` | The name after the update |
243
386
  */
244
387
  export declare const PluginStoryUpdateResult: z.ZodObject<{
245
388
  storyValue: z.ZodNumber;
246
389
  height: z.ZodNumber;
390
+ name: z.ZodString;
247
391
  }, z.core.$strip>;
248
392
  export type PluginStoryUpdateResult = z.infer<typeof PluginStoryUpdateResult>;
393
+ /**
394
+ * Arguments for {@linkcode PluginStoryApi.setActive}.
395
+ *
396
+ * | Property | Type | Description |
397
+ * |---|---|---|
398
+ * | `storyValue` | `number` (int) | Storey number to activate |
399
+ */
400
+ export declare const PluginStorySetActiveArgs: z.ZodObject<{
401
+ storyValue: z.ZodNumber;
402
+ }, z.core.$strip>;
403
+ export type PluginStorySetActiveArgs = z.infer<typeof PluginStorySetActiveArgs>;
404
+ /**
405
+ * Result of {@linkcode PluginStoryApi.setActive}.
406
+ *
407
+ * | Property | Type | Description |
408
+ * |---|---|---|
409
+ * | `storyValue` | `number` | The storey number that is now active |
410
+ */
411
+ export declare const PluginStorySetActiveResult: z.ZodObject<{
412
+ storyValue: z.ZodNumber;
413
+ }, z.core.$strip>;
414
+ export type PluginStorySetActiveResult = z.infer<typeof PluginStorySetActiveResult>;
415
+ /**
416
+ * Arguments for {@linkcode PluginStoryApi.delete}.
417
+ *
418
+ * | Property | Type | Description |
419
+ * |---|---|---|
420
+ * | `storyValue` | `number` (int) | Storey number to delete |
421
+ */
422
+ export declare const PluginStoryDeleteArgs: z.ZodObject<{
423
+ storyValue: z.ZodNumber;
424
+ }, z.core.$strip>;
425
+ export type PluginStoryDeleteArgs = z.infer<typeof PluginStoryDeleteArgs>;
426
+ /**
427
+ * Result of {@linkcode PluginStoryApi.delete}.
428
+ *
429
+ * | Property | Type | Description |
430
+ * |---|---|---|
431
+ * | `storyValue` | `number` | The storey number that was deleted |
432
+ * | `newActiveStory` | `number` | The storey the editor fell back to as active |
433
+ */
434
+ export declare const PluginStoryDeleteResult: z.ZodObject<{
435
+ storyValue: z.ZodNumber;
436
+ newActiveStory: z.ZodNumber;
437
+ }, z.core.$strip>;
438
+ export type PluginStoryDeleteResult = z.infer<typeof PluginStoryDeleteResult>;
439
+ /**
440
+ * Arguments for {@linkcode PluginStoryApi.duplicate} (options flattened).
441
+ *
442
+ * | Property | Type | Description |
443
+ * |---|---|---|
444
+ * | `direction` | `'up' \| 'down'` | Which adjacent story to duplicate into |
445
+ * | `components` | {@linkcode ComponentHandle}`[]?` | Restrict to a subset; omit for the whole story |
446
+ * | `unique` | `boolean?` | `false` (default) = instanced copies; `true` = independent geometry |
447
+ */
448
+ export declare const PluginStoryDuplicateArgs: z.ZodObject<{
449
+ direction: z.ZodEnum<{
450
+ up: "up";
451
+ down: "down";
452
+ }>;
453
+ components: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>>;
454
+ unique: z.ZodOptional<z.ZodBoolean>;
455
+ }, z.core.$strip>;
456
+ export type PluginStoryDuplicateArgs = z.infer<typeof PluginStoryDuplicateArgs>;
457
+ /**
458
+ * Result of {@linkcode PluginStoryApi.duplicate}.
459
+ *
460
+ * | Property | Type | Description |
461
+ * |---|---|---|
462
+ * | `sourceStory` | `number` | Storey value the copies were duplicated from |
463
+ * | `targetStories` | `number[]` | Storey values the copies landed on |
464
+ * | `created` | {@linkcode ComponentHandle}`[]` | Handles of the newly created components |
465
+ * | `createdStoryValues` | `number[]` | Storey values that were generated to receive the copies |
466
+ * | `skipped` | `number` | Count of ineligible elements that were skipped |
467
+ */
468
+ export declare const PluginStoryDuplicateResult: z.ZodObject<{
469
+ sourceStory: z.ZodNumber;
470
+ targetStories: z.ZodArray<z.ZodNumber>;
471
+ created: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
472
+ createdStoryValues: z.ZodArray<z.ZodNumber>;
473
+ skipped: z.ZodNumber;
474
+ }, z.core.$strip>;
475
+ export type PluginStoryDuplicateResult = z.infer<typeof PluginStoryDuplicateResult>;
249
476
  //# sourceMappingURL=story.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../../src/api/entity/story.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE7C;;;;;;;;;;;GAWG;AACH,8BAAsB,cAAc;;IAGlC;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;aACa,GAAG,CACjB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,sBAAsB,EAAE,GACnC,eAAe,CAAC,oBAAoB,CAAC;IAExC;;;;;;;;;;;;;;;;;;;;;OAqBG;aACa,MAAM,IAAI,eAAe,CAAC,uBAAuB,CAAC;IAElE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;aACa,MAAM,CACpB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,eAAe,CAAC,uBAAuB,CAAC;IAE3C;;;;;;;;;;;;;;;;;;;;;;;OAuBG;aACa,MAAM,CACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,eAAe,CAAC,uBAAuB,CAAC;CAC5C;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;EASjC,CAAA;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;iBAG7B,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAEnE;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;iBAWrB,CAAA;AAEZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB;;;;;;iBAQlC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB;;;iBAGhC,CAAA;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEzE;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB;;;iBAGhC,CAAA;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEzE;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
1
+ {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../../src/api/entity/story.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ import { PluginDesignApi } from "./design";
3
3
  import { PluginEntityApi } from "./entity";
4
4
  import { PluginProgramApi } from "./program";
5
5
  import { PluginPresentationApi } from "./presentation";
6
+ import { PluginAnalysisApi } from "./analysis";
7
+ import { PluginWorkspaceApi } from "./workspace";
6
8
  /**
7
9
  * Root API surface for Snaptrude plugins.
8
10
  *
@@ -13,6 +15,8 @@ import { PluginPresentationApi } from "./presentation";
13
15
  * - {@linkcode PluginApi.entity} — CRUD operations on Snaptrude entities (spaces, stories)
14
16
  * - {@linkcode PluginApi.program} — Program-mode planning reads (departments, metrics)
15
17
  * - {@linkcode PluginApi.presentation} — Presentation preparation (views, AI Inspiration)
18
+ * - {@linkcode PluginApi.analysis} — Sustainability analysis (sunpath, shadows, sunlight/illuminance heatmaps)
19
+ * - {@linkcode PluginApi.workspace} — Dashboard surface: projects and teams
16
20
  */
17
21
  export declare abstract class PluginApi {
18
22
  /** Core math, geometry, history, and units primitives. See {@linkcode PluginCoreApi}. */
@@ -25,6 +29,10 @@ export declare abstract class PluginApi {
25
29
  abstract program: PluginProgramApi;
26
30
  /** Presentation preparation reads — saved views. See {@linkcode PluginPresentationApi}. */
27
31
  abstract presentation: PluginPresentationApi;
32
+ /** Sustainability analysis — sun & daylight studies. See {@linkcode PluginAnalysisApi}. */
33
+ abstract analysis: PluginAnalysisApi;
34
+ /** Dashboard surface — projects and teams. See {@linkcode PluginWorkspaceApi}. */
35
+ abstract workspace: PluginWorkspaceApi;
28
36
  constructor();
29
37
  }
30
38
  export * from "./core";
@@ -32,4 +40,6 @@ export * from "./design";
32
40
  export * from "./entity";
33
41
  export * from "./program";
34
42
  export * from "./presentation";
43
+ export * from "./analysis";
44
+ export * from "./workspace";
35
45
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAEtD;;;;;;;;;;GAUG;AACH,8BAAsB,SAAS;IAC7B,yFAAyF;IACzF,SAAgB,IAAI,EAAE,aAAa,CAAA;IACnC,0EAA0E;IAC1E,SAAgB,MAAM,EAAE,eAAe,CAAA;IACvC,8EAA8E;IAC9E,SAAgB,MAAM,EAAE,eAAe,CAAA;IACvC,oGAAoG;IACpG,SAAgB,OAAO,EAAE,gBAAgB,CAAA;IACzC,2FAA2F;IAC3F,SAAgB,YAAY,EAAE,qBAAqB,CAAA;;CAGpD;AAED,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEhD;;;;;;;;;;;;GAYG;AACH,8BAAsB,SAAS;IAC7B,yFAAyF;IACzF,SAAgB,IAAI,EAAE,aAAa,CAAA;IACnC,0EAA0E;IAC1E,SAAgB,MAAM,EAAE,eAAe,CAAA;IACvC,8EAA8E;IAC9E,SAAgB,MAAM,EAAE,eAAe,CAAA;IACvC,oGAAoG;IACpG,SAAgB,OAAO,EAAE,gBAAgB,CAAA;IACzC,2FAA2F;IAC3F,SAAgB,YAAY,EAAE,qBAAqB,CAAA;IACnD,2FAA2F;IAC3F,SAAgB,QAAQ,EAAE,iBAAiB,CAAA;IAC3C,kFAAkF;IAClF,SAAgB,SAAS,EAAE,kBAAkB,CAAA;;CAG9C;AAED,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA"}
@@ -6,8 +6,8 @@ type JsonValue = z.infer<typeof JsonPrimitive> | JsonValue[] | {
6
6
  };
7
7
  declare const JsonValue: z.ZodType<JsonValue>;
8
8
  export declare const PluginAIInspirationRunMode: z.ZodEnum<{
9
- blocking: "blocking";
10
9
  job: "job";
10
+ blocking: "blocking";
11
11
  }>;
12
12
  export type PluginAIInspirationRunMode = z.infer<typeof PluginAIInspirationRunMode>;
13
13
  export declare const PluginAIInspirationOutputKind: z.ZodEnum<{
@@ -58,16 +58,16 @@ export declare const PluginAIInspirationVideoDuration: z.ZodEnum<{
58
58
  }>;
59
59
  export type PluginAIInspirationVideoDuration = z.infer<typeof PluginAIInspirationVideoDuration>;
60
60
  export declare const PluginAIInspirationJobStatus: z.ZodEnum<{
61
- queued: "queued";
61
+ failed: "failed";
62
62
  running: "running";
63
+ queued: "queued";
63
64
  completed: "completed";
64
- failed: "failed";
65
65
  cancelled: "cancelled";
66
66
  }>;
67
67
  export type PluginAIInspirationJobStatus = z.infer<typeof PluginAIInspirationJobStatus>;
68
68
  export declare const PluginAIInspirationWorkflowRunState: z.ZodEnum<{
69
- running: "running";
70
69
  failed: "failed";
70
+ running: "running";
71
71
  current: "current";
72
72
  stale: "stale";
73
73
  superseded: "superseded";
@@ -486,8 +486,8 @@ export declare const PluginAIInspirationGenerateArgs: z.ZodObject<{
486
486
  }>>;
487
487
  }, z.core.$strip>>;
488
488
  runMode: z.ZodOptional<z.ZodEnum<{
489
- blocking: "blocking";
490
489
  job: "job";
490
+ blocking: "blocking";
491
491
  }>>;
492
492
  }, z.core.$strip>;
493
493
  export type PluginAIInspirationGenerateArgs = z.infer<typeof PluginAIInspirationGenerateArgs>;
@@ -537,8 +537,8 @@ export declare const PluginAIInspirationRefineArgs: z.ZodObject<{
537
537
  sourceShapeId: z.ZodString;
538
538
  upscaleFactor: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<1.5>, z.ZodLiteral<2>, z.ZodLiteral<4>]>>;
539
539
  runMode: z.ZodOptional<z.ZodEnum<{
540
- blocking: "blocking";
541
540
  job: "job";
541
+ blocking: "blocking";
542
542
  }>>;
543
543
  }, z.core.$strip>;
544
544
  export type PluginAIInspirationRefineArgs = z.infer<typeof PluginAIInspirationRefineArgs>;
@@ -551,10 +551,10 @@ export type PluginAIInspirationJobProgress = z.infer<typeof PluginAIInspirationJ
551
551
  export declare const PluginAIInspirationJob: z.ZodObject<{
552
552
  jobId: z.ZodString;
553
553
  status: z.ZodEnum<{
554
- queued: "queued";
554
+ failed: "failed";
555
555
  running: "running";
556
+ queued: "queued";
556
557
  completed: "completed";
557
- failed: "failed";
558
558
  cancelled: "cancelled";
559
559
  }>;
560
560
  createdAt: z.ZodNumber;
@@ -618,10 +618,10 @@ export declare const PluginAIInspirationGetJobResult: z.ZodObject<{
618
618
  job: z.ZodObject<{
619
619
  jobId: z.ZodString;
620
620
  status: z.ZodEnum<{
621
- queued: "queued";
621
+ failed: "failed";
622
622
  running: "running";
623
+ queued: "queued";
623
624
  completed: "completed";
624
- failed: "failed";
625
625
  cancelled: "cancelled";
626
626
  }>;
627
627
  createdAt: z.ZodNumber;
@@ -682,10 +682,10 @@ export declare const PluginAIInspirationCancelJobResult: z.ZodObject<{
682
682
  job: z.ZodObject<{
683
683
  jobId: z.ZodString;
684
684
  status: z.ZodEnum<{
685
- queued: "queued";
685
+ failed: "failed";
686
686
  running: "running";
687
+ queued: "queued";
687
688
  completed: "completed";
688
- failed: "failed";
689
689
  cancelled: "cancelled";
690
690
  }>;
691
691
  createdAt: z.ZodNumber;
@@ -746,10 +746,10 @@ export declare const PluginAIInspirationListJobsResult: z.ZodObject<{
746
746
  jobs: z.ZodArray<z.ZodObject<{
747
747
  jobId: z.ZodString;
748
748
  status: z.ZodEnum<{
749
- queued: "queued";
749
+ failed: "failed";
750
750
  running: "running";
751
+ queued: "queued";
751
752
  completed: "completed";
752
- failed: "failed";
753
753
  cancelled: "cancelled";
754
754
  }>;
755
755
  createdAt: z.ZodNumber;
@@ -873,8 +873,8 @@ export declare const PluginAIInspirationWorkflowNode: z.ZodObject<{
873
873
  }>;
874
874
  state: z.ZodString;
875
875
  runState: z.ZodOptional<z.ZodEnum<{
876
- running: "running";
877
876
  failed: "failed";
877
+ running: "running";
878
878
  current: "current";
879
879
  stale: "stale";
880
880
  superseded: "superseded";
@@ -928,8 +928,8 @@ export declare const PluginAIInspirationWorkflowEdge: z.ZodObject<{
928
928
  }, z.core.$strip>;
929
929
  state: z.ZodString;
930
930
  runState: z.ZodOptional<z.ZodEnum<{
931
- running: "running";
932
931
  failed: "failed";
932
+ running: "running";
933
933
  current: "current";
934
934
  stale: "stale";
935
935
  superseded: "superseded";
@@ -956,8 +956,8 @@ export declare const PluginAIInspirationWorkflow: z.ZodObject<{
956
956
  }>;
957
957
  state: z.ZodString;
958
958
  runState: z.ZodOptional<z.ZodEnum<{
959
- running: "running";
960
959
  failed: "failed";
960
+ running: "running";
961
961
  current: "current";
962
962
  stale: "stale";
963
963
  superseded: "superseded";
@@ -1010,8 +1010,8 @@ export declare const PluginAIInspirationWorkflow: z.ZodObject<{
1010
1010
  }, z.core.$strip>;
1011
1011
  state: z.ZodString;
1012
1012
  runState: z.ZodOptional<z.ZodEnum<{
1013
- running: "running";
1014
1013
  failed: "failed";
1014
+ running: "running";
1015
1015
  current: "current";
1016
1016
  stale: "stale";
1017
1017
  superseded: "superseded";
@@ -1046,8 +1046,8 @@ export declare const PluginAIInspirationGetWorkflowForShapeResult: z.ZodObject<{
1046
1046
  }>;
1047
1047
  state: z.ZodString;
1048
1048
  runState: z.ZodOptional<z.ZodEnum<{
1049
- running: "running";
1050
1049
  failed: "failed";
1050
+ running: "running";
1051
1051
  current: "current";
1052
1052
  stale: "stale";
1053
1053
  superseded: "superseded";
@@ -1100,8 +1100,8 @@ export declare const PluginAIInspirationGetWorkflowForShapeResult: z.ZodObject<{
1100
1100
  }, z.core.$strip>;
1101
1101
  state: z.ZodString;
1102
1102
  runState: z.ZodOptional<z.ZodEnum<{
1103
- running: "running";
1104
1103
  failed: "failed";
1104
+ running: "running";
1105
1105
  current: "current";
1106
1106
  stale: "stale";
1107
1107
  superseded: "superseded";
@@ -1125,8 +1125,8 @@ export declare const PluginAIInspirationGetWorkflowForShapeResult: z.ZodObject<{
1125
1125
  }>;
1126
1126
  state: z.ZodString;
1127
1127
  runState: z.ZodOptional<z.ZodEnum<{
1128
- running: "running";
1129
1128
  failed: "failed";
1129
+ running: "running";
1130
1130
  current: "current";
1131
1131
  stale: "stale";
1132
1132
  superseded: "superseded";
@@ -1153,8 +1153,8 @@ export declare const PluginAIInspirationRerunPlanResult: z.ZodDiscriminatedUnion
1153
1153
  }>;
1154
1154
  state: z.ZodString;
1155
1155
  runState: z.ZodOptional<z.ZodEnum<{
1156
- running: "running";
1157
1156
  failed: "failed";
1157
+ running: "running";
1158
1158
  current: "current";
1159
1159
  stale: "stale";
1160
1160
  superseded: "superseded";
@@ -1208,8 +1208,8 @@ export declare const PluginAIInspirationRerunPlanResult: z.ZodDiscriminatedUnion
1208
1208
  }, z.core.$strip>;
1209
1209
  state: z.ZodString;
1210
1210
  runState: z.ZodOptional<z.ZodEnum<{
1211
- running: "running";
1212
1211
  failed: "failed";
1212
+ running: "running";
1213
1213
  current: "current";
1214
1214
  stale: "stale";
1215
1215
  superseded: "superseded";
@@ -1334,8 +1334,8 @@ export declare const PluginAIInspirationRerunSelectedBranchArgs: z.ZodObject<{
1334
1334
  shapeId: z.ZodString;
1335
1335
  endFrameShapeId: z.ZodOptional<z.ZodString>;
1336
1336
  runMode: z.ZodOptional<z.ZodEnum<{
1337
- blocking: "blocking";
1338
1337
  job: "job";
1338
+ blocking: "blocking";
1339
1339
  }>>;
1340
1340
  }, z.core.$strip>;
1341
1341
  export type PluginAIInspirationRerunSelectedBranchArgs = z.infer<typeof PluginAIInspirationRerunSelectedBranchArgs>;
@@ -2026,8 +2026,8 @@ export declare const PluginAIInspirationRunRecipeArgs: z.ZodObject<{
2026
2026
  }, unknown>>>;
2027
2027
  slotShapeIds: z.ZodRecord<z.ZodString, z.ZodString>;
2028
2028
  runMode: z.ZodOptional<z.ZodEnum<{
2029
- blocking: "blocking";
2030
2029
  job: "job";
2030
+ blocking: "blocking";
2031
2031
  }>>;
2032
2032
  }, z.core.$strip>;
2033
2033
  export type PluginAIInspirationRunRecipeArgs = z.infer<typeof PluginAIInspirationRunRecipeArgs>;