@snaptrude/plugin-core 0.0.0-dev-20260708130115

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 (241) hide show
  1. package/AGENTS.md +227 -0
  2. package/CHANGELOG.md +119 -0
  3. package/CLAUDE.md +11 -0
  4. package/api-manifest.json +5004 -0
  5. package/dist/api/core/buildings.d.ts +427 -0
  6. package/dist/api/core/buildings.d.ts.map +1 -0
  7. package/dist/api/core/comment/index.d.ts +230 -0
  8. package/dist/api/core/comment/index.d.ts.map +1 -0
  9. package/dist/api/core/geom/create/index.d.ts +247 -0
  10. package/dist/api/core/geom/create/index.d.ts.map +1 -0
  11. package/dist/api/core/geom/delete/index.d.ts +72 -0
  12. package/dist/api/core/geom/delete/index.d.ts.map +1 -0
  13. package/dist/api/core/geom/index.d.ts +33 -0
  14. package/dist/api/core/geom/index.d.ts.map +1 -0
  15. package/dist/api/core/geom/query/arc.d.ts +169 -0
  16. package/dist/api/core/geom/query/arc.d.ts.map +1 -0
  17. package/dist/api/core/geom/query/brep.d.ts +402 -0
  18. package/dist/api/core/geom/query/brep.d.ts.map +1 -0
  19. package/dist/api/core/geom/query/circle.d.ts +378 -0
  20. package/dist/api/core/geom/query/circle.d.ts.map +1 -0
  21. package/dist/api/core/geom/query/contour.d.ts +450 -0
  22. package/dist/api/core/geom/query/contour.d.ts.map +1 -0
  23. package/dist/api/core/geom/query/curve.d.ts +918 -0
  24. package/dist/api/core/geom/query/curve.d.ts.map +1 -0
  25. package/dist/api/core/geom/query/edge.d.ts +128 -0
  26. package/dist/api/core/geom/query/edge.d.ts.map +1 -0
  27. package/dist/api/core/geom/query/face.d.ts +363 -0
  28. package/dist/api/core/geom/query/face.d.ts.map +1 -0
  29. package/dist/api/core/geom/query/halfedge.d.ts +206 -0
  30. package/dist/api/core/geom/query/halfedge.d.ts.map +1 -0
  31. package/dist/api/core/geom/query/index.d.ts +61 -0
  32. package/dist/api/core/geom/query/index.d.ts.map +1 -0
  33. package/dist/api/core/geom/query/profile.d.ts +410 -0
  34. package/dist/api/core/geom/query/profile.d.ts.map +1 -0
  35. package/dist/api/core/geom/query/vertex.d.ts +187 -0
  36. package/dist/api/core/geom/query/vertex.d.ts.map +1 -0
  37. package/dist/api/core/geom/update/contour.d.ts +272 -0
  38. package/dist/api/core/geom/update/contour.d.ts.map +1 -0
  39. package/dist/api/core/geom/update/curve.d.ts +180 -0
  40. package/dist/api/core/geom/update/curve.d.ts.map +1 -0
  41. package/dist/api/core/geom/update/index.d.ts +27 -0
  42. package/dist/api/core/geom/update/index.d.ts.map +1 -0
  43. package/dist/api/core/geom/update/profile.d.ts +329 -0
  44. package/dist/api/core/geom/update/profile.d.ts.map +1 -0
  45. package/dist/api/core/groups.d.ts +485 -0
  46. package/dist/api/core/groups.d.ts.map +1 -0
  47. package/dist/api/core/history/index.d.ts +78 -0
  48. package/dist/api/core/history/index.d.ts.map +1 -0
  49. package/dist/api/core/index.d.ts +63 -0
  50. package/dist/api/core/index.d.ts.map +1 -0
  51. package/dist/api/core/layers.d.ts +402 -0
  52. package/dist/api/core/layers.d.ts.map +1 -0
  53. package/dist/api/core/math/index.d.ts +18 -0
  54. package/dist/api/core/math/index.d.ts.map +1 -0
  55. package/dist/api/core/math/quat.d.ts +170 -0
  56. package/dist/api/core/math/quat.d.ts.map +1 -0
  57. package/dist/api/core/math/vec3.d.ts +174 -0
  58. package/dist/api/core/math/vec3.d.ts.map +1 -0
  59. package/dist/api/core/project/index.d.ts +399 -0
  60. package/dist/api/core/project/index.d.ts.map +1 -0
  61. package/dist/api/core/tags.d.ts +755 -0
  62. package/dist/api/core/tags.d.ts.map +1 -0
  63. package/dist/api/core/units/index.d.ts +175 -0
  64. package/dist/api/core/units/index.d.ts.map +1 -0
  65. package/dist/api/core/zoom/index.d.ts +45 -0
  66. package/dist/api/core/zoom/index.d.ts.map +1 -0
  67. package/dist/api/design/boolean/index.d.ts +168 -0
  68. package/dist/api/design/boolean/index.d.ts.map +1 -0
  69. package/dist/api/design/create/index.d.ts +828 -0
  70. package/dist/api/design/create/index.d.ts.map +1 -0
  71. package/dist/api/design/delete/index.d.ts +63 -0
  72. package/dist/api/design/delete/index.d.ts.map +1 -0
  73. package/dist/api/design/doors/index.d.ts +268 -0
  74. package/dist/api/design/doors/index.d.ts.map +1 -0
  75. package/dist/api/design/edit/index.d.ts +49 -0
  76. package/dist/api/design/edit/index.d.ts.map +1 -0
  77. package/dist/api/design/erase/index.d.ts +160 -0
  78. package/dist/api/design/erase/index.d.ts.map +1 -0
  79. package/dist/api/design/furniture/index.d.ts +123 -0
  80. package/dist/api/design/furniture/index.d.ts.map +1 -0
  81. package/dist/api/design/index.d.ts +153 -0
  82. package/dist/api/design/index.d.ts.map +1 -0
  83. package/dist/api/design/lock.d.ts +41 -0
  84. package/dist/api/design/lock.d.ts.map +1 -0
  85. package/dist/api/design/materials/index.d.ts +297 -0
  86. package/dist/api/design/materials/index.d.ts.map +1 -0
  87. package/dist/api/design/query/geometry/index.d.ts +140 -0
  88. package/dist/api/design/query/geometry/index.d.ts.map +1 -0
  89. package/dist/api/design/query/index.d.ts +1011 -0
  90. package/dist/api/design/query/index.d.ts.map +1 -0
  91. package/dist/api/design/query/spaces.d.ts +221 -0
  92. package/dist/api/design/query/spaces.d.ts.map +1 -0
  93. package/dist/api/design/selection/index.d.ts +138 -0
  94. package/dist/api/design/selection/index.d.ts.map +1 -0
  95. package/dist/api/design/shared.d.ts +38 -0
  96. package/dist/api/design/shared.d.ts.map +1 -0
  97. package/dist/api/design/transform/index.d.ts +87 -0
  98. package/dist/api/design/transform/index.d.ts.map +1 -0
  99. package/dist/api/design/update/index.d.ts +178 -0
  100. package/dist/api/design/update/index.d.ts.map +1 -0
  101. package/dist/api/design/windows/index.d.ts +189 -0
  102. package/dist/api/design/windows/index.d.ts.map +1 -0
  103. package/dist/api/entity/buildableEnvelope.d.ts +261 -0
  104. package/dist/api/entity/buildableEnvelope.d.ts.map +1 -0
  105. package/dist/api/entity/department.d.ts +1 -0
  106. package/dist/api/entity/department.d.ts.map +1 -0
  107. package/dist/api/entity/index.d.ts +28 -0
  108. package/dist/api/entity/index.d.ts.map +1 -0
  109. package/dist/api/entity/referenceLine.d.ts +202 -0
  110. package/dist/api/entity/referenceLine.d.ts.map +1 -0
  111. package/dist/api/entity/space.d.ts +846 -0
  112. package/dist/api/entity/space.d.ts.map +1 -0
  113. package/dist/api/entity/story.d.ts +249 -0
  114. package/dist/api/entity/story.d.ts.map +1 -0
  115. package/dist/api/index.d.ts +35 -0
  116. package/dist/api/index.d.ts.map +1 -0
  117. package/dist/api/presentation/aiInspiration.d.ts +2400 -0
  118. package/dist/api/presentation/aiInspiration.d.ts.map +1 -0
  119. package/dist/api/presentation/diagrams.d.ts +81 -0
  120. package/dist/api/presentation/diagrams.d.ts.map +1 -0
  121. package/dist/api/presentation/import.d.ts +113 -0
  122. package/dist/api/presentation/import.d.ts.map +1 -0
  123. package/dist/api/presentation/index.d.ts +45 -0
  124. package/dist/api/presentation/index.d.ts.map +1 -0
  125. package/dist/api/presentation/sheets.d.ts +176 -0
  126. package/dist/api/presentation/sheets.d.ts.map +1 -0
  127. package/dist/api/presentation/views.d.ts +296 -0
  128. package/dist/api/presentation/views.d.ts.map +1 -0
  129. package/dist/api/program/adjacency.d.ts +155 -0
  130. package/dist/api/program/adjacency.d.ts.map +1 -0
  131. package/dist/api/program/areas.d.ts +360 -0
  132. package/dist/api/program/areas.d.ts.map +1 -0
  133. package/dist/api/program/classification.d.ts +135 -0
  134. package/dist/api/program/classification.d.ts.map +1 -0
  135. package/dist/api/program/cores.d.ts +174 -0
  136. package/dist/api/program/cores.d.ts.map +1 -0
  137. package/dist/api/program/departments.d.ts +431 -0
  138. package/dist/api/program/departments.d.ts.map +1 -0
  139. package/dist/api/program/index.d.ts +69 -0
  140. package/dist/api/program/index.d.ts.map +1 -0
  141. package/dist/api/program/layout.d.ts +63 -0
  142. package/dist/api/program/layout.d.ts.map +1 -0
  143. package/dist/api/program/metrics.d.ts +108 -0
  144. package/dist/api/program/metrics.d.ts.map +1 -0
  145. package/dist/api/program/site.d.ts +367 -0
  146. package/dist/api/program/site.d.ts.map +1 -0
  147. package/dist/api/program/spreadsheet.d.ts +2041 -0
  148. package/dist/api/program/spreadsheet.d.ts.map +1 -0
  149. package/dist/handles.d.ts +138 -0
  150. package/dist/handles.d.ts.map +1 -0
  151. package/dist/host-utils.d.ts +43 -0
  152. package/dist/host-utils.d.ts.map +1 -0
  153. package/dist/index.cjs +4597 -0
  154. package/dist/index.cjs.map +1 -0
  155. package/dist/index.d.ts +5 -0
  156. package/dist/index.d.ts.map +1 -0
  157. package/dist/index.js +3870 -0
  158. package/dist/index.js.map +1 -0
  159. package/dist/types.d.ts +16 -0
  160. package/dist/types.d.ts.map +1 -0
  161. package/package.json +39 -0
  162. package/scripts/generate-manifest.mjs +193 -0
  163. package/scripts/generate-manifest.test.mjs +193 -0
  164. package/src/api/core/buildings.ts +485 -0
  165. package/src/api/core/comment/index.ts +258 -0
  166. package/src/api/core/geom/create/index.ts +293 -0
  167. package/src/api/core/geom/delete/index.ts +78 -0
  168. package/src/api/core/geom/index.ts +35 -0
  169. package/src/api/core/geom/query/arc.ts +169 -0
  170. package/src/api/core/geom/query/brep.ts +444 -0
  171. package/src/api/core/geom/query/circle.ts +404 -0
  172. package/src/api/core/geom/query/contour.ts +540 -0
  173. package/src/api/core/geom/query/curve.ts +1078 -0
  174. package/src/api/core/geom/query/edge.ts +130 -0
  175. package/src/api/core/geom/query/face.ts +403 -0
  176. package/src/api/core/geom/query/halfedge.ts +210 -0
  177. package/src/api/core/geom/query/index.ts +63 -0
  178. package/src/api/core/geom/query/profile.ts +473 -0
  179. package/src/api/core/geom/query/vertex.ts +205 -0
  180. package/src/api/core/geom/update/contour.ts +315 -0
  181. package/src/api/core/geom/update/curve.ts +209 -0
  182. package/src/api/core/geom/update/index.ts +29 -0
  183. package/src/api/core/geom/update/profile.ts +377 -0
  184. package/src/api/core/groups.ts +521 -0
  185. package/src/api/core/history/index.ts +84 -0
  186. package/src/api/core/index.ts +65 -0
  187. package/src/api/core/layers.ts +333 -0
  188. package/src/api/core/math/index.ts +20 -0
  189. package/src/api/core/math/quat.ts +172 -0
  190. package/src/api/core/math/vec3.ts +179 -0
  191. package/src/api/core/project/index.ts +418 -0
  192. package/src/api/core/tags.ts +808 -0
  193. package/src/api/core/units/index.ts +164 -0
  194. package/src/api/core/zoom/index.ts +47 -0
  195. package/src/api/design/boolean/index.ts +179 -0
  196. package/src/api/design/create/index.ts +886 -0
  197. package/src/api/design/delete/index.ts +67 -0
  198. package/src/api/design/doors/index.ts +285 -0
  199. package/src/api/design/edit/index.ts +54 -0
  200. package/src/api/design/erase/index.ts +151 -0
  201. package/src/api/design/furniture/index.ts +130 -0
  202. package/src/api/design/index.ts +162 -0
  203. package/src/api/design/lock.ts +42 -0
  204. package/src/api/design/materials/index.ts +301 -0
  205. package/src/api/design/query/geometry/index.ts +166 -0
  206. package/src/api/design/query/index.ts +937 -0
  207. package/src/api/design/query/spaces.ts +132 -0
  208. package/src/api/design/selection/index.ts +144 -0
  209. package/src/api/design/shared.ts +40 -0
  210. package/src/api/design/transform/index.ts +93 -0
  211. package/src/api/design/update/index.ts +117 -0
  212. package/src/api/design/windows/index.ts +207 -0
  213. package/src/api/entity/buildableEnvelope.ts +318 -0
  214. package/src/api/entity/department.ts +0 -0
  215. package/src/api/entity/index.ts +30 -0
  216. package/src/api/entity/referenceLine.ts +227 -0
  217. package/src/api/entity/space.ts +612 -0
  218. package/src/api/entity/story.ts +273 -0
  219. package/src/api/index.ts +37 -0
  220. package/src/api/presentation/aiInspiration.ts +1116 -0
  221. package/src/api/presentation/diagrams.ts +84 -0
  222. package/src/api/presentation/import.ts +112 -0
  223. package/src/api/presentation/index.ts +47 -0
  224. package/src/api/presentation/sheets.ts +198 -0
  225. package/src/api/presentation/views.ts +303 -0
  226. package/src/api/program/adjacency.ts +164 -0
  227. package/src/api/program/areas.ts +335 -0
  228. package/src/api/program/classification.ts +138 -0
  229. package/src/api/program/cores.ts +171 -0
  230. package/src/api/program/departments.ts +465 -0
  231. package/src/api/program/index.ts +71 -0
  232. package/src/api/program/layout.ts +68 -0
  233. package/src/api/program/metrics.ts +120 -0
  234. package/src/api/program/site.ts +326 -0
  235. package/src/api/program/spreadsheet.ts +2075 -0
  236. package/src/handles.ts +148 -0
  237. package/src/host-utils.ts +64 -0
  238. package/src/index.ts +4 -0
  239. package/src/types.ts +16 -0
  240. package/tsconfig.json +17 -0
  241. package/tsup.config.ts +12 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../../src/api/entity/space.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,249 @@
