ducjs 1.0.0

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 (707) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +42 -0
  3. package/dist/flatbuffers/duc/alternate-units.d.ts +21 -0
  4. package/dist/flatbuffers/duc/alternate-units.js +66 -0
  5. package/dist/flatbuffers/duc/angular-unit-system.d.ts +17 -0
  6. package/dist/flatbuffers/duc/angular-unit-system.js +50 -0
  7. package/dist/flatbuffers/duc/angular-units-format.d.ts +7 -0
  8. package/dist/flatbuffers/duc/angular-units-format.js +10 -0
  9. package/dist/flatbuffers/duc/axis.d.ts +5 -0
  10. package/dist/flatbuffers/duc/axis.js +8 -0
  11. package/dist/flatbuffers/duc/bezier-mirroring.d.ts +5 -0
  12. package/dist/flatbuffers/duc/bezier-mirroring.js +8 -0
  13. package/dist/flatbuffers/duc/blending.d.ts +9 -0
  14. package/dist/flatbuffers/duc/blending.js +12 -0
  15. package/dist/flatbuffers/duc/block-attachment.d.ts +4 -0
  16. package/dist/flatbuffers/duc/block-attachment.js +7 -0
  17. package/dist/flatbuffers/duc/boolean-operation.d.ts +6 -0
  18. package/dist/flatbuffers/duc/boolean-operation.js +9 -0
  19. package/dist/flatbuffers/duc/bound-element.d.ts +17 -0
  20. package/dist/flatbuffers/duc/bound-element.js +48 -0
  21. package/dist/flatbuffers/duc/checkpoint.d.ts +22 -0
  22. package/dist/flatbuffers/duc/checkpoint.js +75 -0
  23. package/dist/flatbuffers/duc/column-layout.d.ts +22 -0
  24. package/dist/flatbuffers/duc/column-layout.js +72 -0
  25. package/dist/flatbuffers/duc/column-type.d.ts +5 -0
  26. package/dist/flatbuffers/duc/column-type.js +8 -0
  27. package/dist/flatbuffers/duc/custom-hatch-pattern.d.ts +23 -0
  28. package/dist/flatbuffers/duc/custom-hatch-pattern.js +71 -0
  29. package/dist/flatbuffers/duc/datum-bracket-style.d.ts +5 -0
  30. package/dist/flatbuffers/duc/datum-bracket-style.js +8 -0
  31. package/dist/flatbuffers/duc/datum-reference.d.ts +17 -0
  32. package/dist/flatbuffers/duc/datum-reference.js +49 -0
  33. package/dist/flatbuffers/duc/datum-target-type.d.ts +6 -0
  34. package/dist/flatbuffers/duc/datum-target-type.js +9 -0
  35. package/dist/flatbuffers/duc/decimal-separator.d.ts +4 -0
  36. package/dist/flatbuffers/duc/decimal-separator.js +7 -0
  37. package/dist/flatbuffers/duc/delta.d.ts +20 -0
  38. package/dist/flatbuffers/duc/delta.js +64 -0
  39. package/dist/flatbuffers/duc/dictionary-entry.d.ts +17 -0
  40. package/dist/flatbuffers/duc/dictionary-entry.js +49 -0
  41. package/dist/flatbuffers/duc/dimension-baseline-data.d.ts +14 -0
  42. package/dist/flatbuffers/duc/dimension-baseline-data.js +40 -0
  43. package/dist/flatbuffers/duc/dimension-bindings.d.ts +17 -0
  44. package/dist/flatbuffers/duc/dimension-bindings.js +50 -0
  45. package/dist/flatbuffers/duc/dimension-continue-data.d.ts +14 -0
  46. package/dist/flatbuffers/duc/dimension-continue-data.js +40 -0
  47. package/dist/flatbuffers/duc/dimension-definition-points.d.ts +21 -0
  48. package/dist/flatbuffers/duc/dimension-definition-points.js +64 -0
  49. package/dist/flatbuffers/duc/dimension-ext-line-style.d.ts +18 -0
  50. package/dist/flatbuffers/duc/dimension-ext-line-style.js +57 -0
  51. package/dist/flatbuffers/duc/dimension-fit-rule.d.ts +6 -0
  52. package/dist/flatbuffers/duc/dimension-fit-rule.js +9 -0
  53. package/dist/flatbuffers/duc/dimension-fit-style.d.ts +19 -0
  54. package/dist/flatbuffers/duc/dimension-fit-style.js +58 -0
  55. package/dist/flatbuffers/duc/dimension-line-style.d.ts +16 -0
  56. package/dist/flatbuffers/duc/dimension-line-style.js +49 -0
  57. package/dist/flatbuffers/duc/dimension-symbol-style.d.ts +22 -0
  58. package/dist/flatbuffers/duc/dimension-symbol-style.js +72 -0
  59. package/dist/flatbuffers/duc/dimension-text-placement.d.ts +5 -0
  60. package/dist/flatbuffers/duc/dimension-text-placement.js +8 -0
  61. package/dist/flatbuffers/duc/dimension-tolerance-style.d.ts +24 -0
  62. package/dist/flatbuffers/duc/dimension-tolerance-style.js +71 -0
  63. package/dist/flatbuffers/duc/dimension-type.d.ts +15 -0
  64. package/dist/flatbuffers/duc/dimension-type.js +18 -0
  65. package/dist/flatbuffers/duc/dimension-units-format.d.ts +7 -0
  66. package/dist/flatbuffers/duc/dimension-units-format.js +10 -0
  67. package/dist/flatbuffers/duc/dimension-validation-rules.d.ts +25 -0
  68. package/dist/flatbuffers/duc/dimension-validation-rules.js +74 -0
  69. package/dist/flatbuffers/duc/duc-arrow-element.d.ts +16 -0
  70. package/dist/flatbuffers/duc/duc-arrow-element.js +49 -0
  71. package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.d.ts +16 -0
  72. package/dist/flatbuffers/duc/duc-block-attribute-definition-entry.js +44 -0
  73. package/dist/flatbuffers/duc/duc-block-attribute-definition.d.ts +22 -0
  74. package/dist/flatbuffers/duc/duc-block-attribute-definition.js +64 -0
  75. package/dist/flatbuffers/duc/duc-block-duplication-array.d.ts +19 -0
  76. package/dist/flatbuffers/duc/duc-block-duplication-array.js +64 -0
  77. package/dist/flatbuffers/duc/duc-block-instance-element.d.ts +30 -0
  78. package/dist/flatbuffers/duc/duc-block-instance-element.js +94 -0
  79. package/dist/flatbuffers/duc/duc-block.d.ts +34 -0
  80. package/dist/flatbuffers/duc/duc-block.js +111 -0
  81. package/dist/flatbuffers/duc/duc-common-style.d.ts +16 -0
  82. package/dist/flatbuffers/duc/duc-common-style.js +44 -0
  83. package/dist/flatbuffers/duc/duc-dimension-element.d.ts +45 -0
  84. package/dist/flatbuffers/duc/duc-dimension-element.js +120 -0
  85. package/dist/flatbuffers/duc/duc-dimension-style.d.ts +28 -0
  86. package/dist/flatbuffers/duc/duc-dimension-style.js +76 -0
  87. package/dist/flatbuffers/duc/duc-doc-element.d.ts +33 -0
  88. package/dist/flatbuffers/duc/duc-doc-element.js +95 -0
  89. package/dist/flatbuffers/duc/duc-doc-style.d.ts +19 -0
  90. package/dist/flatbuffers/duc/duc-doc-style.js +52 -0
  91. package/dist/flatbuffers/duc/duc-element-base.d.ts +88 -0
  92. package/dist/flatbuffers/duc/duc-element-base.js +269 -0
  93. package/dist/flatbuffers/duc/duc-element-styles-base.d.ts +30 -0
  94. package/dist/flatbuffers/duc/duc-element-styles-base.js +103 -0
  95. package/dist/flatbuffers/duc/duc-ellipse-element.d.ts +22 -0
  96. package/dist/flatbuffers/duc/duc-ellipse-element.js +73 -0
  97. package/dist/flatbuffers/duc/duc-embeddable-element.d.ts +14 -0
  98. package/dist/flatbuffers/duc/duc-embeddable-element.js +41 -0
  99. package/dist/flatbuffers/duc/duc-external-file-data.d.ts +27 -0
  100. package/dist/flatbuffers/duc/duc-external-file-data.js +92 -0
  101. package/dist/flatbuffers/duc/duc-external-file-entry.d.ts +16 -0
  102. package/dist/flatbuffers/duc/duc-external-file-entry.js +44 -0
  103. package/dist/flatbuffers/duc/duc-feature-control-frame-element.d.ts +31 -0
  104. package/dist/flatbuffers/duc/duc-feature-control-frame-element.js +89 -0
  105. package/dist/flatbuffers/duc/duc-feature-control-frame-style.d.ts +25 -0
  106. package/dist/flatbuffers/duc/duc-feature-control-frame-style.js +68 -0
  107. package/dist/flatbuffers/duc/duc-frame-element.d.ts +14 -0
  108. package/dist/flatbuffers/duc/duc-frame-element.js +41 -0
  109. package/dist/flatbuffers/duc/duc-free-draw-element.d.ts +52 -0
  110. package/dist/flatbuffers/duc/duc-free-draw-element.js +154 -0
  111. package/dist/flatbuffers/duc/duc-free-draw-ends.d.ts +18 -0
  112. package/dist/flatbuffers/duc/duc-free-draw-ends.js +56 -0
  113. package/dist/flatbuffers/duc/duc-global-state.d.ts +37 -0
  114. package/dist/flatbuffers/duc/duc-global-state.js +121 -0
  115. package/dist/flatbuffers/duc/duc-group.d.ts +16 -0
  116. package/dist/flatbuffers/duc/duc-group.js +44 -0
  117. package/dist/flatbuffers/duc/duc-hatch-style.d.ts +28 -0
  118. package/dist/flatbuffers/duc/duc-hatch-style.js +79 -0
  119. package/dist/flatbuffers/duc/duc-head.d.ts +19 -0
  120. package/dist/flatbuffers/duc/duc-head.js +57 -0
  121. package/dist/flatbuffers/duc/duc-image-element.d.ts +35 -0
  122. package/dist/flatbuffers/duc/duc-image-element.js +91 -0
  123. package/dist/flatbuffers/duc/duc-image-filter.d.ts +15 -0
  124. package/dist/flatbuffers/duc/duc-image-filter.js +48 -0
  125. package/dist/flatbuffers/duc/duc-layer-overrides.d.ts +16 -0
  126. package/dist/flatbuffers/duc/duc-layer-overrides.js +44 -0
  127. package/dist/flatbuffers/duc/duc-layer.d.ts +21 -0
  128. package/dist/flatbuffers/duc/duc-layer.js +59 -0
  129. package/dist/flatbuffers/duc/duc-leader-element.d.ts +22 -0
  130. package/dist/flatbuffers/duc/duc-leader-element.js +60 -0
  131. package/dist/flatbuffers/duc/duc-leader-style.d.ts +30 -0
  132. package/dist/flatbuffers/duc/duc-leader-style.js +87 -0
  133. package/dist/flatbuffers/duc/duc-line-reference.d.ts +15 -0
  134. package/dist/flatbuffers/duc/duc-line-reference.js +43 -0
  135. package/dist/flatbuffers/duc/duc-line.d.ts +15 -0
  136. package/dist/flatbuffers/duc/duc-line.js +43 -0
  137. package/dist/flatbuffers/duc/duc-linear-element-base.d.ts +38 -0
  138. package/dist/flatbuffers/duc/duc-linear-element-base.js +124 -0
  139. package/dist/flatbuffers/duc/duc-linear-element.d.ts +16 -0
  140. package/dist/flatbuffers/duc/duc-linear-element.js +49 -0
  141. package/dist/flatbuffers/duc/duc-local-state.d.ts +68 -0
  142. package/dist/flatbuffers/duc/duc-local-state.js +206 -0
  143. package/dist/flatbuffers/duc/duc-mermaid-element.d.ts +23 -0
  144. package/dist/flatbuffers/duc/duc-mermaid-element.js +65 -0
  145. package/dist/flatbuffers/duc/duc-parametric-element.d.ts +16 -0
  146. package/dist/flatbuffers/duc/duc-parametric-element.js +44 -0
  147. package/dist/flatbuffers/duc/duc-path.d.ts +26 -0
  148. package/dist/flatbuffers/duc/duc-path.js +69 -0
  149. package/dist/flatbuffers/duc/duc-pdf-element.d.ts +17 -0
  150. package/dist/flatbuffers/duc/duc-pdf-element.js +49 -0
  151. package/dist/flatbuffers/duc/duc-plot-element.d.ts +19 -0
  152. package/dist/flatbuffers/duc/duc-plot-element.js +52 -0
  153. package/dist/flatbuffers/duc/duc-plot-style.d.ts +14 -0
  154. package/dist/flatbuffers/duc/duc-plot-style.js +41 -0
  155. package/dist/flatbuffers/duc/duc-point-binding.d.ts +26 -0
  156. package/dist/flatbuffers/duc/duc-point-binding.js +73 -0
  157. package/dist/flatbuffers/duc/duc-point.d.ts +18 -0
  158. package/dist/flatbuffers/duc/duc-point.js +57 -0
  159. package/dist/flatbuffers/duc/duc-polygon-element.d.ts +16 -0
  160. package/dist/flatbuffers/duc/duc-polygon-element.js +49 -0
  161. package/dist/flatbuffers/duc/duc-rectangle-element.d.ts +14 -0
  162. package/dist/flatbuffers/duc/duc-rectangle-element.js +41 -0
  163. package/dist/flatbuffers/duc/duc-region.d.ts +19 -0
  164. package/dist/flatbuffers/duc/duc-region.js +51 -0
  165. package/dist/flatbuffers/duc/duc-stack-base.d.ts +27 -0
  166. package/dist/flatbuffers/duc/duc-stack-base.js +78 -0
  167. package/dist/flatbuffers/duc/duc-stack-element-base.d.ts +23 -0
  168. package/dist/flatbuffers/duc/duc-stack-element-base.js +65 -0
  169. package/dist/flatbuffers/duc/duc-stack-like-styles.d.ts +16 -0
  170. package/dist/flatbuffers/duc/duc-stack-like-styles.js +48 -0
  171. package/dist/flatbuffers/duc/duc-table-auto-size.d.ts +15 -0
  172. package/dist/flatbuffers/duc/duc-table-auto-size.js +48 -0
  173. package/dist/flatbuffers/duc/duc-table-cell-entry.d.ts +16 -0
  174. package/dist/flatbuffers/duc/duc-table-cell-entry.js +44 -0
  175. package/dist/flatbuffers/duc/duc-table-cell-span.d.ts +15 -0
  176. package/dist/flatbuffers/duc/duc-table-cell-span.js +48 -0
  177. package/dist/flatbuffers/duc/duc-table-cell-style.d.ts +22 -0
  178. package/dist/flatbuffers/duc/duc-table-cell-style.js +59 -0
  179. package/dist/flatbuffers/duc/duc-table-cell.d.ts +27 -0
  180. package/dist/flatbuffers/duc/duc-table-cell.js +72 -0
  181. package/dist/flatbuffers/duc/duc-table-column-entry.d.ts +16 -0
  182. package/dist/flatbuffers/duc/duc-table-column-entry.js +44 -0
  183. package/dist/flatbuffers/duc/duc-table-column.d.ts +18 -0
  184. package/dist/flatbuffers/duc/duc-table-column.js +51 -0
  185. package/dist/flatbuffers/duc/duc-table-element.d.ts +51 -0
  186. package/dist/flatbuffers/duc/duc-table-element.js +167 -0
  187. package/dist/flatbuffers/duc/duc-table-row-entry.d.ts +16 -0
  188. package/dist/flatbuffers/duc/duc-table-row-entry.js +44 -0
  189. package/dist/flatbuffers/duc/duc-table-row.d.ts +18 -0
  190. package/dist/flatbuffers/duc/duc-table-row.js +51 -0
  191. package/dist/flatbuffers/duc/duc-table-style.d.ts +23 -0
  192. package/dist/flatbuffers/duc/duc-table-style.js +65 -0
  193. package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.d.ts +14 -0
  194. package/dist/flatbuffers/duc/duc-text-dynamic-dictionary-source.js +40 -0
  195. package/dist/flatbuffers/duc/duc-text-dynamic-element-source.d.ts +17 -0
  196. package/dist/flatbuffers/duc/duc-text-dynamic-element-source.js +49 -0
  197. package/dist/flatbuffers/duc/duc-text-dynamic-part.d.ts +22 -0
  198. package/dist/flatbuffers/duc/duc-text-dynamic-part.js +58 -0
  199. package/dist/flatbuffers/duc/duc-text-dynamic-source-data.d.ts +9 -0
  200. package/dist/flatbuffers/duc/duc-text-dynamic-source-data.js +26 -0
  201. package/dist/flatbuffers/duc/duc-text-dynamic-source.d.ts +19 -0
  202. package/dist/flatbuffers/duc/duc-text-dynamic-source.js +58 -0
  203. package/dist/flatbuffers/duc/duc-text-element.d.ts +33 -0
  204. package/dist/flatbuffers/duc/duc-text-element.js +94 -0
  205. package/dist/flatbuffers/duc/duc-text-style.d.ts +44 -0
  206. package/dist/flatbuffers/duc/duc-text-style.js +128 -0
  207. package/dist/flatbuffers/duc/duc-ucs.d.ts +16 -0
  208. package/dist/flatbuffers/duc/duc-ucs.js +49 -0
  209. package/dist/flatbuffers/duc/duc-view.d.ts +24 -0
  210. package/dist/flatbuffers/duc/duc-view.js +71 -0
  211. package/dist/flatbuffers/duc/duc-viewport-element.d.ts +36 -0
  212. package/dist/flatbuffers/duc/duc-viewport-element.js +102 -0
  213. package/dist/flatbuffers/duc/duc-viewport-style.d.ts +16 -0
  214. package/dist/flatbuffers/duc/duc-viewport-style.js +49 -0
  215. package/dist/flatbuffers/duc/duc-xray-element.d.ts +23 -0
  216. package/dist/flatbuffers/duc/duc-xray-element.js +66 -0
  217. package/dist/flatbuffers/duc/duc-xray-style.d.ts +17 -0
  218. package/dist/flatbuffers/duc/duc-xray-style.js +49 -0
  219. package/dist/flatbuffers/duc/dynamic-snap-settings.d.ts +17 -0
  220. package/dist/flatbuffers/duc/dynamic-snap-settings.js +56 -0
  221. package/dist/flatbuffers/duc/element-background.d.ts +14 -0
  222. package/dist/flatbuffers/duc/element-background.js +41 -0
  223. package/dist/flatbuffers/duc/element-content-base.d.ts +29 -0
  224. package/dist/flatbuffers/duc/element-content-base.js +80 -0
  225. package/dist/flatbuffers/duc/element-content-preference.d.ts +8 -0
  226. package/dist/flatbuffers/duc/element-content-preference.js +11 -0
  227. package/dist/flatbuffers/duc/element-stroke.d.ts +24 -0
  228. package/dist/flatbuffers/duc/element-stroke.js +66 -0
  229. package/dist/flatbuffers/duc/element-wrapper.d.ts +16 -0
  230. package/dist/flatbuffers/duc/element-wrapper.js +49 -0
  231. package/dist/flatbuffers/duc/element.d.ts +49 -0
  232. package/dist/flatbuffers/duc/element.js +106 -0
  233. package/dist/flatbuffers/duc/exported-data-state.d.ts +87 -0
  234. package/dist/flatbuffers/duc/exported-data-state.js +290 -0
  235. package/dist/flatbuffers/duc/fcfbetween-modifier.d.ts +17 -0
  236. package/dist/flatbuffers/duc/fcfbetween-modifier.js +48 -0
  237. package/dist/flatbuffers/duc/fcfdatum-definition.d.ts +16 -0
  238. package/dist/flatbuffers/duc/fcfdatum-definition.js +43 -0
  239. package/dist/flatbuffers/duc/fcfdatum-style.d.ts +14 -0
  240. package/dist/flatbuffers/duc/fcfdatum-style.js +41 -0
  241. package/dist/flatbuffers/duc/fcfframe-modifiers.d.ts +22 -0
  242. package/dist/flatbuffers/duc/fcfframe-modifiers.js +65 -0
  243. package/dist/flatbuffers/duc/fcflayout-style.d.ts +17 -0
  244. package/dist/flatbuffers/duc/fcflayout-style.js +56 -0
  245. package/dist/flatbuffers/duc/fcfprojected-zone-modifier.d.ts +13 -0
  246. package/dist/flatbuffers/duc/fcfprojected-zone-modifier.js +40 -0
  247. package/dist/flatbuffers/duc/fcfsegment-row.d.ts +17 -0
  248. package/dist/flatbuffers/duc/fcfsegment-row.js +55 -0
  249. package/dist/flatbuffers/duc/fcfsymbol-style.d.ts +13 -0
  250. package/dist/flatbuffers/duc/fcfsymbol-style.js +40 -0
  251. package/dist/flatbuffers/duc/feature-control-frame-segment.d.ts +22 -0
  252. package/dist/flatbuffers/duc/feature-control-frame-segment.js +65 -0
  253. package/dist/flatbuffers/duc/feature-modifier.d.ts +18 -0
  254. package/dist/flatbuffers/duc/feature-modifier.js +21 -0
  255. package/dist/flatbuffers/duc/gdt-symbol.d.ts +22 -0
  256. package/dist/flatbuffers/duc/gdt-symbol.js +25 -0
  257. package/dist/flatbuffers/duc/geometric-point.d.ts +10 -0
  258. package/dist/flatbuffers/duc/geometric-point.js +27 -0
  259. package/dist/flatbuffers/duc/grid-display-type.d.ts +6 -0
  260. package/dist/flatbuffers/duc/grid-display-type.js +9 -0
  261. package/dist/flatbuffers/duc/grid-settings.d.ts +54 -0
  262. package/dist/flatbuffers/duc/grid-settings.js +165 -0
  263. package/dist/flatbuffers/duc/grid-style.d.ts +26 -0
  264. package/dist/flatbuffers/duc/grid-style.js +74 -0
  265. package/dist/flatbuffers/duc/grid-type.d.ts +7 -0
  266. package/dist/flatbuffers/duc/grid-type.js +10 -0
  267. package/dist/flatbuffers/duc/handle-type.d.ts +4 -0
  268. package/dist/flatbuffers/duc/handle-type.js +7 -0
  269. package/dist/flatbuffers/duc/hatch-pattern-line.d.ts +35 -0
  270. package/dist/flatbuffers/duc/hatch-pattern-line.js +93 -0
  271. package/dist/flatbuffers/duc/hatch-style.d.ts +5 -0
  272. package/dist/flatbuffers/duc/hatch-style.js +8 -0
  273. package/dist/flatbuffers/duc/identified-common-style.d.ts +16 -0
  274. package/dist/flatbuffers/duc/identified-common-style.js +44 -0
  275. package/dist/flatbuffers/duc/identified-dimension-style.d.ts +16 -0
  276. package/dist/flatbuffers/duc/identified-dimension-style.js +44 -0
  277. package/dist/flatbuffers/duc/identified-doc-style.d.ts +16 -0
  278. package/dist/flatbuffers/duc/identified-doc-style.js +44 -0
  279. package/dist/flatbuffers/duc/identified-fcfstyle.d.ts +16 -0
  280. package/dist/flatbuffers/duc/identified-fcfstyle.js +44 -0
  281. package/dist/flatbuffers/duc/identified-grid-settings.d.ts +16 -0
  282. package/dist/flatbuffers/duc/identified-grid-settings.js +44 -0
  283. package/dist/flatbuffers/duc/identified-hatch-style.d.ts +16 -0
  284. package/dist/flatbuffers/duc/identified-hatch-style.js +44 -0
  285. package/dist/flatbuffers/duc/identified-leader-style.d.ts +16 -0
  286. package/dist/flatbuffers/duc/identified-leader-style.js +44 -0
  287. package/dist/flatbuffers/duc/identified-snap-settings.d.ts +16 -0
  288. package/dist/flatbuffers/duc/identified-snap-settings.js +44 -0
  289. package/dist/flatbuffers/duc/identified-stack-like-style.d.ts +16 -0
  290. package/dist/flatbuffers/duc/identified-stack-like-style.js +44 -0
  291. package/dist/flatbuffers/duc/identified-table-style.d.ts +16 -0
  292. package/dist/flatbuffers/duc/identified-table-style.js +44 -0
  293. package/dist/flatbuffers/duc/identified-text-style.d.ts +16 -0
  294. package/dist/flatbuffers/duc/identified-text-style.js +44 -0
  295. package/dist/flatbuffers/duc/identified-ucs.d.ts +16 -0
  296. package/dist/flatbuffers/duc/identified-ucs.js +44 -0
  297. package/dist/flatbuffers/duc/identified-view.d.ts +16 -0
  298. package/dist/flatbuffers/duc/identified-view.js +44 -0
  299. package/dist/flatbuffers/duc/identified-viewport-style.d.ts +16 -0
  300. package/dist/flatbuffers/duc/identified-viewport-style.js +44 -0
  301. package/dist/flatbuffers/duc/identified-xray-style.d.ts +16 -0
  302. package/dist/flatbuffers/duc/identified-xray-style.js +44 -0
  303. package/dist/flatbuffers/duc/identifier.d.ts +20 -0
  304. package/dist/flatbuffers/duc/identifier.js +57 -0
  305. package/dist/flatbuffers/duc/image-crop.d.ts +23 -0
  306. package/dist/flatbuffers/duc/image-crop.js +80 -0
  307. package/dist/flatbuffers/duc/image-status.d.ts +5 -0
  308. package/dist/flatbuffers/duc/image-status.js +8 -0
  309. package/dist/flatbuffers/duc/isometric-grid-settings.d.ts +15 -0
  310. package/dist/flatbuffers/duc/isometric-grid-settings.js +48 -0
  311. package/dist/flatbuffers/duc/jsonpatch-operation.d.ts +23 -0
  312. package/dist/flatbuffers/duc/jsonpatch-operation.js +64 -0
  313. package/dist/flatbuffers/duc/layer-snap-filters.d.ts +23 -0
  314. package/dist/flatbuffers/duc/layer-snap-filters.js +76 -0
  315. package/dist/flatbuffers/duc/layer-validation-rules.d.ts +17 -0
  316. package/dist/flatbuffers/duc/layer-validation-rules.js +54 -0
  317. package/dist/flatbuffers/duc/leader-block-content.d.ts +25 -0
  318. package/dist/flatbuffers/duc/leader-block-content.js +85 -0
  319. package/dist/flatbuffers/duc/leader-content-data.d.ts +9 -0
  320. package/dist/flatbuffers/duc/leader-content-data.js +26 -0
  321. package/dist/flatbuffers/duc/leader-content-type.d.ts +4 -0
  322. package/dist/flatbuffers/duc/leader-content-type.js +7 -0
  323. package/dist/flatbuffers/duc/leader-content.d.ts +19 -0
  324. package/dist/flatbuffers/duc/leader-content.js +58 -0
  325. package/dist/flatbuffers/duc/leader-text-block-content.d.ts +14 -0
  326. package/dist/flatbuffers/duc/leader-text-block-content.js +40 -0
  327. package/dist/flatbuffers/duc/line-head.d.ts +17 -0
  328. package/dist/flatbuffers/duc/line-head.js +20 -0
  329. package/dist/flatbuffers/duc/line-spacing-type.d.ts +5 -0
  330. package/dist/flatbuffers/duc/line-spacing-type.js +8 -0
  331. package/dist/flatbuffers/duc/line-spacing.d.ts +16 -0
  332. package/dist/flatbuffers/duc/line-spacing.js +49 -0
  333. package/dist/flatbuffers/duc/linear-unit-system.d.ts +24 -0
  334. package/dist/flatbuffers/duc/linear-unit-system.js +75 -0
  335. package/dist/flatbuffers/duc/margins.d.ts +19 -0
  336. package/dist/flatbuffers/duc/margins.js +64 -0
  337. package/dist/flatbuffers/duc/mark-ellipse-center.d.ts +4 -0
  338. package/dist/flatbuffers/duc/mark-ellipse-center.js +7 -0
  339. package/dist/flatbuffers/duc/material-condition.d.ts +5 -0
  340. package/dist/flatbuffers/duc/material-condition.js +8 -0
  341. package/dist/flatbuffers/duc/object-snap-mode.d.ts +22 -0
  342. package/dist/flatbuffers/duc/object-snap-mode.js +25 -0
  343. package/dist/flatbuffers/duc/paragraph-formatting.d.ts +33 -0
  344. package/dist/flatbuffers/duc/paragraph-formatting.js +106 -0
  345. package/dist/flatbuffers/duc/parametric-source-type.d.ts +4 -0
  346. package/dist/flatbuffers/duc/parametric-source-type.js +7 -0
  347. package/dist/flatbuffers/duc/parametric-source.d.ts +20 -0
  348. package/dist/flatbuffers/duc/parametric-source.js +57 -0
  349. package/dist/flatbuffers/duc/plot-layout.d.ts +14 -0
  350. package/dist/flatbuffers/duc/plot-layout.js +41 -0
  351. package/dist/flatbuffers/duc/point-binding-point.d.ts +15 -0
  352. package/dist/flatbuffers/duc/point-binding-point.js +48 -0
  353. package/dist/flatbuffers/duc/polar-grid-settings.d.ts +17 -0
  354. package/dist/flatbuffers/duc/polar-grid-settings.js +56 -0
  355. package/dist/flatbuffers/duc/polar-tracking-settings.d.ts +29 -0
  356. package/dist/flatbuffers/duc/polar-tracking-settings.js +90 -0
  357. package/dist/flatbuffers/duc/primary-units.d.ts +16 -0
  358. package/dist/flatbuffers/duc/primary-units.js +44 -0
  359. package/dist/flatbuffers/duc/pruning-level.d.ts +5 -0
  360. package/dist/flatbuffers/duc/pruning-level.js +8 -0
  361. package/dist/flatbuffers/duc/snap-marker-settings.d.ts +23 -0
  362. package/dist/flatbuffers/duc/snap-marker-settings.js +79 -0
  363. package/dist/flatbuffers/duc/snap-marker-shape.d.ts +6 -0
  364. package/dist/flatbuffers/duc/snap-marker-shape.js +9 -0
  365. package/dist/flatbuffers/duc/snap-marker-style-entry.d.ts +16 -0
  366. package/dist/flatbuffers/duc/snap-marker-style-entry.js +43 -0
  367. package/dist/flatbuffers/duc/snap-marker-style.d.ts +17 -0
  368. package/dist/flatbuffers/duc/snap-marker-style.js +49 -0
  369. package/dist/flatbuffers/duc/snap-mode.d.ts +4 -0
  370. package/dist/flatbuffers/duc/snap-mode.js +7 -0
  371. package/dist/flatbuffers/duc/snap-override-behavior.d.ts +5 -0
  372. package/dist/flatbuffers/duc/snap-override-behavior.js +8 -0
  373. package/dist/flatbuffers/duc/snap-override.d.ts +17 -0
  374. package/dist/flatbuffers/duc/snap-override.js +49 -0
  375. package/dist/flatbuffers/duc/snap-settings.d.ts +75 -0
  376. package/dist/flatbuffers/duc/snap-settings.js +245 -0
  377. package/dist/flatbuffers/duc/stack-format-properties.d.ts +18 -0
  378. package/dist/flatbuffers/duc/stack-format-properties.js +57 -0
  379. package/dist/flatbuffers/duc/stack-format.d.ts +21 -0
  380. package/dist/flatbuffers/duc/stack-format.js +64 -0
  381. package/dist/flatbuffers/duc/stacked-text-align.d.ts +5 -0
  382. package/dist/flatbuffers/duc/stacked-text-align.js +8 -0
  383. package/dist/flatbuffers/duc/standard-overrides.d.ts +63 -0
  384. package/dist/flatbuffers/duc/standard-overrides.js +162 -0
  385. package/dist/flatbuffers/duc/standard-styles.d.ts +77 -0
  386. package/dist/flatbuffers/duc/standard-styles.js +285 -0
  387. package/dist/flatbuffers/duc/standard-units.d.ts +16 -0
  388. package/dist/flatbuffers/duc/standard-units.js +44 -0
  389. package/dist/flatbuffers/duc/standard-validation.d.ts +16 -0
  390. package/dist/flatbuffers/duc/standard-validation.js +44 -0
  391. package/dist/flatbuffers/duc/standard-view-settings.d.ts +35 -0
  392. package/dist/flatbuffers/duc/standard-view-settings.js +124 -0
  393. package/dist/flatbuffers/duc/standard.d.ts +33 -0
  394. package/dist/flatbuffers/duc/standard.js +90 -0
  395. package/dist/flatbuffers/duc/string-value-entry.d.ts +17 -0
  396. package/dist/flatbuffers/duc/string-value-entry.js +49 -0
  397. package/dist/flatbuffers/duc/stroke-cap.d.ts +5 -0
  398. package/dist/flatbuffers/duc/stroke-cap.js +8 -0
  399. package/dist/flatbuffers/duc/stroke-join.d.ts +5 -0
  400. package/dist/flatbuffers/duc/stroke-join.js +8 -0
  401. package/dist/flatbuffers/duc/stroke-placement.d.ts +5 -0
  402. package/dist/flatbuffers/duc/stroke-placement.js +8 -0
  403. package/dist/flatbuffers/duc/stroke-preference.d.ts +6 -0
  404. package/dist/flatbuffers/duc/stroke-preference.js +9 -0
  405. package/dist/flatbuffers/duc/stroke-side-preference.d.ts +8 -0
  406. package/dist/flatbuffers/duc/stroke-side-preference.js +11 -0
  407. package/dist/flatbuffers/duc/stroke-sides.d.ts +24 -0
  408. package/dist/flatbuffers/duc/stroke-sides.js +67 -0
  409. package/dist/flatbuffers/duc/stroke-style.d.ts +37 -0
  410. package/dist/flatbuffers/duc/stroke-style.js +111 -0
  411. package/dist/flatbuffers/duc/stroke-width.d.ts +5 -0
  412. package/dist/flatbuffers/duc/stroke-width.js +8 -0
  413. package/dist/flatbuffers/duc/table-cell-alignment.d.ts +11 -0
  414. package/dist/flatbuffers/duc/table-cell-alignment.js +14 -0
  415. package/dist/flatbuffers/duc/table-flow-direction.d.ts +4 -0
  416. package/dist/flatbuffers/duc/table-flow-direction.js +7 -0
  417. package/dist/flatbuffers/duc/text-align.d.ts +5 -0
  418. package/dist/flatbuffers/duc/text-align.js +8 -0
  419. package/dist/flatbuffers/duc/text-column.d.ts +15 -0
  420. package/dist/flatbuffers/duc/text-column.js +48 -0
  421. package/dist/flatbuffers/duc/text-field-source-property.d.ts +13 -0
  422. package/dist/flatbuffers/duc/text-field-source-property.js +16 -0
  423. package/dist/flatbuffers/duc/text-field-source-type.d.ts +4 -0
  424. package/dist/flatbuffers/duc/text-field-source-type.js +7 -0
  425. package/dist/flatbuffers/duc/text-flow-direction.d.ts +6 -0
  426. package/dist/flatbuffers/duc/text-flow-direction.js +9 -0
  427. package/dist/flatbuffers/duc/tiling-properties.d.ts +21 -0
  428. package/dist/flatbuffers/duc/tiling-properties.js +75 -0
  429. package/dist/flatbuffers/duc/tolerance-clause.d.ts +27 -0
  430. package/dist/flatbuffers/duc/tolerance-clause.js +84 -0
  431. package/dist/flatbuffers/duc/tolerance-display.d.ts +7 -0
  432. package/dist/flatbuffers/duc/tolerance-display.js +10 -0
  433. package/dist/flatbuffers/duc/tolerance-type.d.ts +5 -0
  434. package/dist/flatbuffers/duc/tolerance-type.js +8 -0
  435. package/dist/flatbuffers/duc/tolerance-zone-type.d.ts +7 -0
  436. package/dist/flatbuffers/duc/tolerance-zone-type.js +10 -0
  437. package/dist/flatbuffers/duc/tracking-line-style.d.ts +26 -0
  438. package/dist/flatbuffers/duc/tracking-line-style.js +74 -0
  439. package/dist/flatbuffers/duc/unit-precision.d.ts +19 -0
  440. package/dist/flatbuffers/duc/unit-precision.js +64 -0
  441. package/dist/flatbuffers/duc/unit-system-base.d.ts +20 -0
  442. package/dist/flatbuffers/duc/unit-system-base.js +65 -0
  443. package/dist/flatbuffers/duc/unit-system.d.ts +4 -0
  444. package/dist/flatbuffers/duc/unit-system.js +7 -0
  445. package/dist/flatbuffers/duc/version-base.d.ts +27 -0
  446. package/dist/flatbuffers/duc/version-base.js +80 -0
  447. package/dist/flatbuffers/duc/version-graph-metadata.d.ts +15 -0
  448. package/dist/flatbuffers/duc/version-graph-metadata.js +48 -0
  449. package/dist/flatbuffers/duc/version-graph.d.ts +31 -0
  450. package/dist/flatbuffers/duc/version-graph.js +94 -0
  451. package/dist/flatbuffers/duc/vertical-align.d.ts +5 -0
  452. package/dist/flatbuffers/duc/vertical-align.js +8 -0
  453. package/dist/flatbuffers/duc/viewport-shade-plot.d.ts +6 -0
  454. package/dist/flatbuffers/duc/viewport-shade-plot.js +9 -0
  455. package/dist/flatbuffers/duc/youtube-states.d.ts +8 -0
  456. package/dist/flatbuffers/duc/youtube-states.js +11 -0
  457. package/dist/flatbuffers/duc.d.ts +227 -0
  458. package/dist/flatbuffers/duc.js +229 -0
  459. package/dist/index.d.ts +8 -0
  460. package/dist/index.js +8 -0
  461. package/dist/legacy/index.d.ts +1 -0
  462. package/dist/legacy/index.js +1 -0
  463. package/dist/legacy/v1/duc/app-state.d.ts +124 -0
  464. package/dist/legacy/v1/duc/app-state.js +388 -0
  465. package/dist/legacy/v1/duc/binary-file-data.d.ts +27 -0
  466. package/dist/legacy/v1/duc/binary-file-data.js +90 -0
  467. package/dist/legacy/v1/duc/binary-files-entry.d.ts +16 -0
  468. package/dist/legacy/v1/duc/binary-files-entry.js +43 -0
  469. package/dist/legacy/v1/duc/binary-files.d.ts +17 -0
  470. package/dist/legacy/v1/duc/binary-files.js +55 -0
  471. package/dist/legacy/v1/duc/binding-point.d.ts +15 -0
  472. package/dist/legacy/v1/duc/binding-point.js +48 -0
  473. package/dist/legacy/v1/duc/bound-element.d.ts +17 -0
  474. package/dist/legacy/v1/duc/bound-element.js +48 -0
  475. package/dist/legacy/v1/duc/duc-block-attribute-details.d.ts +22 -0
  476. package/dist/legacy/v1/duc/duc-block-attribute-details.js +57 -0
  477. package/dist/legacy/v1/duc/duc-block-attribute.d.ts +16 -0
  478. package/dist/legacy/v1/duc/duc-block-attribute.js +43 -0
  479. package/dist/legacy/v1/duc/duc-block-instance-element-override.d.ts +17 -0
  480. package/dist/legacy/v1/duc/duc-block-instance-element-override.js +48 -0
  481. package/dist/legacy/v1/duc/duc-block.d.ts +34 -0
  482. package/dist/legacy/v1/duc/duc-block.js +110 -0
  483. package/dist/legacy/v1/duc/duc-element.d.ts +273 -0
  484. package/dist/legacy/v1/duc/duc-element.js +865 -0
  485. package/dist/legacy/v1/duc/duc-group.d.ts +40 -0
  486. package/dist/legacy/v1/duc/duc-group.js +114 -0
  487. package/dist/legacy/v1/duc/duc-line-reference.d.ts +15 -0
  488. package/dist/legacy/v1/duc/duc-line-reference.js +43 -0
  489. package/dist/legacy/v1/duc/duc-line.d.ts +15 -0
  490. package/dist/legacy/v1/duc/duc-line.js +43 -0
  491. package/dist/legacy/v1/duc/duc-path.d.ts +26 -0
  492. package/dist/legacy/v1/duc/duc-path.js +69 -0
  493. package/dist/legacy/v1/duc/duc-table-cell.d.ts +22 -0
  494. package/dist/legacy/v1/duc/duc-table-cell.js +57 -0
  495. package/dist/legacy/v1/duc/duc-table-column.d.ts +18 -0
  496. package/dist/legacy/v1/duc/duc-table-column.js +50 -0
  497. package/dist/legacy/v1/duc/duc-table-row.d.ts +18 -0
  498. package/dist/legacy/v1/duc/duc-table-row.js +50 -0
  499. package/dist/legacy/v1/duc/duc-table-style-props.d.ts +39 -0
  500. package/dist/legacy/v1/duc/duc-table-style-props.js +114 -0
  501. package/dist/legacy/v1/duc/duc-table-style.d.ts +14 -0
  502. package/dist/legacy/v1/duc/duc-table-style.js +41 -0
  503. package/dist/legacy/v1/duc/element-background.d.ts +14 -0
  504. package/dist/legacy/v1/duc/element-background.js +41 -0
  505. package/dist/legacy/v1/duc/element-content-base.d.ts +22 -0
  506. package/dist/legacy/v1/duc/element-content-base.js +64 -0
  507. package/dist/legacy/v1/duc/element-stroke.d.ts +23 -0
  508. package/dist/legacy/v1/duc/element-stroke.js +66 -0
  509. package/dist/legacy/v1/duc/exported-data-state.d.ts +51 -0
  510. package/dist/legacy/v1/duc/exported-data-state.js +155 -0
  511. package/dist/legacy/v1/duc/image-crop.d.ts +23 -0
  512. package/dist/legacy/v1/duc/image-crop.js +80 -0
  513. package/dist/legacy/v1/duc/linear-element-editor.d.ts +44 -0
  514. package/dist/legacy/v1/duc/linear-element-editor.js +119 -0
  515. package/dist/legacy/v1/duc/point-binding.d.ts +25 -0
  516. package/dist/legacy/v1/duc/point-binding.js +72 -0
  517. package/dist/legacy/v1/duc/point.d.ts +20 -0
  518. package/dist/legacy/v1/duc/point.js +63 -0
  519. package/dist/legacy/v1/duc/pointer-down-state.d.ts +32 -0
  520. package/dist/legacy/v1/duc/pointer-down-state.js +90 -0
  521. package/dist/legacy/v1/duc/renderer-state.d.ts +17 -0
  522. package/dist/legacy/v1/duc/renderer-state.js +54 -0
  523. package/dist/legacy/v1/duc/segment-midpoint-state.d.ts +18 -0
  524. package/dist/legacy/v1/duc/segment-midpoint-state.js +57 -0
  525. package/dist/legacy/v1/duc/simple-point.d.ts +15 -0
  526. package/dist/legacy/v1/duc/simple-point.js +48 -0
  527. package/dist/legacy/v1/duc/stroke-sides.d.ts +23 -0
  528. package/dist/legacy/v1/duc/stroke-sides.js +66 -0
  529. package/dist/legacy/v1/duc/stroke-style.d.ts +31 -0
  530. package/dist/legacy/v1/duc/stroke-style.js +102 -0
  531. package/dist/legacy/v1/duc/tiling-properties.d.ts +21 -0
  532. package/dist/legacy/v1/duc/tiling-properties.js +75 -0
  533. package/dist/legacy/v1/duc.d.ts +35 -0
  534. package/dist/legacy/v1/duc.js +37 -0
  535. package/dist/legacy/v1/index.d.ts +1 -0
  536. package/dist/legacy/v1/index.js +1 -0
  537. package/dist/legacy/v1/parse/index.d.ts +67 -0
  538. package/dist/legacy/v1/parse/index.js +101 -0
  539. package/dist/legacy/v1/parse/parseAppStateFromBinary.d.ts +3 -0
  540. package/dist/legacy/v1/parse/parseAppStateFromBinary.js +139 -0
  541. package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.d.ts +4 -0
  542. package/dist/legacy/v1/parse/parseBinaryFilesFromBinary.js +32 -0
  543. package/dist/legacy/v1/parse/parseBlockFromBinary.d.ts +3 -0
  544. package/dist/legacy/v1/parse/parseBlockFromBinary.js +70 -0
  545. package/dist/legacy/v1/parse/parseElementFromBinary.d.ts +8 -0
  546. package/dist/legacy/v1/parse/parseElementFromBinary.js +387 -0
  547. package/dist/legacy/v1/parse/parseGroupFromBinary.d.ts +4 -0
  548. package/dist/legacy/v1/parse/parseGroupFromBinary.js +36 -0
  549. package/dist/legacy/v1/parse/parseRendererStateFromBinary.d.ts +4 -0
  550. package/dist/legacy/v1/parse/parseRendererStateFromBinary.js +15 -0
  551. package/dist/legacy/v1/serialize/index.d.ts +5 -0
  552. package/dist/legacy/v1/serialize/index.js +81 -0
  553. package/dist/legacy/v1/serialize/serializationUtils.d.ts +17 -0
  554. package/dist/legacy/v1/serialize/serializationUtils.js +27 -0
  555. package/dist/legacy/v1/serialize/serializeAppStateFromDuc.d.ts +4 -0
  556. package/dist/legacy/v1/serialize/serializeAppStateFromDuc.js +145 -0
  557. package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.d.ts +4 -0
  558. package/dist/legacy/v1/serialize/serializeBinaryFilesFromDuc.js +46 -0
  559. package/dist/legacy/v1/serialize/serializeBlockFromDuc.d.ts +3 -0
  560. package/dist/legacy/v1/serialize/serializeBlockFromDuc.js +60 -0
  561. package/dist/legacy/v1/serialize/serializeElementFromDuc.d.ts +8 -0
  562. package/dist/legacy/v1/serialize/serializeElementFromDuc.js +435 -0
  563. package/dist/legacy/v1/serialize/serializeGroupFromDuc.d.ts +3 -0
  564. package/dist/legacy/v1/serialize/serializeGroupFromDuc.js +37 -0
  565. package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.d.ts +4 -0
  566. package/dist/legacy/v1/serialize/serializeRendererStateFromDuc.js +7 -0
  567. package/dist/legacy/v1/types/elements/index.d.ts +480 -0
  568. package/dist/legacy/v1/types/elements/index.js +1 -0
  569. package/dist/legacy/v1/types/elements/typeChecks.d.ts +40 -0
  570. package/dist/legacy/v1/types/elements/typeChecks.js +179 -0
  571. package/dist/legacy/v1/types/geometryTypes.d.ts +78 -0
  572. package/dist/legacy/v1/types/geometryTypes.js +1 -0
  573. package/dist/legacy/v1/types/index.d.ts +496 -0
  574. package/dist/legacy/v1/types/index.js +1 -0
  575. package/dist/legacy/v1/types/utility-types.d.ts +31 -0
  576. package/dist/legacy/v1/types/utility-types.js +1 -0
  577. package/dist/legacy/v1/utils/bounds.d.ts +76 -0
  578. package/dist/legacy/v1/utils/bounds.js +415 -0
  579. package/dist/legacy/v1/utils/constants.d.ts +370 -0
  580. package/dist/legacy/v1/utils/constants.js +571 -0
  581. package/dist/legacy/v1/utils/elements/index.d.ts +26 -0
  582. package/dist/legacy/v1/utils/elements/index.js +108 -0
  583. package/dist/legacy/v1/utils/elements/linearElement.d.ts +133 -0
  584. package/dist/legacy/v1/utils/elements/linearElement.js +544 -0
  585. package/dist/legacy/v1/utils/elements/textElement.d.ts +89 -0
  586. package/dist/legacy/v1/utils/elements/textElement.js +563 -0
  587. package/dist/legacy/v1/utils/index.d.ts +26 -0
  588. package/dist/legacy/v1/utils/index.js +40 -0
  589. package/dist/legacy/v1/utils/math/algebra/ga.d.ts +63 -0
  590. package/dist/legacy/v1/utils/math/algebra/ga.js +268 -0
  591. package/dist/legacy/v1/utils/math/algebra/gadirections.d.ts +9 -0
  592. package/dist/legacy/v1/utils/math/algebra/gadirections.js +18 -0
  593. package/dist/legacy/v1/utils/math/algebra/galines.d.ts +23 -0
  594. package/dist/legacy/v1/utils/math/algebra/galines.js +32 -0
  595. package/dist/legacy/v1/utils/math/algebra/gapoints.d.ts +8 -0
  596. package/dist/legacy/v1/utils/math/algebra/gapoints.js +30 -0
  597. package/dist/legacy/v1/utils/math/algebra/gatransforms.d.ts +10 -0
  598. package/dist/legacy/v1/utils/math/algebra/gatransforms.js +23 -0
  599. package/dist/legacy/v1/utils/math/bbox.d.ts +10 -0
  600. package/dist/legacy/v1/utils/math/bbox.js +42 -0
  601. package/dist/legacy/v1/utils/math/geometry.d.ts +102 -0
  602. package/dist/legacy/v1/utils/math/geometry.js +790 -0
  603. package/dist/legacy/v1/utils/math/index.d.ts +309 -0
  604. package/dist/legacy/v1/utils/math/index.js +1140 -0
  605. package/dist/legacy/v1/utils/math/random.d.ts +4 -0
  606. package/dist/legacy/v1/utils/math/random.js +25 -0
  607. package/dist/legacy/v1/utils/measurements.d.ts +33 -0
  608. package/dist/legacy/v1/utils/measurements.js +65 -0
  609. package/dist/legacy/v1/utils/normalize.d.ts +14 -0
  610. package/dist/legacy/v1/utils/normalize.js +49 -0
  611. package/dist/legacy/v1/utils/restore.d.ts +197 -0
  612. package/dist/legacy/v1/utils/restore.js +1255 -0
  613. package/dist/legacy/v1/utils/scopes.d.ts +260 -0
  614. package/dist/legacy/v1/utils/scopes.js +661 -0
  615. package/dist/legacy/v1/utils/standards.d.ts +12 -0
  616. package/dist/legacy/v1/utils/standards.js +10 -0
  617. package/dist/legacy/v1/utils/state/index.d.ts +2 -0
  618. package/dist/legacy/v1/utils/state/index.js +68 -0
  619. package/dist/legacy/v1/utils/url.d.ts +8 -0
  620. package/dist/legacy/v1/utils/url.js +33 -0
  621. package/dist/parse.d.ts +54 -0
  622. package/dist/parse.js +1318 -0
  623. package/dist/restore/index.d.ts +3 -0
  624. package/dist/restore/index.js +3 -0
  625. package/dist/restore/restoreDataState.d.ts +191 -0
  626. package/dist/restore/restoreDataState.js +716 -0
  627. package/dist/restore/restoreElements.d.ts +34 -0
  628. package/dist/restore/restoreElements.js +1281 -0
  629. package/dist/restore/restoreStandards.d.ts +8 -0
  630. package/dist/restore/restoreStandards.js +224 -0
  631. package/dist/serialize.d.ts +3 -0
  632. package/dist/serialize.js +2465 -0
  633. package/dist/technical/index.d.ts +3 -0
  634. package/dist/technical/index.js +3 -0
  635. package/dist/technical/measurements.d.ts +31 -0
  636. package/dist/technical/measurements.js +64 -0
  637. package/dist/technical/scopes.d.ts +261 -0
  638. package/dist/technical/scopes.js +661 -0
  639. package/dist/technical/standards.d.ts +124 -0
  640. package/dist/technical/standards.js +10 -0
  641. package/dist/types/elements/index.d.ts +1356 -0
  642. package/dist/types/elements/index.js +1 -0
  643. package/dist/types/elements/typeChecks.d.ts +40 -0
  644. package/dist/types/elements/typeChecks.js +188 -0
  645. package/dist/types/geometryTypes.d.ts +90 -0
  646. package/dist/types/geometryTypes.js +1 -0
  647. package/dist/types/index.d.ts +591 -0
  648. package/dist/types/index.js +3 -0
  649. package/dist/types/utility-types.d.ts +31 -0
  650. package/dist/types/utility-types.js +1 -0
  651. package/dist/utils/bounds.d.ts +75 -0
  652. package/dist/utils/bounds.js +414 -0
  653. package/dist/utils/constants.d.ts +288 -0
  654. package/dist/utils/constants.js +529 -0
  655. package/dist/utils/elements/frameElement.d.ts +4 -0
  656. package/dist/utils/elements/frameElement.js +16 -0
  657. package/dist/utils/elements/freedrawElement.d.ts +2 -0
  658. package/dist/utils/elements/freedrawElement.js +46 -0
  659. package/dist/utils/elements/index.d.ts +51 -0
  660. package/dist/utils/elements/index.js +215 -0
  661. package/dist/utils/elements/linearElement.d.ts +53 -0
  662. package/dist/utils/elements/linearElement.js +539 -0
  663. package/dist/utils/elements/newElement.d.ts +72 -0
  664. package/dist/utils/elements/newElement.js +268 -0
  665. package/dist/utils/elements/textElement.d.ts +89 -0
  666. package/dist/utils/elements/textElement.js +565 -0
  667. package/dist/utils/elements/viewportElement.d.ts +6 -0
  668. package/dist/utils/elements/viewportElement.js +9 -0
  669. package/dist/utils/filebyte.d.ts +39 -0
  670. package/dist/utils/filebyte.js +117 -0
  671. package/dist/utils/functionCodec.d.ts +5 -0
  672. package/dist/utils/functionCodec.js +86 -0
  673. package/dist/utils/index.d.ts +32 -0
  674. package/dist/utils/index.js +53 -0
  675. package/dist/utils/math/algebra/ga.d.ts +63 -0
  676. package/dist/utils/math/algebra/ga.js +268 -0
  677. package/dist/utils/math/algebra/gadirections.d.ts +9 -0
  678. package/dist/utils/math/algebra/gadirections.js +18 -0
  679. package/dist/utils/math/algebra/galines.d.ts +23 -0
  680. package/dist/utils/math/algebra/galines.js +32 -0
  681. package/dist/utils/math/algebra/gapoints.d.ts +8 -0
  682. package/dist/utils/math/algebra/gapoints.js +30 -0
  683. package/dist/utils/math/algebra/gatransforms.d.ts +10 -0
  684. package/dist/utils/math/algebra/gatransforms.js +23 -0
  685. package/dist/utils/math/algebra/index.d.ts +5 -0
  686. package/dist/utils/math/algebra/index.js +5 -0
  687. package/dist/utils/math/bbox.d.ts +10 -0
  688. package/dist/utils/math/bbox.js +42 -0
  689. package/dist/utils/math/geometry.d.ts +102 -0
  690. package/dist/utils/math/geometry.js +790 -0
  691. package/dist/utils/math/index.d.ts +323 -0
  692. package/dist/utils/math/index.js +1188 -0
  693. package/dist/utils/math/random.d.ts +4 -0
  694. package/dist/utils/math/random.js +25 -0
  695. package/dist/utils/normalize.d.ts +14 -0
  696. package/dist/utils/normalize.js +49 -0
  697. package/dist/utils/shape.d.ts +15 -0
  698. package/dist/utils/shape.js +254 -0
  699. package/dist/utils/state/grid.d.ts +7 -0
  700. package/dist/utils/state/grid.js +25 -0
  701. package/dist/utils/state/index.d.ts +9 -0
  702. package/dist/utils/state/index.js +131 -0
  703. package/dist/utils/url.d.ts +8 -0
  704. package/dist/utils/url.js +33 -0
  705. package/dist/utils/version.d.ts +1 -0
  706. package/dist/utils/version.js +1 -0
  707. package/package.json +79 -0
