@mog-sdk/spreadsheet-contracts 0.1.12

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 (701) hide show
  1. package/dist/accessibility/index.d.ts +9 -0
  2. package/dist/accessibility/index.d.ts.map +1 -0
  3. package/dist/accessibility/types.d.ts +75 -0
  4. package/dist/accessibility/types.d.ts.map +1 -0
  5. package/dist/actions/comments.d.ts +31 -0
  6. package/dist/actions/comments.d.ts.map +1 -0
  7. package/dist/actions/index.d.ts +22 -0
  8. package/dist/actions/index.d.ts.map +1 -0
  9. package/dist/actions/types.d.ts +448 -0
  10. package/dist/actions/types.d.ts.map +1 -0
  11. package/dist/actors/chart.d.ts +88 -0
  12. package/dist/actors/chart.d.ts.map +1 -0
  13. package/dist/actors/clipboard.d.ts +243 -0
  14. package/dist/actors/clipboard.d.ts.map +1 -0
  15. package/dist/actors/commands.d.ts +1343 -0
  16. package/dist/actors/commands.d.ts.map +1 -0
  17. package/dist/actors/comment.d.ts +84 -0
  18. package/dist/actors/comment.d.ts.map +1 -0
  19. package/dist/actors/draw-border.d.ts +89 -0
  20. package/dist/actors/draw-border.d.ts.map +1 -0
  21. package/dist/actors/editor.d.ts +161 -0
  22. package/dist/actors/editor.d.ts.map +1 -0
  23. package/dist/actors/find-replace.d.ts +88 -0
  24. package/dist/actors/find-replace.d.ts.map +1 -0
  25. package/dist/actors/focus.d.ts +91 -0
  26. package/dist/actors/focus.d.ts.map +1 -0
  27. package/dist/actors/index.d.ts +88 -0
  28. package/dist/actors/index.d.ts.map +1 -0
  29. package/dist/actors/input.d.ts +98 -0
  30. package/dist/actors/input.d.ts.map +1 -0
  31. package/dist/actors/object-interaction.d.ts +163 -0
  32. package/dist/actors/object-interaction.d.ts.map +1 -0
  33. package/dist/actors/object.d.ts +124 -0
  34. package/dist/actors/object.d.ts.map +1 -0
  35. package/dist/actors/page-break.d.ts +64 -0
  36. package/dist/actors/page-break.d.ts.map +1 -0
  37. package/dist/actors/pane-focus.d.ts +56 -0
  38. package/dist/actors/pane-focus.d.ts.map +1 -0
  39. package/dist/actors/renderer.d.ts +197 -0
  40. package/dist/actors/renderer.d.ts.map +1 -0
  41. package/dist/actors/selection.d.ts +170 -0
  42. package/dist/actors/selection.d.ts.map +1 -0
  43. package/dist/actors/slicer.d.ts +175 -0
  44. package/dist/actors/slicer.d.ts.map +1 -0
  45. package/dist/actors/smartart.d.ts +48 -0
  46. package/dist/actors/smartart.d.ts.map +1 -0
  47. package/dist/api/index.d.ts +19 -0
  48. package/dist/api/index.d.ts.map +1 -0
  49. package/dist/api/mutation-receipt.d.ts +26 -0
  50. package/dist/api/mutation-receipt.d.ts.map +1 -0
  51. package/dist/api/types.d.ts +1542 -0
  52. package/dist/api/types.d.ts.map +1 -0
  53. package/dist/api/workbook/history.d.ts +43 -0
  54. package/dist/api/workbook/history.d.ts.map +1 -0
  55. package/dist/api/workbook/index.d.ts +17 -0
  56. package/dist/api/workbook/index.d.ts.map +1 -0
  57. package/dist/api/workbook/names.d.ts +104 -0
  58. package/dist/api/workbook/names.d.ts.map +1 -0
  59. package/dist/api/workbook/notifications.d.ts +35 -0
  60. package/dist/api/workbook/notifications.d.ts.map +1 -0
  61. package/dist/api/workbook/protection.d.ts +14 -0
  62. package/dist/api/workbook/protection.d.ts.map +1 -0
  63. package/dist/api/workbook/scenarios.d.ts +45 -0
  64. package/dist/api/workbook/scenarios.d.ts.map +1 -0
  65. package/dist/api/workbook/sheets.d.ts +74 -0
  66. package/dist/api/workbook/sheets.d.ts.map +1 -0
  67. package/dist/api/workbook/slicers.d.ts +63 -0
  68. package/dist/api/workbook/slicers.d.ts.map +1 -0
  69. package/dist/api/workbook/styles.d.ts +19 -0
  70. package/dist/api/workbook/styles.d.ts.map +1 -0
  71. package/dist/api/workbook/theme.d.ts +38 -0
  72. package/dist/api/workbook/theme.d.ts.map +1 -0
  73. package/dist/api/workbook/viewport.d.ts +85 -0
  74. package/dist/api/workbook/viewport.d.ts.map +1 -0
  75. package/dist/api/workbook.d.ts +279 -0
  76. package/dist/api/workbook.d.ts.map +1 -0
  77. package/dist/api/worksheet/bindings.d.ts +66 -0
  78. package/dist/api/worksheet/bindings.d.ts.map +1 -0
  79. package/dist/api/worksheet/changes.d.ts +60 -0
  80. package/dist/api/worksheet/changes.d.ts.map +1 -0
  81. package/dist/api/worksheet/charts.d.ts +83 -0
  82. package/dist/api/worksheet/charts.d.ts.map +1 -0
  83. package/dist/api/worksheet/collections/connector-collection.d.ts +7 -0
  84. package/dist/api/worksheet/collections/connector-collection.d.ts.map +1 -0
  85. package/dist/api/worksheet/collections/drawing-collection.d.ts +9 -0
  86. package/dist/api/worksheet/collections/drawing-collection.d.ts.map +1 -0
  87. package/dist/api/worksheet/collections/equation-collection.d.ts +8 -0
  88. package/dist/api/worksheet/collections/equation-collection.d.ts.map +1 -0
  89. package/dist/api/worksheet/collections/index.d.ts +12 -0
  90. package/dist/api/worksheet/collections/index.d.ts.map +1 -0
  91. package/dist/api/worksheet/collections/object-collection.d.ts +45 -0
  92. package/dist/api/worksheet/collections/object-collection.d.ts.map +1 -0
  93. package/dist/api/worksheet/collections/picture-collection.d.ts +8 -0
  94. package/dist/api/worksheet/collections/picture-collection.d.ts.map +1 -0
  95. package/dist/api/worksheet/collections/shape-collection.d.ts +8 -0
  96. package/dist/api/worksheet/collections/shape-collection.d.ts.map +1 -0
  97. package/dist/api/worksheet/collections/textbox-collection.d.ts +8 -0
  98. package/dist/api/worksheet/collections/textbox-collection.d.ts.map +1 -0
  99. package/dist/api/worksheet/collections/wordart-collection.d.ts +8 -0
  100. package/dist/api/worksheet/collections/wordart-collection.d.ts.map +1 -0
  101. package/dist/api/worksheet/comments.d.ts +143 -0
  102. package/dist/api/worksheet/comments.d.ts.map +1 -0
  103. package/dist/api/worksheet/conditional-formats.d.ts +101 -0
  104. package/dist/api/worksheet/conditional-formats.d.ts.map +1 -0
  105. package/dist/api/worksheet/filters.d.ts +141 -0
  106. package/dist/api/worksheet/filters.d.ts.map +1 -0
  107. package/dist/api/worksheet/form-controls.d.ts +22 -0
  108. package/dist/api/worksheet/form-controls.d.ts.map +1 -0
  109. package/dist/api/worksheet/format-mappings.d.ts +50 -0
  110. package/dist/api/worksheet/format-mappings.d.ts.map +1 -0
  111. package/dist/api/worksheet/formats.d.ts +136 -0
  112. package/dist/api/worksheet/formats.d.ts.map +1 -0
  113. package/dist/api/worksheet/handles/chart-handle.d.ts +11 -0
  114. package/dist/api/worksheet/handles/chart-handle.d.ts.map +1 -0
  115. package/dist/api/worksheet/handles/connector-handle.d.ts +9 -0
  116. package/dist/api/worksheet/handles/connector-handle.d.ts.map +1 -0
  117. package/dist/api/worksheet/handles/drawing-handle.d.ts +14 -0
  118. package/dist/api/worksheet/handles/drawing-handle.d.ts.map +1 -0
  119. package/dist/api/worksheet/handles/equation-handle.d.ts +9 -0
  120. package/dist/api/worksheet/handles/equation-handle.d.ts.map +1 -0
  121. package/dist/api/worksheet/handles/floating-object-handle.d.ts +75 -0
  122. package/dist/api/worksheet/handles/floating-object-handle.d.ts.map +1 -0
  123. package/dist/api/worksheet/handles/index.d.ts +16 -0
  124. package/dist/api/worksheet/handles/index.d.ts.map +1 -0
  125. package/dist/api/worksheet/handles/ole-object-handle.d.ts +10 -0
  126. package/dist/api/worksheet/handles/ole-object-handle.d.ts.map +1 -0
  127. package/dist/api/worksheet/handles/picture-handle.d.ts +9 -0
  128. package/dist/api/worksheet/handles/picture-handle.d.ts.map +1 -0
  129. package/dist/api/worksheet/handles/shape-handle.d.ts +11 -0
  130. package/dist/api/worksheet/handles/shape-handle.d.ts.map +1 -0
  131. package/dist/api/worksheet/handles/slicer-handle.d.ts +13 -0
  132. package/dist/api/worksheet/handles/slicer-handle.d.ts.map +1 -0
  133. package/dist/api/worksheet/handles/smartart-handle.d.ts +11 -0
  134. package/dist/api/worksheet/handles/smartart-handle.d.ts.map +1 -0
  135. package/dist/api/worksheet/handles/textbox-handle.d.ts +9 -0
  136. package/dist/api/worksheet/handles/textbox-handle.d.ts.map +1 -0
  137. package/dist/api/worksheet/handles/wordart-handle.d.ts +10 -0
  138. package/dist/api/worksheet/handles/wordart-handle.d.ts.map +1 -0
  139. package/dist/api/worksheet/hyperlinks.d.ts +52 -0
  140. package/dist/api/worksheet/hyperlinks.d.ts.map +1 -0
  141. package/dist/api/worksheet/index.d.ts +35 -0
  142. package/dist/api/worksheet/index.d.ts.map +1 -0
  143. package/dist/api/worksheet/internal.d.ts +105 -0
  144. package/dist/api/worksheet/internal.d.ts.map +1 -0
  145. package/dist/api/worksheet/layout.d.ts +150 -0
  146. package/dist/api/worksheet/layout.d.ts.map +1 -0
  147. package/dist/api/worksheet/names.d.ts +52 -0
  148. package/dist/api/worksheet/names.d.ts.map +1 -0
  149. package/dist/api/worksheet/objects.d.ts +124 -0
  150. package/dist/api/worksheet/objects.d.ts.map +1 -0
  151. package/dist/api/worksheet/outline.d.ts +101 -0
  152. package/dist/api/worksheet/outline.d.ts.map +1 -0
  153. package/dist/api/worksheet/pivots.d.ts +257 -0
  154. package/dist/api/worksheet/pivots.d.ts.map +1 -0
  155. package/dist/api/worksheet/print.d.ts +108 -0
  156. package/dist/api/worksheet/print.d.ts.map +1 -0
  157. package/dist/api/worksheet/protection.d.ts +73 -0
  158. package/dist/api/worksheet/protection.d.ts.map +1 -0
  159. package/dist/api/worksheet/settings.d.ts +54 -0
  160. package/dist/api/worksheet/settings.d.ts.map +1 -0
  161. package/dist/api/worksheet/slicers.d.ts +101 -0
  162. package/dist/api/worksheet/slicers.d.ts.map +1 -0
  163. package/dist/api/worksheet/smartart.d.ts +49 -0
  164. package/dist/api/worksheet/smartart.d.ts.map +1 -0
  165. package/dist/api/worksheet/sparklines.d.ts +143 -0
  166. package/dist/api/worksheet/sparklines.d.ts.map +1 -0
  167. package/dist/api/worksheet/structure.d.ts +44 -0
  168. package/dist/api/worksheet/structure.d.ts.map +1 -0
  169. package/dist/api/worksheet/tables.d.ts +313 -0
  170. package/dist/api/worksheet/tables.d.ts.map +1 -0
  171. package/dist/api/worksheet/validation.d.ts +101 -0
  172. package/dist/api/worksheet/validation.d.ts.map +1 -0
  173. package/dist/api/worksheet/view.d.ts +91 -0
  174. package/dist/api/worksheet/view.d.ts.map +1 -0
  175. package/dist/api/worksheet.d.ts +370 -0
  176. package/dist/api/worksheet.d.ts.map +1 -0
  177. package/dist/app/index.d.ts +17 -0
  178. package/dist/app/index.d.ts.map +1 -0
  179. package/dist/app/types.d.ts +349 -0
  180. package/dist/app/types.d.ts.map +1 -0
  181. package/dist/apps/api.d.ts +519 -0
  182. package/dist/apps/api.d.ts.map +1 -0
  183. package/dist/apps/bindings.d.ts +72 -0
  184. package/dist/apps/bindings.d.ts.map +1 -0
  185. package/dist/apps/index.d.ts +13 -0
  186. package/dist/apps/index.d.ts.map +1 -0
  187. package/dist/apps/types.d.ts +224 -0
  188. package/dist/apps/types.d.ts.map +1 -0
  189. package/dist/apps/views.d.ts +142 -0
  190. package/dist/apps/views.d.ts.map +1 -0
  191. package/dist/bridges/chart-bridge.d.ts +172 -0
  192. package/dist/bridges/chart-bridge.d.ts.map +1 -0
  193. package/dist/bridges/equation-bridge.d.ts +74 -0
  194. package/dist/bridges/equation-bridge.d.ts.map +1 -0
  195. package/dist/bridges/index.d.ts +25 -0
  196. package/dist/bridges/index.d.ts.map +1 -0
  197. package/dist/bridges/ink-recognition-bridge.d.ts +142 -0
  198. package/dist/bridges/ink-recognition-bridge.d.ts.map +1 -0
  199. package/dist/bridges/locale-bridge.d.ts +93 -0
  200. package/dist/bridges/locale-bridge.d.ts.map +1 -0
  201. package/dist/bridges/pivot-bridge.d.ts +201 -0
  202. package/dist/bridges/pivot-bridge.d.ts.map +1 -0
  203. package/dist/bridges/schema-bridge.d.ts +137 -0
  204. package/dist/bridges/schema-bridge.d.ts.map +1 -0
  205. package/dist/bridges/smartart-bridge.d.ts +217 -0
  206. package/dist/bridges/smartart-bridge.d.ts.map +1 -0
  207. package/dist/bridges/wordart-bridge.d.ts +86 -0
  208. package/dist/bridges/wordart-bridge.d.ts.map +1 -0
  209. package/dist/capabilities/errors.d.ts +16 -0
  210. package/dist/capabilities/errors.d.ts.map +1 -0
  211. package/dist/capabilities/gated-api.d.ts +355 -0
  212. package/dist/capabilities/gated-api.d.ts.map +1 -0
  213. package/dist/capabilities/grants.d.ts +239 -0
  214. package/dist/capabilities/grants.d.ts.map +1 -0
  215. package/dist/capabilities/index.d.ts +24 -0
  216. package/dist/capabilities/index.d.ts.map +1 -0
  217. package/dist/capabilities/manifest.d.ts +128 -0
  218. package/dist/capabilities/manifest.d.ts.map +1 -0
  219. package/dist/capabilities/requester.d.ts +209 -0
  220. package/dist/capabilities/requester.d.ts.map +1 -0
  221. package/dist/capabilities/scope.d.ts +55 -0
  222. package/dist/capabilities/scope.d.ts.map +1 -0
  223. package/dist/capabilities/sensitive.d.ts +279 -0
  224. package/dist/capabilities/sensitive.d.ts.map +1 -0
  225. package/dist/capabilities/taxonomy.d.ts +15 -0
  226. package/dist/capabilities/taxonomy.d.ts.map +1 -0
  227. package/dist/capabilities/types.d.ts +91 -0
  228. package/dist/capabilities/types.d.ts.map +1 -0
  229. package/dist/cells/cell-identity.d.ts +281 -0
  230. package/dist/cells/cell-identity.d.ts.map +1 -0
  231. package/dist/cells/cell-style.d.ts +67 -0
  232. package/dist/cells/cell-style.d.ts.map +1 -0
  233. package/dist/cells/formula-string.d.ts +37 -0
  234. package/dist/cells/formula-string.d.ts.map +1 -0
  235. package/dist/cells/index.d.ts +7 -0
  236. package/dist/cells/index.d.ts.map +1 -0
  237. package/dist/cells/range-ref.d.ts +77 -0
  238. package/dist/cells/range-ref.d.ts.map +1 -0
  239. package/dist/cells/rich-text.d.ts +66 -0
  240. package/dist/cells/rich-text.d.ts.map +1 -0
  241. package/dist/cells/spill.d.ts +121 -0
  242. package/dist/cells/spill.d.ts.map +1 -0
  243. package/dist/conditional-format/index.d.ts +11 -0
  244. package/dist/conditional-format/index.d.ts.map +1 -0
  245. package/dist/conditional-format/presets.d.ts +54 -0
  246. package/dist/conditional-format/presets.d.ts.map +1 -0
  247. package/dist/conditional-format/range-utils.d.ts +11 -0
  248. package/dist/conditional-format/range-utils.d.ts.map +1 -0
  249. package/dist/conditional-format/render-types.d.ts +80 -0
  250. package/dist/conditional-format/render-types.d.ts.map +1 -0
  251. package/dist/connections/api-errors.d.ts +29 -0
  252. package/dist/connections/api-errors.d.ts.map +1 -0
  253. package/dist/connections/api.d.ts +879 -0
  254. package/dist/connections/api.d.ts.map +1 -0
  255. package/dist/connections/database-bridge-types.d.ts +108 -0
  256. package/dist/connections/database-bridge-types.d.ts.map +1 -0
  257. package/dist/connections/index.d.ts +5 -0
  258. package/dist/connections/index.d.ts.map +1 -0
  259. package/dist/connections/power-query.d.ts +1 -0
  260. package/dist/connections/power-query.d.ts.map +1 -0
  261. package/dist/connections/query.d.ts +144 -0
  262. package/dist/connections/query.d.ts.map +1 -0
  263. package/dist/context-menu/index.d.ts +10 -0
  264. package/dist/context-menu/index.d.ts.map +1 -0
  265. package/dist/context-menu/types.d.ts +28 -0
  266. package/dist/context-menu/types.d.ts.map +1 -0
  267. package/dist/core/commands.d.ts +143 -0
  268. package/dist/core/commands.d.ts.map +1 -0
  269. package/dist/core/core.d.ts +943 -0
  270. package/dist/core/core.d.ts.map +1 -0
  271. package/dist/core/disposable.d.ts +30 -0
  272. package/dist/core/disposable.d.ts.map +1 -0
  273. package/dist/core/event-base.d.ts +31 -0
  274. package/dist/core/event-base.d.ts.map +1 -0
  275. package/dist/core/execution.d.ts +79 -0
  276. package/dist/core/execution.d.ts.map +1 -0
  277. package/dist/core/formatted-text.d.ts +8 -0
  278. package/dist/core/formatted-text.d.ts.map +1 -0
  279. package/dist/core/index.d.ts +10 -0
  280. package/dist/core/index.d.ts.map +1 -0
  281. package/dist/core/result.d.ts +23 -0
  282. package/dist/core/result.d.ts.map +1 -0
  283. package/dist/core/schema.d.ts +360 -0
  284. package/dist/core/schema.d.ts.map +1 -0
  285. package/dist/core/testing.d.ts +309 -0
  286. package/dist/core/testing.d.ts.map +1 -0
  287. package/dist/culture/index.d.ts +11 -0
  288. package/dist/culture/index.d.ts.map +1 -0
  289. package/dist/culture/types.d.ts +320 -0
  290. package/dist/culture/types.d.ts.map +1 -0
  291. package/dist/data/charts.d.ts +412 -0
  292. package/dist/data/charts.d.ts.map +1 -0
  293. package/dist/data/conditional-format.d.ts +188 -0
  294. package/dist/data/conditional-format.d.ts.map +1 -0
  295. package/dist/data/filter.d.ts +364 -0
  296. package/dist/data/filter.d.ts.map +1 -0
  297. package/dist/data/grouping.d.ts +170 -0
  298. package/dist/data/grouping.d.ts.map +1 -0
  299. package/dist/data/index.d.ts +12 -0
  300. package/dist/data/index.d.ts.map +1 -0
  301. package/dist/data/named-ranges.d.ts +104 -0
  302. package/dist/data/named-ranges.d.ts.map +1 -0
  303. package/dist/data/pivot.d.ts +68 -0
  304. package/dist/data/pivot.d.ts.map +1 -0
  305. package/dist/data/slicers.d.ts +417 -0
  306. package/dist/data/slicers.d.ts.map +1 -0
  307. package/dist/data/sorting.d.ts +172 -0
  308. package/dist/data/sorting.d.ts.map +1 -0
  309. package/dist/data/sparklines.d.ts +358 -0
  310. package/dist/data/sparklines.d.ts.map +1 -0
  311. package/dist/data/tables.d.ts +333 -0
  312. package/dist/data/tables.d.ts.map +1 -0
  313. package/dist/data/trace-arrows.d.ts +165 -0
  314. package/dist/data/trace-arrows.d.ts.map +1 -0
  315. package/dist/diagnostics/core.d.ts +219 -0
  316. package/dist/diagnostics/core.d.ts.map +1 -0
  317. package/dist/diagnostics/index.d.ts +9 -0
  318. package/dist/diagnostics/index.d.ts.map +1 -0
  319. package/dist/diagnostics/style.d.ts +196 -0
  320. package/dist/diagnostics/style.d.ts.map +1 -0
  321. package/dist/document/comments.d.ts +109 -0
  322. package/dist/document/comments.d.ts.map +1 -0
  323. package/dist/document/document.d.ts +182 -0
  324. package/dist/document/document.d.ts.map +1 -0
  325. package/dist/document/index.d.ts +5 -0
  326. package/dist/document/index.d.ts.map +1 -0
  327. package/dist/document/protection.d.ts +114 -0
  328. package/dist/document/protection.d.ts.map +1 -0
  329. package/dist/document/search.d.ts +202 -0
  330. package/dist/document/search.d.ts.map +1 -0
  331. package/dist/drawing/index.d.ts +8 -0
  332. package/dist/drawing/index.d.ts.map +1 -0
  333. package/dist/drawing/three-d.d.ts +171 -0
  334. package/dist/drawing/three-d.d.ts.map +1 -0
  335. package/dist/editor/drag.d.ts +178 -0
  336. package/dist/editor/drag.d.ts.map +1 -0
  337. package/dist/editor/editor.d.ts +59 -0
  338. package/dist/editor/editor.d.ts.map +1 -0
  339. package/dist/editor/form-controls.d.ts +428 -0
  340. package/dist/editor/form-controls.d.ts.map +1 -0
  341. package/dist/editor/index.d.ts +4 -0
  342. package/dist/editor/index.d.ts.map +1 -0
  343. package/dist/equation/errors.d.ts +19 -0
  344. package/dist/equation/errors.d.ts.map +1 -0
  345. package/dist/equation/index.d.ts +12 -0
  346. package/dist/equation/index.d.ts.map +1 -0
  347. package/dist/equation/omml-ast.d.ts +358 -0
  348. package/dist/equation/omml-ast.d.ts.map +1 -0
  349. package/dist/equation/templates.d.ts +26 -0
  350. package/dist/equation/templates.d.ts.map +1 -0
  351. package/dist/equation/types.d.ts +87 -0
  352. package/dist/equation/types.d.ts.map +1 -0
  353. package/dist/events/canvas-object-events.d.ts +31 -0
  354. package/dist/events/canvas-object-events.d.ts.map +1 -0
  355. package/dist/events/cell-events.d.ts +60 -0
  356. package/dist/events/cell-events.d.ts.map +1 -0
  357. package/dist/events/chart-events.d.ts +61 -0
  358. package/dist/events/chart-events.d.ts.map +1 -0
  359. package/dist/events/comment-events.d.ts +43 -0
  360. package/dist/events/comment-events.d.ts.map +1 -0
  361. package/dist/events/conditional-formatting-events.d.ts +40 -0
  362. package/dist/events/conditional-formatting-events.d.ts.map +1 -0
  363. package/dist/events/data-tools-events.d.ts +29 -0
  364. package/dist/events/data-tools-events.d.ts.map +1 -0
  365. package/dist/events/file-io-events.d.ts +39 -0
  366. package/dist/events/file-io-events.d.ts.map +1 -0
  367. package/dist/events/filter-events.d.ts +43 -0
  368. package/dist/events/filter-events.d.ts.map +1 -0
  369. package/dist/events/floating-object-events.d.ts +158 -0
  370. package/dist/events/floating-object-events.d.ts.map +1 -0
  371. package/dist/events/grouping-events.d.ts +75 -0
  372. package/dist/events/grouping-events.d.ts.map +1 -0
  373. package/dist/events/index.d.ts +129 -0
  374. package/dist/events/index.d.ts.map +1 -0
  375. package/dist/events/ink-collaboration-events.d.ts +57 -0
  376. package/dist/events/ink-collaboration-events.d.ts.map +1 -0
  377. package/dist/events/ink-events.d.ts +33 -0
  378. package/dist/events/ink-events.d.ts.map +1 -0
  379. package/dist/events/ink-recognition-events.d.ts +149 -0
  380. package/dist/events/ink-recognition-events.d.ts.map +1 -0
  381. package/dist/events/ink-stroke-events.d.ts +197 -0
  382. package/dist/events/ink-stroke-events.d.ts.map +1 -0
  383. package/dist/events/merge-events.d.ts +46 -0
  384. package/dist/events/merge-events.d.ts.map +1 -0
  385. package/dist/events/named-range-events.d.ts +24 -0
  386. package/dist/events/named-range-events.d.ts.map +1 -0
  387. package/dist/events/pivot-events.d.ts +47 -0
  388. package/dist/events/pivot-events.d.ts.map +1 -0
  389. package/dist/events/print-events.d.ts +75 -0
  390. package/dist/events/print-events.d.ts.map +1 -0
  391. package/dist/events/recalc-events.d.ts +20 -0
  392. package/dist/events/recalc-events.d.ts.map +1 -0
  393. package/dist/events/scenario-events.d.ts +37 -0
  394. package/dist/events/scenario-events.d.ts.map +1 -0
  395. package/dist/events/selection-events.d.ts +16 -0
  396. package/dist/events/selection-events.d.ts.map +1 -0
  397. package/dist/events/settings-events.d.ts +41 -0
  398. package/dist/events/settings-events.d.ts.map +1 -0
  399. package/dist/events/sheet-events.d.ts +68 -0
  400. package/dist/events/sheet-events.d.ts.map +1 -0
  401. package/dist/events/slicer-events.d.ts +47 -0
  402. package/dist/events/slicer-events.d.ts.map +1 -0
  403. package/dist/events/smartart-events.d.ts +222 -0
  404. package/dist/events/smartart-events.d.ts.map +1 -0
  405. package/dist/events/sparkline-events.d.ts +68 -0
  406. package/dist/events/sparkline-events.d.ts.map +1 -0
  407. package/dist/events/store-events.d.ts +18 -0
  408. package/dist/events/store-events.d.ts.map +1 -0
  409. package/dist/events/structure-events.d.ts +76 -0
  410. package/dist/events/structure-events.d.ts.map +1 -0
  411. package/dist/events/table-events.d.ts +99 -0
  412. package/dist/events/table-events.d.ts.map +1 -0
  413. package/dist/events/validation-events.d.ts +85 -0
  414. package/dist/events/validation-events.d.ts.map +1 -0
  415. package/dist/events/view-events.d.ts +72 -0
  416. package/dist/events/view-events.d.ts.map +1 -0
  417. package/dist/events/wordart-events.d.ts +169 -0
  418. package/dist/events/wordart-events.d.ts.map +1 -0
  419. package/dist/events.d.ts +41 -0
  420. package/dist/events.d.ts.map +1 -0
  421. package/dist/extensions/index.d.ts +9 -0
  422. package/dist/extensions/index.d.ts.map +1 -0
  423. package/dist/extensions/types.d.ts +64 -0
  424. package/dist/extensions/types.d.ts.map +1 -0
  425. package/dist/filesystem/index.d.ts +11 -0
  426. package/dist/filesystem/index.d.ts.map +1 -0
  427. package/dist/filesystem/paths.d.ts +38 -0
  428. package/dist/filesystem/paths.d.ts.map +1 -0
  429. package/dist/filesystem/permissions.d.ts +89 -0
  430. package/dist/filesystem/permissions.d.ts.map +1 -0
  431. package/dist/filesystem/types.d.ts +251 -0
  432. package/dist/filesystem/types.d.ts.map +1 -0
  433. package/dist/fill/custom-lists.d.ts +41 -0
  434. package/dist/fill/custom-lists.d.ts.map +1 -0
  435. package/dist/fill/index.d.ts +11 -0
  436. package/dist/fill/index.d.ts.map +1 -0
  437. package/dist/fill/types.d.ts +102 -0
  438. package/dist/fill/types.d.ts.map +1 -0
  439. package/dist/formatting/format-registry.d.ts +45 -0
  440. package/dist/formatting/format-registry.d.ts.map +1 -0
  441. package/dist/formatting/index.d.ts +9 -0
  442. package/dist/formatting/index.d.ts.map +1 -0
  443. package/dist/formatting/theme.d.ts +108 -0
  444. package/dist/formatting/theme.d.ts.map +1 -0
  445. package/dist/index.d.ts +49 -0
  446. package/dist/index.d.ts.map +1 -0
  447. package/dist/ink/index.d.ts +16 -0
  448. package/dist/ink/index.d.ts.map +1 -0
  449. package/dist/ink/spatial-index.d.ts +113 -0
  450. package/dist/ink/spatial-index.d.ts.map +1 -0
  451. package/dist/ink/types.d.ts +558 -0
  452. package/dist/ink/types.d.ts.map +1 -0
  453. package/dist/kernel/floating-object-manager.d.ts +68 -0
  454. package/dist/kernel/floating-object-manager.d.ts.map +1 -0
  455. package/dist/kernel/index.d.ts +12 -0
  456. package/dist/kernel/index.d.ts.map +1 -0
  457. package/dist/kernel/kernel-context.d.ts +129 -0
  458. package/dist/kernel/kernel-context.d.ts.map +1 -0
  459. package/dist/keyboard/actions.d.ts +328 -0
  460. package/dist/keyboard/actions.d.ts.map +1 -0
  461. package/dist/keyboard/binding-utils.d.ts +112 -0
  462. package/dist/keyboard/binding-utils.d.ts.map +1 -0
  463. package/dist/keyboard/customization.d.ts +121 -0
  464. package/dist/keyboard/customization.d.ts.map +1 -0
  465. package/dist/keyboard/display-utils.d.ts +9 -0
  466. package/dist/keyboard/display-utils.d.ts.map +1 -0
  467. package/dist/keyboard/excel-reference.d.ts +28 -0
  468. package/dist/keyboard/excel-reference.d.ts.map +1 -0
  469. package/dist/keyboard/index.d.ts +16 -0
  470. package/dist/keyboard/index.d.ts.map +1 -0
  471. package/dist/keyboard/input.d.ts +124 -0
  472. package/dist/keyboard/input.d.ts.map +1 -0
  473. package/dist/keyboard/physical-keys.d.ts +79 -0
  474. package/dist/keyboard/physical-keys.d.ts.map +1 -0
  475. package/dist/keyboard/shortcuts/definitions/index.d.ts +10 -0
  476. package/dist/keyboard/shortcuts/definitions/index.d.ts.map +1 -0
  477. package/dist/keyboard/shortcuts/types.d.ts +347 -0
  478. package/dist/keyboard/shortcuts/types.d.ts.map +1 -0
  479. package/dist/machines/index.d.ts +12 -0
  480. package/dist/machines/index.d.ts.map +1 -0
  481. package/dist/machines/snapshots.d.ts +160 -0
  482. package/dist/machines/snapshots.d.ts.map +1 -0
  483. package/dist/machines/types.d.ts +64 -0
  484. package/dist/machines/types.d.ts.map +1 -0
  485. package/dist/number-formats/constants.d.ts +39 -0
  486. package/dist/number-formats/constants.d.ts.map +1 -0
  487. package/dist/number-formats/index.d.ts +14 -0
  488. package/dist/number-formats/index.d.ts.map +1 -0
  489. package/dist/number-formats/locale/index.d.ts +5 -0
  490. package/dist/number-formats/locale/index.d.ts.map +1 -0
  491. package/dist/number-formats/locale/locale-defaults.d.ts +17 -0
  492. package/dist/number-formats/locale/locale-defaults.d.ts.map +1 -0
  493. package/dist/number-formats/registry.d.ts +52 -0
  494. package/dist/number-formats/registry.d.ts.map +1 -0
  495. package/dist/number-formats/types.d.ts +134 -0
  496. package/dist/number-formats/types.d.ts.map +1 -0
  497. package/dist/objects/canvas-object.d.ts +157 -0
  498. package/dist/objects/canvas-object.d.ts.map +1 -0
  499. package/dist/objects/drawing-object.d.ts +144 -0
  500. package/dist/objects/drawing-object.d.ts.map +1 -0
  501. package/dist/objects/floating-objects.d.ts +742 -0
  502. package/dist/objects/floating-objects.d.ts.map +1 -0
  503. package/dist/objects/index.d.ts +5 -0
  504. package/dist/objects/index.d.ts.map +1 -0
  505. package/dist/objects/object-bounds-reader.d.ts +25 -0
  506. package/dist/objects/object-bounds-reader.d.ts.map +1 -0
  507. package/dist/objects/object-mutator.d.ts +30 -0
  508. package/dist/objects/object-mutator.d.ts.map +1 -0
  509. package/dist/performance/index.d.ts +8 -0
  510. package/dist/performance/index.d.ts.map +1 -0
  511. package/dist/performance/profiler-types.d.ts +351 -0
  512. package/dist/performance/profiler-types.d.ts.map +1 -0
  513. package/dist/platform/identity.d.ts +24 -0
  514. package/dist/platform/identity.d.ts.map +1 -0
  515. package/dist/platform/index.d.ts +17 -0
  516. package/dist/platform/index.d.ts.map +1 -0
  517. package/dist/platform/types.d.ts +359 -0
  518. package/dist/platform/types.d.ts.map +1 -0
  519. package/dist/rendering/canvas-bridge-types.d.ts +68 -0
  520. package/dist/rendering/canvas-bridge-types.d.ts.map +1 -0
  521. package/dist/rendering/constants.d.ts +76 -0
  522. package/dist/rendering/constants.d.ts.map +1 -0
  523. package/dist/rendering/coordinates.d.ts +452 -0
  524. package/dist/rendering/coordinates.d.ts.map +1 -0
  525. package/dist/rendering/coordinator-interfaces.d.ts +163 -0
  526. package/dist/rendering/coordinator-interfaces.d.ts.map +1 -0
  527. package/dist/rendering/data-sources.d.ts +372 -0
  528. package/dist/rendering/data-sources.d.ts.map +1 -0
  529. package/dist/rendering/grid-region.d.ts +32 -0
  530. package/dist/rendering/grid-region.d.ts.map +1 -0
  531. package/dist/rendering/grid-renderer.d.ts +391 -0
  532. package/dist/rendering/grid-renderer.d.ts.map +1 -0
  533. package/dist/rendering/grouping.d.ts +21 -0
  534. package/dist/rendering/grouping.d.ts.map +1 -0
  535. package/dist/rendering/hit-test-service.d.ts +58 -0
  536. package/dist/rendering/hit-test-service.d.ts.map +1 -0
  537. package/dist/rendering/hit-test.d.ts +223 -0
  538. package/dist/rendering/hit-test.d.ts.map +1 -0
  539. package/dist/rendering/index.d.ts +25 -0
  540. package/dist/rendering/index.d.ts.map +1 -0
  541. package/dist/rendering/interactive-elements.d.ts +121 -0
  542. package/dist/rendering/interactive-elements.d.ts.map +1 -0
  543. package/dist/rendering/primitives.d.ts +17 -0
  544. package/dist/rendering/primitives.d.ts.map +1 -0
  545. package/dist/rendering/render-context.d.ts +457 -0
  546. package/dist/rendering/render-context.d.ts.map +1 -0
  547. package/dist/rendering/text-measurement-service.d.ts +197 -0
  548. package/dist/rendering/text-measurement-service.d.ts.map +1 -0
  549. package/dist/ribbon/collapse-configs.d.ts +298 -0
  550. package/dist/ribbon/collapse-configs.d.ts.map +1 -0
  551. package/dist/ribbon/collapse-types.d.ts +76 -0
  552. package/dist/ribbon/collapse-types.d.ts.map +1 -0
  553. package/dist/ribbon/index.d.ts +25 -0
  554. package/dist/ribbon/index.d.ts.map +1 -0
  555. package/dist/selection/index.d.ts +10 -0
  556. package/dist/selection/index.d.ts.map +1 -0
  557. package/dist/selection/registry.d.ts +17 -0
  558. package/dist/selection/registry.d.ts.map +1 -0
  559. package/dist/selection/types.d.ts +82 -0
  560. package/dist/selection/types.d.ts.map +1 -0
  561. package/dist/selectors/index.d.ts +8 -0
  562. package/dist/selectors/index.d.ts.map +1 -0
  563. package/dist/selectors/smart-art.d.ts +58 -0
  564. package/dist/selectors/smart-art.d.ts.map +1 -0
  565. package/dist/services/index.d.ts +273 -0
  566. package/dist/services/index.d.ts.map +1 -0
  567. package/dist/smartart/index.d.ts +26 -0
  568. package/dist/smartart/index.d.ts.map +1 -0
  569. package/dist/smartart/layouts.d.ts +193 -0
  570. package/dist/smartart/layouts.d.ts.map +1 -0
  571. package/dist/smartart/ooxml-algorithm-types.d.ts +939 -0
  572. package/dist/smartart/ooxml-algorithm-types.d.ts.map +1 -0
  573. package/dist/smartart/ooxml-data-model-types.d.ts +845 -0
  574. package/dist/smartart/ooxml-data-model-types.d.ts.map +1 -0
  575. package/dist/smartart/ooxml-drawing-types.d.ts +356 -0
  576. package/dist/smartart/ooxml-drawing-types.d.ts.map +1 -0
  577. package/dist/smartart/ooxml-engine-types.d.ts +873 -0
  578. package/dist/smartart/ooxml-engine-types.d.ts.map +1 -0
  579. package/dist/smartart/ooxml-layout-types.d.ts +405 -0
  580. package/dist/smartart/ooxml-layout-types.d.ts.map +1 -0
  581. package/dist/smartart/ooxml-style-types.d.ts +474 -0
  582. package/dist/smartart/ooxml-style-types.d.ts.map +1 -0
  583. package/dist/smartart/styles.d.ts +137 -0
  584. package/dist/smartart/styles.d.ts.map +1 -0
  585. package/dist/smartart/types.d.ts +323 -0
  586. package/dist/smartart/types.d.ts.map +1 -0
  587. package/dist/storage/capabilities.d.ts +33 -0
  588. package/dist/storage/capabilities.d.ts.map +1 -0
  589. package/dist/storage/connection.d.ts +183 -0
  590. package/dist/storage/connection.d.ts.map +1 -0
  591. package/dist/storage/index.d.ts +13 -0
  592. package/dist/storage/index.d.ts.map +1 -0
  593. package/dist/storage/query.d.ts +91 -0
  594. package/dist/storage/query.d.ts.map +1 -0
  595. package/dist/storage/table-driver.d.ts +249 -0
  596. package/dist/storage/table-driver.d.ts.map +1 -0
  597. package/dist/store/cell-schema.d.ts +235 -0
  598. package/dist/store/cell-schema.d.ts.map +1 -0
  599. package/dist/store/equation-schema.d.ts +22 -0
  600. package/dist/store/equation-schema.d.ts.map +1 -0
  601. package/dist/store/index.d.ts +33 -0
  602. package/dist/store/index.d.ts.map +1 -0
  603. package/dist/store/ink-schema.d.ts +26 -0
  604. package/dist/store/ink-schema.d.ts.map +1 -0
  605. package/dist/store/scenarios-schema.d.ts +105 -0
  606. package/dist/store/scenarios-schema.d.ts.map +1 -0
  607. package/dist/store/schema-types.d.ts +113 -0
  608. package/dist/store/schema-types.d.ts.map +1 -0
  609. package/dist/store/sheet-maps-schema.d.ts +222 -0
  610. package/dist/store/sheet-maps-schema.d.ts.map +1 -0
  611. package/dist/store/sheet-meta-schema.d.ts +16 -0
  612. package/dist/store/sheet-meta-schema.d.ts.map +1 -0
  613. package/dist/store/smartart-schema.d.ts +17 -0
  614. package/dist/store/smartart-schema.d.ts.map +1 -0
  615. package/dist/store/store-types.d.ts +381 -0
  616. package/dist/store/store-types.d.ts.map +1 -0
  617. package/dist/store/wordart-schema.d.ts +13 -0
  618. package/dist/store/wordart-schema.d.ts.map +1 -0
  619. package/dist/store/workbook-schema.d.ts +16 -0
  620. package/dist/store/workbook-schema.d.ts.map +1 -0
  621. package/dist/styles/built-in-styles.d.ts +10 -0
  622. package/dist/styles/built-in-styles.d.ts.map +1 -0
  623. package/dist/styles/index.d.ts +18 -0
  624. package/dist/styles/index.d.ts.map +1 -0
  625. package/dist/utils/a1.d.ts +12 -0
  626. package/dist/utils/a1.d.ts.map +1 -0
  627. package/dist/utils/datetime.d.ts +7 -0
  628. package/dist/utils/datetime.d.ts.map +1 -0
  629. package/dist/utils/function-registry.d.ts +40 -0
  630. package/dist/utils/function-registry.d.ts.map +1 -0
  631. package/dist/utils/index.d.ts +9 -0
  632. package/dist/utils/index.d.ts.map +1 -0
  633. package/dist/utils/protection.d.ts +9 -0
  634. package/dist/utils/protection.d.ts.map +1 -0
  635. package/dist/utils/range-navigation.d.ts +9 -0
  636. package/dist/utils/range-navigation.d.ts.map +1 -0
  637. package/dist/utils/range.d.ts +9 -0
  638. package/dist/utils/range.d.ts.map +1 -0
  639. package/dist/utils/rich-text.d.ts +9 -0
  640. package/dist/utils/rich-text.d.ts.map +1 -0
  641. package/dist/viewport/geometry.d.ts +90 -0
  642. package/dist/viewport/geometry.d.ts.map +1 -0
  643. package/dist/viewport/grid-canvas.d.ts +133 -0
  644. package/dist/viewport/grid-canvas.d.ts.map +1 -0
  645. package/dist/viewport/index.d.ts +5 -0
  646. package/dist/viewport/index.d.ts.map +1 -0
  647. package/dist/viewport/viewport-config.d.ts +95 -0
  648. package/dist/viewport/viewport-config.d.ts.map +1 -0
  649. package/dist/viewport/viewport.d.ts +191 -0
  650. package/dist/viewport/viewport.d.ts.map +1 -0
  651. package/dist/views/index.d.ts +9 -0
  652. package/dist/views/index.d.ts.map +1 -0
  653. package/dist/views/types.d.ts +161 -0
  654. package/dist/views/types.d.ts.map +1 -0
  655. package/dist/what-if/index.d.ts +2 -0
  656. package/dist/what-if/index.d.ts.map +1 -0
  657. package/dist/what-if/what-if.d.ts +152 -0
  658. package/dist/what-if/what-if.d.ts.map +1 -0
  659. package/dist/window-manager/index.d.ts +134 -0
  660. package/dist/window-manager/index.d.ts.map +1 -0
  661. package/dist/wordart/effects.d.ts +611 -0
  662. package/dist/wordart/effects.d.ts.map +1 -0
  663. package/dist/wordart/index.d.ts +17 -0
  664. package/dist/wordart/index.d.ts.map +1 -0
  665. package/dist/wordart/presets.d.ts +133 -0
  666. package/dist/wordart/presets.d.ts.map +1 -0
  667. package/dist/wordart/types.d.ts +444 -0
  668. package/dist/wordart/types.d.ts.map +1 -0
  669. package/dist/workflows/context.d.ts +777 -0
  670. package/dist/workflows/context.d.ts.map +1 -0
  671. package/dist/workflows/definition.d.ts +256 -0
  672. package/dist/workflows/definition.d.ts.map +1 -0
  673. package/dist/workflows/events.d.ts +397 -0
  674. package/dist/workflows/events.d.ts.map +1 -0
  675. package/dist/workflows/index.d.ts +19 -0
  676. package/dist/workflows/index.d.ts.map +1 -0
  677. package/dist/workflows/instance.d.ts +358 -0
  678. package/dist/workflows/instance.d.ts.map +1 -0
  679. package/dist/workflows/runtime.d.ts +287 -0
  680. package/dist/workflows/runtime.d.ts.map +1 -0
  681. package/dist/workflows/triggers.d.ts +335 -0
  682. package/dist/workflows/triggers.d.ts.map +1 -0
  683. package/dist/workflows/versioning.d.ts +245 -0
  684. package/dist/workflows/versioning.d.ts.map +1 -0
  685. package/dist/xlsx-parser/conditional-format.d.ts +137 -0
  686. package/dist/xlsx-parser/conditional-format.d.ts.map +1 -0
  687. package/dist/xlsx-parser/core.d.ts +622 -0
  688. package/dist/xlsx-parser/core.d.ts.map +1 -0
  689. package/dist/xlsx-parser/data-validation.d.ts +55 -0
  690. package/dist/xlsx-parser/data-validation.d.ts.map +1 -0
  691. package/dist/xlsx-parser/errors.d.ts +38 -0
  692. package/dist/xlsx-parser/errors.d.ts.map +1 -0
  693. package/dist/xlsx-parser/index.d.ts +17 -0
  694. package/dist/xlsx-parser/index.d.ts.map +1 -0
  695. package/dist/xlsx-parser/options.d.ts +89 -0
  696. package/dist/xlsx-parser/options.d.ts.map +1 -0
  697. package/dist/xlsx-parser/styles.d.ts +157 -0
  698. package/dist/xlsx-parser/styles.d.ts.map +1 -0
  699. package/dist/xlsx-parser/table.d.ts +170 -0
  700. package/dist/xlsx-parser/table.d.ts.map +1 -0
  701. package/package.json +410 -0