1
+ import * as z from "zod";
2
+ import { PluginApiReturn } from "../../types";
3
+ /**
4
+ * Story (floor/storey) management.
5
+ *
6
+ * A story represents a building floor in the Snaptrude project. Stories
7
+ * are identified by their integer **story value** (e.g. `1` for ground
8
+ * floor, `2` for first floor, `-1` for a basement).
9
+ *
10
+ * All methods are **host API calls** that return Promises and support
11
+ * undo/redo via Snaptrude's command system.
12
+ *
13
+ * Accessed via `snaptrude.entity.story`.
14
+ */
15
+ export declare abstract class PluginStoryApi {
16
+ constructor();
17
+ /**
18
+ * Get properties of a story by its storey number.
19
+ *
20
+ * Only the properties listed in `properties`
21
+ * are returned — unlisted properties will be `undefined` in the result.
22
+ *
23
+ * @param storyValue - Integer storey number
24
+ * (e.g. `1` for ground floor, `2` for first floor, `-1` for basement)
25
+ * @param properties - Array of property names
26
+ * to retrieve. See {@linkcode PluginStoryGetProperty} for available values.
27
+ * @returns A partial {@linkcode PluginStoryGetResult} containing only the requested properties
28
+ * @throws If the story with the given value does not exist
29
+ *
30
+ * @examplePrompt What is the height of the ground floor?
31
+ * @examplePrompt How many rooms are on the second storey?
32
+ * @examplePrompt Get the total floor area of level 3
33
+ * @examplePrompt Is the first floor hidden in the viewport?
34
+ * @examplePrompt Show me the name and height of story 2
35
+ *
36
+ * # Example
37
+ * ```ts
38
+ * const info = await snaptrude.entity.story.get(1, ["height", "name", "spacesCount"])
39
+ * console.log(info.name, info.height, info.spacesCount)
40
+ * ```
41
+ */
42
+ abstract get(storyValue: number, properties: PluginStoryGetProperty[]): PluginApiReturn<PluginStoryGetResult>;
43
+ /**
44
+ * Get all stories in the current project.
45
+ *
46
+ * Returns basic identification data for every storey. Stories are sorted
47
+ * from **top to bottom** (highest story value first).
48
+ *
49
+ * @returns A {@linkcode PluginStoryGetAllResult} with a `stories` array,
50
+ * each entry containing `value`, `id`, and `name`
51
+ *
52
+ * @examplePrompt How many floors does this building have?
53
+ * @examplePrompt List all the storeys in the project
54
+ * @examplePrompt Show me every level with its name
55
+ * @examplePrompt Which stories exist in this model?
56
+ *
57
+ * # Example
58
+ * ```ts
59
+ * const { stories } = await snaptrude.entity.story.getAll()
60
+ * for (const s of stories) {
61
+ * console.log(`Story ${s.value}: ${s.name} (id: ${s.id})`)
62
+ * }
63
+ * ```
64
+ */
65
+ abstract getAll(): PluginApiReturn<PluginStoryGetAllResult>;
66
+ /**
67
+ * Create a new story (floor) in the project.
68
+ *
69
+ * The new story is inserted at the position specified by
70
+ * `storyValue`. This operation is undoable.
71
+ *
72
+ * @param storyValue - Integer storey number
73
+ * to create (e.g. `3` to add a third floor)
74
+ * @param height - Optional height in Babylon
75
+ * units. If omitted, the project's default storey height is used.
76
+ * @returns A {@linkcode PluginStoryCreateResult} with `storyId` and `storyValue`
77
+ * @throws If a story with the given value already exists or creation fails
78
+ *
79
+ * @examplePrompt Add a third floor to the building
80
+ * @examplePrompt Create a new storey above the second floor
81
+ * @examplePrompt Add a basement level to this project
82
+ * @examplePrompt Insert a new level with a custom floor height
83
+ * @examplePrompt Add another floor on top of the building
84
+ *
85
+ * # Example
86
+ * ```ts
87
+ * // Create a new third floor with custom height
88
+ * const { storyId } = await snaptrude.entity.story.create(3, 4.5)
89
+ * ```
90
+ */
91
+ abstract create(storyValue: number, height?: number): PluginApiReturn<PluginStoryCreateResult>;
92
+ /**
93
+ * Update a story's height.
94
+ *
95
+ * Changes the floor-to-floor height of the specified story. This
96
+ * operation is undoable.
97
+ *
98
+ * @param storyValue - Integer storey number
99
+ * 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
104
+ *
105
+ * @examplePrompt Change the ground floor height to 3.5 metres
106
+ * @examplePrompt Make the second storey taller
107
+ * @examplePrompt Set the floor-to-floor height of level 1
108
+ * @examplePrompt Increase the height of the third floor
109
+ *
110
+ * # Example
111
+ * ```ts
112
+ * // Set ground floor height to 5 Babylon units
113
+ * const result = await snaptrude.entity.story.update(1, 5)
114
+ * ```
115
+ */
116
+ abstract update(storyValue: number, height: number): PluginApiReturn<PluginStoryUpdateResult>;
117
+ }
118
+ /**
119
+ * Available properties that can be queried on a story.
120
+ *
121
+ * | Value | Type | Description |
122
+ * |---|---|---|
123
+ * | `"value"` | `number` | The integer storey number |
124
+ * | `"id"` | `string` | Unique story identifier |
125
+ * | `"name"` | `string` | Display name of the story |
126
+ * | `"height"` | `number` | Floor-to-floor height in Babylon units |
127
+ * | `"base"` | `number` | Base elevation in Babylon units |
128
+ * | `"hidden"` | `boolean` | Whether the story is hidden in the viewport |
129
+ * | `"spacesCount"` | `number` | Number of spaces on this story |
130
+ * | `"totalArea"` | `number` | Total floor area of this story |
131
+ */
132
+ export declare const PluginStoryGetProperty: z.ZodEnum<{
133
+ value: "value";
134
+ id: "id";
135
+ name: "name";
136
+ hidden: "hidden";
137
+ height: "height";
138
+ base: "base";
139
+ spacesCount: "spacesCount";
140
+ totalArea: "totalArea";
141
+ }>;
142
+ export type PluginStoryGetProperty = z.infer<typeof PluginStoryGetProperty>;
143
+ /**
144
+ * Arguments for {@linkcode PluginStoryApi.get}.
145
+ *
146
+ * | Property | Type | Description |
147
+ * |---|---|---|
148
+ * | `storyValue` | `number` (int) | The storey number to query |
149
+ * | `properties` | {@linkcode PluginStoryGetProperty}`[]` | Properties to retrieve |
150
+ */
151
+ export declare const PluginStoryGetArgs: z.ZodObject<{
152
+ storyValue: z.ZodNumber;
153
+ properties: z.ZodArray<z.ZodEnum<{
154
+ value: "value";
155
+ id: "id";
156
+ name: "name";
157
+ hidden: "hidden";
158
+ height: "height";
159
+ base: "base";
160
+ spacesCount: "spacesCount";
161
+ totalArea: "totalArea";
162
+ }>>;
163
+ }, z.core.$strip>;
164
+ export type PluginStoryGetArgs = z.infer<typeof PluginStoryGetArgs>;
165
+ /**
166
+ * Result of {@linkcode PluginStoryApi.get}.
167
+ *
168
+ * A partial object — only the properties that were requested in
169
+ * {@linkcode PluginStoryGetArgs.properties} will be present.
170
+ */
171
+ export declare const PluginStoryGetResult: z.ZodObject<{
172
+ value: z.ZodOptional<z.ZodNumber>;
173
+ id: z.ZodOptional<z.ZodString>;
174
+ name: z.ZodOptional<z.ZodString>;
175
+ height: z.ZodOptional<z.ZodNumber>;
176
+ base: z.ZodOptional<z.ZodNumber>;
177
+ hidden: z.ZodOptional<z.ZodBoolean>;
178
+ spacesCount: z.ZodOptional<z.ZodNumber>;
179
+ totalArea: z.ZodOptional<z.ZodNumber>;
180
+ }, z.core.$strip>;
181
+ export type PluginStoryGetResult = z.infer<typeof PluginStoryGetResult>;
182
+ /**
183
+ * Result of {@linkcode PluginStoryApi.getAll}.
184
+ *
185
+ * | Property | Type | Description |
186
+ * |---|---|---|
187
+ * | `stories` | `Array<{ value, id, name }>` | All stories, sorted top to bottom |
188
+ */
189
+ export declare const PluginStoryGetAllResult: z.ZodObject<{
190
+ stories: z.ZodArray<z.ZodObject<{
191
+ value: z.ZodNumber;
192
+ id: z.ZodString;
193
+ name: z.ZodString;
194
+ }, z.core.$strip>>;
195
+ }, z.core.$strip>;
196
+ export type PluginStoryGetAllResult = z.infer<typeof PluginStoryGetAllResult>;
197
+ /**
198
+ * Arguments for {@linkcode PluginStoryApi.create}.
199
+ *
200
+ * | Property | Type | Description |
201
+ * |---|---|---|
202
+ * | `storyValue` | `number` (int) | The storey number for the new story |
203
+ * | `height` | `number?` | Optional height in Babylon units |
204
+ */
205
+ export declare const PluginStoryCreateArgs: z.ZodObject<{
206
+ storyValue: z.ZodNumber;
207
+ height: z.ZodOptional<z.ZodNumber>;
208
+ }, z.core.$strip>;
209
+ export type PluginStoryCreateArgs = z.infer<typeof PluginStoryCreateArgs>;
210
+ /**
211
+ * Result of {@linkcode PluginStoryApi.create}.
212
+ *
213
+ * | Property | Type | Description |
214
+ * |---|---|---|
215
+ * | `storyId` | `string` | Unique ID of the created story |
216
+ * | `storyValue` | `number` | The storey number of the created story |
217
+ */
218
+ export declare const PluginStoryCreateResult: z.ZodObject<{
219
+ storyId: z.ZodString;
220
+ storyValue: z.ZodNumber;
221
+ }, z.core.$strip>;
222
+ export type PluginStoryCreateResult = z.infer<typeof PluginStoryCreateResult>;
223
+ /**
224
+ * Arguments for {@linkcode PluginStoryApi.update}.
225
+ *
226
+ * | Property | Type | Description |
227
+ * |---|---|---|
228
+ * | `storyValue` | `number` (int) | Storey number of the story to update |
229
+ * | `height` | `number` | New height in Babylon units |
230
+ */
231
+ export declare const PluginStoryUpdateArgs: z.ZodObject<{
232
+ storyValue: z.ZodNumber;
233
+ height: z.ZodNumber;
234
+ }, z.core.$strip>;
235
+ export type PluginStoryUpdateArgs = z.infer<typeof PluginStoryUpdateArgs>;
236
+ /**
237
+ * Result of {@linkcode PluginStoryApi.update}.
238
+ *
239
+ * | Property | Type | Description |
240
+ * |---|---|---|
241
+ * | `storyValue` | `number` | The storey number of the updated story |
242
+ * | `height` | `number` | The new height after the update |
243
+ */
244
+ export declare const PluginStoryUpdateResult: z.ZodObject<{
245
+ storyValue: z.ZodNumber;
246
+ height: z.ZodNumber;
247
+ }, z.core.$strip>;
248
+ export type PluginStoryUpdateResult = z.infer<typeof PluginStoryUpdateResult>;
249
+ //# sourceMappingURL=story.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,35 @@
1
+ import { PluginCoreApi } from "./core";
2
+ import { PluginDesignApi } from "./design";
3
+ import { PluginEntityApi } from "./entity";
4
+ import { PluginProgramApi } from "./program";
5
+ import { PluginPresentationApi } from "./presentation";
6
+ /**
7
+ * Root API surface for Snaptrude plugins.
8
+ *
9
+ * Access all plugin capabilities through the namespaced properties:
10
+ *
11
+ * - {@linkcode PluginApi.core} — Math, geometry kernel, history, units, zoom, project, comments (infrastructure)
12
+ * - {@linkcode PluginApi.design} — Author, query & edit BIM geometry
13
+ * - {@linkcode PluginApi.entity} — CRUD operations on Snaptrude entities (spaces, stories)
14
+ * - {@linkcode PluginApi.program} — Program-mode planning reads (departments, metrics)
15
+ * - {@linkcode PluginApi.presentation} — Presentation preparation (views, AI Inspiration)
16
+ */
17
+ export declare abstract class PluginApi {
18
+ /** Core math, geometry, history, and units primitives. See {@linkcode PluginCoreApi}. */
19
+ abstract core: PluginCoreApi;
20
+ /** Author, query & edit BIM geometry. See {@linkcode PluginDesignApi}. */
21
+ abstract design: PluginDesignApi;
22
+ /** CRUD operations on Snaptrude entities. See {@linkcode PluginEntityApi}. */
23
+ abstract entity: PluginEntityApi;
24
+ /** Program-mode planning reads — departments and area metrics. See {@linkcode PluginProgramApi}. */
25
+ abstract program: PluginProgramApi;
26
+ /** Presentation preparation reads — saved views. See {@linkcode PluginPresentationApi}. */
27
+ abstract presentation: PluginPresentationApi;
28
+ constructor();
29
+ }
30
+ export * from "./core";
31
+ export * from "./design";
32
+ export * from "./entity";
33
+ export * from "./program";
34
+ export * from "./presentation";
35
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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"}