@@ -0,0 +1,591 @@
1
+ export * from "./elements";
2
+ export * from "./geometryTypes";
3
+ export * from "./utility-types";
4
+ import { OBJECT_SNAP_MODE, PRUNING_LEVEL } from "ducjs/flatbuffers/duc";
5
+ import { SupportedMeasures } from "ducjs/technical/scopes";
6
+ import { Standard } from "ducjs/technical/standards";
7
+ import { DucBindableElement, DucBlock, DucElement, DucElementType, DucGroup, DucIframeLikeElement, DucLayer, DucLinearElement, DucPoint, DucRegion, DucTextElement, ElementBackground, ElementStroke, ExternalFileId, FontFamilyValues, LineHead, NonDeleted, TextAlign } from "ducjs/types/elements";
8
+ import { GeometricPoint, Percentage, Radian, ScaleFactor } from "ducjs/types/geometryTypes";
9
+ import { MakeBrand, MaybePromise, ValueOf } from "ducjs/types/utility-types";
10
+ import type { GRID_DISPLAY_TYPE, GRID_TYPE, SNAP_MARKER_SHAPE, SNAP_MODE, SNAP_OVERRIDE_BEHAVIOR } from "ducjs/utils/constants";
11
+ /**
12
+ * Root data structure for the stored data state
13
+ */
14
+ export interface ExportedDataState {
15
+ type: string;
16
+ version: string;
17
+ source: string;
18
+ thumbnail: Uint8Array | undefined;
19
+ dictionary: Dictionary | undefined;
20
+ elements: readonly DucElement[];
21
+ /** The user's current session state for a specific project */
22
+ localState: DucLocalState;
23
+ /** Project-wide settings that are saved with the document and shared by all users */
24
+ globalState: DucGlobalState;
25
+ blocks: readonly DucBlock[];
26
+ groups: readonly DucGroup[];
27
+ regions: readonly DucRegion[];
28
+ layers: readonly DucLayer[];
29
+ standards: readonly Standard[];
30
+ files: DucExternalFiles | undefined;
31
+ /** In case it is needed to embed the version control into the file format */
32
+ versionGraph: VersionGraph | undefined;
33
+ }
34
+ export type ExportedDataStateContent = Omit<ExportedDataState, "type" | "version" | "source">;
35
+ /**
36
+ * A version of the data state where all fields are optional.
37
+ * This is useful for importing data where some fields might be missing.
38
+ */
39
+ export type ImportedDataState = Partial<ExportedDataState>;
40
+ export type Identifier = {
41
+ /** Unique identifier for this standard */
42
+ id: string;
43
+ /** Human-readable name */
44
+ name: string;
45
+ /** Description of the standard */
46
+ description?: string;
47
+ };
48
+ export type Dictionary = {
49
+ [key: string]: string;
50
+ };
51
+ export type DucView = {
52
+ scrollX: PrecisionValue;
53
+ scrollY: PrecisionValue;
54
+ zoom: Zoom;
55
+ twistAngle: Radian;
56
+ /** The specific spot on that plane that you want to be in the middle of your screen when this view is active */
57
+ centerPoint: DucPoint;
58
+ scope: Scope;
59
+ };
60
+ /**
61
+ * Defines a 2D User Coordinate System (UCS), a movable coordinate system
62
+ * that establishes a local origin and rotation for drawing. All coordinates
63
+ * within this UCS are relative to its origin and angle.
64
+ */
65
+ export type DucUcs = {
66
+ /**
67
+ * The origin point of the UCS in World Coordinate System (WCS) coordinates.
68
+ * This defines the (0,0) point of the new local system.
69
+ */
70
+ origin: GeometricPoint;
71
+ /**
72
+ * The rotation angle of the UCS's X-axis, measured in radians,
73
+ * relative to the World Coordinate System's X-axis.
74
+ * An angle of 0 means the UCS is aligned with the WCS.
75
+ */
76
+ angle: Radian;
77
+ };
78
+ export type Scope = SupportedMeasures;
79
+ export type DucExternalFileData = {
80
+ mimeType: string;
81
+ id: ExternalFileId;
82
+ data: Uint8Array;
83
+ /**
84
+ * Epoch timestamp in milliseconds
85
+ */
86
+ created: number;
87
+ /**
88
+ * Indicates when the file was last retrieved from storage to be loaded
89
+ * onto the scene. We use this flag to determine whether to delete unused
90
+ * files from storage.
91
+ *
92
+ * Epoch timestamp in milliseconds.
93
+ */
94
+ lastRetrieved?: number;
95
+ /**
96
+ * indicates the version of the file. This can be used to determine whether
97
+ * the file data has changed e.g. as part of restore due to schema update.
98
+ */
99
+ version?: number;
100
+ };
101
+ export type DucExternalFileMetadata = Omit<DucExternalFileData, "data">;
102
+ export type DucExternalFiles = Record<DucElement["id"], DucExternalFileData>;
103
+ export type SuggestedBinding = NonDeleted<DucBindableElement> | SuggestedPointBinding;
104
+ export type SuggestedPointBinding = [
105
+ NonDeleted<DucLinearElement>,
106
+ "start" | "end" | "both",
107
+ NonDeleted<DucBindableElement>
108
+ ];
109
+ export type ToolType = "selection" | "rectangle" | "polygon" | "ellipse" | "line" | "freedraw" | "text" | "image" | "eraser" | "hand" | "frame" | "embeddable" | "ruler" | "lasso" | "laser" | "table";
110
+ export type ElementOrToolType = DucElementType | ToolType | "custom";
111
+ /**
112
+ * Defines the global, persistent settings for the drawing. These are fundamental
113
+ * properties of the document itself and are independent of any active Standard.
114
+ * They travel with the file and are consistent for all users.
115
+ */
116
+ export type DucGlobalState = {
117
+ /**
118
+ * The name of the drawing
119
+ */
120
+ name: string | null;
121
+ /**
122
+ * The background color of the drawing
123
+ */
124
+ viewBackgroundColor: string;
125
+ /**
126
+ * The master unit system for the entire drawing, used for block/file insertion scaling.
127
+ */
128
+ mainScope: Scope;
129
+ /**
130
+ * The global linetype scale for the entire drawing.
131
+ */
132
+ dashSpacingScale: ScaleFactor;
133
+ /**
134
+ * Governs if linetype scale is affected by paper space viewport scale.
135
+ */
136
+ isDashSpacingAffectedByViewportScale: boolean;
137
+ /**
138
+ * Exponent threshold for determining when to change measurement scope (up or down).
139
+ * This value defines a +/- tolerance range around the exponent of the current scope.
140
+ * A scope change is triggered if the exponent of *either* the calculated real viewport width
141
+ * or the calculated real viewport height falls outside this tolerance range relative to the current scope's exponent.
142
+ *
143
+ * Example scenario:
144
+ * appState.scopeExponentThreshold = 2
145
+ * appState.scope = "mm" // (approximately 1e-3 relative to reference unit (meter))
146
+ * appState.zoom = dynamic value representing the current zoom level
147
+ *
148
+ * The real viewport size is calculated as: viewportSize * zoom
149
+ *
150
+ * This system ensures measurements remain representable with appropriate precision
151
+ * as users zoom in and out, automatically adjusting between units like mm, μm, nm, etc.
152
+ */
153
+ scopeExponentThreshold: number;
154
+ /**
155
+ * A rule for whether newly created dimensions should be associative by default.
156
+ */
157
+ dimensionsAssociativeByDefault: boolean;
158
+ /**
159
+ * A fundamental choice for the drawing's scaling architecture.
160
+ */
161
+ useAnnotativeScaling: boolean;
162
+ /**
163
+ * Default display precision for various unit types. The user can override
164
+ * this temporarily in their session state (DucState).
165
+ */
166
+ displayPrecision: {
167
+ linear: number;
168
+ angular: number;
169
+ };
170
+ /** The level of pruning to the versions from the version graph. */
171
+ pruningLevel: PruningLevel;
172
+ };
173
+ export type DucLocalState = {
174
+ /**
175
+ * The current scope of the design
176
+ * mm, cm, m, in, ft, yd, mi, etc...
177
+ */
178
+ scope: Scope;
179
+ /** The active standard for the design */
180
+ activeStandardId: Standard["id"];
181
+ scrollX: PrecisionValue;
182
+ scrollY: PrecisionValue;
183
+ zoom: Zoom;
184
+ /**
185
+ * list of active grids ordered by z index, most on top is first
186
+ * */
187
+ activeGridSettings: Identifier["id"][] | null;
188
+ activeSnapSettings: Identifier["id"] | null;
189
+ isBindingEnabled: boolean;
190
+ currentItemStroke: ElementStroke;
191
+ currentItemBackground: ElementBackground;
192
+ currentItemOpacity: Percentage;
193
+ currentItemFontFamily: FontFamilyValues;
194
+ currentItemFontSize: DucTextElement["fontSize"];
195
+ currentItemTextAlign: TextAlign;
196
+ currentItemStartLineHead: LineHead | null;
197
+ currentItemEndLineHead: LineHead | null;
198
+ currentItemRoundness: DucElement["roundness"];
199
+ /**
200
+ * grid cell px size
201
+ * @deprecated use activeGridSettings instead
202
+ * */
203
+ gridSize: number;
204
+ /**
205
+ * @deprecated use activeGridSettings instead
206
+ * */
207
+ gridStep: number;
208
+ /**
209
+ * Pen mode is enabled, creates a better experience for drawing with a pen
210
+ */
211
+ penMode: boolean;
212
+ /**
213
+ * In view mode the user is not allowed to edit the canvas.
214
+ */
215
+ viewModeEnabled: boolean;
216
+ /**
217
+ * Object snapping on the environment is enabled
218
+ */
219
+ objectsSnapModeEnabled: boolean;
220
+ /**
221
+ * Available grids are visible
222
+ */
223
+ gridModeEnabled: boolean;
224
+ /**
225
+ * Wether to disable the fill on all shapes
226
+ */
227
+ outlineModeEnabled: boolean;
228
+ /** When enabled, the version graph is not updated automatically. The user needs to manually update the graph for new versions to be saved in version control. */
229
+ manualSaveMode: boolean;
230
+ };
231
+ export type NormalizedZoomValue = number & {
232
+ _brand: "normalizedZoom";
233
+ };
234
+ /**
235
+ * A value that accurate/relative to the current scope
236
+ */
237
+ export type ScopedValue = number & {
238
+ _brand: "scopedValue";
239
+ };
240
+ /**
241
+ * A value that represent the raw value of the element on its scope
242
+ */
243
+ export type RawValue = number & {
244
+ _brand: "rawValue";
245
+ };
246
+ /**
247
+ * A value that accurate to the current scope particularly for zoom, it works in reverse for zoom
248
+ */
249
+ export type ScopedZoomValue = number & {
250
+ _brand: "scopedZoomValue";
251
+ };
252
+ /**
253
+ * A value that represent the scaled zoom value relative to a scale bar
254
+ */
255
+ export type ScaledZoom = number & {
256
+ _brand: "scaledZoom";
257
+ };
258
+ export type Zoom = Readonly<{
259
+ /**
260
+ * The raw and normalized value of the zoom
261
+ */
262
+ value: NormalizedZoomValue;
263
+ /**
264
+ * The value of the zoom relative to the current scope
265
+ */
266
+ scoped: ScopedZoomValue;
267
+ /**
268
+ * The value of the zoom adapted to the UI scale bar, for real life measurements
269
+ */
270
+ scaled: ScaledZoom;
271
+ }>;
272
+ export type PrecisionValue = {
273
+ /**
274
+ * The raw value of the scroll
275
+ */
276
+ value: RawValue;
277
+ /**
278
+ * The value of the scroll relative to the current scope
279
+ */
280
+ scoped: ScopedValue;
281
+ };
282
+ export type PointerCoords = Readonly<{
283
+ x: number;
284
+ y: number;
285
+ }>;
286
+ export type Gesture = {
287
+ pointers: Map<number, PointerCoords>;
288
+ lastCenter: {
289
+ x: number;
290
+ y: number;
291
+ } | null;
292
+ initialDistance: number | null;
293
+ initialScale: number | null;
294
+ };
295
+ export declare class GestureEvent extends UIEvent {
296
+ readonly rotation: number;
297
+ readonly scale: number;
298
+ }
299
+ /** @deprecated legacy: do not use outside of migration paths */
300
+ export type LibraryItem_v1 = readonly NonDeleted<DucElement>[];
301
+ /** @deprecated legacy: do not use outside of migration paths */
302
+ type LibraryItems_v1 = readonly LibraryItem_v1[];
303
+ /** v2 library item */
304
+ export type LibraryItem = {
305
+ id: string;
306
+ status: "published" | "unpublished";
307
+ elements: readonly NonDeleted<DucElement>[];
308
+ /** timestamp in epoch (ms) */
309
+ created: number;
310
+ name?: string;
311
+ error?: string;
312
+ };
313
+ export type LibraryItems = readonly LibraryItem[];
314
+ export type LibraryItems_anyVersion = LibraryItems | LibraryItems_v1;
315
+ export type LibraryItemsSource = ((currentLibraryItems: LibraryItems) => MaybePromise<LibraryItems_anyVersion | Blob>) | MaybePromise<LibraryItems_anyVersion | Blob>;
316
+ export type Primitive = number | string | boolean | bigint | symbol | null | undefined;
317
+ export type JSONValue = string | number | boolean | null | object;
318
+ export type EmbedsValidationStatus = Map<DucIframeLikeElement["id"], boolean>;
319
+ export type ElementsPendingErasure = Set<DucElement["id"]>;
320
+ export type PendingDucElements = DucElement[];
321
+ export type GridDisplayType = ValueOf<typeof GRID_DISPLAY_TYPE>;
322
+ export type GridType = ValueOf<typeof GRID_TYPE>;
323
+ /**
324
+ * Unified grid styling (works for lines, dots, crosses)
325
+ */
326
+ export type GridStyle = {
327
+ color: string;
328
+ opacity: Percentage;
329
+ dashPattern: number[];
330
+ };
331
+ /**
332
+ * Polar grid specific settings
333
+ */
334
+ export type PolarGridSettings = {
335
+ /** Number of radial divisions (spokes) */
336
+ radialDivisions: number;
337
+ /** Radial spacing between concentric circles */
338
+ radialSpacing: PrecisionValue;
339
+ /** Whether to show angle labels */
340
+ showLabels: boolean;
341
+ };
342
+ /**
343
+ * Isometric grid specific settings
344
+ */
345
+ export type IsometricGridSettings = {
346
+ /** Left plane angle (typically 30 degrees) */
347
+ leftAngle: Radian;
348
+ /** Right plane angle (typically 30 degrees) */
349
+ rightAngle: Radian;
350
+ };
351
+ /**
352
+ * Grid settings configuration
353
+ */
354
+ export type GridSettings = {
355
+ /** Grid coordinate system type */
356
+ type: GridType;
357
+ /** Whether this grid is read-only */
358
+ readonly: boolean;
359
+ /** How the grid is displayed */
360
+ displayType: GridDisplayType;
361
+ /**
362
+ * Whether the grid spacing is adaptive (changes with zoom level) or fixed.
363
+ */
364
+ isAdaptive: boolean;
365
+ /** Spacing between major grid lines along X-axis */
366
+ xSpacing: PrecisionValue;
367
+ /** Spacing between major grid lines along Y-axis */
368
+ ySpacing: PrecisionValue;
369
+ /** Number of minor divisions between major lines */
370
+ subdivisions: number;
371
+ /** Grid origin point */
372
+ origin: GeometricPoint;
373
+ /** Grid rotation angle */
374
+ rotation: Radian;
375
+ /** Whether grid follows the active UCS */
376
+ followUCS: boolean;
377
+ /** Major grid line/dot styling */
378
+ majorStyle: GridStyle;
379
+ /** Minor grid line/dot styling */
380
+ minorStyle: GridStyle;
381
+ /** Show minor subdivisions */
382
+ showMinor: boolean;
383
+ /** Minimum zoom level where grid becomes visible */
384
+ minZoom: number;
385
+ /** Maximum zoom level where grid remains visible */
386
+ maxZoom: number;
387
+ /** Whether to auto-hide when too dense */
388
+ autoHide: boolean;
389
+ /** Polar grid settings (when type is POLAR) */
390
+ polarSettings?: PolarGridSettings;
391
+ /** Isometric grid settings (when type is ISOMETRIC) */
392
+ isometricSettings?: IsometricGridSettings;
393
+ /** Whether this grid affects snapping */
394
+ enableSnapping: boolean;
395
+ };
396
+ export type ObjectSnapMode = ValueOf<typeof OBJECT_SNAP_MODE>;
397
+ export type SnapOverrideBehavior = ValueOf<typeof SNAP_OVERRIDE_BEHAVIOR>;
398
+ export type SnapMarkerShape = ValueOf<typeof SNAP_MARKER_SHAPE>;
399
+ export type SnapMode = ValueOf<typeof SNAP_MODE>;
400
+ /**
401
+ * Temporary snap override settings
402
+ */
403
+ export type SnapOverride = {
404
+ key: string;
405
+ behavior: SnapOverrideBehavior;
406
+ };
407
+ /**
408
+ * Dynamic snap behavior configuration
409
+ */
410
+ export type DynamicSnapSettings = {
411
+ enabledDuringDrag: boolean;
412
+ enabledDuringRotation: boolean;
413
+ enabledDuringScale: boolean;
414
+ };
415
+ /**
416
+ * Polar tracking configuration
417
+ */
418
+ export type PolarTrackingSettings = {
419
+ enabled: boolean;
420
+ angles: Radian[];
421
+ /**
422
+ * Additional increment angle for polar tracking
423
+ */
424
+ incrementAngle?: Radian;
425
+ /**
426
+ * Whether to track from last point or from base
427
+ */
428
+ trackFromLastPoint: boolean;
429
+ /**
430
+ * Display polar distance and angle
431
+ */
432
+ showPolarCoordinates: boolean;
433
+ };
434
+ /**
435
+ * Tracking line display settings
436
+ */
437
+ export type TrackingLineStyle = {
438
+ color: string;
439
+ opacity: Percentage;
440
+ dashPattern?: number[];
441
+ };
442
+ /**
443
+ * Layer-specific snap filters
444
+ */
445
+ export type LayerSnapFilters = {
446
+ includeLayers?: string[];
447
+ excludeLayers?: string[];
448
+ };
449
+ /**
450
+ * Snap marker configuration for each snap mode
451
+ */
452
+ export type SnapMarkerStyle = {
453
+ shape: SnapMarkerShape;
454
+ color: string;
455
+ };
456
+ /**
457
+ * Visual feedback settings for snap markers
458
+ */
459
+ export type SnapMarkerSettings = {
460
+ enabled: boolean;
461
+ size: number;
462
+ duration?: number;
463
+ styles: Record<ObjectSnapMode, SnapMarkerStyle>;
464
+ };
465
+ /**
466
+ * Defines the properties of the drawing snap mode.
467
+ */
468
+ export type SnapSettings = {
469
+ /** Whether this snap settings is read-only */
470
+ readonly: boolean;
471
+ /**
472
+ * The snap angle for rotated snap grids (e.g., for isometric snapping).
473
+ * In radians. Default is 0.
474
+ */
475
+ twistAngle: Radian;
476
+ /**
477
+ * Snap tolerance in pixels - how close cursor must be to trigger snap
478
+ */
479
+ snapTolerance: number;
480
+ /**
481
+ * Aperture size for object snap detection (in pixels)
482
+ */
483
+ objectSnapAperture: number;
484
+ /**
485
+ * Whether orthogonal mode is enabled (constrains to 0/90 degrees)
486
+ */
487
+ isOrthoModeOn: boolean;
488
+ /**
489
+ * Polar tracking configuration
490
+ */
491
+ polarTracking: PolarTrackingSettings;
492
+ /**
493
+ * Whether object snap (Osnap) is enabled.
494
+ * Osnap allows snapping to geometric points on existing objects.
495
+ */
496
+ isObjectSnapOn: boolean;
497
+ /**
498
+ * Set of active object snap modes
499
+ */
500
+ activeObjectSnapModes: ObjectSnapMode[];
501
+ /**
502
+ * Priority order when multiple snaps are available at cursor position
503
+ */
504
+ snapPriority: ObjectSnapMode[];
505
+ /**
506
+ * Whether to show tracking lines/vectors
507
+ */
508
+ showTrackingLines: boolean;
509
+ /**
510
+ * Tracking line display settings
511
+ */
512
+ trackingLineStyle?: TrackingLineStyle;
513
+ /**
514
+ * Snap behavior during element creation/modification
515
+ */
516
+ dynamicSnap: DynamicSnapSettings;
517
+ /**
518
+ * Temporary snap override settings (e.g., holding shift)
519
+ */
520
+ temporaryOverrides?: SnapOverride[];
521
+ /**
522
+ * Incremental snap distance (for relative movements)
523
+ */
524
+ incrementalDistance?: number;
525
+ /**
526
+ * Magnetic snap strength (0-100)
527
+ */
528
+ magneticStrength?: number;
529
+ /**
530
+ * Layer-specific snap settings
531
+ */
532
+ layerSnapFilters?: LayerSnapFilters;
533
+ /**
534
+ * Element type filters for object snap
535
+ */
536
+ elementTypeFilters?: DucElementType[];
537
+ /**
538
+ * Running object snap vs single pick mode
539
+ */
540
+ snapMode: SnapMode;
541
+ /**
542
+ * Visual feedback settings
543
+ */
544
+ snapMarkers: SnapMarkerSettings;
545
+ /**
546
+ * Construction/guide line snapping
547
+ */
548
+ constructionSnapEnabled: boolean;
549
+ /**
550
+ * Snap to grid intersections only
551
+ */
552
+ snapToGridIntersections?: boolean;
553
+ };
554
+ /** Runtime gridSize value. Null indicates disabled grid. */
555
+ export type NullableGridSize = (DucLocalState["gridSize"] & MakeBrand<"NullableGridSize">) | null;
556
+ export type VersionId = string;
557
+ /** JSON Patch RFC6902 */
558
+ export type JSONPatch = Array<{
559
+ op: string;
560
+ path: string;
561
+ from?: string;
562
+ value?: any;
563
+ }>;
564
+ export type PruningLevel = ValueOf<typeof PRUNING_LEVEL>;
565
+ export interface VersionBase {
566
+ id: VersionId;
567
+ parentId: VersionId | null;
568
+ timestamp: number;
569
+ description?: string;
570
+ isManualSave: boolean;
571
+ userId?: string;
572
+ }
573
+ export interface Checkpoint extends VersionBase {
574
+ type: "checkpoint";
575
+ data: Uint8Array;
576
+ sizeBytes: number;
577
+ }
578
+ export interface Delta extends VersionBase {
579
+ type: "delta";
580
+ patch: JSONPatch;
581
+ }
582
+ export interface VersionGraph {
583
+ userCheckpointVersionId: VersionId;
584
+ latestVersionId: VersionId;
585
+ checkpoints: Checkpoint[];
586
+ deltas: Delta[];
587
+ metadata: {
588
+ lastPruned: number;
589
+ totalSize: number;
590
+ };
591
+ }
@@ -0,0 +1,3 @@
1
+ export * from "./elements";
2
+ export * from "./geometryTypes";
3
+ export * from "./utility-types";
@@ -0,0 +1,31 @@
1
+ export type Mutable<T> = {
2
+ -readonly [P in keyof T]: T[P];
3
+ };
4
+ export type ValueOf<T> = T[keyof T];
5
+ export type Merge<M, N> = Omit<M, keyof N> & N;
6
+ /** utility type to assert that the second type is a subtype of the first type.
7
+ * Returns the subtype. */
8
+ export type SubtypeOf<Supertype, Subtype extends Supertype> = Subtype;
9
+ export type ResolutionType<T extends (...args: any) => any> = T extends (...args: any) => Promise<infer R> ? R : any;
10
+ export type MarkOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
11
+ export type MarkRequired<T, RK extends keyof T> = Exclude<T, RK> & Required<Pick<T, RK>>;
12
+ export type MarkNonNullable<T, K extends keyof T> = {
13
+ [P in K]-?: P extends K ? NonNullable<T[P]> : T[P];
14
+ } & {
15
+ [P in keyof T]: T[P];
16
+ };
17
+ export type NonOptional<T> = Exclude<T, undefined>;
18
+ export type SignatureType<T> = T extends (...args: infer R) => any ? R : never;
19
+ export type CallableType<T extends (...args: any[]) => any> = (...args: SignatureType<T>) => ReturnType<T>;
20
+ export type ForwardRef<T, P = any> = Parameters<CallableType<React.ForwardRefRenderFunction<T, P>>>[1];
21
+ export type ExtractSetType<T extends Set<any>> = T extends Set<infer U> ? U : never;
22
+ export type SameType<T, U> = T extends U ? (U extends T ? true : false) : false;
23
+ export type Assert<T extends true> = T;
24
+ export type NestedKeyOf<T, K = keyof T> = K extends keyof T & (string | number) ? `${K}` | (T[K] extends object ? `${K}.${NestedKeyOf<T[K]>}` : never) : never;
25
+ export type SetLike<T> = Set<T> | T[];
26
+ export type ReadonlySetLike<T> = ReadonlySet<T> | readonly T[];
27
+ export type MakeBrand<T extends string> = {
28
+ [K in `~brand~${T}`]: T;
29
+ };
30
+ /** Maybe just promise or already fulfilled one! */
31
+ export type MaybePromise<T> = T | Promise<T>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,75 @@
1
+ import { Scope, ScopedValue } from "ducjs/types";
2
+ import { DucElement, DucFreeDrawElement, DucLine, DucLinearElement, DucPoint, DucTextContainer, DucTextElement, DucTextElementWithContainer, ElementsMap } from "ducjs/types/elements";
3
+ import { Bounds, GeometricPoint } from "ducjs/types/geometryTypes";
4
+ type SV = ScopedValue;
5
+ /**
6
+ * Common bounds calculation interface
7
+ */
8
+ export interface BoundsResult {
9
+ minX: ScopedValue;
10
+ minY: ScopedValue;
11
+ maxX: ScopedValue;
12
+ maxY: ScopedValue;
13
+ }
14
+ /**
15
+ * Extended bounds calculation interface with center coordinates
16
+ */
17
+ export interface ExtendedBoundsResult extends BoundsResult {
18
+ cx: ScopedValue;
19
+ cy: ScopedValue;
20
+ }
21
+ export type ElementAbsoluteCoords = [SV, SV, SV, SV, SV, SV];
22
+ export declare const getElementAbsoluteCoords: (element: DucElement, elementsMap: ElementsMap, currentScope: Scope, includeBoundText?: boolean, returnUnrotatedBoundsOnly?: boolean) => ElementAbsoluteCoords;
23
+ /**
24
+ * Calculates bounds from a list of points (basic implementation)
25
+ */
26
+ export declare const calculatePointsBounds: (points: readonly DucPoint[]) => BoundsResult;
27
+ /**
28
+ * Calculates bounds from a list of geometric points (for bounds.ts compatibility)
29
+ */
30
+ export declare const calculateGeometricPointsBounds: (points: GeometricPoint[]) => BoundsResult;
31
+ /**
32
+ * Processes Bezier curves from lines and updates bounds
33
+ */
34
+ export declare const processBezierCurveBounds: (points: readonly DucPoint[], lines: readonly DucLine[], initialBounds: BoundsResult) => BoundsResult;
35
+ /**
36
+ * Processes Bezier curves with rotation and absolute positioning
37
+ * Used for linear elements that need to account for rotation and absolute coordinates
38
+ */
39
+ export declare const processRotatedAbsoluteBezierBounds: (points: readonly DucPoint[], lines: readonly DucLine[], elementX: ScopedValue, elementY: ScopedValue, centerX: ScopedValue, centerY: ScopedValue, angle: number) => {
40
+ minX: number;
41
+ minY: number;
42
+ maxX: number;
43
+ maxY: number;
44
+ };
45
+ /**
46
+ * Processes Bezier curves without rotation (for relative coordinate systems)
47
+ * Used by getElementPointsCoords
48
+ */
49
+ export declare const processRelativeBezierBounds: (points: readonly DucPoint[], lines: readonly DucLine[], initialBounds: {
50
+ minX: number;
51
+ minY: number;
52
+ maxX: number;
53
+ maxY: number;
54
+ }) => {
55
+ minX: number;
56
+ minY: number;
57
+ maxX: number;
58
+ maxY: number;
59
+ };
60
+ /**
61
+ * Calculates bounds considering both points and Bezier curves defined by lines
62
+ */
63
+ export declare const calculateShapeBounds: (points: readonly DucPoint[], lines: readonly DucLine[]) => BoundsResult;
64
+ /**
65
+ * Extended bounds calculation that includes center coordinates
66
+ */
67
+ export declare const calculatePointsBoundsWithCenter: (points: readonly DucPoint[]) => ExtendedBoundsResult;
68
+ export declare const getElementPointsCoords: (element: DucLinearElement, points: readonly DucPoint[]) => Bounds;
69
+ export declare const getContainerElement: (element: DucTextElement | null, elementsMap: ElementsMap) => DucTextContainer | null;
70
+ export declare const getBoundsFromPoints: (points: GeometricPoint[]) => Bounds;
71
+ export declare const getFreeDrawElementAbsoluteCoords: (element: DucFreeDrawElement) => ElementAbsoluteCoords;
72
+ export declare const getBoundTextElementId: (container: DucElement | null) => string | null;
73
+ export declare const getBoundTextElement: (element: DucElement | null, elementsMap: ElementsMap) => DucTextElementWithContainer | null;
74
+ export declare const getResizedElementAbsoluteCoords: (element: DucElement, nextWidth: ScopedValue, nextHeight: ScopedValue, normalizePoints: boolean, currentScope: Scope) => Bounds;
75
+ export {};