@sheetxl/sdk 0.8.0-beta.10 → 0.8.0-beta.11

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 (480) hide show
  1. package/README.md +1 -1
  2. package/browser/esm/B7aUIvgUjncMMD_i.mjs +394 -0
  3. package/browser/esm/{Cgd5BnM3hg9RyUel.mjs → BFagR2JeWs74iAG3.mjs} +1 -1
  4. package/browser/esm/BGOFfpxr2jPIdqmV.mjs +40 -0
  5. package/browser/esm/{CdLZWVcH8cncBUPJ.mjs → BLoUBId2xZpXAK_H.mjs} +110 -261
  6. package/browser/esm/BMyDRQ716j79h_bH.mjs +86 -0
  7. package/browser/esm/{o8MFgcVXns987D6_.mjs → BVDiOXGMc5_FMGfy.mjs} +6 -6
  8. package/browser/esm/{BzLfNyc6OOShIErH.mjs → BjkCiv5Jz6WYKZeu.mjs} +2 -2
  9. package/browser/esm/{De175LygU7ot4nQm.mjs → BkBhLS0l6z8sxI6D.mjs} +2 -2
  10. package/browser/esm/{Y79I7Sm8kjaYexhf.mjs → BnG31I6Oj_HEtSPS.mjs} +1 -1
  11. package/browser/esm/BoV6zPBnfqCBCqZ7.mjs +7729 -0
  12. package/browser/esm/{CYyv6uGjo10ig5FP.mjs → BpgskG1Er_lGQ_yS.mjs} +1 -1
  13. package/browser/esm/{C9B0djuUarfNdoj0.mjs → BtvLTTfSBdAKplVG.mjs} +1 -1
  14. package/browser/esm/{zqJOaweiXE9D8RY1.mjs → C16ycKja6zG0crV_.mjs} +27687 -38788
  15. package/browser/esm/C2VbEI_XVAoseAwa.mjs +1552 -0
  16. package/browser/esm/{Btg43M1Bf-ENDreu.mjs → C4MqfLn9Dm-l3OIk.mjs} +1 -1
  17. package/browser/esm/C5E6zSGAALWf61n4.mjs +199 -0
  18. package/browser/esm/{CjsUGJEQSbGjnH6R.mjs → CHU6iu_WGlm7fLET.mjs} +1 -1
  19. package/browser/esm/{DhKkrCVASZ6Isvz6.mjs → CQYjO777cmAznUzK.mjs} +1 -1
  20. package/browser/esm/{D4uVlrG0xEFctsSM.mjs → CU3DmJ-YnVVrC1_k.mjs} +285 -67
  21. package/browser/esm/{ClB5ix51roQOpZEr.mjs → CV5EGEjG5_-CPpP0.mjs} +2877 -2067
  22. package/browser/esm/{CSx9ed1JOs7K5BXO.mjs → CaB7J-xgfKO2uAkG.mjs} +2 -2
  23. package/browser/esm/CkxWugaJFjDGZNZ-.mjs +12 -0
  24. package/browser/esm/{CZ5oa92wZEAXebgk.mjs → ClPfI4lODvCece29.mjs} +32 -22
  25. package/browser/esm/ClbvFbFzFzXLBKNN.mjs +193 -0
  26. package/browser/esm/{Cqr3knDsBvoVZ6MN.mjs → Ctjb0SsxV4K4MMqG.mjs} +2 -2
  27. package/browser/esm/{Bk7xxbdDpa7-sIwd.mjs → D5np__Jb1euAyaLw.mjs} +2 -2
  28. package/browser/esm/{Di58Ji1n--3Mgc_2.mjs → DEiPS3Dr-s4fPbVZ.mjs} +1 -1
  29. package/browser/esm/DLLE0FZNsKxbBzRn.mjs +128 -0
  30. package/browser/esm/{BqskM7wA8oPfFQue.mjs → DWNzqw7DUKwoxjri.mjs} +2 -2
  31. package/browser/esm/{BEAY9XgKNx-bakXW.mjs → Dlmig06rIo7cInRk.mjs} +1 -1
  32. package/browser/esm/DvAaxH6z_tGvrRzl.mjs +5132 -0
  33. package/browser/esm/Dyq_ivuHvlXLwPCl.mjs +12831 -0
  34. package/browser/esm/{Dtoyt8q5RyGAlxCp.mjs → PcHFjNzQsE54POri.mjs} +1 -1
  35. package/browser/esm/S2dNNx1a5ydRnARM.mjs +367 -0
  36. package/browser/esm/f1IoRb7tEb0QmCSt.mjs +110 -0
  37. package/browser/esm/gssVX_FH1XFN-twD.mjs +210 -0
  38. package/browser/esm/index.mjs +999 -850
  39. package/browser/esm/nvU0ClAbf0g94YBK.mjs +1695 -0
  40. package/browser/esm/{BcHmrKHwMMOlzc9_.mjs → zlLuW405RSguy4Kn.mjs} +34 -34
  41. package/licenses/dependencies.txt +75 -75
  42. package/node/esm/{CnSQ7MTXAUAyBOoS.mjs → 2Kihw_-5lVTEnwMa.mjs} +285 -64
  43. package/node/esm/857CIBgQgGpnqrXk.mjs +199 -0
  44. package/node/esm/B084DssTcdBheTp_.mjs +7966 -0
  45. package/node/esm/B21JjOLghRoDOrkx.mjs +134 -0
  46. package/node/esm/{CImNvdz1iP-lUlro.mjs → BIRq1kT7lLRzns9t.mjs} +181 -181
  47. package/node/esm/{CD9wbvufChVYYkrI.mjs → BIwObuhTJYf0jpUa.mjs} +2 -2
  48. package/node/esm/Bbf1Pm9Gk7YpLTvg.mjs +12 -0
  49. package/node/esm/{B6D7sSetrcOWLsKj.mjs → BqiexuA89caYnAPz.mjs} +1 -1
  50. package/node/esm/{BH1v-E4Ro3bR7Znw.mjs → BrCKGFRsX_ezFJ4B.mjs} +151 -302
  51. package/node/esm/CCN5vD410obwdz38.mjs +405 -0
  52. package/node/esm/{Bh4dv6tMjXX3X4nI.mjs → CDHdgJXH2vS71WMc.mjs} +1 -1
  53. package/node/esm/{DCplLG93GfTs1vNw.mjs → CGp6VZL-gZa9Uezx.mjs} +1 -1
  54. package/node/esm/{B9ljpEIZg6wOTzRE.mjs → CNCNJNg890KdgkWh.mjs} +1 -1
  55. package/node/esm/{Bqd62L8KFgdS0Vou.mjs → CZICGK_ss0HoGHCP.mjs} +2 -2
  56. package/node/esm/{D7MfcID2Wf6l6VpC.mjs → CZiqiay42tFTrLI4.mjs} +1 -1
  57. package/node/esm/{Bsx9uijd4X_SKV3L.mjs → CdJHUJSBRHZoryPe.mjs} +41 -41
  58. package/node/esm/Ct3h15sCus4Tgt6M.mjs +1762 -0
  59. package/node/esm/CwePQwTILHHjGDkZ.mjs +1033 -0
  60. package/node/esm/{CUUoseJmFsCf82bb.mjs → CzXT00vrQa1_gvW9.mjs} +1 -1
  61. package/node/esm/{C6ZXsNyLXI6zA63X.mjs → D1TKBVmoKGAXf37B.mjs} +9 -9
  62. package/node/esm/{BN9j8V9gCExMjVtJ.mjs → D2KBymQJd1XhpeQD.mjs} +1 -1
  63. package/node/esm/{MiU4rDOiocmJ-9Ry.mjs → D6e2z7eZpxOJXHc7.mjs} +1 -1
  64. package/node/esm/{BtuY37FumvLE7EBo.mjs → D8zEN-6ZdDqDvTxM.mjs} +156 -146
  65. package/node/esm/DNRhGK-8Tr9xcRyc.mjs +8320 -0
  66. package/node/esm/DOU54VsOjG-m-NyQ.mjs +210 -0
  67. package/node/esm/DUTskXCXref-IJnI.mjs +133 -0
  68. package/node/esm/{DMD12JUh7HJw2-jl.mjs → D_t5AUxSm7_icjzq.mjs} +1 -1
  69. package/node/esm/Db0v7zXNnyjBIjjI.mjs +372 -0
  70. package/node/esm/{CUQi5ZtMO02nhG0W.mjs → De2IONBxQhz-Qbyh.mjs} +1 -1
  71. package/node/esm/Df1bL6VFvrqIdSLB.mjs +40 -0
  72. package/node/esm/DkwIPzKc3UwdUIfM.mjs +86 -0
  73. package/node/esm/DrTZbfemSLq2mseG.mjs +111 -0
  74. package/node/esm/OVfaSb506tNSIvbv.mjs +57107 -0
  75. package/node/esm/{DefYISWfdZJFx57m.mjs → cGwrLA1RCE-WhJ7w.mjs} +1 -1
  76. package/node/esm/index.mjs +2657 -65664
  77. package/node/esm/mFiBSM7XgBHV9AY7.mjs +13010 -0
  78. package/node/esm/{DdFgXl-Ux2cMBTs_.mjs → yavzZOiZW_EjG9lE.mjs} +1 -1
  79. package/package.json +6 -7
  80. package/resources/contents.json +120 -0
  81. package/resources/fonts/arial-bold-italic.hinted.json +125 -0
  82. package/resources/fonts/arial-bold-italic.metrics.json +13 -13
  83. package/resources/fonts/arial-bold-italic.rows.json +9 -0
  84. package/resources/fonts/arial-bold.hinted.json +125 -0
  85. package/resources/fonts/arial-bold.metrics.json +12 -12
  86. package/resources/fonts/arial-bold.rows.json +9 -0
  87. package/resources/fonts/arial-italic.hinted.json +125 -0
  88. package/resources/fonts/arial-italic.metrics.json +13 -13
  89. package/resources/fonts/arial-italic.rows.json +9 -0
  90. package/resources/fonts/arial-regular.hinted.json +125 -0
  91. package/resources/fonts/arial-regular.metrics.json +12 -12
  92. package/resources/fonts/arial-regular.rows.json +9 -0
  93. package/resources/fonts/calibri-bold-italic.hinted.json +122 -0
  94. package/resources/fonts/calibri-bold-italic.metrics.json +2 -2
  95. package/resources/fonts/calibri-bold-italic.rows.json +9 -0
  96. package/resources/fonts/calibri-bold.hinted.json +122 -0
  97. package/resources/fonts/calibri-bold.metrics.json +1 -1
  98. package/resources/fonts/calibri-bold.rows.json +9 -0
  99. package/resources/fonts/calibri-italic.hinted.json +121 -0
  100. package/resources/fonts/calibri-italic.metrics.json +2 -2
  101. package/resources/fonts/calibri-italic.rows.json +9 -0
  102. package/resources/fonts/calibri-regular.hinted.json +121 -0
  103. package/resources/fonts/calibri-regular.metrics.json +1 -1
  104. package/resources/fonts/calibri-regular.rows.json +9 -0
  105. package/resources/fonts/cambria-bold-italic.hinted.json +105 -0
  106. package/resources/fonts/cambria-bold-italic.metrics.json +26 -26
  107. package/resources/fonts/cambria-bold-italic.rows.json +9 -0
  108. package/resources/fonts/cambria-bold.hinted.json +108 -0
  109. package/resources/fonts/cambria-bold.metrics.json +19 -19
  110. package/resources/fonts/cambria-bold.rows.json +9 -0
  111. package/resources/fonts/cambria-italic.hinted.json +102 -0
  112. package/resources/fonts/cambria-italic.metrics.json +23 -23
  113. package/resources/fonts/cambria-italic.rows.json +9 -0
  114. package/resources/fonts/cambria-regular.hinted.json +110 -0
  115. package/resources/fonts/cambria-regular.metrics.json +18 -18
  116. package/resources/fonts/cambria-regular.rows.json +9 -0
  117. package/resources/fonts/contents.json +280 -0
  118. package/resources/fonts/courier-new-bold-italic.hinted.json +11 -0
  119. package/resources/fonts/courier-new-bold-italic.metrics.json +12 -12
  120. package/resources/fonts/courier-new-bold-italic.rows.json +9 -0
  121. package/resources/fonts/courier-new-bold.hinted.json +11 -0
  122. package/resources/fonts/courier-new-bold.metrics.json +12 -12
  123. package/resources/fonts/courier-new-bold.rows.json +9 -0
  124. package/resources/fonts/courier-new-italic.hinted.json +11 -0
  125. package/resources/fonts/courier-new-italic.metrics.json +12 -12
  126. package/resources/fonts/courier-new-italic.rows.json +9 -0
  127. package/resources/fonts/courier-new-regular.hinted.json +11 -0
  128. package/resources/fonts/courier-new-regular.metrics.json +12 -12
  129. package/resources/fonts/courier-new-regular.rows.json +9 -0
  130. package/resources/fonts/times-new-roman-bold-italic.hinted.json +125 -0
  131. package/resources/fonts/times-new-roman-bold-italic.metrics.json +15 -15
  132. package/resources/fonts/times-new-roman-bold-italic.rows.json +9 -0
  133. package/resources/fonts/times-new-roman-bold.hinted.json +125 -0
  134. package/resources/fonts/times-new-roman-bold.metrics.json +12 -12
  135. package/resources/fonts/times-new-roman-bold.rows.json +9 -0
  136. package/resources/fonts/times-new-roman-italic.hinted.json +125 -0
  137. package/resources/fonts/times-new-roman-italic.metrics.json +16 -16
  138. package/resources/fonts/times-new-roman-italic.rows.json +9 -0
  139. package/resources/fonts/times-new-roman-regular.hinted.json +125 -0
  140. package/resources/fonts/times-new-roman-regular.metrics.json +16 -16
  141. package/resources/fonts/times-new-roman-regular.rows.json +9 -0
  142. package/resources/locales/de/model.msg.json +87 -9
  143. package/resources/locales/en/model.msg.json +88 -10
  144. package/types/scripting-api.json +10636 -8021
  145. package/types/scripting-enums.json +181 -43
  146. package/types/scripting.d.ts +15886 -8459
  147. package/types/src/.generated/wasm/fonts.d.ts +161 -0
  148. package/types/src/.generated/wasm/fonts_bg.inline.d.ts +3 -0
  149. package/types/src/.generated/wasm/sdk.d.ts +122 -0
  150. package/types/src/.generated/wasm/sdk_bg.inline.d.ts +3 -0
  151. package/types/src/address/AddressUtils.d.ts +10 -1
  152. package/types/src/address/_StructuredAddress.d.ts +58 -0
  153. package/types/src/border/IBorders.d.ts +16 -0
  154. package/types/src/calculation/Calculation.d.ts +93 -363
  155. package/types/src/calculation/FormulaLiterals.d.ts +2 -1
  156. package/types/src/calculation/FormulaText.d.ts +18 -2
  157. package/types/src/calculation/ICalculation.d.ts +37 -9
  158. package/types/src/calculation/INamedFormulasCollection.d.ts +4 -0
  159. package/types/src/calculation/NamedFormulaCollection.d.ts +190 -15
  160. package/types/src/calculation/_FormulaToolkit.d.ts +9 -0
  161. package/types/src/calculation/_TableExtent.d.ts +60 -0
  162. package/types/src/calculation/compiler/CompilerUtils.d.ts +17 -0
  163. package/types/src/calculation/compiler/ParserUtils.d.ts +16 -0
  164. package/types/src/calculation/compiler/Types.d.ts +1 -1
  165. package/types/src/calculation/engine/CalcBackend.d.ts +855 -0
  166. package/types/src/calculation/engine/index.d.ts +10 -0
  167. package/types/src/calculation/executor/CalcExecutor.d.ts +21 -2
  168. package/types/src/calculation/executor/CalcExecutorUtils.d.ts +6 -0
  169. package/types/src/calculation/formula/Formula.d.ts +9 -0
  170. package/types/src/calculation/formula/FormulaBlock.d.ts +6 -0
  171. package/types/src/calculation/formula/IFormulaBlock.d.ts +16 -0
  172. package/types/src/calculation/formula/LambdaValue.d.ts +5 -3
  173. package/types/src/calculation/functions/FunctionDeclarations.d.ts +5 -1
  174. package/types/src/calculation/functions/expandDeclaration.d.ts +15 -0
  175. package/types/src/calculation/functions/initializeFunctions.d.ts +0 -12
  176. package/types/src/calculation/grid/CalcGrid.d.ts +40 -4
  177. package/types/src/calculation/grid/CalcGridBackend.d.ts +30 -0
  178. package/types/src/calculation/grid/CalcGridProxy.d.ts +2 -0
  179. package/types/src/calculation/grid/CalcGridUtils.d.ts +8 -1
  180. package/types/src/calculation/grid/FormulaHost.d.ts +51 -6
  181. package/types/src/calculation/grid/ICalcGrid.d.ts +35 -6
  182. package/types/src/calculation/grid/_CalcRequest.d.ts +11 -1
  183. package/types/src/calculation/grid/_CellValueRun.d.ts +21 -0
  184. package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +27 -2
  185. package/types/src/calculation/state/CalcScope.d.ts +15 -6
  186. package/types/src/calculation/state/CalcState.d.ts +10 -0
  187. package/types/src/calculation/state/CalculationContext.d.ts +2 -2
  188. package/types/src/calculation/state/IContextContainer.d.ts +12 -0
  189. package/types/src/calculation/toolkit/FormulaLiteralReader.d.ts +4 -0
  190. package/types/src/calculation/toolkit/FormulaTextParser.d.ts +10 -0
  191. package/types/src/calculation/toolkit/FunctionDeclarationTable.d.ts +4 -0
  192. package/types/src/calculation/toolkit/index.d.ts +12 -0
  193. package/types/src/cell/ICell.d.ts +256 -7
  194. package/types/src/cell/ICellHeader.d.ts +7 -6
  195. package/types/src/cell/ICellProtection.d.ts +1 -1
  196. package/types/src/cellRange/ICellHeaderRange.d.ts +6 -9
  197. package/types/src/cellRange/ICellHeaderRanges.d.ts +5 -0
  198. package/types/src/cellRange/ICellRange.d.ts +322 -55
  199. package/types/src/cellRange/ICellRanges.d.ts +8 -3
  200. package/types/src/chart/Chart.d.ts +217 -15
  201. package/types/src/chart/ChartCollection.d.ts +7 -2
  202. package/types/src/chart/IChart.d.ts +1921 -35
  203. package/types/src/chart/IChartCollection.d.ts +27 -2
  204. package/types/src/chart/_ChartParts.d.ts +1066 -0
  205. package/types/src/chart/_ChartSource.d.ts +47 -0
  206. package/types/src/chart/createChart.d.ts +26 -0
  207. package/types/src/chart/index.d.ts +4 -0
  208. package/types/src/chart/kinds/ChartKind.d.ts +252 -0
  209. package/types/src/chart/kinds/_Area.d.ts +3 -0
  210. package/types/src/chart/kinds/_Bar.d.ts +4 -0
  211. package/types/src/chart/kinds/_BoxWhisker.d.ts +4 -0
  212. package/types/src/chart/kinds/_Bubble.d.ts +3 -0
  213. package/types/src/chart/kinds/_Funnel.d.ts +4 -0
  214. package/types/src/chart/kinds/_Hierarchy.d.ts +31 -0
  215. package/types/src/chart/kinds/_Histogram.d.ts +4 -0
  216. package/types/src/chart/kinds/_HitKinds.d.ts +23 -0
  217. package/types/src/chart/kinds/_Line.d.ts +4 -0
  218. package/types/src/chart/kinds/_OfPie.d.ts +4 -0
  219. package/types/src/chart/kinds/_Pie.d.ts +4 -0
  220. package/types/src/chart/kinds/_Placeholder.d.ts +6 -0
  221. package/types/src/chart/kinds/_Radar.d.ts +4 -0
  222. package/types/src/chart/kinds/_Scatter.d.ts +8 -0
  223. package/types/src/chart/kinds/_Sunburst.d.ts +4 -0
  224. package/types/src/chart/kinds/_Surface.d.ts +4 -0
  225. package/types/src/chart/kinds/_Treemap.d.ts +4 -0
  226. package/types/src/chart/kinds/_Waterfall.d.ts +18 -0
  227. package/types/src/chart/kinds/_builtIns.d.ts +11 -0
  228. package/types/src/chart/layout/ChartLayout.d.ts +825 -0
  229. package/types/src/chart/layout/TextMeasurer.d.ts +38 -0
  230. package/types/src/chart/layout/_HitGeometry.d.ts +50 -0
  231. package/types/src/chart/layout/_HitTest.d.ts +36 -0
  232. package/types/src/chart/layout/_Layout.d.ts +25 -0
  233. package/types/src/chart/layout/_LayoutUtils.d.ts +97 -0
  234. package/types/src/chart/math/BoxStats.d.ts +35 -0
  235. package/types/src/chart/math/DateUnitCalcs.d.ts +80 -0
  236. package/types/src/chart/math/DisplayUnits.d.ts +53 -0
  237. package/types/src/chart/math/Histogram.d.ts +48 -0
  238. package/types/src/chart/math/OrdUnitCalcs.d.ts +166 -0
  239. package/types/src/chart/math/Treemap.d.ts +28 -0
  240. package/types/src/chart/math/Trendlines.d.ts +71 -0
  241. package/types/src/chart/math/UnitCalcs.d.ts +98 -0
  242. package/types/src/chart/model/ChartModel.d.ts +681 -0
  243. package/types/src/chart/model/_ChartType.d.ts +14 -0
  244. package/types/src/chart/model/_Edits.d.ts +489 -0
  245. package/types/src/chart/model/_Grouping.d.ts +83 -0
  246. package/types/src/chart/model/_Inference.d.ts +52 -0
  247. package/types/src/chart/model/_ModelFacts.d.ts +112 -0
  248. package/types/src/chart/model/_NewChart.d.ts +208 -0
  249. package/types/src/chart/model/_OfPie.d.ts +18 -0
  250. package/types/src/chart/resolve/_LegacyStyles.d.ts +48 -0
  251. package/types/src/chart/resolve/_Resolve.d.ts +51 -0
  252. package/types/src/chart/resolve/_ResolvedChart.d.ts +444 -0
  253. package/types/src/collections/RTree.d.ts +116 -36
  254. package/types/src/collections/SparseGrid.d.ts +6 -3
  255. package/types/src/collections/SpatialMap.d.ts +2 -8
  256. package/types/src/collections/SpatialMap3D.d.ts +2 -0
  257. package/types/src/collections/index.d.ts +1 -1
  258. package/types/src/comment/Comment.d.ts +32 -9
  259. package/types/src/comment/IComment.d.ts +41 -4
  260. package/types/src/comment/_NoteBox.d.ts +19 -2
  261. package/types/src/condition/AnchoredConditional.d.ts +28 -2
  262. package/types/src/condition/ICondition.d.ts +3 -2
  263. package/types/src/conditionalFormat/ConditionalFormat.d.ts +9 -3
  264. package/types/src/conditionalFormat/IConditionalFormat.d.ts +4 -3
  265. package/types/src/dataTable/DataTable.d.ts +67 -0
  266. package/types/src/dataTable/DataTableCollection.d.ts +19 -0
  267. package/types/src/dataTable/IDataTable.d.ts +99 -0
  268. package/types/src/dataTable/IDataTableCollection.d.ts +18 -0
  269. package/types/src/dataTable/index.d.ts +6 -0
  270. package/types/src/dataValidation/DataValidation.d.ts +1 -1
  271. package/types/src/dataValidation/DataValidationCollection.d.ts +4 -1
  272. package/types/src/dataValidation/IDataValidation.d.ts +1 -1
  273. package/types/src/dataValidation/IDataValidationCollection.d.ts +24 -0
  274. package/types/src/documentProperties/DocumentProperties.d.ts +66 -0
  275. package/types/src/documentProperties/ICustomProperty.d.ts +69 -0
  276. package/types/src/documentProperties/IDocumentProperties.d.ts +110 -0
  277. package/types/src/documentProperties/index.d.ts +3 -0
  278. package/types/src/externalBook/IExternalBook.d.ts +1 -1
  279. package/types/src/fill/IFill.d.ts +7 -0
  280. package/types/src/fill/IFillable.d.ts +47 -0
  281. package/types/src/fill/IStroke.d.ts +15 -1
  282. package/types/src/fill/PaintUtils.d.ts +22 -0
  283. package/types/src/fill/index.d.ts +2 -0
  284. package/types/src/font/AdvanceBuilder.d.ts +34 -0
  285. package/types/src/font/AdvanceTable.d.ts +128 -14
  286. package/types/src/font/CanvasAdvanceBuilder.d.ts +54 -0
  287. package/types/src/font/FontCapture.d.ts +4 -0
  288. package/types/src/font/FontCollection.d.ts +53 -2
  289. package/types/src/font/FontPlatform.d.ts +20 -0
  290. package/types/src/font/FontUtils.d.ts +5 -0
  291. package/types/src/font/IFont.d.ts +191 -61
  292. package/types/src/font/IFontCollection.d.ts +20 -14
  293. package/types/src/font/IFontStyle.d.ts +207 -0
  294. package/types/src/font/TableFileAdvanceBuilder.d.ts +9 -0
  295. package/types/src/font/_FontUtils.d.ts +11 -4
  296. package/types/src/font/_FontsVersion.d.ts +7 -0
  297. package/types/src/font/index.d.ts +1 -3
  298. package/types/src/font/platform.browser.d.ts +15 -0
  299. package/types/src/font/platform.node.d.ts +5 -0
  300. package/types/src/group/Group.d.ts +5 -0
  301. package/types/src/group/GroupMovableCollection.d.ts +4 -0
  302. package/types/src/history/IHistory.d.ts +19 -2
  303. package/types/src/hyperlink/IHyperlink.d.ts +7 -1
  304. package/types/src/index.d.ts +3 -0
  305. package/types/src/license/LicenseManager.d.ts +21 -0
  306. package/types/src/license/_Utils.d.ts +18 -1
  307. package/types/src/license/runtime.browser.d.ts +5 -0
  308. package/types/src/license/runtime.node.d.ts +10 -0
  309. package/types/src/listener/IListener.d.ts +14 -2
  310. package/types/src/listener/ListenerEmitter.d.ts +11 -3
  311. package/types/src/movable/IMovable.d.ts +28 -15
  312. package/types/src/movable/IMovableCollection.d.ts +1 -1
  313. package/types/src/movable/Movable.d.ts +12 -1
  314. package/types/src/movable/MovableCollection.d.ts +7 -3
  315. package/types/src/movable/_InsertableCollection.d.ts +16 -5
  316. package/types/src/named/INamed.d.ts +30 -0
  317. package/types/src/named/INamedCollection.d.ts +2 -2
  318. package/types/src/named/NamedCollection.d.ts +16 -4
  319. package/types/src/numFmt/NumberFormatParser.d.ts +5 -0
  320. package/types/src/outline/IOutline.d.ts +1 -1
  321. package/types/src/outline/Outline.d.ts +2 -2
  322. package/types/src/picture/IPicture.d.ts +98 -1
  323. package/types/src/picture/Picture.d.ts +15 -7
  324. package/types/src/pivot/IPivotTable.d.ts +2 -2
  325. package/types/src/pivot/PivotTable.d.ts +5 -5
  326. package/types/src/primitives/ReferenceRange.d.ts +2 -2
  327. package/types/src/print/IPageLayout.d.ts +635 -0
  328. package/types/src/print/PageLayout.d.ts +258 -0
  329. package/types/src/print/index.d.ts +1 -1
  330. package/types/src/protectedRange/IProtectedRange.d.ts +2 -2
  331. package/types/src/protection/IProtection.d.ts +6 -0
  332. package/types/src/protection/PasswordHasher.d.ts +13 -0
  333. package/types/src/richData/IRichDataKind.d.ts +22 -0
  334. package/types/src/richData/RichDataRegistry.d.ts +57 -0
  335. package/types/src/richData/RichText.d.ts +59 -0
  336. package/types/src/richData/index.d.ts +3 -0
  337. package/types/src/scripting/IModule.d.ts +3 -3
  338. package/types/src/scripting/IScript.d.ts +2 -2
  339. package/types/src/scripting/ITypedFunction.d.ts +1 -1
  340. package/types/src/scripting/declarations.d.ts +3 -0
  341. package/types/src/selection/ChartElementSelection.d.ts +39 -0
  342. package/types/src/selection/IChartElementSelection.d.ts +103 -0
  343. package/types/src/selection/IItemSelection.d.ts +131 -0
  344. package/types/src/selection/IMovableSelection.d.ts +6 -34
  345. package/types/src/selection/IRangeSelection.d.ts +4 -4
  346. package/types/src/selection/ItemSelection.d.ts +49 -0
  347. package/types/src/selection/MovableSelection.d.ts +11 -30
  348. package/types/src/selection/RangeSelection.d.ts +4 -4
  349. package/types/src/selection/index.d.ts +3 -0
  350. package/types/src/shape/IShape.d.ts +2 -1
  351. package/types/src/shape/IShapeStyle.d.ts +5 -31
  352. package/types/src/shape/ITextBoxStyle.d.ts +85 -0
  353. package/types/src/shape/ShapeStyleUtils.d.ts +13 -1
  354. package/types/src/shape/_Connectors.d.ts +9 -9
  355. package/types/src/shape/_ShapeStyle.d.ts +9 -0
  356. package/types/src/shape/index.d.ts +1 -0
  357. package/types/src/sheet/CellRegion.d.ts +37 -3
  358. package/types/src/sheet/IOpaqueSheet.d.ts +46 -0
  359. package/types/src/sheet/ISheet.d.ts +81 -1078
  360. package/types/src/sheet/IWorksheet.d.ts +1514 -0
  361. package/types/src/sheet/{ISheetCollection.d.ts → IWorksheetCollection.d.ts} +37 -12
  362. package/types/src/sheet/NamedCellRange.d.ts +2 -2
  363. package/types/src/sheet/NamedRange.d.ts +2 -2
  364. package/types/src/sheet/OpaqueSheet.d.ts +114 -0
  365. package/types/src/sheet/SheetCell.d.ts +24 -27
  366. package/types/src/sheet/SheetRange.d.ts +42 -11
  367. package/types/src/sheet/SheetRanges.d.ts +12 -10
  368. package/types/src/sheet/{Sheet.d.ts → Worksheet.d.ts} +510 -144
  369. package/types/src/sheet/WorksheetCollection.d.ts +39 -0
  370. package/types/src/sheet/_Anomalies.d.ts +109 -0
  371. package/types/src/sheet/_AnomalyFormulaChecks.d.ts +125 -0
  372. package/types/src/sheet/_AnomalyLabelChecks.d.ts +21 -0
  373. package/types/src/sheet/_CellBuffer.d.ts +11 -1
  374. package/types/src/sheet/_CopyUtils.d.ts +13 -6
  375. package/types/src/sheet/_IgnoredErrors.d.ts +46 -0
  376. package/types/src/sheet/_InvalidSheetRange.d.ts +3 -2
  377. package/types/src/sheet/_Kinds.d.ts +34 -0
  378. package/types/src/sheet/_Labels.d.ts +38 -0
  379. package/types/src/sheet/_RangeStateSweep.d.ts +2 -3
  380. package/types/src/sheet/_ScalarListFactory.d.ts +1 -1
  381. package/types/src/sheet/_SheetAutoFillUtils.d.ts +3 -3
  382. package/types/src/sheet/_SheetAutoFitUtils.d.ts +3 -3
  383. package/types/src/sheet/_SheetChangeEvent.d.ts +72 -0
  384. package/types/src/sheet/_SheetCoords.d.ts +3 -3
  385. package/types/src/sheet/_SheetEvents.d.ts +1 -1
  386. package/types/src/sheet/_SheetFilterUtils.d.ts +6 -6
  387. package/types/src/sheet/_SheetIntents.d.ts +32 -14
  388. package/types/src/sheet/_SheetMessages.d.ts +1 -1
  389. package/types/src/sheet/_SheetMutations.d.ts +7 -8
  390. package/types/src/sheet/_SheetSortUtils.d.ts +2 -2
  391. package/types/src/sheet/_SheetStateReader.d.ts +18 -0
  392. package/types/src/sheet/_SheetStateTypes.d.ts +60 -1
  393. package/types/src/sheet/_SheetUtils.d.ts +20 -19
  394. package/types/src/sheet/_WatchAnchor.d.ts +15 -2
  395. package/types/src/sheet/clipboard/RangeClipboardItems.d.ts +4 -4
  396. package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts +3 -3
  397. package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts +3 -3
  398. package/types/src/sheet/index.d.ts +5 -2
  399. package/types/src/sheet/style/SheetCellStyle.d.ts +67 -86
  400. package/types/src/sheet/style/SheetDirectStyle.d.ts +3 -3
  401. package/types/src/sheet/style/SheetNamedStyle.d.ts +2 -0
  402. package/types/src/sheet/style/_DigitWidth.d.ts +7 -0
  403. package/types/src/sheet/style/_Resolvers.d.ts +3 -2
  404. package/types/src/sheet/style/_StyleUtils.d.ts +7 -43
  405. package/types/src/sheetHeader/ISheetHeader.d.ts +2 -2
  406. package/types/src/sheetHeader/SheetCellHeader.d.ts +2 -0
  407. package/types/src/sheetHeader/SheetCellHeaderRange.d.ts +2 -0
  408. package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts +2 -0
  409. package/types/src/sheetHeader/SheetHeader.d.ts +7 -6
  410. package/types/src/sheetHeader/_HeaderUtils.d.ts +2 -3
  411. package/types/src/sheetProtection/{ISheetProtection.d.ts → IWorksheetProtection.d.ts} +28 -28
  412. package/types/src/sheetProtection/WorksheetProtection.d.ts +51 -0
  413. package/types/src/sheetProtection/index.d.ts +1 -1
  414. package/types/src/sheetView/{ISheetView.d.ts → IWorksheetView.d.ts} +168 -61
  415. package/types/src/sheetView/WorksheetView.d.ts +139 -0
  416. package/types/src/sheetView/_SheetViewUtils.d.ts +5 -3
  417. package/types/src/sheetView/index.d.ts +1 -1
  418. package/types/src/slicer/ISlicer.d.ts +2 -2
  419. package/types/src/sort/ISort.d.ts +35 -5
  420. package/types/src/style/ICellStyle.d.ts +56 -44
  421. package/types/src/style/_BuiltInStyleDefs.d.ts +4 -3
  422. package/types/src/table/AnchoredTable.d.ts +23 -7
  423. package/types/src/table/AutoTable.d.ts +1 -1
  424. package/types/src/table/ITable.d.ts +32 -19
  425. package/types/src/table/_NamedTable.d.ts +3 -3
  426. package/types/src/table/_NamedTableSource.d.ts +2 -2
  427. package/types/src/text/IText.d.ts +4 -51
  428. package/types/src/text/TextEngine.d.ts +34 -0
  429. package/types/src/text/TextFrame.d.ts +4 -2
  430. package/types/src/text/TextRun.d.ts +3 -2
  431. package/types/src/text/TextWrapper.d.ts +32 -26
  432. package/types/src/text/_TextUtils.d.ts +5 -5
  433. package/types/src/text/_TextWrapperFallback.d.ts +49 -0
  434. package/types/src/text/impl/TabStrategy.d.ts +3 -1
  435. package/types/src/text/richtext/IRichText.d.ts +16 -2
  436. package/types/src/text/richtext/index.d.ts +0 -1
  437. package/types/src/theme/ITheme.d.ts +108 -7
  438. package/types/src/theme/ThemeCollection.d.ts +5 -0
  439. package/types/src/theme/_OfficeFontScheme.d.ts +8 -0
  440. package/types/src/transaction/ITransaction.d.ts +20 -1
  441. package/types/src/transaction/Transaction.d.ts +8 -1
  442. package/types/src/transaction/_BatchHandle.d.ts +118 -0
  443. package/types/src/type/AbstractCollection.d.ts +4 -13
  444. package/types/src/type/ICollection.d.ts +17 -4
  445. package/types/src/type/IProperties.d.ts +1 -1
  446. package/types/src/utils/_CSSUtils.d.ts +1 -1
  447. package/types/src/wasm/_fontsWasm.d.ts +7 -0
  448. package/types/src/wasm/_sdkWasm.d.ts +1 -1
  449. package/types/src/wasm/fontsWasm.d.ts +32 -0
  450. package/types/src/wasm/index.d.ts +1 -0
  451. package/types/src/wasm/loader.browser.d.ts +9 -0
  452. package/types/src/wasm/loader.node.d.ts +9 -0
  453. package/types/src/wasm/sdkWasm.d.ts +6 -3
  454. package/types/src/workbook/IWorkbook.d.ts +229 -38
  455. package/types/src/workbook/Workbook.d.ts +77 -22
  456. package/types/src/workbook/WorkbookRange.d.ts +2 -2
  457. package/types/src/workbook/WorkbookRanges.d.ts +2 -2
  458. package/types/src/workbook/_WorkbookIntents.d.ts +2 -2
  459. package/types/src/workbook/_WorkbookMessages.d.ts +5 -0
  460. package/types/src/workbookView/IWorkbookView.d.ts +82 -0
  461. package/types/src/workbookView/WorkbookView.d.ts +21 -0
  462. package/browser/esm/BbSmt62FpFIpoVzu.mjs +0 -392
  463. package/browser/esm/BgcZ-CoTbMfmyDJL.mjs +0 -412
  464. package/browser/esm/DOMHmhYzPcLVcpAW.mjs +0 -7
  465. package/browser/esm/DUvUK61b2_4pf4tG.mjs +0 -484
  466. package/node/esm/CCouEwT37f08qO3V.mjs +0 -7
  467. package/node/esm/CT0CN82y0_Qgoryk.mjs +0 -7568
  468. package/node/esm/DHUADiCmxNQS1ARz.mjs +0 -417
  469. package/node/esm/Ds0d8zXzmgOu3MGx.mjs +0 -403
  470. package/types/src/chart/_ChartXml.d.ts +0 -70
  471. package/types/src/collections/OverlappingRangeIterator.d.ts +0 -87
  472. package/types/src/collections/_RangeSweep.d.ts +0 -97
  473. package/types/src/font/CanvasFontMeasurer.d.ts +0 -25
  474. package/types/src/font/FontKitFontMeasurer.d.ts +0 -11
  475. package/types/src/font/SimpleFontMeasurer.d.ts +0 -4
  476. package/types/src/print/IPrint.d.ts +0 -212
  477. package/types/src/sheet/SheetCollection.d.ts +0 -29
  478. package/types/src/sheetProtection/SheetProtection.d.ts +0 -51
  479. package/types/src/sheetView/SheetView.d.ts +0 -122
  480. package/types/src/text/richtext/IStyledFont.d.ts +0 -330
