@snaptrude/plugin-core 0.0.0-bimsvg-20260928124803

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 (383) hide show
  1. package/AGENTS.md +231 -0
  2. package/CHANGELOG.md +341 -0
  3. package/CLAUDE.md +11 -0
  4. package/api-manifest.json +9120 -0
  5. package/dist/api/analysis/daylight.d.ts +603 -0
  6. package/dist/api/analysis/daylight.d.ts.map +1 -0
  7. package/dist/api/analysis/heatmaps.d.ts +658 -0
  8. package/dist/api/analysis/heatmaps.d.ts.map +1 -0
  9. package/dist/api/analysis/illuminance.d.ts +145 -0
  10. package/dist/api/analysis/illuminance.d.ts.map +1 -0
  11. package/dist/api/analysis/index.d.ts +59 -0
  12. package/dist/api/analysis/index.d.ts.map +1 -0
  13. package/dist/api/analysis/shadows.d.ts +165 -0
  14. package/dist/api/analysis/shadows.d.ts.map +1 -0
  15. package/dist/api/analysis/solar.d.ts +249 -0
  16. package/dist/api/analysis/solar.d.ts.map +1 -0
  17. package/dist/api/analysis/sunlightHours.d.ts +208 -0
  18. package/dist/api/analysis/sunlightHours.d.ts.map +1 -0
  19. package/dist/api/analysis/sunpath.d.ts +80 -0
  20. package/dist/api/analysis/sunpath.d.ts.map +1 -0
  21. package/dist/api/analysis/weather.d.ts +193 -0
  22. package/dist/api/analysis/weather.d.ts.map +1 -0
  23. package/dist/api/core/buildings.d.ts +427 -0
  24. package/dist/api/core/buildings.d.ts.map +1 -0
  25. package/dist/api/core/camera/index.d.ts +261 -0
  26. package/dist/api/core/camera/index.d.ts.map +1 -0
  27. package/dist/api/core/comment/index.d.ts +333 -0
  28. package/dist/api/core/comment/index.d.ts.map +1 -0
  29. package/dist/api/core/geom/create/index.d.ts +1073 -0
  30. package/dist/api/core/geom/create/index.d.ts.map +1 -0
  31. package/dist/api/core/geom/delete/index.d.ts +78 -0
  32. package/dist/api/core/geom/delete/index.d.ts.map +1 -0
  33. package/dist/api/core/geom/index.d.ts +33 -0
  34. package/dist/api/core/geom/index.d.ts.map +1 -0
  35. package/dist/api/core/geom/query/arc.d.ts +169 -0
  36. package/dist/api/core/geom/query/arc.d.ts.map +1 -0
  37. package/dist/api/core/geom/query/brep.d.ts +514 -0
  38. package/dist/api/core/geom/query/brep.d.ts.map +1 -0
  39. package/dist/api/core/geom/query/circle.d.ts +378 -0
  40. package/dist/api/core/geom/query/circle.d.ts.map +1 -0
  41. package/dist/api/core/geom/query/contour.d.ts +450 -0
  42. package/dist/api/core/geom/query/contour.d.ts.map +1 -0
  43. package/dist/api/core/geom/query/curve.d.ts +918 -0
  44. package/dist/api/core/geom/query/curve.d.ts.map +1 -0
  45. package/dist/api/core/geom/query/edge.d.ts +128 -0
  46. package/dist/api/core/geom/query/edge.d.ts.map +1 -0
  47. package/dist/api/core/geom/query/face.d.ts +363 -0
  48. package/dist/api/core/geom/query/face.d.ts.map +1 -0
  49. package/dist/api/core/geom/query/halfedge.d.ts +206 -0
  50. package/dist/api/core/geom/query/halfedge.d.ts.map +1 -0
  51. package/dist/api/core/geom/query/index.d.ts +61 -0
  52. package/dist/api/core/geom/query/index.d.ts.map +1 -0
  53. package/dist/api/core/geom/query/profile.d.ts +410 -0
  54. package/dist/api/core/geom/query/profile.d.ts.map +1 -0
  55. package/dist/api/core/geom/query/vertex.d.ts +187 -0
  56. package/dist/api/core/geom/query/vertex.d.ts.map +1 -0
  57. package/dist/api/core/geom/update/contour.d.ts +272 -0
  58. package/dist/api/core/geom/update/contour.d.ts.map +1 -0
  59. package/dist/api/core/geom/update/curve.d.ts +180 -0
  60. package/dist/api/core/geom/update/curve.d.ts.map +1 -0
  61. package/dist/api/core/geom/update/index.d.ts +27 -0
  62. package/dist/api/core/geom/update/index.d.ts.map +1 -0
  63. package/dist/api/core/geom/update/profile.d.ts +329 -0
  64. package/dist/api/core/geom/update/profile.d.ts.map +1 -0
  65. package/dist/api/core/groups.d.ts +485 -0
  66. package/dist/api/core/groups.d.ts.map +1 -0
  67. package/dist/api/core/handles/index.d.ts +210 -0
  68. package/dist/api/core/handles/index.d.ts.map +1 -0
  69. package/dist/api/core/history/index.d.ts +78 -0
  70. package/dist/api/core/history/index.d.ts.map +1 -0
  71. package/dist/api/core/index.d.ts +97 -0
  72. package/dist/api/core/index.d.ts.map +1 -0
  73. package/dist/api/core/io/export/index.d.ts +134 -0
  74. package/dist/api/core/io/export/index.d.ts.map +1 -0
  75. package/dist/api/core/io/import/index.d.ts +455 -0
  76. package/dist/api/core/io/import/index.d.ts.map +1 -0
  77. package/dist/api/core/io/index.d.ts +40 -0
  78. package/dist/api/core/io/index.d.ts.map +1 -0
  79. package/dist/api/core/io/job/index.d.ts +139 -0
  80. package/dist/api/core/io/job/index.d.ts.map +1 -0
  81. package/dist/api/core/io/query/index.d.ts +74 -0
  82. package/dist/api/core/io/query/index.d.ts.map +1 -0
  83. package/dist/api/core/io/terrain/index.d.ts +341 -0
  84. package/dist/api/core/io/terrain/index.d.ts.map +1 -0
  85. package/dist/api/core/io/underlay/index.d.ts +805 -0
  86. package/dist/api/core/io/underlay/index.d.ts.map +1 -0
  87. package/dist/api/core/layers.d.ts +402 -0
  88. package/dist/api/core/layers.d.ts.map +1 -0
  89. package/dist/api/core/math/index.d.ts +18 -0
  90. package/dist/api/core/math/index.d.ts.map +1 -0
  91. package/dist/api/core/math/quat.d.ts +170 -0
  92. package/dist/api/core/math/quat.d.ts.map +1 -0
  93. package/dist/api/core/math/vec3.d.ts +174 -0
  94. package/dist/api/core/math/vec3.d.ts.map +1 -0
  95. package/dist/api/core/mode/index.d.ts +111 -0
  96. package/dist/api/core/mode/index.d.ts.map +1 -0
  97. package/dist/api/core/project/index.d.ts +466 -0
  98. package/dist/api/core/project/index.d.ts.map +1 -0
  99. package/dist/api/core/proposals/index.d.ts +531 -0
  100. package/dist/api/core/proposals/index.d.ts.map +1 -0
  101. package/dist/api/core/storeys/index.d.ts +265 -0
  102. package/dist/api/core/storeys/index.d.ts.map +1 -0
  103. package/dist/api/core/tags.d.ts +860 -0
  104. package/dist/api/core/tags.d.ts.map +1 -0
  105. package/dist/api/core/units/index.d.ts +175 -0
  106. package/dist/api/core/units/index.d.ts.map +1 -0
  107. package/dist/api/core/user.d.ts +44 -0
  108. package/dist/api/core/user.d.ts.map +1 -0
  109. package/dist/api/core/zoom/index.d.ts +49 -0
  110. package/dist/api/core/zoom/index.d.ts.map +1 -0
  111. package/dist/api/design/boolean/index.d.ts +168 -0
  112. package/dist/api/design/boolean/index.d.ts.map +1 -0
  113. package/dist/api/design/create/bulk-items.d.ts +185 -0
  114. package/dist/api/design/create/bulk-items.d.ts.map +1 -0
  115. package/dist/api/design/create/grids.d.ts +132 -0
  116. package/dist/api/design/create/grids.d.ts.map +1 -0
  117. package/dist/api/design/create/index.d.ts +1747 -0
  118. package/dist/api/design/create/index.d.ts.map +1 -0
  119. package/dist/api/design/create/opening-fields.d.ts +37 -0
  120. package/dist/api/design/create/opening-fields.d.ts.map +1 -0
  121. package/dist/api/design/delete/index.d.ts +70 -0
  122. package/dist/api/design/delete/index.d.ts.map +1 -0
  123. package/dist/api/design/dimensions.d.ts +427 -0
  124. package/dist/api/design/dimensions.d.ts.map +1 -0
  125. package/dist/api/design/doors/index.d.ts +470 -0
  126. package/dist/api/design/doors/index.d.ts.map +1 -0
  127. package/dist/api/design/edit/index.d.ts +49 -0
  128. package/dist/api/design/edit/index.d.ts.map +1 -0
  129. package/dist/api/design/erase/index.d.ts +160 -0
  130. package/dist/api/design/erase/index.d.ts.map +1 -0
  131. package/dist/api/design/family.d.ts +611 -0
  132. package/dist/api/design/family.d.ts.map +1 -0
  133. package/dist/api/design/furniture/index.d.ts +296 -0
  134. package/dist/api/design/furniture/index.d.ts.map +1 -0
  135. package/dist/api/design/grids.d.ts +237 -0
  136. package/dist/api/design/grids.d.ts.map +1 -0
  137. package/dist/api/design/index.d.ts +260 -0
  138. package/dist/api/design/index.d.ts.map +1 -0
  139. package/dist/api/design/lock.d.ts +67 -0
  140. package/dist/api/design/lock.d.ts.map +1 -0
  141. package/dist/api/design/materials/index.d.ts +551 -0
  142. package/dist/api/design/materials/index.d.ts.map +1 -0
  143. package/dist/api/design/query/geometry/index.d.ts +252 -0
  144. package/dist/api/design/query/geometry/index.d.ts.map +1 -0
  145. package/dist/api/design/query/grids.d.ts +287 -0
  146. package/dist/api/design/query/grids.d.ts.map +1 -0
  147. package/dist/api/design/query/index.d.ts +1318 -0
  148. package/dist/api/design/query/index.d.ts.map +1 -0
  149. package/dist/api/design/query/referenceLines.d.ts +45 -0
  150. package/dist/api/design/query/referenceLines.d.ts.map +1 -0
  151. package/dist/api/design/query/spaces.d.ts +394 -0
  152. package/dist/api/design/query/spaces.d.ts.map +1 -0
  153. package/dist/api/design/selection/index.d.ts +282 -0
  154. package/dist/api/design/selection/index.d.ts.map +1 -0
  155. package/dist/api/design/shared.d.ts +38 -0
  156. package/dist/api/design/shared.d.ts.map +1 -0
  157. package/dist/api/design/transform/index.d.ts +249 -0
  158. package/dist/api/design/transform/index.d.ts.map +1 -0
  159. package/dist/api/design/types/index.d.ts +181 -0
  160. package/dist/api/design/types/index.d.ts.map +1 -0
  161. package/dist/api/design/update/index.d.ts +803 -0
  162. package/dist/api/design/update/index.d.ts.map +1 -0
  163. package/dist/api/design/visibility.d.ts +126 -0
  164. package/dist/api/design/visibility.d.ts.map +1 -0
  165. package/dist/api/design/windows/index.d.ts +300 -0
  166. package/dist/api/design/windows/index.d.ts.map +1 -0
  167. package/dist/api/entity/buildableEnvelope.d.ts +265 -0
  168. package/dist/api/entity/buildableEnvelope.d.ts.map +1 -0
  169. package/dist/api/entity/department.d.ts +1 -0
  170. package/dist/api/entity/department.d.ts.map +1 -0
  171. package/dist/api/entity/index.d.ts +28 -0
  172. package/dist/api/entity/index.d.ts.map +1 -0
  173. package/dist/api/entity/referenceLine.d.ts +210 -0
  174. package/dist/api/entity/referenceLine.d.ts.map +1 -0
  175. package/dist/api/entity/space.d.ts +846 -0
  176. package/dist/api/entity/space.d.ts.map +1 -0
  177. package/dist/api/entity/story.d.ts +476 -0
  178. package/dist/api/entity/story.d.ts.map +1 -0
  179. package/dist/api/index.d.ts +45 -0
  180. package/dist/api/index.d.ts.map +1 -0
  181. package/dist/api/presentation/aiInspiration.d.ts +2400 -0
  182. package/dist/api/presentation/aiInspiration.d.ts.map +1 -0
  183. package/dist/api/presentation/annotate.d.ts +483 -0
  184. package/dist/api/presentation/annotate.d.ts.map +1 -0
  185. package/dist/api/presentation/diagrams.d.ts +184 -0
  186. package/dist/api/presentation/diagrams.d.ts.map +1 -0
  187. package/dist/api/presentation/drawings.d.ts +2900 -0
  188. package/dist/api/presentation/drawings.d.ts.map +1 -0
  189. package/dist/api/presentation/export.d.ts +126 -0
  190. package/dist/api/presentation/export.d.ts.map +1 -0
  191. package/dist/api/presentation/import.d.ts +164 -0
  192. package/dist/api/presentation/import.d.ts.map +1 -0
  193. package/dist/api/presentation/index.d.ts +114 -0
  194. package/dist/api/presentation/index.d.ts.map +1 -0
  195. package/dist/api/presentation/placedViews.d.ts +1232 -0
  196. package/dist/api/presentation/placedViews.d.ts.map +1 -0
  197. package/dist/api/presentation/shapes.d.ts +481 -0
  198. package/dist/api/presentation/shapes.d.ts.map +1 -0
  199. package/dist/api/presentation/sheets.d.ts +643 -0
  200. package/dist/api/presentation/sheets.d.ts.map +1 -0
  201. package/dist/api/presentation/slideshow.d.ts +125 -0
  202. package/dist/api/presentation/slideshow.d.ts.map +1 -0
  203. package/dist/api/presentation/tables.d.ts +81 -0
  204. package/dist/api/presentation/tables.d.ts.map +1 -0
  205. package/dist/api/presentation/viewPresets.d.ts +70 -0
  206. package/dist/api/presentation/viewPresets.d.ts.map +1 -0
  207. package/dist/api/presentation/views.d.ts +741 -0
  208. package/dist/api/presentation/views.d.ts.map +1 -0
  209. package/dist/api/program/adjacency.d.ts +155 -0
  210. package/dist/api/program/adjacency.d.ts.map +1 -0
  211. package/dist/api/program/areas.d.ts +450 -0
  212. package/dist/api/program/areas.d.ts.map +1 -0
  213. package/dist/api/program/classification.d.ts +135 -0
  214. package/dist/api/program/classification.d.ts.map +1 -0
  215. package/dist/api/program/cores.d.ts +78 -0
  216. package/dist/api/program/cores.d.ts.map +1 -0
  217. package/dist/api/program/departments.d.ts +487 -0
  218. package/dist/api/program/departments.d.ts.map +1 -0
  219. package/dist/api/program/index.d.ts +71 -0
  220. package/dist/api/program/index.d.ts.map +1 -0
  221. package/dist/api/program/labels.d.ts +355 -0
  222. package/dist/api/program/labels.d.ts.map +1 -0
  223. package/dist/api/program/layout.d.ts +398 -0
  224. package/dist/api/program/layout.d.ts.map +1 -0
  225. package/dist/api/program/metadata.d.ts +328 -0
  226. package/dist/api/program/metadata.d.ts.map +1 -0
  227. package/dist/api/program/metrics.d.ts +108 -0
  228. package/dist/api/program/metrics.d.ts.map +1 -0
  229. package/dist/api/program/site.d.ts +823 -0
  230. package/dist/api/program/site.d.ts.map +1 -0
  231. package/dist/api/program/spreadsheet.d.ts +2628 -0
  232. package/dist/api/program/spreadsheet.d.ts.map +1 -0
  233. package/dist/api/workspace/index.d.ts +552 -0
  234. package/dist/api/workspace/index.d.ts.map +1 -0
  235. package/dist/errors/codes.d.ts +34 -0
  236. package/dist/errors/codes.d.ts.map +1 -0
  237. package/dist/errors/envelope.d.ts +56 -0
  238. package/dist/errors/envelope.d.ts.map +1 -0
  239. package/dist/errors/index.d.ts +6 -0
  240. package/dist/errors/index.d.ts.map +1 -0
  241. package/dist/errors/plugin-error.d.ts +69 -0
  242. package/dist/errors/plugin-error.d.ts.map +1 -0
  243. package/dist/handles.d.ts +229 -0
  244. package/dist/handles.d.ts.map +1 -0
  245. package/dist/host-utils.d.ts +47 -0
  246. package/dist/host-utils.d.ts.map +1 -0
  247. package/dist/index.cjs +8836 -0
  248. package/dist/index.cjs.map +1 -0
  249. package/dist/index.d.ts +6 -0
  250. package/dist/index.d.ts.map +1 -0
  251. package/dist/index.js +7568 -0
  252. package/dist/index.js.map +1 -0
  253. package/dist/types.d.ts +16 -0
  254. package/dist/types.d.ts.map +1 -0
  255. package/package.json +41 -0
  256. package/scripts/generate-manifest.mjs +238 -0
  257. package/scripts/generate-manifest.test.mjs +292 -0
  258. package/src/api/analysis/daylight.ts +470 -0
  259. package/src/api/analysis/heatmaps.ts +683 -0
  260. package/src/api/analysis/illuminance.ts +155 -0
  261. package/src/api/analysis/index.ts +61 -0
  262. package/src/api/analysis/shadows.ts +183 -0
  263. package/src/api/analysis/solar.ts +237 -0
  264. package/src/api/analysis/sunlightHours.ts +211 -0
  265. package/src/api/analysis/sunpath.ts +83 -0
  266. package/src/api/analysis/weather.ts +179 -0
  267. package/src/api/core/buildings.ts +485 -0
  268. package/src/api/core/camera/index.ts +268 -0
  269. package/src/api/core/comment/index.ts +376 -0
  270. package/src/api/core/geom/create/index.ts +1204 -0
  271. package/src/api/core/geom/delete/index.ts +84 -0
  272. package/src/api/core/geom/index.ts +35 -0
  273. package/src/api/core/geom/query/arc.ts +169 -0
  274. package/src/api/core/geom/query/brep.ts +563 -0
  275. package/src/api/core/geom/query/circle.ts +404 -0
  276. package/src/api/core/geom/query/contour.ts +540 -0
  277. package/src/api/core/geom/query/curve.ts +1078 -0
  278. package/src/api/core/geom/query/edge.ts +130 -0
  279. package/src/api/core/geom/query/face.ts +403 -0
  280. package/src/api/core/geom/query/halfedge.ts +210 -0
  281. package/src/api/core/geom/query/index.ts +63 -0
  282. package/src/api/core/geom/query/profile.ts +473 -0
  283. package/src/api/core/geom/query/vertex.ts +205 -0
  284. package/src/api/core/geom/update/contour.ts +315 -0
  285. package/src/api/core/geom/update/curve.ts +209 -0
  286. package/src/api/core/geom/update/index.ts +29 -0
  287. package/src/api/core/geom/update/profile.ts +377 -0
  288. package/src/api/core/groups.ts +521 -0
  289. package/src/api/core/handles/index.ts +233 -0
  290. package/src/api/core/history/index.ts +84 -0
  291. package/src/api/core/index.ts +99 -0
  292. package/src/api/core/io/export/index.ts +126 -0
  293. package/src/api/core/io/import/index.ts +504 -0
  294. package/src/api/core/io/index.ts +42 -0
  295. package/src/api/core/io/job/index.ts +140 -0
  296. package/src/api/core/io/query/index.ts +71 -0
  297. package/src/api/core/io/terrain/index.ts +360 -0
  298. package/src/api/core/io/underlay/index.ts +705 -0
  299. package/src/api/core/layers.ts +333 -0
  300. package/src/api/core/math/index.ts +20 -0
  301. package/src/api/core/math/quat.ts +172 -0
  302. package/src/api/core/math/vec3.ts +179 -0
  303. package/src/api/core/mode/index.ts +108 -0
  304. package/src/api/core/project/index.ts +479 -0
  305. package/src/api/core/proposals/index.ts +569 -0
  306. package/src/api/core/storeys/index.ts +294 -0
  307. package/src/api/core/tags.ts +911 -0
  308. package/src/api/core/units/index.ts +164 -0
  309. package/src/api/core/user.ts +46 -0
  310. package/src/api/core/zoom/index.ts +51 -0
  311. package/src/api/design/boolean/index.ts +179 -0
  312. package/src/api/design/create/bulk-items.ts +186 -0
  313. package/src/api/design/create/grids.ts +137 -0
  314. package/src/api/design/create/index.ts +1954 -0
  315. package/src/api/design/create/opening-fields.ts +37 -0
  316. package/src/api/design/delete/index.ts +74 -0
  317. package/src/api/design/dimensions.ts +453 -0
  318. package/src/api/design/doors/index.ts +500 -0
  319. package/src/api/design/edit/index.ts +54 -0
  320. package/src/api/design/erase/index.ts +151 -0
  321. package/src/api/design/family.ts +646 -0
  322. package/src/api/design/furniture/index.ts +319 -0
  323. package/src/api/design/grids.ts +237 -0
  324. package/src/api/design/index.ts +274 -0
  325. package/src/api/design/lock.ts +69 -0
  326. package/src/api/design/materials/index.ts +608 -0
  327. package/src/api/design/query/geometry/index.ts +288 -0
  328. package/src/api/design/query/grids.ts +197 -0
  329. package/src/api/design/query/index.ts +1176 -0
  330. package/src/api/design/query/referenceLines.ts +52 -0
  331. package/src/api/design/query/spaces.ts +275 -0
  332. package/src/api/design/selection/index.ts +273 -0
  333. package/src/api/design/shared.ts +40 -0
  334. package/src/api/design/transform/index.ts +254 -0
  335. package/src/api/design/types/index.ts +156 -0
  336. package/src/api/design/update/index.ts +798 -0
  337. package/src/api/design/visibility.ts +143 -0
  338. package/src/api/design/windows/index.ts +333 -0
  339. package/src/api/entity/buildableEnvelope.ts +322 -0
  340. package/src/api/entity/department.ts +0 -0
  341. package/src/api/entity/index.ts +30 -0
  342. package/src/api/entity/referenceLine.ts +235 -0
  343. package/src/api/entity/space.ts +612 -0
  344. package/src/api/entity/story.ts +517 -0
  345. package/src/api/index.ts +47 -0
  346. package/src/api/presentation/aiInspiration.ts +1116 -0
  347. package/src/api/presentation/annotate.ts +417 -0
  348. package/src/api/presentation/diagrams.ts +194 -0
  349. package/src/api/presentation/drawings.ts +529 -0
  350. package/src/api/presentation/export.ts +133 -0
  351. package/src/api/presentation/import.ts +159 -0
  352. package/src/api/presentation/index.ts +129 -0
  353. package/src/api/presentation/placedViews.ts +1203 -0
  354. package/src/api/presentation/shapes.ts +274 -0
  355. package/src/api/presentation/sheets.ts +616 -0
  356. package/src/api/presentation/slideshow.ts +134 -0
  357. package/src/api/presentation/tables.ts +84 -0
  358. package/src/api/presentation/viewPresets.ts +83 -0
  359. package/src/api/presentation/views.ts +698 -0
  360. package/src/api/program/adjacency.ts +164 -0
  361. package/src/api/program/areas.ts +408 -0
  362. package/src/api/program/classification.ts +138 -0
  363. package/src/api/program/cores.ts +83 -0
  364. package/src/api/program/departments.ts +517 -0
  365. package/src/api/program/index.ts +73 -0
  366. package/src/api/program/labels.ts +332 -0
  367. package/src/api/program/layout.ts +422 -0
  368. package/src/api/program/metadata.ts +364 -0
  369. package/src/api/program/metrics.ts +120 -0
  370. package/src/api/program/site.ts +748 -0
  371. package/src/api/program/spreadsheet.ts +2698 -0
  372. package/src/api/workspace/index.ts +612 -0
  373. package/src/errors/codes.ts +136 -0
  374. package/src/errors/envelope.ts +75 -0
  375. package/src/errors/index.ts +21 -0
  376. package/src/errors/plugin-error.ts +134 -0
  377. package/src/handles.ts +282 -0
  378. package/src/host-utils.ts +68 -0
  379. package/src/index.ts +5 -0
  380. package/src/types.ts +16 -0
  381. package/test/errors.test.mjs +184 -0
  382. package/tsconfig.json +22 -0
  383. package/tsup.config.ts +12 -0