@@ -0,0 +1,742 @@
1
+ /**
2
+ * Floating Objects Contracts
3
+ *
4
+ * Type definitions for pictures, text boxes, shapes, and other floating objects
5
+ * that overlay the cell grid. These objects anchor to cells but render on a
6
+ * separate layer (z-index 5 per renderer architecture).
7
+ *
8
+ * Architecture Notes:
9
+ * - Objects render on overlay layer (z-index 5) per renderer docs
10
+ * - Requires object-interaction-machine for selection/drag/resize states
11
+ * - Coordinator manages cross-coordination with selection-machine
12
+ * - Hit testing determines which object (if any) is under cursor
13
+ *
14
+ * Cell Identity Model:
15
+ * - CellAnchor uses CellId references, NOT row/col positions
16
+ * - This ensures anchors survive concurrent row/col insert/delete operations
17
+ * - Position resolution happens at render time via CellPositionLookup
18
+ * - Same pattern as IdentityFormula refs for formulas
19
+ */
20
+ import type { CellId, CellIdRange } from '../cells/cell-identity';
21
+ import type { CellFormat } from '../core/core';
22
+ import type { Equation, EquationStyle } from '../equation/types';
23
+ import type { DrawingObject } from '../ink/types';
24
+ import type { SmartArtDiagram } from '../smartart/types';
25
+ import type { OuterShadowEffect } from '../wordart/effects';
26
+ import type { WordArtConfig } from '../wordart/types';
27
+ import type { CanvasObject, CanvasObjectGroup } from './canvas-object';
28
+ /**
29
+ * How the object anchors to the sheet.
30
+ * Determines behavior when rows/columns are resized.
31
+ */
32
+ export type ObjectAnchorType = 'twoCell' | 'oneCell' | 'absolute';
33
+ /**
34
+ * Cell anchor point with pixel offset.
35
+ * Used for precise positioning relative to cell boundaries.
36
+ *
37
+ * Cell Identity Model:
38
+ * Uses CellId for stable references that survive row/col insert/delete.
39
+ * Position is resolved at render time via CellPositionLookup.
40
+ *
41
+ * @example
42
+ * // User places image at B5
43
+ * const anchor: CellAnchor = {
44
+ * cellId: 'abc-123...', // CellId of B5
45
+ * xOffset: 10, // 10px from cell left edge
46
+ * yOffset: 5 // 5px from cell top edge
47
+ * };
48
+ * // After inserting row at row 3, the CellId is unchanged
49
+ * // but resolves to position (row: 5, col: 1) → image moves down
50
+ */
51
+ export interface CellAnchor {
52
+ /**
53
+ * Stable cell reference that survives row/col insert/delete.
54
+ * Resolve to current position via CellPositionLookup.getPosition().
55
+ */
56
+ cellId: CellId;
57
+ /** Horizontal offset from cell top-left in pixels */
58
+ xOffset: number;
59
+ /** Vertical offset from cell top-left in pixels */
60
+ yOffset: number;
61
+ }
62
+ /**
63
+ * Object position configuration.
64
+ * Supports cell-anchored and absolute positioning modes.
65
+ */
66
+ export interface ObjectPosition {
67
+ /** Anchor type determines how object moves/resizes with cells */
68
+ anchorType: ObjectAnchorType;
69
+ /** Start anchor (top-left corner) - required for all anchor types */
70
+ from: CellAnchor;
71
+ /** End anchor (bottom-right corner) - only for twoCell anchor */
72
+ to?: CellAnchor;
73
+ /** Absolute X position in pixels (only for absolute anchor) */
74
+ x?: number;
75
+ /** Absolute Y position in pixels (only for absolute anchor) */
76
+ y?: number;
77
+ /** Width in pixels (for oneCell and absolute anchors) */
78
+ width?: number;
79
+ /** Height in pixels (for oneCell and absolute anchors) */
80
+ height?: number;
81
+ /** Rotation angle in degrees (0-360) */
82
+ rotation?: number;
83
+ /** Flip horizontally (mirror along vertical axis) */
84
+ flipH?: boolean;
85
+ /** Flip vertically (mirror along horizontal axis) */
86
+ flipV?: boolean;
87
+ }
88
+ /**
89
+ * Object type discriminator.
90
+ * Used for type narrowing in union types.
91
+ *
92
+ * Extends CanvasObjectType (which is `string`) with a specific union for
93
+ * spreadsheet object types. This ensures backward compatibility: any code
94
+ * expecting FloatingObjectType still gets the specific union, while
95
+ * CanvasObjectType-based code accepts it as a string.
96
+ *
97
+ * Note: 'slicer' is defined here for the FloatingObjectType union,
98
+ * but the full SlicerConfig type is in contracts/src/slicers.ts
99
+ * because slicers have significant additional properties.
100
+ */
101
+ export type FloatingObjectType = 'shape' | 'connector' | 'picture' | 'textbox' | 'chart' | 'camera' | 'equation' | 'smartart' | 'drawing' | 'oleObject' | 'formControl' | 'slicer';
102
+ /**
103
+ * Base interface for all floating objects.
104
+ * Contains common properties shared by all object types.
105
+ *
106
+ * Extends CanvasObject<ObjectPosition> to inherit universal canvas object
107
+ * properties. The spreadsheet anchor type is ObjectPosition (cell-based).
108
+ *
109
+ * Transition note: `sheetId` is kept for backward compatibility during
110
+ * migration. It aliases `containerId` from CanvasObject. Both fields should
111
+ * be set to the same value. `sheetId` will be removed in a future phase.
112
+ */
113
+ export interface FloatingObjectBase extends CanvasObject<ObjectPosition> {
114
+ /** Object type discriminator (narrows CanvasObject.type to spreadsheet types) */
115
+ type: FloatingObjectType;
116
+ /** Sheet containing the object (spreadsheet-specific alias for containerId) */
117
+ sheetId: string;
118
+ /**
119
+ * Container scope (inherited from CanvasObject).
120
+ * For spreadsheets, this is the same as sheetId.
121
+ * Set both sheetId and containerId to the same value during the transition.
122
+ */
123
+ containerId: string;
124
+ /**
125
+ * Position and sizing configuration.
126
+ * This is the spreadsheet-specific name for the anchor from CanvasObject.
127
+ * Both `position` and `anchor` should reference the same ObjectPosition.
128
+ */
129
+ position: ObjectPosition;
130
+ /**
131
+ * App-specific anchor (inherited from CanvasObject<ObjectPosition>).
132
+ * For spreadsheets, this is the same as `position`.
133
+ */
134
+ anchor: ObjectPosition;
135
+ }
136
+ /**
137
+ * Image crop settings.
138
+ * Values are percentages (0-100) of original dimension to crop from each side.
139
+ */
140
+ export interface PictureCrop {
141
+ /** Percentage to crop from top (0-100) */
142
+ top: number;
143
+ /** Percentage to crop from right (0-100) */
144
+ right: number;
145
+ /** Percentage to crop from bottom (0-100) */
146
+ bottom: number;
147
+ /** Percentage to crop from left (0-100) */
148
+ left: number;
149
+ }
150
+ /**
151
+ * Image adjustment settings.
152
+ * Values mirror Excel's picture format options.
153
+ */
154
+ export interface PictureAdjustments {
155
+ /** Brightness adjustment (-100 to 100, 0 = normal) */
156
+ brightness?: number;
157
+ /** Contrast adjustment (-100 to 100, 0 = normal) */
158
+ contrast?: number;
159
+ /** Transparency (0 = opaque, 100 = fully transparent) */
160
+ transparency?: number;
161
+ }
162
+ /**
163
+ * Border style for floating objects.
164
+ */
165
+ export interface ObjectBorder {
166
+ /** Border line style */
167
+ style: 'none' | 'solid' | 'dashed' | 'dotted';
168
+ /** Border color (CSS color string) */
169
+ color: string;
170
+ /** Border width in pixels */
171
+ width: number;
172
+ }
173
+ /**
174
+ * Picture/image floating object.
175
+ * Supports images from various sources with cropping and adjustments.
176
+ */
177
+ export interface PictureObject extends FloatingObjectBase {
178
+ type: 'picture';
179
+ /** Image source (data URL, blob URL, or external URL) */
180
+ src: string;
181
+ /** Original image width in pixels (before scaling) */
182
+ originalWidth: number;
183
+ /** Original image height in pixels (before scaling) */
184
+ originalHeight: number;
185
+ /** Crop settings (percentage-based) */
186
+ crop?: PictureCrop;
187
+ /** Image adjustments (brightness, contrast, transparency) */
188
+ adjustments?: PictureAdjustments;
189
+ /** Border around the image */
190
+ border?: ObjectBorder;
191
+ }
192
+ /**
193
+ * Fill type for shapes, text boxes, and connectors.
194
+ * Matches the Rust `FillType` enum in `domain-types`.
195
+ */
196
+ export type FillType = 'solid' | 'gradient' | 'none';
197
+ /**
198
+ * Gradient direction type.
199
+ * Matches the Rust `GradientType` enum in `domain-types`.
200
+ */
201
+ export type GradientType = 'linear' | 'radial';
202
+ /**
203
+ * A single color stop in a gradient.
204
+ * Matches the Rust `GradientStop` struct in `domain-types`.
205
+ */
206
+ export interface GradientStop {
207
+ /** Position of the stop (0.0 to 1.0) */
208
+ offset: number;
209
+ /** CSS color string */
210
+ color: string;
211
+ }
212
+ /**
213
+ * Gradient fill configuration.
214
+ * Matches the Rust `GradientFill` struct in `domain-types`.
215
+ */
216
+ export interface GradientFill {
217
+ /** Gradient type */
218
+ type: GradientType;
219
+ /** Gradient color stops */
220
+ stops: GradientStop[];
221
+ /** Gradient angle in degrees (for linear gradients) */
222
+ angle?: number;
223
+ }
224
+ /**
225
+ * Fill configuration for shapes and text boxes.
226
+ * Matches the Rust `ObjectFill` struct in `domain-types`.
227
+ */
228
+ export interface ObjectFill {
229
+ /** Fill type */
230
+ type: FillType;
231
+ /** Solid fill color (CSS color string) */
232
+ color?: string;
233
+ /** Gradient configuration */
234
+ gradient?: GradientFill;
235
+ /** Fill transparency (0 = opaque, 1 = fully transparent). Maps to OfficeJS Shape.fill.transparency. */
236
+ transparency?: number;
237
+ }
238
+ /**
239
+ * Text box border with optional corner radius.
240
+ */
241
+ export interface TextBoxBorder extends ObjectBorder {
242
+ /** Corner radius in pixels (for rounded corners) */
243
+ radius?: number;
244
+ }
245
+ /**
246
+ * Text margins within a text box or shape.
247
+ */
248
+ export interface TextMargins {
249
+ /** Top margin in pixels */
250
+ top: number;
251
+ /** Right margin in pixels */
252
+ right: number;
253
+ /** Bottom margin in pixels */
254
+ bottom: number;
255
+ /** Left margin in pixels */
256
+ left: number;
257
+ }
258
+ /**
259
+ * Text box floating object.
260
+ * A rectangular container for rich text content.
261
+ */
262
+ export interface TextBoxObject extends FloatingObjectBase {
263
+ type: 'textbox';
264
+ /** Rich text content (HTML or structured format) */
265
+ content: string;
266
+ /** Default text formatting for new text */
267
+ defaultFormat?: CellFormat;
268
+ /** Fill color/gradient for the text box background */
269
+ fill?: ObjectFill;
270
+ /** Border around the text box */
271
+ border?: TextBoxBorder;
272
+ /** Text margins within the box */
273
+ margins?: TextMargins;
274
+ /** Vertical text alignment */
275
+ verticalAlign?: 'top' | 'middle' | 'bottom';
276
+ /** Optional WordArt configuration for styled text effects */
277
+ wordArt?: WordArtConfig;
278
+ }
279
+ /**
280
+ * Available shape types.
281
+ * Matches common Excel/Office shape categories.
282
+ */
283
+ export type ShapeType = 'rect' | 'roundRect' | 'ellipse' | 'triangle' | 'rtTriangle' | 'diamond' | 'pentagon' | 'hexagon' | 'octagon' | 'parallelogram' | 'trapezoid' | 'nonIsoscelesTrapezoid' | 'heptagon' | 'decagon' | 'dodecagon' | 'teardrop' | 'pie' | 'pieWedge' | 'blockArc' | 'donut' | 'noSmoking' | 'plaque' | 'round1Rect' | 'round2SameRect' | 'round2DiagRect' | 'snip1Rect' | 'snip2SameRect' | 'snip2DiagRect' | 'snipRoundRect' | 'rightArrow' | 'leftArrow' | 'upArrow' | 'downArrow' | 'leftRightArrow' | 'upDownArrow' | 'quadArrow' | 'chevron' | 'leftArrowCallout' | 'rightArrowCallout' | 'upArrowCallout' | 'downArrowCallout' | 'leftRightArrowCallout' | 'upDownArrowCallout' | 'quadArrowCallout' | 'bentArrow' | 'uturnArrow' | 'circularArrow' | 'leftCircularArrow' | 'leftRightCircularArrow' | 'curvedRightArrow' | 'curvedLeftArrow' | 'curvedUpArrow' | 'curvedDownArrow' | 'swooshArrow' | 'star4' | 'star5' | 'star6' | 'star7' | 'star8' | 'star10' | 'star12' | 'star16' | 'star24' | 'star32' | 'ribbon' | 'ribbon2' | 'ellipseRibbon' | 'ellipseRibbon2' | 'leftRightRibbon' | 'banner' | 'wedgeRectCallout' | 'wedgeRoundRectCallout' | 'wedgeEllipseCallout' | 'cloud' | 'callout1' | 'callout2' | 'callout3' | 'borderCallout1' | 'borderCallout2' | 'borderCallout3' | 'accentCallout1' | 'accentCallout2' | 'accentCallout3' | 'accentBorderCallout1' | 'accentBorderCallout2' | 'accentBorderCallout3' | 'line' | 'lineArrow' | 'lineDoubleArrow' | 'curve' | 'arc' | 'connector' | 'bentConnector2' | 'bentConnector3' | 'bentConnector4' | 'bentConnector5' | 'curvedConnector2' | 'curvedConnector3' | 'curvedConnector4' | 'curvedConnector5' | 'flowChartProcess' | 'flowChartDecision' | 'flowChartInputOutput' | 'flowChartPredefinedProcess' | 'flowChartInternalStorage' | 'flowChartDocument' | 'flowChartMultidocument' | 'flowChartTerminator' | 'flowChartPreparation' | 'flowChartManualInput' | 'flowChartManualOperation' | 'flowChartConnector' | 'flowChartPunchedCard' | 'flowChartPunchedTape' | 'flowChartSummingJunction' | 'flowChartOr' | 'flowChartCollate' | 'flowChartSort' | 'flowChartExtract' | 'flowChartMerge' | 'flowChartOfflineStorage' | 'flowChartOnlineStorage' | 'flowChartMagneticTape' | 'flowChartMagneticDisk' | 'flowChartMagneticDrum' | 'flowChartDisplay' | 'flowChartDelay' | 'flowChartAlternateProcess' | 'flowChartOffpageConnector' | 'heart' | 'lightningBolt' | 'sun' | 'moon' | 'smileyFace' | 'foldedCorner' | 'bevel' | 'frame' | 'halfFrame' | 'corner' | 'diagStripe' | 'chord' | 'can' | 'cube' | 'plus' | 'cross' | 'irregularSeal1' | 'irregularSeal2' | 'homePlate' | 'funnel' | 'verticalScroll' | 'horizontalScroll' | 'actionButtonBlank' | 'actionButtonHome' | 'actionButtonHelp' | 'actionButtonInformation' | 'actionButtonForwardNext' | 'actionButtonBackPrevious' | 'actionButtonEnd' | 'actionButtonBeginning' | 'actionButtonReturn' | 'actionButtonDocument' | 'actionButtonSound' | 'actionButtonMovie' | 'leftBracket' | 'rightBracket' | 'leftBrace' | 'rightBrace' | 'bracketPair' | 'bracePair' | 'mathPlus' | 'mathMinus' | 'mathMultiply' | 'mathDivide' | 'mathEqual' | 'mathNotEqual' | 'gear6' | 'gear9' | 'cornerTabs' | 'squareTabs' | 'plaqueTabs' | 'chartX' | 'chartStar' | 'chartPlus';
284
+ /** Arrowhead/line-end type for connector endpoints. Maps to ST_LineEndType (ECMA-376, dml-main.xsd). Canonical source; re-exported by drawing-canvas scene/types. */
285
+ export type LineEndType = 'none' | 'triangle' | 'stealth' | 'diamond' | 'oval' | 'arrow';
286
+ /** Arrowhead/line-end size for connector endpoints. Maps to ST_LineEndLength/ST_LineEndWidth (ECMA-376, dml-main.xsd). Canonical source; re-exported by drawing-canvas scene/types. */
287
+ export type LineEndSize = 'sm' | 'med' | 'lg';
288
+ /**
289
+ * Detailed line dash pattern.
290
+ * Matches OfficeJS ShapeLineFormat.dashStyle and Rust `LineDash` enum.
291
+ * Uses the same 11 variants as OOXML ST_PresetLineDashVal.
292
+ */
293
+ export type LineDash = 'solid' | 'dot' | 'dash' | 'dashDot' | 'lgDash' | 'lgDashDot' | 'lgDashDotDot' | 'sysDash' | 'sysDot' | 'sysDashDot' | 'sysDashDotDot';
294
+ /**
295
+ * Shape outline/stroke configuration.
296
+ */
297
+ export interface ShapeOutline {
298
+ /** Outline style */
299
+ style: 'none' | 'solid' | 'dashed' | 'dotted';
300
+ /** Outline color (CSS color string) */
301
+ color: string;
302
+ /** Outline width in pixels */
303
+ width: number;
304
+ /** Head (start) arrowhead configuration */
305
+ headEnd?: {
306
+ type: LineEndType;
307
+ width?: LineEndSize;
308
+ length?: LineEndSize;
309
+ };
310
+ /** Tail (end) arrowhead configuration */
311
+ tailEnd?: {
312
+ type: LineEndType;
313
+ width?: LineEndSize;
314
+ length?: LineEndSize;
315
+ };
316
+ /** Detailed dash pattern (overrides coarse `style` when set). Matches OfficeJS 12 dash styles. */
317
+ dash?: LineDash;
318
+ /** Outline transparency (0 = opaque, 1 = fully transparent). */
319
+ transparency?: number;
320
+ }
321
+ /**
322
+ * Text content inside a shape.
323
+ */
324
+ export interface ShapeText {
325
+ /** Text content */
326
+ content: string;
327
+ /** Text formatting */
328
+ format?: CellFormat;
329
+ /** Vertical alignment of text within shape */
330
+ verticalAlign?: 'top' | 'middle' | 'bottom';
331
+ /** Horizontal alignment of text within shape */
332
+ horizontalAlign?: 'left' | 'center' | 'right';
333
+ }
334
+ /**
335
+ * Shape floating object.
336
+ * A geometric shape with optional fill, outline, and text.
337
+ */
338
+ export interface ShapeObject extends FloatingObjectBase {
339
+ type: 'shape';
340
+ /** Type of shape to render */
341
+ shapeType: ShapeType;
342
+ /** Fill configuration */
343
+ fill?: ObjectFill;
344
+ /** Outline/stroke configuration */
345
+ outline?: ShapeOutline;
346
+ /** Text content inside the shape */
347
+ text?: ShapeText;
348
+ /** Shadow effect (outer shadow / drop shadow) */
349
+ shadow?: OuterShadowEffect;
350
+ /**
351
+ * Shape-specific adjustments.
352
+ * Keys depend on shape type (e.g., 'cornerRadius' for roundRect,
353
+ * 'arrowHeadSize' for arrows, 'starPoints' for stars).
354
+ */
355
+ adjustments?: Record<string, number>;
356
+ }
357
+ /**
358
+ * Connector floating object.
359
+ * A line or connector shape that links two objects (or floats freely).
360
+ * Connectors have optional arrowheads and connection site bindings.
361
+ */
362
+ export interface ConnectorObject extends FloatingObjectBase {
363
+ type: 'connector';
364
+ /** Connector shape preset (e.g., straightConnector1, bentConnector3) */
365
+ shapeType: ShapeType;
366
+ /** Start connection binding (which shape and site index) */
367
+ startConnection?: {
368
+ shapeId: string;
369
+ siteIndex: number;
370
+ };
371
+ /** End connection binding (which shape and site index) */
372
+ endConnection?: {
373
+ shapeId: string;
374
+ siteIndex: number;
375
+ };
376
+ /** Fill configuration */
377
+ fill?: ObjectFill;
378
+ /** Outline/stroke configuration (includes arrowheads) */
379
+ outline?: ShapeOutline;
380
+ }
381
+ /**
382
+ * Supported chart types for the ChartObject.
383
+ * Matches the ChartType from charts package but defined here for contracts.
384
+ */
385
+ export type ChartObjectType = 'bar' | 'column' | 'line' | 'area' | 'pie' | 'doughnut' | 'scatter' | 'bubble' | 'combo' | 'radar' | 'stock' | 'funnel' | 'waterfall';
386
+ /**
387
+ * Chart floating object.
388
+ *
389
+ * Integrates charts with the FloatingObjectManager to provide:
390
+ * - Hit-testing for selection
391
+ * - Drag/resize/z-order operations
392
+ * - Consistent interaction model with other floating objects
393
+ *
394
+ * Architecture Notes:
395
+ * - Uses Cell Identity Model with CellIdRange references (CRDT-safe)
396
+ * - Full chart configuration lives in the Charts domain module
397
+ * - This interface provides the FloatingObject layer for interactions
398
+ * - Position resolution happens at render time via CellPositionLookup
399
+ *
400
+ * @example
401
+ * // Chart data range A1:D10
402
+ * const chart: ChartObject = {
403
+ * id: 'chart-1',
404
+ * type: 'chart',
405
+ * sheetId: 'sheet-abc',
406
+ * position: { anchorType: 'oneCell', from: { cellId: '...', xOffset: 0, yOffset: 0 }, width: 400, height: 300 },
407
+ * zIndex: 1,
408
+ * locked: false,
409
+ * printable: true,
410
+ * chartType: 'column',
411
+ * anchorMode: 'oneCell',
412
+ * widthCells: 8,
413
+ * heightCells: 15,
414
+ * chartConfig: { series: [], axes: {} },
415
+ * dataRangeIdentity: { topLeftCellId: '...', bottomRightCellId: '...' }
416
+ * };
417
+ */
418
+ export interface ChartObject extends FloatingObjectBase {
419
+ type: 'chart';
420
+ /**
421
+ * The type of chart (bar, line, pie, etc.)
422
+ */
423
+ chartType: ChartObjectType;
424
+ /**
425
+ * How chart anchors to cells - affects resize behavior.
426
+ * - 'oneCell': Chart moves with anchor cell, but doesn't resize with cell changes
427
+ * - 'twoCell': Chart moves and resizes with both anchor cells
428
+ */
429
+ anchorMode: 'oneCell' | 'twoCell';
430
+ /**
431
+ * Width in cell units (for oneCell mode sizing).
432
+ * In twoCell mode, width is determined by the anchor cell positions.
433
+ */
434
+ widthCells: number;
435
+ /**
436
+ * Height in cell units (for oneCell mode sizing).
437
+ * In twoCell mode, height is determined by the anchor cell positions.
438
+ */
439
+ heightCells: number;
440
+ /**
441
+ * Full chart configuration (series, axes, legend, colors, etc.).
442
+ * Stored directly on the floating object as a sub-object field, following the
443
+ * same pattern as fill/outline/shadow on shapes.
444
+ */
445
+ chartConfig: Record<string, unknown>;
446
+ /**
447
+ * Chart data range using CellId corners (CRDT-safe).
448
+ * Automatically expands when rows/cols inserted between corners.
449
+ * Optional because some charts may have inline data or external sources.
450
+ */
451
+ dataRangeIdentity?: CellIdRange;
452
+ /**
453
+ * Series labels range using CellId corners (CRDT-safe).
454
+ * Used to label each data series in the chart.
455
+ */
456
+ seriesRangeIdentity?: CellIdRange;
457
+ /**
458
+ * Category labels range using CellId corners (CRDT-safe).
459
+ * Used for x-axis labels in most chart types.
460
+ */
461
+ categoryRangeIdentity?: CellIdRange;
462
+ }
463
+ /**
464
+ * Equation floating object.
465
+ * Contains a mathematical equation rendered as a floating object.
466
+ */
467
+ export interface EquationObject extends FloatingObjectBase {
468
+ type: 'equation';
469
+ /** The equation data */
470
+ equation: Equation;
471
+ }
472
+ /**
473
+ * SmartArt floating object.
474
+ *
475
+ * SmartArt provides visual representations of information like organization charts,
476
+ * process flows, relationship diagrams, and hierarchies. The diagram data contains
477
+ * the nodes and their relationships, while layout/styling is computed at render time.
478
+ *
479
+ * Architecture Notes:
480
+ * - Diagram data (nodes, relationships) is persisted in Yjs via the bridge layer
481
+ * - Selection state (selectedNodeIds, editingNodeId) lives in XState context, NOT here
482
+ * - Computed layout is a runtime cache, managed by the bridge
483
+ * - Uses existing object-interaction-machine for selection/drag/resize
484
+ */
485
+ export interface SmartArtObject extends FloatingObjectBase {
486
+ type: 'smartart';
487
+ /**
488
+ * The SmartArt diagram data including nodes, relationships, and styling.
489
+ * This is the persisted data - layout is computed at runtime.
490
+ */
491
+ diagram: SmartArtDiagram;
492
+ }
493
+ /**
494
+ * OLE (Object Linking and Embedding) floating object.
495
+ *
496
+ * Represents embedded or linked objects from other applications (e.g., Word
497
+ * documents, PDF files, Visio drawings). The object may have a preview image
498
+ * (PNG/JPEG) or display as an icon. EMF/WMF previews are not supported and
499
+ * will have a null previewImageSrc.
500
+ *
501
+ * Architecture Notes:
502
+ * - Preview image is extracted during OOXML parsing and stored as a blob URL
503
+ * - Linked objects reference external files (isLinked); embedded objects are self-contained
504
+ * - dvAspect determines whether the object renders as content or as an icon
505
+ * - progId identifies the source application (e.g., "Word.Document.12", "AcroExch.Document")
506
+ */
507
+ export interface OleObjectObject extends FloatingObjectBase {
508
+ type: 'oleObject';
509
+ /** OLE ProgID identifying the source application (e.g., "Word.Document.12") */
510
+ progId: string;
511
+ /** Display aspect: 'content' renders the object preview, 'icon' shows an application icon */
512
+ dvAspect: 'content' | 'icon';
513
+ /** Whether the object links to an external file */
514
+ isLinked: boolean;
515
+ /** Whether the object data is embedded in the workbook */
516
+ isEmbedded: boolean;
517
+ /** Blob URL for the preview image (PNG/JPEG), null for EMF/WMF or missing previews */
518
+ previewImageSrc: string | null;
519
+ /** Descriptive text for accessibility */
520
+ altText: string;
521
+ }
522
+ /**
523
+ * Union of all floating object types.
524
+ * Use type narrowing on the 'type' discriminator to access specific properties.
525
+ */
526
+ export type FloatingObject = PictureObject | TextBoxObject | ShapeObject | ConnectorObject | ChartObject | DrawingObject | EquationObject | SmartArtObject | OleObjectObject;
527
+ /**
528
+ * A group of floating objects that move/resize together.
529
+ * Groups can contain other groups for nested grouping.
530
+ *
531
+ * Extends CanvasObjectGroup to inherit universal group properties.
532
+ *
533
+ * Transition note: `sheetId` is kept for backward compatibility.
534
+ * It aliases `containerId` from CanvasObjectGroup. Both fields should
535
+ * be set to the same value. `sheetId` will be removed in a future phase.
536
+ */
537
+ export interface FloatingObjectGroup extends CanvasObjectGroup {
538
+ /** Sheet containing the group (spreadsheet-specific alias for containerId) */
539
+ sheetId: string;
540
+ /**
541
+ * Container scope (inherited from CanvasObjectGroup).
542
+ * For spreadsheets, this is the same as sheetId.
543
+ */
544
+ containerId: string;
545
+ /** Bounding box position for the group */
546
+ position: ObjectPosition;
547
+ /** Whether the group is locked (non-optional override of CanvasObjectGroup.locked) */
548
+ locked: boolean;
549
+ }
550
+ /**
551
+ * Regions of an object that can be hit-tested.
552
+ * Used to determine cursor and interaction behavior.
553
+ */
554
+ export type ObjectHitRegion = 'body' | 'border' | 'resize-nw' | 'resize-n' | 'resize-ne' | 'resize-e' | 'resize-se' | 'resize-s' | 'resize-sw' | 'resize-w' | 'rotation' | 'warp-adjust';
555
+ /**
556
+ * Result of hit-testing a point against floating objects.
557
+ * Used by coordinator to route events to object-interaction-machine.
558
+ */
559
+ export interface ObjectHitTestResult {
560
+ /** ID of the object that was hit */
561
+ objectId: string;
562
+ /** Which region of the object was hit */
563
+ region: ObjectHitRegion;
564
+ /** Whether this is a group */
565
+ isGroup: boolean;
566
+ }
567
+ /**
568
+ * States for the object-interaction-machine.
569
+ * Defines all possible interaction modes with floating objects.
570
+ *
571
+ * State transitions:
572
+ * - idle → selected (click on object)
573
+ * - selected → operating (mouse down on body/handle triggers START_DRAG/START_RESIZE/START_ROTATE)
574
+ * - selected → editingText (double-click on textbox/shape with text)
575
+ * - selected → wordArtEditing (double-click on WordArt object)
576
+ * - selected → adjustingWarp (drag warp-adjust handle on WordArt)
577
+ * - selected → idle (click outside or Escape)
578
+ * - operating → selected (COMPLETE_OPERATION/CANCEL_OPERATION)
579
+ * - editingText → selected (click outside text or Escape)
580
+ * - wordArtEditing → selected (STOP_EDITING or click outside)
581
+ * - adjustingWarp → selected (POINTER_UP or ESCAPE)
582
+ */
583
+ export type ObjectInteractionState = 'idle' | 'selected' | 'multiSelected' | 'operating' | 'editingText' | 'inserting' | 'wordArtEditing' | 'adjustingWarp';
584
+ /**
585
+ * Context for the object-interaction-machine.
586
+ * Maintained by the coordinator.
587
+ */
588
+ export interface ObjectInteractionContext {
589
+ /** Currently selected object IDs (empty if idle) */
590
+ selectedIds: string[];
591
+ /** Active resize handle (if resizing) */
592
+ activeHandle?: ObjectHitRegion;
593
+ }
594
+ /**
595
+ * Options for creating a picture object.
596
+ */
597
+ export interface CreatePictureOptions {
598
+ /** Optional name for the object */
599
+ name?: string;
600
+ /** Alt text for accessibility */
601
+ altText?: string;
602
+ /** Whether object is locked */
603
+ locked?: boolean;
604
+ /** Whether object appears in print */
605
+ printable?: boolean;
606
+ /** Initial crop settings */
607
+ crop?: PictureCrop;
608
+ /** Initial adjustments */
609
+ adjustments?: PictureAdjustments;
610
+ /** Border configuration */
611
+ border?: ObjectBorder;
612
+ }
613
+ /**
614
+ * Options for creating a text box object.
615
+ */
616
+ export interface CreateTextBoxOptions {
617
+ /** Optional name for the object */
618
+ name?: string;
619
+ /** Alt text for accessibility */
620
+ altText?: string;
621
+ /** Whether object is locked */
622
+ locked?: boolean;
623
+ /** Whether object appears in print */
624
+ printable?: boolean;
625
+ /** Default text formatting */
626
+ defaultFormat?: CellFormat;
627
+ /** Fill configuration */
628
+ fill?: ObjectFill;
629
+ /** Border configuration */
630
+ border?: TextBoxBorder;
631
+ /** Text margins */
632
+ margins?: TextMargins;
633
+ /** Vertical text alignment */
634
+ verticalAlign?: 'top' | 'middle' | 'bottom';
635
+ /** Optional WordArt configuration for styled text effects */
636
+ wordArt?: WordArtConfig;
637
+ }
638
+ /**
639
+ * Options for creating a WordArt object (text box with WordArt configuration).
640
+ * Extends CreateTextBoxOptions with the required WordArt configuration.
641
+ */
642
+ export interface CreateWordArtOptions extends Omit<CreateTextBoxOptions, 'wordArt'> {
643
+ /** Initial WordArt configuration (required for WordArt objects) */
644
+ wordArt: WordArtConfig;
645
+ }
646
+ /**
647
+ * Options for creating a shape object.
648
+ */
649
+ export interface CreateShapeOptions {
650
+ /** Optional name for the object */
651
+ name?: string;
652
+ /** Alt text for accessibility */
653
+ altText?: string;
654
+ /** Whether object is locked */
655
+ locked?: boolean;
656
+ /** Whether object appears in print */
657
+ printable?: boolean;
658
+ /** Fill configuration */
659
+ fill?: ObjectFill;
660
+ /** Outline configuration */
661
+ outline?: ShapeOutline;
662
+ /** Initial text content */
663
+ text?: ShapeText;
664
+ /** Shadow effect (outer shadow / drop shadow) */
665
+ shadow?: OuterShadowEffect;
666
+ /** Shape-specific adjustments */
667
+ adjustments?: Record<string, number>;
668
+ }
669
+ /**
670
+ * Options for creating a chart as a floating object.
671
+ *
672
+ * This is used by the FloatingObjectManager's createChart method to create
673
+ * a ChartObject that integrates with the unified floating object system.
674
+ * The chart-specific configuration is managed by the Charts domain module.
675
+ */
676
+ export interface CreateChartAsFloatingObjectOptions {
677
+ /** Optional name for the chart object */
678
+ name?: string;
679
+ /** Alt text for accessibility */
680
+ altText?: string;
681
+ /** Whether chart is locked (can't be moved/resized) */
682
+ locked?: boolean;
683
+ /** Whether chart appears in print output */
684
+ printable?: boolean;
685
+ /** How chart anchors to cells */
686
+ anchorMode?: 'oneCell' | 'twoCell';
687
+ /** Width in cell units (for oneCell mode) */
688
+ widthCells?: number;
689
+ /** Height in cell units (for oneCell mode) */
690
+ heightCells?: number;
691
+ /** Initial data range using CellId corners */
692
+ dataRangeIdentity?: CellIdRange;
693
+ /** Initial series labels range using CellId corners */
694
+ seriesRangeIdentity?: CellIdRange;
695
+ /** Initial category labels range using CellId corners */
696
+ categoryRangeIdentity?: CellIdRange;
697
+ }
698
+ /**
699
+ * Options for creating an equation object.
700
+ */
701
+ export interface CreateEquationOptions {
702
+ /** Optional name for the object */
703
+ name?: string;
704
+ /** Alt text for accessibility */
705
+ altText?: string;
706
+ /** Whether object is locked */
707
+ locked?: boolean;
708
+ /** Whether object appears in print */
709
+ printable?: boolean;
710
+ /** LaTeX string for the equation (if not using omml) */
711
+ latex?: string;
712
+ /** OMML XML string (if not using latex) */
713
+ omml?: string;
714
+ /** Equation style overrides */
715
+ style?: Partial<EquationStyle>;
716
+ }
717
+ /**
718
+ * Options for creating a SmartArt object.
719
+ *
720
+ * Based on the pattern from CreatePictureOptions and CreateChartAsFloatingObjectOptions.
721
+ * The layoutId is required to determine the diagram type (hierarchy, process, etc.).
722
+ */
723
+ export interface CreateSmartArtOptions {
724
+ /** Optional name for the object */
725
+ name?: string;
726
+ /** Alt text for accessibility */
727
+ altText?: string;
728
+ /** Whether object is locked */
729
+ locked?: boolean;
730
+ /** Whether object appears in print */
731
+ printable?: boolean;
732
+ /** Quick style ID (e.g., 'subtle-effect', 'moderate-effect') */
733
+ quickStyleId?: string;
734
+ /** Color theme ID (e.g., 'colorful-1', 'accent-1') */
735
+ colorThemeId?: string;
736
+ /** Initial nodes to populate the diagram with */
737
+ initialNodes?: Array<{
738
+ text: string;
739
+ level: number;
740
+ }>;
741
+ }
742
+ //# sourceMappingURL=floating-objects.d.ts.map