@@ -0,0 +1,825 @@
1
+ import { Bounds, Point } from '@sheetxl/utils';
2
+ import { IFill } from '../../fill/IFill';
3
+ import { IStroke } from '../../fill/IStroke';
4
+ import { IText } from '../../text/IText';
5
+ /**
6
+ * A chart laid out: every rect, scale, tick, label string and bar width, in px from the chart's
7
+ * top-left, with every color concrete. A painter translates it and decides nothing.
8
+ *
9
+ * @remarks
10
+ * Plain data, never stored on the model: it is computed from the chart, its theme and a size.
11
+ *
12
+ * What it is drawn with is said in the shapes' own vocabulary, with these promises:
13
+ * - A fill is an {@link IFill.JSON} (solid, gradient, pattern or image) and `null` for none; a line
14
+ * an {@link IStroke.JSON} with its `fill` and `width` stated, and `null` for none; text the
15
+ * {@link IText.RunPropertiesJSON} of its run, with its `font.family`, `size` and `color` stated.
16
+ * - Every color is concrete: `#RRGGBB`, or `rgba(r,g,b,a)` when it is not opaque. Never a theme
17
+ * reference (`accent1`), a CSS variable or `light-dark()`.
18
+ * - Every length is in px: a line's `width` and a run's `size` too, which the model states in points.
19
+ * - A line's `dash` is as {@link IStroke.JSON} states it, a preset or lengths;
20
+ * `IStroke.toDashLengths` reads either in line widths.
21
+ */
22
+ export interface ChartLayout {
23
+ /** The chart in px, unzoomed. */
24
+ width: number;
25
+ height: number;
26
+ chartArea: {
27
+ fill: IFill.JSON | null;
28
+ border: IStroke.JSON | null;
29
+ /** The radius of the chart area's corners, measured along the border's path; 0 for square corners. */
30
+ cornerRadius: number;
31
+ };
32
+ title: ChartLayout.TextLayout | null;
33
+ plotArea: {
34
+ /** Where the axes cross and the series are drawn. */
35
+ inner: Bounds;
36
+ /** The plot area with its axes' labels: what Excel calls the plot area's outer box. */
37
+ outer: Bounds;
38
+ fill: IFill.JSON | null;
39
+ border: IStroke.JSON | null;
40
+ };
41
+ /** One per axis of the chart, deleted ones included. */
42
+ axes: ChartLayout.AxisLayout[];
43
+ /** One per chart group, in the chart's order. */
44
+ groups: ChartLayout.GroupLayout[];
45
+ legend: ChartLayout.LegendLayout | null;
46
+ }
47
+ export declare namespace ChartLayout {
48
+ interface Insets {
49
+ left: number;
50
+ top: number;
51
+ right: number;
52
+ bottom: number;
53
+ }
54
+ interface TextLayout {
55
+ text: string;
56
+ /** The element's box. */
57
+ rect: Bounds;
58
+ /** Space inside the box around the text, in the text's own direction. */
59
+ insets: Insets;
60
+ font: IText.RunPropertiesJSON;
61
+ /**
62
+ * The text's angle in degrees counterclockwise, about the box's center: 90 reads up, as an axis
63
+ * title up a side does. Absent for level text.
64
+ */
65
+ rotation?: number;
66
+ }
67
+ /** The label of one point: its text in a box that fits it. */
68
+ interface DataLabelLayout extends TextLayout {
69
+ fill: IFill.JSON | null;
70
+ border: IStroke.JSON | null;
71
+ }
72
+ interface TickLayout {
73
+ /** The tick's value on the axis scale. */
74
+ value: number;
75
+ /** The label, formatted; `''` for a tick without one. */
76
+ label: string;
77
+ }
78
+ type AxisPosition = 'bottom' | 'left' | 'right' | 'top';
79
+ interface AxisLayoutBase {
80
+ /** The axis's id in the chart (`axId`). */
81
+ id: number;
82
+ /** The id of the axis this one crosses. */
83
+ crossAxisId: number;
84
+ position: AxisPosition;
85
+ /** The axis is laid out, so its series have a scale, but nothing of it is drawn. */
86
+ deleted: boolean;
87
+ /**
88
+ * The axis runs from its maximum to its minimum (`orientation maxMin`): a vertical axis down,
89
+ * a horizontal one right to left. A reversed category axis puts the first category at the top
90
+ * or the right, and mirrors each cluster.
91
+ */
92
+ reversed: boolean;
93
+ line: IStroke.JSON | null;
94
+ majorGridlines: IStroke.JSON | null;
95
+ /**
96
+ * The major gridlines, in px: a line across the plot at each tick of a value axis, and between
97
+ * categories (or on them, `midCat`) of a category axis. Absent when the axis shows none.
98
+ */
99
+ gridlines?: Segment[];
100
+ tickMark: 'none' | 'out' | 'in' | 'cross';
101
+ /** In px. */
102
+ tickLength: number;
103
+ /** `null` when the axis shows no labels. */
104
+ labelFont: IText.RunPropertiesJSON | null;
105
+ /** Between the axis line and the near edge of its labels, in px. */
106
+ labelMargin: number;
107
+ /**
108
+ * Where the axis line is, in px: the y of a horizontal axis, the x of a vertical one. On the
109
+ * plot area's edge named by `position`, unless the axis crosses the other inside the plot (a
110
+ * scatter's x axis at y = 0 when the y values straddle zero). Labels and tick marks go with it.
111
+ */
112
+ lineAt: number;
113
+ /**
114
+ * Where the labels and tick marks are, in px as `lineAt`, where they do not go with the line: at
115
+ * the plot's low or high edge (`tickLblPos` low or high, a 2016 chart's categories) while the line
116
+ * crosses the other axis inside the plot. Absent where they go with the line.
117
+ */
118
+ labelsAt?: number;
119
+ title: TextLayout | null;
120
+ /** The display unit label (`dispUnitsLbl`) of an axis whose values are shown in a unit, beside its title. */
121
+ unitLabel?: TextLayout;
122
+ /**
123
+ * The labels are stacked letter over letter (`vert="wordArtVert"`): each label's letters are
124
+ * joined by `\n`, `labelLineHeight` apart. Along the bottom or top a label too tall for half
125
+ * the plot's outer height breaks into columns, joined by `\t`, side by side.
126
+ */
127
+ labelVertical?: boolean;
128
+ }
129
+ /**
130
+ * A category axis, or a date axis: one category per day, month or year from its first date to
131
+ * its last, each point in its date's, and labels on the major ticks only.
132
+ */
133
+ interface CategoryAxisLayout extends AxisLayoutBase {
134
+ kind: 'category';
135
+ /** One label per category, formatted. */
136
+ categories: string[];
137
+ /**
138
+ * One per category, its label as drawn: its lines joined by `\n`, ending in `…` when cut short;
139
+ * `null` for a category whose label is not shown.
140
+ */
141
+ labels: (string | null)[];
142
+ /**
143
+ * The angle the labels are drawn at, in degrees counterclockwise. A label turned up ends with its
144
+ * top right corner on its category's center; turned down, it starts there with its top left
145
+ * corner. A level label is centered on its category.
146
+ */
147
+ labelRotation: number;
148
+ /** The distance between a label's lines, in px. */
149
+ labelLineHeight: number;
150
+ /** Whether the crossing axis crosses between categories (bands) or on them. */
151
+ crossBetween: 'between' | 'midCat';
152
+ /**
153
+ * Multi-level categories: the levels beyond `labels`, the nearest the axis first. Absent when
154
+ * the axis draws one level.
155
+ */
156
+ levels?: CategoryLevelLayout[];
157
+ /**
158
+ * Multi-level categories: the lines that part groups of categories, drawn in the axis line's
159
+ * stroke in place of tick marks, at the plot's ends and between groups, from the axis line out
160
+ * through the levels they part.
161
+ */
162
+ dividers?: Segment[];
163
+ }
164
+ /** One level of multi-level categories beyond the innermost: a label per group of categories. */
165
+ interface CategoryLevelLayout {
166
+ labels: CategoryGroupLabelLayout[];
167
+ }
168
+ /**
169
+ * The label of a group of categories, centered on the group: level along the bottom or top,
170
+ * turned to read up beside a vertical axis. Its lines are joined by `\n`.
171
+ */
172
+ interface CategoryGroupLabelLayout extends TextLayout {
173
+ /** The group's first and last categories. */
174
+ first: number;
175
+ last: number;
176
+ /** The distance between the label's lines, in px. */
177
+ lineHeight: number;
178
+ }
179
+ /** A straight line, in px. */
180
+ interface Segment {
181
+ from: Point;
182
+ to: Point;
183
+ }
184
+ interface ValueAxisLayout extends AxisLayoutBase {
185
+ kind: 'value';
186
+ min: number;
187
+ max: number;
188
+ /** Ticks fall at `min + k·majorUnit`, whatever `min` is; on a log axis at `min · majorUnit^k`. */
189
+ majorUnit: number;
190
+ /** A logarithmic axis's base: values are placed by their logarithm. */
191
+ logBase?: number;
192
+ ticks: TickLayout[];
193
+ /** Stacked labels (`labelVertical`): the distance between a label's letters, in px. */
194
+ labelLineHeight?: number;
195
+ }
196
+ type AxisLayout = CategoryAxisLayout | ValueAxisLayout;
197
+ interface MarkerLayout {
198
+ symbol: 'circle' | 'square' | 'diamond' | 'triangle' | 'x' | 'star' | 'plus' | 'dot' | 'dash';
199
+ /** In px. */
200
+ size: number;
201
+ fill: IFill.JSON | null;
202
+ stroke: IStroke.JSON | null;
203
+ }
204
+ interface SeriesLayout {
205
+ /** What the series maps back to in the chart, for selection. */
206
+ id: string;
207
+ name: string;
208
+ /** One per category; `null` is a gap. */
209
+ values: (number | null)[];
210
+ /**
211
+ * On a date axis, the category each point is drawn in, by point: its date's day, month or
212
+ * year; `null` for a point with no date. Absent where each point is in the category of its index.
213
+ */
214
+ slots?: (number | null)[];
215
+ fill: IFill.JSON | null;
216
+ stroke: IStroke.JSON | null;
217
+ /** Line and scatter groups only. */
218
+ marker: MarkerLayout | null;
219
+ /** By point, its data label; `null` for a point without one. Absent when no point has one. */
220
+ labels?: (DataLabelLayout | null)[];
221
+ /** The series' trendlines, in the order it lists them. Absent when it has none. */
222
+ trendlines?: TrendlineLayout[];
223
+ /** The series' error bars, in the order it lists them. Absent when it has none. */
224
+ errorBars?: ErrorBarsLayout[];
225
+ }
226
+ /** A series' error bars: a bar about each point, along the value axis or a scatter's x axis. */
227
+ interface ErrorBarsLayout {
228
+ /** `{series id}:e{index}`. */
229
+ id: string;
230
+ direction: 'x' | 'y';
231
+ /** In px, cut to the plot area: each bar's line, then its caps, each drawn as one line. */
232
+ paths: Point[][];
233
+ stroke: IStroke.JSON | null;
234
+ }
235
+ /** A line fitted to a series' points, or their moving average. */
236
+ interface TrendlineLayout {
237
+ /** `{series id}:t{index}`. */
238
+ id: string;
239
+ /** Its entry in the legend. */
240
+ name: string;
241
+ /** Its path, in px, cut to the plot area: runs of points, each drawn as one line. */
242
+ paths: Point[][];
243
+ stroke: IStroke.JSON | null;
244
+ /** Its equation and R². */
245
+ label: TrendlineLabelLayout | null;
246
+ }
247
+ /** A run of a trendline label's text; an exponent is raised and smaller. */
248
+ interface TextRunLayout {
249
+ text: string;
250
+ superscript?: boolean;
251
+ }
252
+ /** A trendline's label: its lines centered on each other in a box that fits them. */
253
+ interface TrendlineLabelLayout {
254
+ rect: Bounds;
255
+ insets: Insets;
256
+ font: IText.RunPropertiesJSON;
257
+ /** Each line's runs, the equation first. */
258
+ lines: TextRunLayout[][];
259
+ /** The height of a line, in px. */
260
+ lineHeight: number;
261
+ /** The size of a raised run's font, in px. */
262
+ superscriptSize: number;
263
+ fill: IFill.JSON | null;
264
+ border: IStroke.JSON | null;
265
+ }
266
+ interface BarSeriesLayout extends SeriesLayout {
267
+ /**
268
+ * What each point is plotted as: its value, or its share of the category's total when the
269
+ * group is 100% stacked. A stacked series sits on the sum of these over the series before it,
270
+ * positive and negative values summed apart.
271
+ */
272
+ plotted: (number | null)[];
273
+ /** Each point's bar, in px; `null` for a gap. */
274
+ rects: (Bounds | null)[];
275
+ }
276
+ interface LineSeriesLayout extends SeriesLayout {
277
+ /**
278
+ * What each point is plotted as: its value, or its share of the category's total when the
279
+ * group is 100% stacked. A stacked series sits on the sum of these over the series before it.
280
+ */
281
+ plotted: (number | null)[];
282
+ /** Each point, in px; `null` for a gap. */
283
+ points: (Point | null)[];
284
+ }
285
+ /** A bar group. Stacked series are stacked in order, the first nearest the category axis. */
286
+ interface BarGroupLayout {
287
+ type: 'bar';
288
+ /** `[category axis id, value axis id]`. */
289
+ axisIds: [number, number];
290
+ /**
291
+ * `col`: columns, categories along a horizontal axis. `bar`: horizontal bars, categories up a
292
+ * vertical axis, the first at the bottom, and each cluster's first series lowest.
293
+ */
294
+ barDir: 'bar' | 'col';
295
+ grouping: 'clustered' | 'stacked' | 'percentStacked';
296
+ /** Every bar in the group, in px. */
297
+ barWidth: number;
298
+ /** -100..100: the share of a bar's width neighbors overlap by. A painter's gap is its negation. */
299
+ overlap: number;
300
+ /** The gap between clusters as a percentage of a bar's width. */
301
+ gapWidth: number;
302
+ series: BarSeriesLayout[];
303
+ /** Stacked bars: a line from each series' end in a category to its end in the next. */
304
+ seriesLines?: LinesLayout;
305
+ }
306
+ /** A waterfall's bar: one point's step, or its total. */
307
+ interface WaterfallBarLayout {
308
+ /** In px. */
309
+ rect: Bounds;
310
+ fill: IFill.JSON | null;
311
+ stroke: IStroke.JSON | null;
312
+ /** The point is a total: its bar runs from zero, not from the bar before it. */
313
+ total: boolean;
314
+ }
315
+ interface WaterfallSeriesLayout extends SeriesLayout {
316
+ /** By point, the running total its bar ends at, which the next bar starts from; `null` for a blank. */
317
+ plotted: (number | null)[];
318
+ /** By point, its bar; `null` for a blank. */
319
+ bars: (WaterfallBarLayout | null)[];
320
+ }
321
+ /**
322
+ * A waterfall: each point a bar from the running total of the points before it to that total with
323
+ * its value added, a total a bar from zero to its value; a line from each bar's end to the next bar.
324
+ */
325
+ interface WaterfallGroupLayout {
326
+ type: 'waterfall';
327
+ /** `[category axis id, value axis id]`. */
328
+ axisIds: [number, number];
329
+ /** Every bar, in px. */
330
+ barWidth: number;
331
+ /** The gap between bars as a percentage of a bar's width. */
332
+ gapWidth: number;
333
+ series: WaterfallSeriesLayout[];
334
+ /** The lines from each bar's end across to the next bar. */
335
+ connectorLines?: LinesLayout;
336
+ }
337
+ /**
338
+ * A line group, or a stock group, whose series are lines. Stacked series are stacked in order, the
339
+ * first at the bottom.
340
+ */
341
+ interface LineGroupLayout {
342
+ type: 'line';
343
+ axisIds: [number, number];
344
+ grouping: 'standard' | 'stacked' | 'percentStacked';
345
+ /** Whether each line is drawn across a blank point (`dispBlanksAs span`) rather than broken at it. */
346
+ spanBlanks?: boolean;
347
+ series: LineSeriesLayout[];
348
+ /** A bar in each category from the first series' value to the last's. */
349
+ upDownBars?: UpDownBarsLayout;
350
+ /** A line in each category from its lowest value to its highest. */
351
+ hiLowLines?: LinesLayout;
352
+ /** A line from each category's values to the category axis. */
353
+ dropLines?: LinesLayout;
354
+ }
355
+ /** A group's lines of one kind: high-low lines, drop lines or series lines. */
356
+ interface LinesLayout {
357
+ /** `g{group index}:` and the kind: `hiLow`, `drop` or `series`. */
358
+ id: string;
359
+ /** In px, cut to the plot area. */
360
+ segments: Segment[];
361
+ stroke: IStroke.JSON | null;
362
+ }
363
+ /** A bar of a group's up/down bars. */
364
+ interface UpDownBarLayout {
365
+ /** The category it is in. */
366
+ category: number;
367
+ /** The last series' value is above the first's. */
368
+ up: boolean;
369
+ /** In px, the box its line is centered on; a bar of equal values has no height. */
370
+ rect: Bounds;
371
+ }
372
+ /** A line or stock group's up/down bars, drawn under its series. */
373
+ interface UpDownBarsLayout {
374
+ /** `g{group index}:upDown`. */
375
+ id: string;
376
+ bars: UpDownBarLayout[];
377
+ up: {
378
+ fill: IFill.JSON | null;
379
+ stroke: IStroke.JSON | null;
380
+ };
381
+ down: {
382
+ fill: IFill.JSON | null;
383
+ stroke: IStroke.JSON | null;
384
+ };
385
+ }
386
+ interface AreaSeriesLayout extends SeriesLayout {
387
+ /**
388
+ * What each point is plotted as: its value, or its share of the category's total when the
389
+ * group is 100% stacked. A stacked series sits on the sum of these over the series before it.
390
+ */
391
+ plotted: (number | null)[];
392
+ /** The top edge of the area at each category, in px; `null` for a gap. */
393
+ points: (Point | null)[];
394
+ }
395
+ /** An area group. Series are stacked in order, the first at the bottom. */
396
+ interface AreaGroupLayout {
397
+ type: 'area';
398
+ axisIds: [number, number];
399
+ grouping: 'standard' | 'stacked' | 'percentStacked';
400
+ /** The value the first series fills down to: where the category axis crosses the value axis. */
401
+ baseValue: number;
402
+ /** That value's y, in px. */
403
+ baseY: number;
404
+ series: AreaSeriesLayout[];
405
+ /** A line from each category's values to the category axis. */
406
+ dropLines?: LinesLayout;
407
+ }
408
+ interface ScatterSeriesLayout extends SeriesLayout {
409
+ /** One per point, paired with `values`; `null` is a gap. */
410
+ xValues: (number | null)[];
411
+ /** Each point, in px; `null` where either value is a gap. */
412
+ points: (Point | null)[];
413
+ /** Whether the line through the points is drawn as a curve. */
414
+ smooth: boolean;
415
+ }
416
+ /** A scatter group: points on two value axes, joined by a line when the series has a stroke. */
417
+ interface ScatterGroupLayout {
418
+ type: 'scatter';
419
+ /** `[x axis id, y axis id]`, both value axes. */
420
+ axisIds: [number, number];
421
+ /** Whether each line is drawn across a blank point (`dispBlanksAs span`) rather than broken at it. */
422
+ spanBlanks?: boolean;
423
+ series: ScatterSeriesLayout[];
424
+ }
425
+ interface SliceLayout {
426
+ /** In degrees clockwise from 12 o'clock. */
427
+ startAngle: number;
428
+ endAngle: number;
429
+ /** What the slice is drawn around: the pie's center, moved out along the slice's middle when it is exploded. */
430
+ center: Point;
431
+ fill: IFill.JSON | null;
432
+ stroke: IStroke.JSON | null;
433
+ }
434
+ interface PieSeriesLayout extends SeriesLayout {
435
+ /** The ring the series fills, in px from the center; `innerRadius` is 0 for a pie. */
436
+ innerRadius: number;
437
+ outerRadius: number;
438
+ /** One per point; `null` for a point not drawn (blank). */
439
+ slices: (SliceLayout | null)[];
440
+ }
441
+ /** A pie or doughnut. A pie draws its first series only; a doughnut draws each as a ring. */
442
+ interface PieGroupLayout {
443
+ type: 'pie';
444
+ doughnut: boolean;
445
+ center: Point;
446
+ /** In px. */
447
+ radius: number;
448
+ series: PieSeriesLayout[];
449
+ }
450
+ /** A slice of a pie of pie or bar of pie, in the first pie or the second. */
451
+ interface OfPieSliceLayout extends SliceLayout {
452
+ /** In px: the radius of the pie it is in. */
453
+ radius: number;
454
+ }
455
+ /** A point's part of the bar of a bar of pie. */
456
+ interface OfPieBarLayout {
457
+ /** In px. */
458
+ rect: Bounds;
459
+ fill: IFill.JSON | null;
460
+ stroke: IStroke.JSON | null;
461
+ }
462
+ interface OfPieSeriesLayout extends SeriesLayout {
463
+ /** By point: its slice, of the first pie or the second; `null` for a point in the bar, or not drawn (blank). */
464
+ slices: (OfPieSliceLayout | null)[];
465
+ /** By point: its part of the bar, top down in point order; `null` for a point not in it. Absent for a pie of pie. */
466
+ bars?: (OfPieBarLayout | null)[];
467
+ /** By point: whether it is in the second plot. */
468
+ second: boolean[];
469
+ /** The slice of the first pie that stands for the points of the second plot, of no span where it has none. */
470
+ other: OfPieSliceLayout;
471
+ }
472
+ /**
473
+ * A pie of pie or bar of pie: a pie of the series' points but those split off it, whose slice for
474
+ * them (Excel's "Other") faces a second pie or a bar of them. It draws its first series only.
475
+ */
476
+ interface OfPieGroupLayout {
477
+ type: 'ofPie';
478
+ /** What the second plot is. */
479
+ of: 'pie' | 'bar';
480
+ /** The first pie's center and radius, in px. */
481
+ center: Point;
482
+ radius: number;
483
+ /** The second pie, of a pie of pie. */
484
+ second: {
485
+ center: Point;
486
+ radius: number;
487
+ } | null;
488
+ /** The bar, of a bar of pie: its box, in px. */
489
+ bar: Bounds | null;
490
+ series: OfPieSeriesLayout[];
491
+ /** The two lines from the ends of the Other slice to the second plot. */
492
+ seriesLines?: LinesLayout;
493
+ }
494
+ interface BubbleSeriesLayout extends ScatterSeriesLayout {
495
+ /** By point, its bubble's radius in px, centered on its point; `null` for a point with none. */
496
+ radii: (number | null)[];
497
+ /** By point, whether its size is negative: its bubble is drawn in the group's `negative` style. */
498
+ negative: boolean[];
499
+ }
500
+ /** A bubble group: a scatter whose points are bubbles sized by the points' bubble sizes. */
501
+ interface BubbleGroupLayout {
502
+ type: 'bubble';
503
+ /** `[x axis id, y axis id]`, both value axes. */
504
+ axisIds: [number, number];
505
+ series: BubbleSeriesLayout[];
506
+ /** How a bubble of a negative size is drawn: hollow. */
507
+ negative: {
508
+ fill: IFill.JSON | null;
509
+ stroke: IStroke.JSON | null;
510
+ };
511
+ }
512
+ interface RadarSeriesLayout extends SeriesLayout {
513
+ /** By category, the point on its spoke; `null` for a blank. Joined in order, the last to the first. */
514
+ points: (Point | null)[];
515
+ }
516
+ /**
517
+ * A radar chart: spokes from its center, one per category clockwise from 12 o'clock, the value axis
518
+ * up the first, its values' rings through the spokes, and the series' polygons. The group draws its
519
+ * axes; the chart's axes are laid out (their scale) and draw nothing.
520
+ */
521
+ interface RadarGroupLayout {
522
+ type: 'radar';
523
+ axisIds: [number, number];
524
+ /** The series' polygons are filled, not lines. */
525
+ filled: boolean;
526
+ center: Point;
527
+ /** In px: the value axis's maximum's distance from the center. */
528
+ radius: number;
529
+ spokes: Segment[];
530
+ spokeStroke: IStroke.JSON | null;
531
+ /** The ring of each major tick past the minimum, a polygon through the spokes. */
532
+ rings: Point[][];
533
+ ringStroke: IStroke.JSON | null;
534
+ /** By category, its label beyond its spoke's end; `null` where the axis shows none. */
535
+ categoryLabels: (TextLayout | null)[];
536
+ /** The value axis's labels, left of the first spoke. */
537
+ valueLabels: TextLayout[];
538
+ series: RadarSeriesLayout[];
539
+ }
540
+ /** A band of a surface's values: the parts of the surface between two of its value axis's ticks. */
541
+ interface SurfaceBandLayout {
542
+ from: number;
543
+ to: number;
544
+ fill: IFill.JSON | null;
545
+ /** A wireframe's line. */
546
+ stroke: IStroke.JSON | null;
547
+ /** In px. */
548
+ polygons: Point[][];
549
+ }
550
+ /**
551
+ * A surface seen from the top, a contour: a grid of a column per category and a row per series,
552
+ * the surface through its values colored by band. The group draws its axes; the chart's axes are
553
+ * laid out (their scale) and draw nothing.
554
+ */
555
+ interface SurfaceGroupLayout {
556
+ type: 'surface';
557
+ axisIds: number[];
558
+ /** The bands are lines, not fills. */
559
+ wireframe: boolean;
560
+ /** A 3-D surface, which Excel draws in perspective, drawn flat from above. */
561
+ flat: boolean;
562
+ /** In px. */
563
+ grid: Bounds;
564
+ bands: SurfaceBandLayout[];
565
+ /** Below the grid, a label at each category. */
566
+ categoryLabels: TextLayout[];
567
+ /** Right of the grid, a label at each series. */
568
+ seriesLabels: TextLayout[];
569
+ series: SeriesLayout[];
570
+ }
571
+ /** A segment of a sunburst: one category of the hierarchy, or one point, as a ring sector. */
572
+ interface SunburstSegmentLayout {
573
+ /** Its depth in the hierarchy: 0 for a top-level category. */
574
+ level: number;
575
+ name: string;
576
+ /** Its value: its point's, or the sum of the points under it. */
577
+ value: number;
578
+ /** In degrees clockwise from 12 o'clock. */
579
+ startAngle: number;
580
+ endAngle: number;
581
+ /** In px from the center. */
582
+ innerRadius: number;
583
+ outerRadius: number;
584
+ fill: IFill.JSON | null;
585
+ stroke: IStroke.JSON | null;
586
+ /** The point a leaf is, by its index in the series; `null` for a category with points under it. */
587
+ point: number | null;
588
+ /** Its name along the radius, wrapped to the ring's depth; absent where it does not fit. */
589
+ label?: TextLayout;
590
+ }
591
+ interface SunburstSeriesLayout extends SeriesLayout {
592
+ /** Every segment, a category before the ones under it. */
593
+ segments: SunburstSegmentLayout[];
594
+ }
595
+ /**
596
+ * A sunburst: the hierarchy of a series' categories as rings about a hole, the top-level
597
+ * categories innermost, each segment's angle its value's share; only the first series is drawn.
598
+ */
599
+ interface SunburstGroupLayout {
600
+ type: 'sunburst';
601
+ center: Point;
602
+ /** In px: the outer ring's outer edge. */
603
+ radius: number;
604
+ /** In px: the hole's radius. */
605
+ hole: number;
606
+ series: SunburstSeriesLayout[];
607
+ }
608
+ /** A bin of a histogram, as labeled on its category axis. */
609
+ interface HistogramBinLayout {
610
+ kind: 'underflow' | 'bin' | 'overflow';
611
+ /** The bin's bounds; an underflow bin has no `from`, an overflow bin no `to`. */
612
+ from: number | null;
613
+ to: number | null;
614
+ label: string;
615
+ }
616
+ interface HistogramSeriesLayout extends SeriesLayout {
617
+ /** By bin, its bar, in px; `null` for an empty bin. */
618
+ bars: (Bounds | null)[];
619
+ /** A pareto's line, listed as a series of its own after the bars' (`series/<key>-line`): its points at the bars' centers, in px. */
620
+ line?: {
621
+ points: (Point | null)[];
622
+ axisId: number;
623
+ };
624
+ }
625
+ /**
626
+ * A histogram: a bar per bin, the bins along the category axis with no gap between them unless
627
+ * the group states one; a pareto's bars largest first with a line of the running share, drawn
628
+ * from the first bar's center to the last's against a percentage axis on the right.
629
+ */
630
+ interface HistogramGroupLayout {
631
+ type: 'histogram';
632
+ /** `[category axis id, value axis id]`. */
633
+ axisIds: [number, number];
634
+ bins: HistogramBinLayout[];
635
+ /** Every bar, in px. */
636
+ barWidth: number;
637
+ /** The gap between bars as a percentage of a bar's width. */
638
+ gapWidth: number;
639
+ series: HistogramSeriesLayout[];
640
+ }
641
+ /** One box of a box and whisker series: a category's statistics as drawn. */
642
+ interface BoxLayout {
643
+ /** The box, from the first quartile to the third, in px. */
644
+ rect: Bounds;
645
+ /** The median's line across the box, in px. */
646
+ median: Segment;
647
+ /** The whisker's line from the box's top up and from its bottom down, each with its cap, in px; absent where it has no length. */
648
+ whiskerHigh?: {
649
+ line: Segment;
650
+ cap: Segment;
651
+ };
652
+ whiskerLow?: {
653
+ line: Segment;
654
+ cap: Segment;
655
+ };
656
+ /** The x at the mean, in px: its center and the size of its box. */
657
+ mean?: {
658
+ center: Point;
659
+ size: number;
660
+ };
661
+ /** A dot at each value beyond the whiskers: its center and diameter, in px. */
662
+ outliers: {
663
+ center: Point;
664
+ size: number;
665
+ }[];
666
+ /** A dot at each value within the whiskers. */
667
+ innerPoints: {
668
+ center: Point;
669
+ size: number;
670
+ }[];
671
+ fill: IFill.JSON | null;
672
+ /** The outline, median, whiskers and marks. */
673
+ stroke: IStroke.JSON | null;
674
+ stats: {
675
+ min: number;
676
+ q1: number;
677
+ median: number;
678
+ q3: number;
679
+ max: number;
680
+ mean: number;
681
+ };
682
+ }
683
+ interface BoxWhiskerSeriesLayout extends SeriesLayout {
684
+ /** By category, its box; `null` for a category the series has no values in. */
685
+ boxes: (BoxLayout | null)[];
686
+ /** The line from each box's mean to the next's, where the series shows one. */
687
+ meanLine?: LinesLayout;
688
+ }
689
+ /** A box and whisker group: a box per series in each category, the series side by side as a cluster. */
690
+ interface BoxWhiskerGroupLayout {
691
+ type: 'boxWhisker';
692
+ /** `[category axis id, value axis id]`. */
693
+ axisIds: [number, number];
694
+ /** Every box, in px. */
695
+ boxWidth: number;
696
+ /** The gap between clusters as a percentage of a category. */
697
+ gapWidth: number;
698
+ series: BoxWhiskerSeriesLayout[];
699
+ }
700
+ /** A tile of a treemap: one leaf, as a rect in its branch's fill. */
701
+ interface TreemapTileLayout {
702
+ /** Its depth in the hierarchy: 0 for a top-level category. */
703
+ level: number;
704
+ name: string;
705
+ value: number;
706
+ /** In px. */
707
+ rect: Bounds;
708
+ fill: IFill.JSON | null;
709
+ stroke: IStroke.JSON | null;
710
+ /** The point it is, by its index in the series; `null` for a category with points under it. */
711
+ point: number | null;
712
+ /** Its label in its bottom-left corner, wrapped to its width; absent where it does not fit. */
713
+ label?: TextLayout;
714
+ }
715
+ /** A top-level category's label: over its tiles' top-left corner, or on a banner above them. */
716
+ interface TreemapParentLabelLayout {
717
+ name: string;
718
+ label: TextLayout;
719
+ /** The banner, in px, where the labels are banners. */
720
+ banner?: {
721
+ rect: Bounds;
722
+ fill: IFill.JSON | null;
723
+ stroke: IStroke.JSON | null;
724
+ };
725
+ }
726
+ interface TreemapSeriesLayout extends SeriesLayout {
727
+ /** Every leaf's tile. */
728
+ tiles: TreemapTileLayout[];
729
+ /** The top-level categories' labels, in their order; none where the series shows none. */
730
+ parents: TreemapParentLabelLayout[];
731
+ }
732
+ /**
733
+ * A treemap: the hierarchy of a series' categories as nested rects filling the plot area, each
734
+ * top-level category a branch in one fill; only the first series is drawn.
735
+ */
736
+ interface TreemapGroupLayout {
737
+ type: 'treemap';
738
+ /** The plot area, in px: what the tiles fill. */
739
+ plot: Bounds;
740
+ parentLabels: 'none' | 'banner' | 'overlapping';
741
+ series: TreemapSeriesLayout[];
742
+ }
743
+ interface FunnelSeriesLayout extends SeriesLayout {
744
+ /** By point, its bar, in px; `null` for a blank or a value of no width. */
745
+ bars: (Bounds | null)[];
746
+ }
747
+ /**
748
+ * A funnel: a bar per point, the first at the top, each as wide as its value's share of the
749
+ * largest and centered on the plot, beside a category axis the group draws itself.
750
+ */
751
+ interface FunnelGroupLayout {
752
+ type: 'funnel';
753
+ /** `[category axis id]`; the axis is laid out by the group. */
754
+ axisIds: number[];
755
+ /** The plot's inside, in px: the bars' room right of the axis. */
756
+ plot: Bounds;
757
+ /** Every bar, in px. */
758
+ barHeight: number;
759
+ /** The gap between bars as a percentage of a bar's height. */
760
+ gapWidth: number;
761
+ /** The category axis's line, in px; `null` for none. */
762
+ axisLine: Segment | null;
763
+ axisStroke: IStroke.JSON | null;
764
+ /** By point, its category's label left of the axis; `null` where the axis shows none. */
765
+ categoryLabels: (TextLayout | null)[];
766
+ series: FunnelSeriesLayout[];
767
+ }
768
+ /**
769
+ * A group of a kind the host registered (`ChartKinds`): what the kind's layout answers. The kind's
770
+ * painter reads `data`; nothing else does.
771
+ */
772
+ interface CustomGroupLayout {
773
+ type: 'custom';
774
+ /** The kind's name, as registered (`custom:<kind>`). */
775
+ kind: string;
776
+ /** The ids of the axes the group draws against; none for a kind that takes the plot alone. */
777
+ axisIds: number[];
778
+ /** The plot's inside, in px: where the kind drew. */
779
+ plot: Bounds;
780
+ series: SeriesLayout[];
781
+ /** The kind's own geometry, for its painter; JSON. */
782
+ data?: unknown;
783
+ }
784
+ /**
785
+ * A group of a type not drawn yet (the 2016 types): the plot it would draw in, and a label there
786
+ * saying so, in place of what it would draw. The first such group of a chart carries the label.
787
+ */
788
+ interface PlaceholderGroupLayout {
789
+ type: 'regionMap';
790
+ /** None: the type's axes are not drawn. */
791
+ axisIds: number[];
792
+ /** The plot area, in px. */
793
+ plot: Bounds;
794
+ series: SeriesLayout[];
795
+ /** "<type> rendering is not supported yet", centered in the plot. */
796
+ label?: TextLayout;
797
+ }
798
+ type GroupLayout = BarGroupLayout | WaterfallGroupLayout | SunburstGroupLayout | HistogramGroupLayout | BoxWhiskerGroupLayout | TreemapGroupLayout | FunnelGroupLayout | LineGroupLayout | AreaGroupLayout | ScatterGroupLayout | BubbleGroupLayout | PieGroupLayout | OfPieGroupLayout | RadarGroupLayout | SurfaceGroupLayout | CustomGroupLayout | PlaceholderGroupLayout;
799
+ interface LegendEntryLayout {
800
+ seriesId: string;
801
+ /** An entry for one point of the series (a pie's slice), rather than for the series. */
802
+ pointIndex?: number;
803
+ /** An entry for the series' trendline of this index (its `trendlines`), rather than for the series. */
804
+ trendlineIndex?: number;
805
+ /** An entry for a surface's value band of this index (its group's `bands`), rather than for a series. */
806
+ bandIndex?: number;
807
+ text: string;
808
+ /** The entry: its key's slot and its text. */
809
+ rect: Bounds;
810
+ /** The key, inside the entry. The text starts as far after it as the key starts into the entry. */
811
+ keyRect: Bounds;
812
+ /** The key's colors, where they are not its series' (a waterfall's increase, decrease and total). */
813
+ swatch?: {
814
+ fill: IFill.JSON | null;
815
+ stroke: IStroke.JSON | null;
816
+ };
817
+ }
818
+ interface LegendLayout {
819
+ rect: Bounds;
820
+ orient: 'horizontal' | 'vertical';
821
+ font: IText.RunPropertiesJSON;
822
+ entries: LegendEntryLayout[];
823
+ }
824
+ }
825
+ //# sourceMappingURL=ChartLayout.d.ts.map