@@ -0,0 +1,487 @@
1
+ import * as z from "zod";
2
+ import { PluginApiReturn } from "../../types";
3
+ import { PluginAreaUnit } from "./metrics";
4
+ import { ComponentHandle } from "../../handles";
5
+ /**
6
+ * Program departments — read the department groupings of the active program.
7
+ *
8
+ * In program mode a **department** is a named, colored grouping of spaces with an
9
+ * optional gross area **target** and a unit **count** target. This is the program-planning view of departments
10
+ * (their identity, color, and target area); the underlying space geometry is read
11
+ * and edited through the geometry namespaces, not here.
12
+ *
13
+ * All methods are reads: they return plain records and never throw for a missing
14
+ * department (`get` returns `null`, `list` returns `[]`).
15
+ *
16
+ * Accessed via `snaptrude.program.departments`.
17
+ */
18
+ export declare abstract class PluginProgramDepartmentsApi {
19
+ constructor();
20
+ /**
21
+ * List the departments in the active program.
22
+ *
23
+ * Returns every department — well-known (Default, Site, …) and user-created —
24
+ * with its identity, color, and area target (when one has been set).
25
+ *
26
+ * @returns A {@linkcode PluginProgramDepartmentsListResult} with a `departments`
27
+ * array (empty when the project has none).
28
+ *
29
+ * @examplePrompt List all the departments in my program
30
+ * @examplePrompt What program groups do I have and what are their target areas?
31
+ * @examplePrompt Show every department with its colour
32
+ * @examplePrompt Get the area target for each department
33
+ * @examplePrompt How many departments are in this project?
34
+ *
35
+ * # Example
36
+ * ```ts
37
+ * const { units, departments } = await snaptrude.program.departments.list()
38
+ * for (const d of departments) console.log(d.name, d.color, d.targetArea, units)
39
+ * ```
40
+ */
41
+ abstract list(): PluginApiReturn<PluginProgramDepartmentsListResult>;
42
+ /**
43
+ * Get a single department by id.
44
+ *
45
+ * @param departmentId - The id of the department to read.
46
+ * @returns The matching {@linkcode PluginProgramDepartment}, or `null` if no
47
+ * department has that id.
48
+ *
49
+ * @examplePrompt Get the department with id dep_123
50
+ * @examplePrompt Look up a single department by its id
51
+ * @examplePrompt What is the target area of this department id?
52
+ *
53
+ * # Example
54
+ * ```ts
55
+ * const dept = await snaptrude.program.departments.get("dep_123")
56
+ * if (dept) console.log(dept.name, dept.targetArea)
57
+ * ```
58
+ */
59
+ abstract get(departmentId: string): PluginApiReturn<PluginProgramDepartmentsGetResult>;
60
+ /**
61
+ * Create a new department in the active program.
62
+ *
63
+ * Adds a named, colored program grouping. The new department starts empty —
64
+ * put spaces in it with {@linkcode PluginProgramDepartmentsApi.assign}, and set
65
+ * its area goal with {@linkcode PluginProgramDepartmentsApi.setTargetArea}.
66
+ *
67
+ * @param name - Display name of the new department.
68
+ * @param color - CSS hex color string (e.g. `"#b5e1dc"`).
69
+ * @returns The new department's id (read the full record back with
70
+ * {@linkcode PluginProgramDepartmentsApi.get}).
71
+ * @throws If the department could not be created.
72
+ *
73
+ * @examplePrompt Create a department called Bedrooms in light blue
74
+ * @examplePrompt Add a new program group named Circulation with color #cccccc
75
+ * @examplePrompt Make a Classrooms department
76
+ * @examplePrompt Set up a Lobby department in the program
77
+ *
78
+ * # Example
79
+ * ```ts
80
+ * const { departmentId } = await snaptrude.program.departments.create("Bedrooms", "#b5e1dc")
81
+ * ```
82
+ */
83
+ abstract create(name: string, color: string): PluginApiReturn<PluginProgramDepartmentsCreateResult>;
84
+ /**
85
+ * Update a department's name and/or color.
86
+ *
87
+ * A **sparse** update: omitted fields are left unchanged. Use
88
+ * {@linkcode PluginProgramDepartmentsApi.setTargetArea} to change the area
89
+ * target (not this method).
90
+ *
91
+ * @param departmentId - The id of the department to update.
92
+ * @param options - Any of `name`, `color`; omitted fields are left unchanged.
93
+ * @returns The updated {@linkcode PluginProgramDepartment} (with the response
94
+ * `units` for its `targetArea`).
95
+ * @throws If no department has the given id.
96
+ *
97
+ * @examplePrompt Rename the Bedrooms department to Suites
98
+ * @examplePrompt Change the Circulation department colour to #ff8800
99
+ * @examplePrompt Recolour department dep_123
100
+ * @examplePrompt Update the Lobby department's display name
101
+ *
102
+ * # Example
103
+ * ```ts
104
+ * const dept = await snaptrude.program.departments.update("dep_123", { name: "Suites" })
105
+ * ```
106
+ */
107
+ abstract update(departmentId: string, options?: {
108
+ name?: string;
109
+ color?: string;
110
+ }): PluginApiReturn<PluginProgramDepartmentsUpdateResult>;
111
+ /**
112
+ * Assign one or more spaces to a department.
113
+ *
114
+ * Moves each space into the given department — an undoable membership change.
115
+ * A space belongs to exactly one department, so assigning re-homes it from any
116
+ * previous one. Paired with {@linkcode PluginProgramDepartmentsApi.unassign}.
117
+ *
118
+ * @param departmentId - The department to assign the spaces to.
119
+ * @param spaceIds - The ids of the spaces to move into the department (at
120
+ * least one).
121
+ * @returns The department and the space ids that were assigned.
122
+ * @throws If the department does not exist or a space id is invalid.
123
+ *
124
+ * @examplePrompt Assign the selected rooms to the Bedrooms department
125
+ * @examplePrompt Put spaces 12 and 13 in the Circulation department
126
+ * @examplePrompt Move this space into the Lobby department
127
+ * @examplePrompt Add the kitchen spaces to the Service department
128
+ *
129
+ * # Example
130
+ * ```ts
131
+ * await snaptrude.program.departments.assign("dep_123", ["sp_1", "sp_2"])
132
+ * ```
133
+ */
134
+ abstract assign(departmentId: string, spaceIds: ComponentHandle[]): PluginApiReturn<PluginProgramDepartmentsAssignResult>;
135
+ /**
136
+ * Remove one or more spaces from their department.
137
+ *
138
+ * Returns each space to the **Default** department — there is no "no
139
+ * department" state, so unassigning means reassigning to Default. Paired with
140
+ * {@linkcode PluginProgramDepartmentsApi.assign}.
141
+ *
142
+ * @param spaceIds - The ids of the spaces to remove from their current
143
+ * department (at least one).
144
+ * @returns The space ids that were returned to Default.
145
+ * @throws If a space id is invalid.
146
+ *
147
+ * @examplePrompt Remove the selected rooms from their department
148
+ * @examplePrompt Unassign space sp_1 from any department
149
+ * @examplePrompt Clear the department on these spaces
150
+ * @examplePrompt Take the kitchen out of the Service department
151
+ *
152
+ * # Example
153
+ * ```ts
154
+ * await snaptrude.program.departments.unassign(["sp_1"])
155
+ * ```
156
+ */
157
+ abstract unassign(spaceIds: ComponentHandle[]): PluginApiReturn<PluginProgramDepartmentsUnassignResult>;
158
+ /**
159
+ * Set a department's target area.
160
+ *
161
+ * The goal the program metrics compare allocated area against (see
162
+ * {@linkcode PluginProgramMetricsApi}). Pass `units` to say what unit
163
+ * `targetArea` is in; it defaults to the project's area units. Read the target
164
+ * back from {@linkcode PluginProgramDepartmentsApi.get} (`targetArea`).
165
+ *
166
+ * @param departmentId - The id of the department whose target to set.
167
+ * @param targetArea - The target area, in `units`.
168
+ * @param units - Unit of `targetArea` (defaults to the project's area units).
169
+ * @returns The updated {@linkcode PluginProgramDepartment} with its `units`.
170
+ * @throws If no department has the given id.
171
+ *
172
+ * @examplePrompt Set the Bedrooms department target area to 2000 sqft
173
+ * @examplePrompt Give the Circulation department a 500 sqm area target
174
+ * @examplePrompt Target 1500 square feet for the Classrooms department
175
+ * @examplePrompt Update the area goal for department dep_123
176
+ *
177
+ * # Example
178
+ * ```ts
179
+ * await snaptrude.program.departments.setTargetArea("dep_123", 2000, "ft2")
180
+ * ```
181
+ */
182
+ abstract setTargetArea(departmentId: string, targetArea: number, units?: PluginAreaUnit): PluginApiReturn<PluginProgramDepartmentsSetTargetAreaResult>;
183
+ /**
184
+ * Set a department's target unit count.
185
+ *
186
+ * The number of units (program blocks) the department is planned for — the
187
+ * count twin of {@linkcode PluginProgramDepartmentsApi.setTargetArea}, stored
188
+ * beside the gross area target on the department. Read it back from
189
+ * {@linkcode PluginProgramDepartmentsApi.get} (`targetCount`).
190
+ *
191
+ * @param departmentId - The id of the department whose count to set.
192
+ * @param targetCount - The target number of units (a non-negative integer).
193
+ * @returns The updated {@linkcode PluginProgramDepartment} with its `units`.
194
+ * @throws If no department has the given id.
195
+ *
196
+ * @examplePrompt Set the Bedrooms department unit count to 12
197
+ * @examplePrompt The program needs 4 clinic blocks — update the department count
198
+ * @examplePrompt Update the target count for department dep_123
199
+ *
200
+ * # Example
201
+ * ```ts
202
+ * await snaptrude.program.departments.setTargetCount("dep_123", 12)
203
+ * ```
204
+ */
205
+ abstract setTargetCount(departmentId: string, targetCount: number): PluginApiReturn<PluginProgramDepartmentsSetTargetCountResult>;
206
+ /**
207
+ * Delete a department.
208
+ *
209
+ * Any spaces still assigned to it are returned to the **Default** department
210
+ * (no space is left orphaned). The reserved departments (Default, Site,
211
+ * Envelope, Core) cannot be deleted.
212
+ *
213
+ * @param departmentId - The id of the department to delete.
214
+ * @returns The id of the deleted department and the spaces that were reassigned
215
+ * to Default.
216
+ * @throws If no department has the given id, or it is a reserved department.
217
+ *
218
+ * @examplePrompt Delete the Bedrooms department
219
+ * @examplePrompt Remove the empty Circulation department
220
+ * @examplePrompt Delete department dep_123 and move its rooms to Default
221
+ *
222
+ * # Example
223
+ * ```ts
224
+ * await snaptrude.program.departments.delete("dep_123")
225
+ * ```
226
+ */
227
+ delete?: (departmentId: string) => PluginApiReturn<PluginProgramDepartmentsDeleteResult>;
228
+ }
229
+ /**
230
+ * A department in the active program. Its `targetArea` is in the enclosing
231
+ * response's `units` (see the area-units convention in
232
+ * {@linkcode PluginAreaUnit}).
233
+ *
234
+ * | Property | Type | Description |
235
+ * |---|---|---|
236
+ * | `id` | `string` | Unique department id |
237
+ * | `name` | `string` | Display name |
238
+ * | `color` | `string` | CSS hex color string (e.g. `"#b5e1dc"`) |
239
+ * | `targetArea` | `number \| null` | Gross target area in the response's `units`, or `null` if no target is set |
240
+ * | `targetCount` | `number` | Target number of units / program blocks (`0` when unset) |
241
+ */
242
+ export declare const PluginProgramDepartment: z.ZodObject<{
243
+ id: z.ZodString;
244
+ name: z.ZodString;
245
+ color: z.ZodString;
246
+ targetArea: z.ZodNullable<z.ZodNumber>;
247
+ targetCount: z.ZodNumber;
248
+ }, z.core.$strip>;
249
+ export type PluginProgramDepartment = z.infer<typeof PluginProgramDepartment>;
250
+ /**
251
+ * Result of {@linkcode PluginProgramDepartmentsApi.list}. Per the area-units
252
+ * convention, `units` sits on this response envelope (not on each record).
253
+ *
254
+ * | Property | Type | Description |
255
+ * |---|---|---|
256
+ * | `units` | `"ft2" \| "m2"` | The unit every `targetArea` below is reported in |
257
+ * | `departments` | {@linkcode PluginProgramDepartment}`[]` | All departments in the active program |
258
+ */
259
+ export declare const PluginProgramDepartmentsListResult: z.ZodObject<{
260
+ units: z.ZodEnum<{
261
+ ft2: "ft2";
262
+ m2: "m2";
263
+ }>;
264
+ departments: z.ZodArray<z.ZodObject<{
265
+ id: z.ZodString;
266
+ name: z.ZodString;
267
+ color: z.ZodString;
268
+ targetArea: z.ZodNullable<z.ZodNumber>;
269
+ targetCount: z.ZodNumber;
270
+ }, z.core.$strip>>;
271
+ }, z.core.$strip>;
272
+ export type PluginProgramDepartmentsListResult = z.infer<typeof PluginProgramDepartmentsListResult>;
273
+ /**
274
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.get}.
275
+ *
276
+ * | Property | Type | Description |
277
+ * |---|---|---|
278
+ * | `departmentId` | `string` | The id of the department to read |
279
+ */
280
+ export declare const PluginProgramDepartmentsGetArgs: z.ZodObject<{
281
+ departmentId: z.ZodString;
282
+ }, z.core.$strip>;
283
+ export type PluginProgramDepartmentsGetArgs = z.infer<typeof PluginProgramDepartmentsGetArgs>;
284
+ /**
285
+ * Result of {@linkcode PluginProgramDepartmentsApi.get} — the department, or
286
+ * `null` when no department has the given id. This is a bare `.get` record, so
287
+ * per the area-units convention `units` is carried on the record itself.
288
+ */
289
+ export declare const PluginProgramDepartmentsGetResult: z.ZodNullable<z.ZodObject<{
290
+ id: z.ZodString;
291
+ name: z.ZodString;
292
+ color: z.ZodString;
293
+ targetArea: z.ZodNullable<z.ZodNumber>;
294
+ targetCount: z.ZodNumber;
295
+ units: z.ZodEnum<{
296
+ ft2: "ft2";
297
+ m2: "m2";
298
+ }>;
299
+ }, z.core.$strip>>;
300
+ export type PluginProgramDepartmentsGetResult = z.infer<typeof PluginProgramDepartmentsGetResult>;
301
+ /**
302
+ * A department record with its area `units` — the shape returned by the
303
+ * single-record department writes (`update`, `setTargetArea`). Per the
304
+ * area-units convention, a bare record carries `units` on itself.
305
+ */
306
+ export declare const PluginProgramDepartmentRecord: z.ZodObject<{
307
+ id: z.ZodString;
308
+ name: z.ZodString;
309
+ color: z.ZodString;
310
+ targetArea: z.ZodNullable<z.ZodNumber>;
311
+ targetCount: z.ZodNumber;
312
+ units: z.ZodEnum<{
313
+ ft2: "ft2";
314
+ m2: "m2";
315
+ }>;
316
+ }, z.core.$strip>;
317
+ export type PluginProgramDepartmentRecord = z.infer<typeof PluginProgramDepartmentRecord>;
318
+ /**
319
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.create}.
320
+ *
321
+ * | Property | Type | Description |
322
+ * |---|---|---|
323
+ * | `name` | `string` | Display name of the new department |
324
+ * | `color` | `string` | CSS hex color string (e.g. `"#b5e1dc"`) |
325
+ */
326
+ export declare const PluginProgramDepartmentsCreateArgs: z.ZodObject<{
327
+ name: z.ZodString;
328
+ color: z.ZodString;
329
+ }, z.core.$strip>;
330
+ export type PluginProgramDepartmentsCreateArgs = z.infer<typeof PluginProgramDepartmentsCreateArgs>;
331
+ /**
332
+ * Result of {@linkcode PluginProgramDepartmentsApi.create} — the id of the
333
+ * newly created department.
334
+ */
335
+ export declare const PluginProgramDepartmentsCreateResult: z.ZodObject<{
336
+ departmentId: z.ZodString;
337
+ }, z.core.$strip>;
338
+ export type PluginProgramDepartmentsCreateResult = z.infer<typeof PluginProgramDepartmentsCreateResult>;
339
+ /**
340
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.update}. Sparse — only
341
+ * the provided fields are changed.
342
+ *
343
+ * | Property | Type | Description |
344
+ * |---|---|---|
345
+ * | `departmentId` | `string` | The id of the department to update |
346
+ * | `name` | `string \| undefined` | New display name (unchanged if omitted) |
347
+ * | `color` | `string \| undefined` | New CSS hex color (unchanged if omitted) |
348
+ */
349
+ export declare const PluginProgramDepartmentsUpdateArgs: z.ZodObject<{
350
+ departmentId: z.ZodString;
351
+ name: z.ZodOptional<z.ZodString>;
352
+ color: z.ZodOptional<z.ZodString>;
353
+ }, z.core.$strip>;
354
+ export type PluginProgramDepartmentsUpdateArgs = z.infer<typeof PluginProgramDepartmentsUpdateArgs>;
355
+ /** Result of {@linkcode PluginProgramDepartmentsApi.update} — the updated record. */
356
+ export declare const PluginProgramDepartmentsUpdateResult: z.ZodObject<{
357
+ id: z.ZodString;
358
+ name: z.ZodString;
359
+ color: z.ZodString;
360
+ targetArea: z.ZodNullable<z.ZodNumber>;
361
+ targetCount: z.ZodNumber;
362
+ units: z.ZodEnum<{
363
+ ft2: "ft2";
364
+ m2: "m2";
365
+ }>;
366
+ }, z.core.$strip>;
367
+ export type PluginProgramDepartmentsUpdateResult = z.infer<typeof PluginProgramDepartmentsUpdateResult>;
368
+ /**
369
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.assign}.
370
+ *
371
+ * | Property | Type | Description |
372
+ * |---|---|---|
373
+ * | `departmentId` | `string` | The department to assign the spaces to |
374
+ * | `spaceIds` | `ComponentHandle[]` | The ids of the spaces to move into the department |
375
+ */
376
+ export declare const PluginProgramDepartmentsAssignArgs: z.ZodObject<{
377
+ departmentId: z.ZodString;
378
+ spaceIds: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
379
+ }, z.core.$strip>;
380
+ export type PluginProgramDepartmentsAssignArgs = z.infer<typeof PluginProgramDepartmentsAssignArgs>;
381
+ /** Result of {@linkcode PluginProgramDepartmentsApi.assign}. */
382
+ export declare const PluginProgramDepartmentsAssignResult: z.ZodObject<{
383
+ departmentId: z.ZodString;
384
+ spaceIds: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
385
+ }, z.core.$strip>;
386
+ export type PluginProgramDepartmentsAssignResult = z.infer<typeof PluginProgramDepartmentsAssignResult>;
387
+ /**
388
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.unassign}.
389
+ *
390
+ * | Property | Type | Description |
391
+ * |---|---|---|
392
+ * | `spaceIds` | `ComponentHandle[]` | The ids of the spaces to return to the Default department |
393
+ */
394
+ export declare const PluginProgramDepartmentsUnassignArgs: z.ZodObject<{
395
+ spaceIds: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
396
+ }, z.core.$strip>;
397
+ export type PluginProgramDepartmentsUnassignArgs = z.infer<typeof PluginProgramDepartmentsUnassignArgs>;
398
+ /** Result of {@linkcode PluginProgramDepartmentsApi.unassign}. */
399
+ export declare const PluginProgramDepartmentsUnassignResult: z.ZodObject<{
400
+ spaceIds: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
401
+ }, z.core.$strip>;
402
+ export type PluginProgramDepartmentsUnassignResult = z.infer<typeof PluginProgramDepartmentsUnassignResult>;
403
+ /**
404
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.setTargetArea}.
405
+ *
406
+ * | Property | Type | Description |
407
+ * |---|---|---|
408
+ * | `departmentId` | `string` | The id of the department whose target to set |
409
+ * | `targetArea` | `number` | The target area, in `units` |
410
+ * | `units` | `"ft2" \| "m2" \| undefined` | Unit of `targetArea` (defaults to the project's area units) |
411
+ */
412
+ export declare const PluginProgramDepartmentsSetTargetAreaArgs: z.ZodObject<{
413
+ departmentId: z.ZodString;
414
+ targetArea: z.ZodNumber;
415
+ units: z.ZodOptional<z.ZodEnum<{
416
+ ft2: "ft2";
417
+ m2: "m2";
418
+ }>>;
419
+ }, z.core.$strip>;
420
+ export type PluginProgramDepartmentsSetTargetAreaArgs = z.infer<typeof PluginProgramDepartmentsSetTargetAreaArgs>;
421
+ /**
422
+ * Result of {@linkcode PluginProgramDepartmentsApi.setTargetArea} — the updated
423
+ * department record with its `units`.
424
+ */
425
+ export declare const PluginProgramDepartmentsSetTargetAreaResult: z.ZodObject<{
426
+ id: z.ZodString;
427
+ name: z.ZodString;
428
+ color: z.ZodString;
429
+ targetArea: z.ZodNullable<z.ZodNumber>;
430
+ targetCount: z.ZodNumber;
431
+ units: z.ZodEnum<{
432
+ ft2: "ft2";
433
+ m2: "m2";
434
+ }>;
435
+ }, z.core.$strip>;
436
+ export type PluginProgramDepartmentsSetTargetAreaResult = z.infer<typeof PluginProgramDepartmentsSetTargetAreaResult>;
437
+ /**
438
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.setTargetCount}.
439
+ *
440
+ * | Property | Type | Description |
441
+ * |---|---|---|
442
+ * | `departmentId` | `string` | The id of the department whose count to set |
443
+ * | `targetCount` | `number` | Target number of units (non-negative integer) |
444
+ */
445
+ export declare const PluginProgramDepartmentsSetTargetCountArgs: z.ZodObject<{
446
+ departmentId: z.ZodString;
447
+ targetCount: z.ZodNumber;
448
+ }, z.core.$strip>;
449
+ export type PluginProgramDepartmentsSetTargetCountArgs = z.infer<typeof PluginProgramDepartmentsSetTargetCountArgs>;
450
+ /** Result of {@linkcode PluginProgramDepartmentsApi.setTargetCount} — the updated record with `units`. */
451
+ export declare const PluginProgramDepartmentsSetTargetCountResult: z.ZodObject<{
452
+ id: z.ZodString;
453
+ name: z.ZodString;
454
+ color: z.ZodString;
455
+ targetArea: z.ZodNullable<z.ZodNumber>;
456
+ targetCount: z.ZodNumber;
457
+ units: z.ZodEnum<{
458
+ ft2: "ft2";
459
+ m2: "m2";
460
+ }>;
461
+ }, z.core.$strip>;
462
+ export type PluginProgramDepartmentsSetTargetCountResult = z.infer<typeof PluginProgramDepartmentsSetTargetCountResult>;
463
+ /**
464
+ * Arguments for {@linkcode PluginProgramDepartmentsApi.delete}.
465
+ *
466
+ * | Property | Type | Description |
467
+ * |---|---|---|
468
+ * | `departmentId` | `string` | The id of the department to delete |
469
+ */
470
+ export declare const PluginProgramDepartmentsDeleteArgs: z.ZodObject<{
471
+ departmentId: z.ZodString;
472
+ }, z.core.$strip>;
473
+ export type PluginProgramDepartmentsDeleteArgs = z.infer<typeof PluginProgramDepartmentsDeleteArgs>;
474
+ /**
475
+ * Result of {@linkcode PluginProgramDepartmentsApi.delete}.
476
+ *
477
+ * | Property | Type | Description |
478
+ * |---|---|---|
479
+ * | `departmentId` | `string` | The id of the deleted department |
480
+ * | `reassignedSpaceIds` | `ComponentHandle[]` | Spaces that were returned to the Default department |
481
+ */
482
+ export declare const PluginProgramDepartmentsDeleteResult: z.ZodObject<{
483
+ departmentId: z.ZodString;
484
+ reassignedSpaceIds: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<ComponentHandle, string>>>;
485
+ }, z.core.$strip>;
486
+ export type PluginProgramDepartmentsDeleteResult = z.infer<typeof PluginProgramDepartmentsDeleteResult>;
487
+ //# sourceMappingURL=departments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"departments.d.ts","sourceRoot":"","sources":["../../../src/api/program/departments.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import { PluginProgramDepartmentsApi } from "./departments";
2
+ import { PluginProgramAdjacencyApi } from "./adjacency";
3
+ import { PluginProgramLayoutApi } from "./layout";
4
+ import { PluginProgramMetricsApi } from "./metrics";
5
+ import { PluginProgramSpreadsheetApi } from "./spreadsheet";
6
+ import { PluginProgramSiteApi } from "./site";
7
+ import { PluginProgramCoresApi } from "./cores";
8
+ import { PluginProgramClassificationApi } from "./classification";
9
+ import { PluginProgramAreasApi } from "./areas";
10
+ import { PluginProgramMetadataApi } from "./metadata";
11
+ import { PluginProgramLabelsApi } from "./labels";
12
+ /**
13
+ * Program-mode planning APIs.
14
+ *
15
+ * The program is the space-planning layer: department groupings with area targets,
16
+ * the labels (program rows) inside them, the metrics that track allocated area
17
+ * against those targets, and the reports that render program/takeoff data to
18
+ * spreadsheet sheets. Reads describe the *plan* (intent + targets); the geometry
19
+ * that realizes the plan is authored through the geometry namespaces.
20
+ *
21
+ * - {@linkcode PluginProgramApi.departments} — Read & edit program departments (groupings + targets)
22
+ * - {@linkcode PluginProgramApi.labels} — Read & edit program labels (program rows: per-type area/count targets)
23
+ * - {@linkcode PluginProgramApi.metadata} — Read & edit program metadata (custom columns) on spaces
24
+ * - {@linkcode PluginProgramApi.adjacency} — Read & compute the department/space adjacency matrix
25
+ * - {@linkcode PluginProgramApi.layout} — Arrange/pack spaces in the envelope
26
+ * - {@linkcode PluginProgramApi.metrics} — Read the area-program summary
27
+ * - {@linkcode PluginProgramApi.areas} — FAR / built-up-area rollup and groupings
28
+ * - {@linkcode PluginProgramApi.spreadsheet} — Render program data to sheets, custom grouped sheets, read back
29
+ * - {@linkcode PluginProgramApi.site} — Read site/plot context and read/update Site Analysis
30
+ * - {@linkcode PluginProgramApi.cores} — Read & predicate vertical-circulation cores (reads only)
31
+ * - {@linkcode PluginProgramApi.classification} — Classification catalog + display tags
32
+ *
33
+ * Accessed via `snaptrude.program`.
34
+ */
35
+ export declare abstract class PluginProgramApi {
36
+ /** Program departments — groupings, area targets, and space assignment. See {@linkcode PluginProgramDepartmentsApi}. */
37
+ abstract departments: PluginProgramDepartmentsApi;
38
+ /** Program labels — the program rows with per-type area/count targets. See {@linkcode PluginProgramLabelsApi}. */
39
+ abstract labels: PluginProgramLabelsApi;
40
+ /** Program metadata — custom columns and their per-space values. See {@linkcode PluginProgramMetadataApi}. */
41
+ abstract metadata: PluginProgramMetadataApi;
42
+ /** Adjacency matrix — read & compute proximity relationships. See {@linkcode PluginProgramAdjacencyApi}. */
43
+ abstract adjacency: PluginProgramAdjacencyApi;
44
+ /** Arrange/pack spaces in the envelope (async job family). See {@linkcode PluginProgramLayoutApi}. */
45
+ abstract layout: PluginProgramLayoutApi;
46
+ /** Area-program summary — targets vs allocated area. See {@linkcode PluginProgramMetricsApi}. */
47
+ abstract metrics: PluginProgramMetricsApi;
48
+ /** FAR / built-up-area rollup and groupings. See {@linkcode PluginProgramAreasApi}. */
49
+ abstract areas: PluginProgramAreasApi;
50
+ /** Spreadsheet reports — render tables to sheets, custom grouped sheets, export, read back. See {@linkcode PluginProgramSpreadsheetApi}. */
51
+ abstract spreadsheet: PluginProgramSpreadsheetApi;
52
+ /** Site/plot context and persisted Site Analysis. See {@linkcode PluginProgramSiteApi}. */
53
+ abstract site: PluginProgramSiteApi;
54
+ /** Vertical-circulation cores — read & predicate (reads only). See {@linkcode PluginProgramCoresApi}. */
55
+ abstract cores: PluginProgramCoresApi;
56
+ /** Classification catalog (space/area/mass types) + display tags. See {@linkcode PluginProgramClassificationApi}. */
57
+ abstract classification: PluginProgramClassificationApi;
58
+ constructor();
59
+ }
60
+ export * from "./departments";
61
+ export * from "./adjacency";
62
+ export * from "./layout";
63
+ export * from "./metrics";
64
+ export * from "./spreadsheet";
65
+ export * from "./site";
66
+ export * from "./cores";
67
+ export * from "./classification";
68
+ export * from "./areas";
69
+ export * from "./metadata";
70
+ export * from "./labels";
71
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/program/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAC/C,OAAO,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAC/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AAEjD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,8BAAsB,gBAAgB;IACpC,wHAAwH;IACxH,SAAgB,WAAW,EAAE,2BAA2B,CAAA;IACxD,kHAAkH;IAClH,SAAgB,MAAM,EAAE,sBAAsB,CAAA;IAC9C,8GAA8G;IAC9G,SAAgB,QAAQ,EAAE,wBAAwB,CAAA;IAClD,4GAA4G;IAC5G,SAAgB,SAAS,EAAE,yBAAyB,CAAA;IACpD,sGAAsG;IACtG,SAAgB,MAAM,EAAE,sBAAsB,CAAA;IAC9C,iGAAiG;IACjG,SAAgB,OAAO,EAAE,uBAAuB,CAAA;IAChD,uFAAuF;IACvF,SAAgB,KAAK,EAAE,qBAAqB,CAAA;IAC5C,4IAA4I;IAC5I,SAAgB,WAAW,EAAE,2BAA2B,CAAA;IACxD,2FAA2F;IAC3F,SAAgB,IAAI,EAAE,oBAAoB,CAAA;IAC1C,yGAAyG;IACzG,SAAgB,KAAK,EAAE,qBAAqB,CAAA;IAC5C,qHAAqH;IACrH,SAAgB,cAAc,EAAE,8BAA8B,CAAA;;CAG/D;AAED,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,kBAAkB,CAAA;AAChC,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA"}