@openpresentation/opf 0.18.4 → 0.20.1

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 (760) hide show
  1. package/README.md +18 -17
  2. package/dist/browser.js +17 -19
  3. package/dist/{catalog-refs-BSfGELpt.d.ts → catalog-refs-CSHevLn1.d.ts} +1 -1
  4. package/dist/{chunk-IM337HP5.js → chunk-2AGWO7RM.js} +4 -5
  5. package/dist/{chunk-WHHLGDCQ.js → chunk-2XJUXMBS.js} +1 -1
  6. package/dist/{chunk-JCOSZTOI.js → chunk-32MHL3B3.js} +7 -2
  7. package/dist/{chunk-ECP7QPGK.js → chunk-4FBXVST6.js} +6 -6
  8. package/dist/{chunk-KA3ZPFVT.js → chunk-7QUAOKS6.js} +96 -40
  9. package/dist/{chunk-FO3WGS4R.js → chunk-BDXJYO6R.js} +25 -16
  10. package/dist/chunk-BYEIFHWS.js +16 -0
  11. package/dist/{chunk-K5EG3UMS.js → chunk-JMYM44I4.js} +50 -20
  12. package/dist/{chunk-L5YACLWK.js → chunk-L6RRLN6Q.js} +2 -2
  13. package/dist/{chunk-GVOLSWAJ.js → chunk-NZDWCYDI.js} +5 -5
  14. package/dist/{chunk-R7KIASS4.js → chunk-P6LMWUXV.js} +1 -1
  15. package/dist/{chunk-MSFE2HUK.js → chunk-RFJ5TR3V.js} +16 -13
  16. package/dist/{chunk-PNINP5IF.js → chunk-UA5EROLC.js} +1 -1
  17. package/dist/{chunk-MBU42S5Y.js → chunk-UAXSW6VV.js} +1237 -293
  18. package/dist/chunk-UJSAR6GF.js +181 -0
  19. package/dist/{chunk-2PEWUUBR.js → chunk-VEHLQVGQ.js} +381 -314
  20. package/dist/{chunk-ZCFSDSUX.js → chunk-W7G5LSXI.js} +1 -1
  21. package/dist/{chunk-TRELE6I6.js → chunk-ZU5EQ23T.js} +1 -1
  22. package/dist/{composition-C-OoqvAr.d.ts → composition-MFjGwuN_.d.ts} +395 -99
  23. package/dist/composition.d.ts +2 -2
  24. package/dist/composition.js +1 -2
  25. package/dist/{conversion-BxZbBd_0.d.ts → conversion-DDd1mdIj.d.ts} +11 -11
  26. package/dist/conversion-WHN4D4WH.js +19 -0
  27. package/dist/convert.d.ts +3 -3
  28. package/dist/convert.js +7 -9
  29. package/dist/data.d.ts +1 -1
  30. package/dist/data.js +2 -3
  31. package/dist/{deck-report-DiDf_Vew.d.ts → deck-report-DldBcTHe.d.ts} +3 -3
  32. package/dist/deck.d.ts +6 -6
  33. package/dist/deck.js +10 -12
  34. package/dist/diff.js +5 -7
  35. package/dist/docs.js +34 -22
  36. package/dist/examples.d.ts +1 -1
  37. package/dist/examples.js +27210 -20994
  38. package/dist/format.js +2 -2
  39. package/dist/index.d.ts +22 -21
  40. package/dist/index.js +23 -26
  41. package/dist/markdown.d.ts +4 -4
  42. package/dist/markdown.js +7 -9
  43. package/dist/node-engine.d.ts +27 -9
  44. package/dist/node-engine.js +22 -23
  45. package/dist/{pagination-BaUjDrTz.d.ts → pagination-BKsZIEcA.d.ts} +3 -3
  46. package/dist/pagination.d.ts +3 -3
  47. package/dist/pagination.js +4 -6
  48. package/dist/patch.js +4 -6
  49. package/dist/{presentation-81rNihF0.d.ts → presentation-B_e2Djga.d.ts} +35 -19
  50. package/dist/repo-readme.js +1 -1
  51. package/dist/schemas.d.ts +2 -18
  52. package/dist/schemas.js +1 -1
  53. package/dist/spec/README.md +12 -19
  54. package/dist/spec/reference/engine-vocabularies.json +1 -1
  55. package/dist/spec/schemas/catalog-index.schema.json +3 -3
  56. package/dist/spec/schemas/catalog-manifest.schema.json +1 -1
  57. package/dist/spec/schemas/chart-type.schema.json +2 -2
  58. package/dist/spec/schemas/language.schema.json +1 -1
  59. package/dist/spec/schemas/layout-preview-index.schema.json +25 -11
  60. package/dist/spec/schemas/layout.schema.json +212 -272
  61. package/dist/spec/schemas/opf.schema.json +63 -18
  62. package/dist/spec/schemas/social-platform.schema.json +1 -1
  63. package/dist/spec/schemas/theme.schema.json +60 -0
  64. package/dist/spec-files.d.ts +2 -2
  65. package/dist/spec-files.js +1 -1
  66. package/dist/types.d.ts +115 -40
  67. package/dist/{validation-types-PbGDrNUr.d.ts → validation-types-DtN8X_HZ.d.ts} +2 -2
  68. package/dist/validator-1d29Z3YY.d.ts +73 -0
  69. package/dist/validator.d.ts +6 -60
  70. package/dist/validator.js +3 -5
  71. package/dist/yaml.d.ts +4 -4
  72. package/dist/yaml.js +7 -9
  73. package/package.json +8 -11
  74. package/dist/catalog-schemas-CinPh5WA.d.ts +0 -12
  75. package/dist/catalog.d.ts +0 -91
  76. package/dist/catalog.js +0 -3
  77. package/dist/chunk-HXHOZ7AH.js +0 -4937
  78. package/dist/chunk-SPFV27O5.js +0 -210
  79. package/dist/chunk-TRDXRRQK.js +0 -17
  80. package/dist/chunk-WCG3THTD.js +0 -23712
  81. package/dist/conversion-SHYVL7FC.js +0 -21
  82. package/dist/spec/catalogs/audiences/academic.json +0 -24
  83. package/dist/spec/catalogs/audiences/all-hands.json +0 -25
  84. package/dist/spec/catalogs/audiences/board.json +0 -24
  85. package/dist/spec/catalogs/audiences/candidates.json +0 -23
  86. package/dist/spec/catalogs/audiences/customer.json +0 -25
  87. package/dist/spec/catalogs/audiences/engineering-team.json +0 -23
  88. package/dist/spec/catalogs/audiences/executive.json +0 -24
  89. package/dist/spec/catalogs/audiences/general-public.json +0 -25
  90. package/dist/spec/catalogs/audiences/index.json +0 -105
  91. package/dist/spec/catalogs/audiences/internal-team.json +0 -25
  92. package/dist/spec/catalogs/audiences/investor.json +0 -25
  93. package/dist/spec/catalogs/audiences/marketing.json +0 -25
  94. package/dist/spec/catalogs/audiences/media.json +0 -24
  95. package/dist/spec/catalogs/audiences/partner.json +0 -25
  96. package/dist/spec/catalogs/audiences/regulatory.json +0 -25
  97. package/dist/spec/catalogs/audiences/sales.json +0 -25
  98. package/dist/spec/catalogs/audiences/technical.json +0 -25
  99. package/dist/spec/catalogs/chart-types/100pct-stacked-area.json +0 -21
  100. package/dist/spec/catalogs/chart-types/100pct-stacked-bar.json +0 -22
  101. package/dist/spec/catalogs/chart-types/100pct-stacked-column.json +0 -22
  102. package/dist/spec/catalogs/chart-types/area.json +0 -20
  103. package/dist/spec/catalogs/chart-types/bar.json +0 -22
  104. package/dist/spec/catalogs/chart-types/box-and-whisker.json +0 -21
  105. package/dist/spec/catalogs/chart-types/column.json +0 -22
  106. package/dist/spec/catalogs/chart-types/combo.json +0 -37
  107. package/dist/spec/catalogs/chart-types/doughnut.json +0 -20
  108. package/dist/spec/catalogs/chart-types/filled-radar.json +0 -21
  109. package/dist/spec/catalogs/chart-types/funnel.json +0 -21
  110. package/dist/spec/catalogs/chart-types/histogram.json +0 -21
  111. package/dist/spec/catalogs/chart-types/index.json +0 -171
  112. package/dist/spec/catalogs/chart-types/line-with-markers.json +0 -21
  113. package/dist/spec/catalogs/chart-types/line.json +0 -20
  114. package/dist/spec/catalogs/chart-types/pareto.json +0 -22
  115. package/dist/spec/catalogs/chart-types/pie.json +0 -20
  116. package/dist/spec/catalogs/chart-types/radar-with-markers.json +0 -21
  117. package/dist/spec/catalogs/chart-types/radar.json +0 -21
  118. package/dist/spec/catalogs/chart-types/scatter.json +0 -21
  119. package/dist/spec/catalogs/chart-types/stacked-area.json +0 -21
  120. package/dist/spec/catalogs/chart-types/stacked-bar.json +0 -22
  121. package/dist/spec/catalogs/chart-types/stacked-column.json +0 -22
  122. package/dist/spec/catalogs/chart-types/stacked-line-with-markers.json +0 -22
  123. package/dist/spec/catalogs/chart-types/stacked-line.json +0 -21
  124. package/dist/spec/catalogs/chart-types/treemap.json +0 -21
  125. package/dist/spec/catalogs/chart-types/waterfall.json +0 -21
  126. package/dist/spec/catalogs/chart-types/world.json +0 -21
  127. package/dist/spec/catalogs/color-schemes/black-and-white.json +0 -26
  128. package/dist/spec/catalogs/color-schemes/bold-red.json +0 -26
  129. package/dist/spec/catalogs/color-schemes/boost.json +0 -26
  130. package/dist/spec/catalogs/color-schemes/burnt-orange.json +0 -26
  131. package/dist/spec/catalogs/color-schemes/cool-horizon.json +0 -26
  132. package/dist/spec/catalogs/color-schemes/corporate-blue.json +0 -26
  133. package/dist/spec/catalogs/color-schemes/deep-purple.json +0 -26
  134. package/dist/spec/catalogs/color-schemes/forest-green.json +0 -26
  135. package/dist/spec/catalogs/color-schemes/golden-yellow.json +0 -26
  136. package/dist/spec/catalogs/color-schemes/index.json +0 -79
  137. package/dist/spec/catalogs/color-schemes/luxury.json +0 -26
  138. package/dist/spec/catalogs/color-schemes/pastel-red.json +0 -26
  139. package/dist/spec/catalogs/color-schemes/slate-gray.json +0 -26
  140. package/dist/spec/catalogs/color-schemes/steel-blue.json +0 -26
  141. package/dist/spec/catalogs/color-schemes/vibes.json +0 -26
  142. package/dist/spec/catalogs/font-schemes/angsana-new.json +0 -15
  143. package/dist/spec/catalogs/font-schemes/aparajita.json +0 -16
  144. package/dist/spec/catalogs/font-schemes/aptos.json +0 -13
  145. package/dist/spec/catalogs/font-schemes/arabic-typesetting.json +0 -15
  146. package/dist/spec/catalogs/font-schemes/arial.json +0 -13
  147. package/dist/spec/catalogs/font-schemes/batang.json +0 -15
  148. package/dist/spec/catalogs/font-schemes/bookman.json +0 -13
  149. package/dist/spec/catalogs/font-schemes/calibri.json +0 -13
  150. package/dist/spec/catalogs/font-schemes/century-schoolbook.json +0 -13
  151. package/dist/spec/catalogs/font-schemes/consolas.json +0 -14
  152. package/dist/spec/catalogs/font-schemes/constantia.json +0 -13
  153. package/dist/spec/catalogs/font-schemes/courier-new.json +0 -14
  154. package/dist/spec/catalogs/font-schemes/daunpenh.json +0 -15
  155. package/dist/spec/catalogs/font-schemes/david.json +0 -15
  156. package/dist/spec/catalogs/font-schemes/dilleniaupc.json +0 -15
  157. package/dist/spec/catalogs/font-schemes/fangsong.json +0 -15
  158. package/dist/spec/catalogs/font-schemes/garamond.json +0 -13
  159. package/dist/spec/catalogs/font-schemes/gautami.json +0 -15
  160. package/dist/spec/catalogs/font-schemes/georgia.json +0 -13
  161. package/dist/spec/catalogs/font-schemes/gisha.json +0 -16
  162. package/dist/spec/catalogs/font-schemes/grandview.json +0 -13
  163. package/dist/spec/catalogs/font-schemes/gungsuh.json +0 -15
  164. package/dist/spec/catalogs/font-schemes/impact.json +0 -13
  165. package/dist/spec/catalogs/font-schemes/index.json +0 -454
  166. package/dist/spec/catalogs/font-schemes/kalinga.json +0 -15
  167. package/dist/spec/catalogs/font-schemes/kartika.json +0 -15
  168. package/dist/spec/catalogs/font-schemes/khmer-ui.json +0 -15
  169. package/dist/spec/catalogs/font-schemes/latha.json +0 -15
  170. package/dist/spec/catalogs/font-schemes/lucida-sans.json +0 -13
  171. package/dist/spec/catalogs/font-schemes/malgun-gothic.json +0 -15
  172. package/dist/spec/catalogs/font-schemes/mangal.json +0 -17
  173. package/dist/spec/catalogs/font-schemes/meiryo.json +0 -15
  174. package/dist/spec/catalogs/font-schemes/microsoft-jhenghei.json +0 -15
  175. package/dist/spec/catalogs/font-schemes/microsoft-yahei.json +0 -18
  176. package/dist/spec/catalogs/font-schemes/mingliu.json +0 -15
  177. package/dist/spec/catalogs/font-schemes/miriam.json +0 -15
  178. package/dist/spec/catalogs/font-schemes/montserrat.json +0 -13
  179. package/dist/spec/catalogs/font-schemes/ms-mincho.json +0 -15
  180. package/dist/spec/catalogs/font-schemes/nirmala-ui.json +0 -15
  181. package/dist/spec/catalogs/font-schemes/noto-naksh-arabic.json +0 -15
  182. package/dist/spec/catalogs/font-schemes/noto-nastaliq-urdu.json +0 -16
  183. package/dist/spec/catalogs/font-schemes/noto-sans-arabic.json +0 -17
  184. package/dist/spec/catalogs/font-schemes/noto-sans-armenian.json +0 -15
  185. package/dist/spec/catalogs/font-schemes/noto-sans-bengali.json +0 -16
  186. package/dist/spec/catalogs/font-schemes/noto-sans-devangari.json +0 -16
  187. package/dist/spec/catalogs/font-schemes/noto-sans-ethiopic.json +0 -15
  188. package/dist/spec/catalogs/font-schemes/noto-sans-georgian.json +0 -15
  189. package/dist/spec/catalogs/font-schemes/noto-sans-gujarati.json +0 -15
  190. package/dist/spec/catalogs/font-schemes/noto-sans-gurmukhi.json +0 -15
  191. package/dist/spec/catalogs/font-schemes/noto-sans-hebrew.json +0 -15
  192. package/dist/spec/catalogs/font-schemes/noto-sans-jp.json +0 -15
  193. package/dist/spec/catalogs/font-schemes/noto-sans-kannada.json +0 -15
  194. package/dist/spec/catalogs/font-schemes/noto-sans-khmer.json +0 -15
  195. package/dist/spec/catalogs/font-schemes/noto-sans-kr.json +0 -15
  196. package/dist/spec/catalogs/font-schemes/noto-sans-malayalam.json +0 -15
  197. package/dist/spec/catalogs/font-schemes/noto-sans-mongolian.json +0 -15
  198. package/dist/spec/catalogs/font-schemes/noto-sans-oriya.json +0 -15
  199. package/dist/spec/catalogs/font-schemes/noto-sans-sc.json +0 -18
  200. package/dist/spec/catalogs/font-schemes/noto-sans-tamil.json +0 -15
  201. package/dist/spec/catalogs/font-schemes/noto-sans-tc.json +0 -15
  202. package/dist/spec/catalogs/font-schemes/noto-sans-telugu.json +0 -15
  203. package/dist/spec/catalogs/font-schemes/noto-sans-thai.json +0 -15
  204. package/dist/spec/catalogs/font-schemes/noto-sans.json +0 -18
  205. package/dist/spec/catalogs/font-schemes/nyala.json +0 -15
  206. package/dist/spec/catalogs/font-schemes/open-sans.json +0 -13
  207. package/dist/spec/catalogs/font-schemes/pmingliu.json +0 -15
  208. package/dist/spec/catalogs/font-schemes/poppins.json +0 -13
  209. package/dist/spec/catalogs/font-schemes/pt-serif.json +0 -13
  210. package/dist/spec/catalogs/font-schemes/raavi.json +0 -15
  211. package/dist/spec/catalogs/font-schemes/raleway.json +0 -13
  212. package/dist/spec/catalogs/font-schemes/roboto.json +0 -13
  213. package/dist/spec/catalogs/font-schemes/rockwell.json +0 -13
  214. package/dist/spec/catalogs/font-schemes/sakkal-majalla.json +0 -17
  215. package/dist/spec/catalogs/font-schemes/seaford.json +0 -13
  216. package/dist/spec/catalogs/font-schemes/segoe-ui-light.json +0 -13
  217. package/dist/spec/catalogs/font-schemes/segoe-ui.json +0 -13
  218. package/dist/spec/catalogs/font-schemes/shonar-bangla.json +0 -16
  219. package/dist/spec/catalogs/font-schemes/shruti.json +0 -15
  220. package/dist/spec/catalogs/font-schemes/simsun.json +0 -15
  221. package/dist/spec/catalogs/font-schemes/skeena.json +0 -13
  222. package/dist/spec/catalogs/font-schemes/sylfaen.json +0 -16
  223. package/dist/spec/catalogs/font-schemes/tahoma.json +0 -13
  224. package/dist/spec/catalogs/font-schemes/tenorite.json +0 -13
  225. package/dist/spec/catalogs/font-schemes/times-new-roman.json +0 -13
  226. package/dist/spec/catalogs/font-schemes/traditional-arabic.json +0 -17
  227. package/dist/spec/catalogs/font-schemes/trebuchet-ms.json +0 -13
  228. package/dist/spec/catalogs/font-schemes/tunga.json +0 -15
  229. package/dist/spec/catalogs/font-schemes/verdana.json +0 -13
  230. package/dist/spec/catalogs/font-schemes/vrinda.json +0 -15
  231. package/dist/spec/catalogs/font-schemes/yu-gothic.json +0 -15
  232. package/dist/spec/catalogs/languages/afrikaans.json +0 -12
  233. package/dist/spec/catalogs/languages/albanian.json +0 -12
  234. package/dist/spec/catalogs/languages/amharic.json +0 -12
  235. package/dist/spec/catalogs/languages/arabic.json +0 -12
  236. package/dist/spec/catalogs/languages/armenian.json +0 -12
  237. package/dist/spec/catalogs/languages/aymara.json +0 -12
  238. package/dist/spec/catalogs/languages/azerbaijani.json +0 -12
  239. package/dist/spec/catalogs/languages/bengali.json +0 -12
  240. package/dist/spec/catalogs/languages/berber-latin.json +0 -12
  241. package/dist/spec/catalogs/languages/bosnian-latin.json +0 -12
  242. package/dist/spec/catalogs/languages/bulgarian.json +0 -12
  243. package/dist/spec/catalogs/languages/catalan.json +0 -12
  244. package/dist/spec/catalogs/languages/cebuano.json +0 -12
  245. package/dist/spec/catalogs/languages/chinese-simplified.json +0 -12
  246. package/dist/spec/catalogs/languages/chinese-traditional.json +0 -12
  247. package/dist/spec/catalogs/languages/chittagonian.json +0 -12
  248. package/dist/spec/catalogs/languages/croatian.json +0 -12
  249. package/dist/spec/catalogs/languages/czech.json +0 -12
  250. package/dist/spec/catalogs/languages/danish.json +0 -12
  251. package/dist/spec/catalogs/languages/dutch.json +0 -12
  252. package/dist/spec/catalogs/languages/english-au.json +0 -12
  253. package/dist/spec/catalogs/languages/english-ca.json +0 -12
  254. package/dist/spec/catalogs/languages/english-gb.json +0 -12
  255. package/dist/spec/catalogs/languages/english-in.json +0 -12
  256. package/dist/spec/catalogs/languages/english-us.json +0 -12
  257. package/dist/spec/catalogs/languages/english.json +0 -12
  258. package/dist/spec/catalogs/languages/estonian.json +0 -12
  259. package/dist/spec/catalogs/languages/filipino.json +0 -12
  260. package/dist/spec/catalogs/languages/finnish.json +0 -12
  261. package/dist/spec/catalogs/languages/french.json +0 -12
  262. package/dist/spec/catalogs/languages/fulfulde.json +0 -12
  263. package/dist/spec/catalogs/languages/galician.json +0 -12
  264. package/dist/spec/catalogs/languages/georgian.json +0 -12
  265. package/dist/spec/catalogs/languages/german.json +0 -12
  266. package/dist/spec/catalogs/languages/greek.json +0 -12
  267. package/dist/spec/catalogs/languages/gujarati.json +0 -12
  268. package/dist/spec/catalogs/languages/hausa.json +0 -12
  269. package/dist/spec/catalogs/languages/hebrew.json +0 -12
  270. package/dist/spec/catalogs/languages/hindi.json +0 -12
  271. package/dist/spec/catalogs/languages/hungarian.json +0 -12
  272. package/dist/spec/catalogs/languages/igbo.json +0 -12
  273. package/dist/spec/catalogs/languages/index.json +0 -567
  274. package/dist/spec/catalogs/languages/indonesian.json +0 -12
  275. package/dist/spec/catalogs/languages/italian.json +0 -12
  276. package/dist/spec/catalogs/languages/japanese.json +0 -12
  277. package/dist/spec/catalogs/languages/kannada.json +0 -12
  278. package/dist/spec/catalogs/languages/kazakh.json +0 -12
  279. package/dist/spec/catalogs/languages/khmer.json +0 -12
  280. package/dist/spec/catalogs/languages/kinyarwanda.json +0 -12
  281. package/dist/spec/catalogs/languages/korean.json +0 -12
  282. package/dist/spec/catalogs/languages/kurmanji.json +0 -12
  283. package/dist/spec/catalogs/languages/latvian.json +0 -12
  284. package/dist/spec/catalogs/languages/lithuanian.json +0 -12
  285. package/dist/spec/catalogs/languages/macedonian.json +0 -12
  286. package/dist/spec/catalogs/languages/malagasy.json +0 -12
  287. package/dist/spec/catalogs/languages/malay.json +0 -12
  288. package/dist/spec/catalogs/languages/malayalam.json +0 -12
  289. package/dist/spec/catalogs/languages/maori.json +0 -12
  290. package/dist/spec/catalogs/languages/marathi.json +0 -12
  291. package/dist/spec/catalogs/languages/mongolian.json +0 -12
  292. package/dist/spec/catalogs/languages/nepali.json +0 -12
  293. package/dist/spec/catalogs/languages/norwegian.json +0 -12
  294. package/dist/spec/catalogs/languages/odia.json +0 -12
  295. package/dist/spec/catalogs/languages/oromo.json +0 -12
  296. package/dist/spec/catalogs/languages/pashto.json +0 -12
  297. package/dist/spec/catalogs/languages/persian.json +0 -12
  298. package/dist/spec/catalogs/languages/polish.json +0 -12
  299. package/dist/spec/catalogs/languages/portuguese.json +0 -12
  300. package/dist/spec/catalogs/languages/punjabi-gurmukhi.json +0 -12
  301. package/dist/spec/catalogs/languages/punjabi-shahmukhi.json +0 -12
  302. package/dist/spec/catalogs/languages/romanian.json +0 -12
  303. package/dist/spec/catalogs/languages/russian.json +0 -12
  304. package/dist/spec/catalogs/languages/serbian-cyrillic.json +0 -12
  305. package/dist/spec/catalogs/languages/serbian-latin.json +0 -12
  306. package/dist/spec/catalogs/languages/shona.json +0 -12
  307. package/dist/spec/catalogs/languages/slovak.json +0 -12
  308. package/dist/spec/catalogs/languages/slovenian.json +0 -12
  309. package/dist/spec/catalogs/languages/somali.json +0 -12
  310. package/dist/spec/catalogs/languages/spanish.json +0 -12
  311. package/dist/spec/catalogs/languages/swahili.json +0 -12
  312. package/dist/spec/catalogs/languages/swedish.json +0 -12
  313. package/dist/spec/catalogs/languages/tagalog.json +0 -12
  314. package/dist/spec/catalogs/languages/tajik.json +0 -12
  315. package/dist/spec/catalogs/languages/tamil.json +0 -12
  316. package/dist/spec/catalogs/languages/telugu.json +0 -12
  317. package/dist/spec/catalogs/languages/thai.json +0 -12
  318. package/dist/spec/catalogs/languages/turkish.json +0 -12
  319. package/dist/spec/catalogs/languages/ukrainian.json +0 -12
  320. package/dist/spec/catalogs/languages/urdu.json +0 -12
  321. package/dist/spec/catalogs/languages/uzbek-latin.json +0 -12
  322. package/dist/spec/catalogs/languages/vietnamese-quoc-ngu.json +0 -12
  323. package/dist/spec/catalogs/languages/xhosa.json +0 -12
  324. package/dist/spec/catalogs/languages/yoruba.json +0 -12
  325. package/dist/spec/catalogs/languages/zulu.json +0 -12
  326. package/dist/spec/catalogs/layouts/action-plan.json +0 -29
  327. package/dist/spec/catalogs/layouts/agenda.json +0 -28
  328. package/dist/spec/catalogs/layouts/appendix-index.json +0 -30
  329. package/dist/spec/catalogs/layouts/architecture-stack.json +0 -29
  330. package/dist/spec/catalogs/layouts/assumptions-dependencies.json +0 -29
  331. package/dist/spec/catalogs/layouts/before-after.json +0 -35
  332. package/dist/spec/catalogs/layouts/benchmark-target-table.json +0 -29
  333. package/dist/spec/catalogs/layouts/blank.json +0 -16
  334. package/dist/spec/catalogs/layouts/bullet-list.json +0 -32
  335. package/dist/spec/catalogs/layouts/business-model-canvas.json +0 -94
  336. package/dist/spec/catalogs/layouts/capability-map.json +0 -80
  337. package/dist/spec/catalogs/layouts/case-study.json +0 -29
  338. package/dist/spec/catalogs/layouts/chapter-recap.json +0 -28
  339. package/dist/spec/catalogs/layouts/chart-1x-title-center.json +0 -30
  340. package/dist/spec/catalogs/layouts/chart-1x.json +0 -34
  341. package/dist/spec/catalogs/layouts/chart-2x-title-center.json +0 -36
  342. package/dist/spec/catalogs/layouts/chart-2x-vertical-title-left.json +0 -37
  343. package/dist/spec/catalogs/layouts/chart-2x.json +0 -65
  344. package/dist/spec/catalogs/layouts/chart-3x-bottom-vertical-title-left.json +0 -52
  345. package/dist/spec/catalogs/layouts/chart-3x-left-title-center.json +0 -51
  346. package/dist/spec/catalogs/layouts/chart-3x-left.json +0 -46
  347. package/dist/spec/catalogs/layouts/chart-3x-right-title-center.json +0 -51
  348. package/dist/spec/catalogs/layouts/chart-3x-right.json +0 -46
  349. package/dist/spec/catalogs/layouts/chart-3x-title-center.json +0 -39
  350. package/dist/spec/catalogs/layouts/chart-3x-top-vertical-title-left.json +0 -52
  351. package/dist/spec/catalogs/layouts/chart-3x.json +0 -83
  352. package/dist/spec/catalogs/layouts/circular-lifecycle.json +0 -29
  353. package/dist/spec/catalogs/layouts/code-1x.json +0 -29
  354. package/dist/spec/catalogs/layouts/comparison.json +0 -35
  355. package/dist/spec/catalogs/layouts/competitive-landscape.json +0 -30
  356. package/dist/spec/catalogs/layouts/customer-journey.json +0 -30
  357. package/dist/spec/catalogs/layouts/customer-logos.json +0 -32
  358. package/dist/spec/catalogs/layouts/dashboard.json +0 -67
  359. package/dist/spec/catalogs/layouts/data-visualization.json +0 -39
  360. package/dist/spec/catalogs/layouts/decision-tree.json +0 -30
  361. package/dist/spec/catalogs/layouts/detailed-data-table.json +0 -35
  362. package/dist/spec/catalogs/layouts/ecosystem-map.json +0 -30
  363. package/dist/spec/catalogs/layouts/executive-decision.json +0 -32
  364. package/dist/spec/catalogs/layouts/executive-summary.json +0 -32
  365. package/dist/spec/catalogs/layouts/extract/canonical.json +0 -575
  366. package/dist/spec/catalogs/layouts/faq.json +0 -29
  367. package/dist/spec/catalogs/layouts/feature-comparison-matrix.json +0 -29
  368. package/dist/spec/catalogs/layouts/forecast-scenario.json +0 -39
  369. package/dist/spec/catalogs/layouts/funnel-pyramid.json +0 -32
  370. package/dist/spec/catalogs/layouts/gantt-project-plan.json +0 -32
  371. package/dist/spec/catalogs/layouts/geographic-map.json +0 -30
  372. package/dist/spec/catalogs/layouts/heatmap-cohort.json +0 -32
  373. package/dist/spec/catalogs/layouts/hub-and-spoke.json +0 -29
  374. package/dist/spec/catalogs/layouts/icon-grid.json +0 -30
  375. package/dist/spec/catalogs/layouts/image-1x-crop-title-center.json +0 -32
  376. package/dist/spec/catalogs/layouts/image-1x-crop-title-left.json +0 -32
  377. package/dist/spec/catalogs/layouts/image-1x-crop.json +0 -27
  378. package/dist/spec/catalogs/layouts/image-1x-fit-title-center.json +0 -32
  379. package/dist/spec/catalogs/layouts/image-1x.json +0 -32
  380. package/dist/spec/catalogs/layouts/image-2x-crop-title-center.json +0 -38
  381. package/dist/spec/catalogs/layouts/image-2x-crop-vertical-title-left.json +0 -39
  382. package/dist/spec/catalogs/layouts/image-2x-crop-vertical.json +0 -34
  383. package/dist/spec/catalogs/layouts/image-2x-crop.json +0 -33
  384. package/dist/spec/catalogs/layouts/image-2x-fit-title-center.json +0 -38
  385. package/dist/spec/catalogs/layouts/image-2x-fit-vertical-title-left.json +0 -39
  386. package/dist/spec/catalogs/layouts/image-2x-fit-vertical.json +0 -34
  387. package/dist/spec/catalogs/layouts/image-2x.json +0 -63
  388. package/dist/spec/catalogs/layouts/image-3x-crop-title-center.json +0 -41
  389. package/dist/spec/catalogs/layouts/image-3x-crop-vertical-title-left.json +0 -42
  390. package/dist/spec/catalogs/layouts/image-3x-crop-vertical.json +0 -37
  391. package/dist/spec/catalogs/layouts/image-3x-crop.json +0 -36
  392. package/dist/spec/catalogs/layouts/image-3x-fit-title-center.json +0 -41
  393. package/dist/spec/catalogs/layouts/image-3x-fit-vertical-title-left.json +0 -42
  394. package/dist/spec/catalogs/layouts/image-3x-fit-vertical.json +0 -37
  395. package/dist/spec/catalogs/layouts/image-3x-fit.json +0 -36
  396. package/dist/spec/catalogs/layouts/image-3x.json +0 -81
  397. package/dist/spec/catalogs/layouts/image-focus.json +0 -30
  398. package/dist/spec/catalogs/layouts/image-only-1x-crop-title-center.json +0 -31
  399. package/dist/spec/catalogs/layouts/image-only-1x-fit-title-center.json +0 -31
  400. package/dist/spec/catalogs/layouts/image-only-2x-crop-title-center.json +0 -37
  401. package/dist/spec/catalogs/layouts/image-only-2x-crop-vertical-title-left.json +0 -38
  402. package/dist/spec/catalogs/layouts/image-only-2x-crop-vertical.json +0 -33
  403. package/dist/spec/catalogs/layouts/image-only-2x-fit-title-center.json +0 -37
  404. package/dist/spec/catalogs/layouts/image-only-2x-fit-vertical-title-left.json +0 -38
  405. package/dist/spec/catalogs/layouts/image-only-2x-fit-vertical.json +0 -33
  406. package/dist/spec/catalogs/layouts/image-only-3x-crop-title-center.json +0 -40
  407. package/dist/spec/catalogs/layouts/image-only-3x-crop-vertical-title-left.json +0 -41
  408. package/dist/spec/catalogs/layouts/image-only-3x-crop-vertical.json +0 -36
  409. package/dist/spec/catalogs/layouts/image-only-3x-crop.json +0 -35
  410. package/dist/spec/catalogs/layouts/image-only-3x-fit-title-center.json +0 -40
  411. package/dist/spec/catalogs/layouts/image-only-3x-fit-vertical-title-left.json +0 -41
  412. package/dist/spec/catalogs/layouts/image-only-3x-fit-vertical.json +0 -36
  413. package/dist/spec/catalogs/layouts/image-only-3x-fit.json +0 -35
  414. package/dist/spec/catalogs/layouts/index.json +0 -1399
  415. package/dist/spec/catalogs/layouts/key-takeaway.json +0 -25
  416. package/dist/spec/catalogs/layouts/kpi-scorecard.json +0 -83
  417. package/dist/spec/catalogs/layouts/list-1x-box-title-center.json +0 -32
  418. package/dist/spec/catalogs/layouts/list-1x-box-vertical-title-center.json +0 -33
  419. package/dist/spec/catalogs/layouts/list-1x-box-vertical-title-left.json +0 -33
  420. package/dist/spec/catalogs/layouts/list-1x-box-vertical.json +0 -28
  421. package/dist/spec/catalogs/layouts/list-1x-box.json +0 -27
  422. package/dist/spec/catalogs/layouts/list-1x-itemimage-title-center.json +0 -32
  423. package/dist/spec/catalogs/layouts/list-1x-itemimage-vertical-title-center.json +0 -33
  424. package/dist/spec/catalogs/layouts/list-1x-title-center.json +0 -31
  425. package/dist/spec/catalogs/layouts/list-1x-vertical-title-center.json +0 -32
  426. package/dist/spec/catalogs/layouts/list-1x.json +0 -29
  427. package/dist/spec/catalogs/layouts/list-2x-box-title-center.json +0 -38
  428. package/dist/spec/catalogs/layouts/list-2x-box-vertical-title-center.json +0 -39
  429. package/dist/spec/catalogs/layouts/list-2x-box-vertical-title-left.json +0 -39
  430. package/dist/spec/catalogs/layouts/list-2x-box-vertical.json +0 -34
  431. package/dist/spec/catalogs/layouts/list-2x-box.json +0 -33
  432. package/dist/spec/catalogs/layouts/list-2x-itemimage-title-center.json +0 -38
  433. package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical-title-center.json +0 -39
  434. package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical-title-left.json +0 -39
  435. package/dist/spec/catalogs/layouts/list-2x-itemimage-vertical.json +0 -34
  436. package/dist/spec/catalogs/layouts/list-2x-title-center.json +0 -37
  437. package/dist/spec/catalogs/layouts/list-2x-vertical-title-center.json +0 -38
  438. package/dist/spec/catalogs/layouts/list-2x-vertical-title-left.json +0 -38
  439. package/dist/spec/catalogs/layouts/list-2x-vertical.json +0 -33
  440. package/dist/spec/catalogs/layouts/list-2x.json +0 -35
  441. package/dist/spec/catalogs/layouts/list-3x-box-title-center.json +0 -41
  442. package/dist/spec/catalogs/layouts/list-3x-box-vertical-title-center.json +0 -42
  443. package/dist/spec/catalogs/layouts/list-3x-box-vertical-title-left.json +0 -42
  444. package/dist/spec/catalogs/layouts/list-3x-box-vertical.json +0 -37
  445. package/dist/spec/catalogs/layouts/list-3x-box.json +0 -36
  446. package/dist/spec/catalogs/layouts/list-3x-itemimage-title-center.json +0 -41
  447. package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical-title-center.json +0 -42
  448. package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical-title-left.json +0 -42
  449. package/dist/spec/catalogs/layouts/list-3x-itemimage-vertical.json +0 -37
  450. package/dist/spec/catalogs/layouts/list-3x-itemimage.json +0 -36
  451. package/dist/spec/catalogs/layouts/list-3x-title-center.json +0 -40
  452. package/dist/spec/catalogs/layouts/list-3x-vertical-title-center.json +0 -41
  453. package/dist/spec/catalogs/layouts/list-3x-vertical-title-left.json +0 -41
  454. package/dist/spec/catalogs/layouts/list-3x-vertical.json +0 -36
  455. package/dist/spec/catalogs/layouts/list-3x.json +0 -38
  456. package/dist/spec/catalogs/layouts/list-4x-box-title-center.json +0 -45
  457. package/dist/spec/catalogs/layouts/list-4x-box-vertical-title-center.json +0 -45
  458. package/dist/spec/catalogs/layouts/list-4x-box-vertical-title-left.json +0 -45
  459. package/dist/spec/catalogs/layouts/list-4x-box-vertical.json +0 -40
  460. package/dist/spec/catalogs/layouts/list-4x-box.json +0 -40
  461. package/dist/spec/catalogs/layouts/list-4x-itemimage-title-center.json +0 -45
  462. package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical-title-center.json +0 -45
  463. package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical-title-left.json +0 -45
  464. package/dist/spec/catalogs/layouts/list-4x-itemimage-vertical.json +0 -40
  465. package/dist/spec/catalogs/layouts/list-4x-title-center.json +0 -44
  466. package/dist/spec/catalogs/layouts/list-4x-vertical-title-center.json +0 -44
  467. package/dist/spec/catalogs/layouts/list-4x-vertical-title-left.json +0 -44
  468. package/dist/spec/catalogs/layouts/list-4x-vertical.json +0 -39
  469. package/dist/spec/catalogs/layouts/list-4x.json +0 -42
  470. package/dist/spec/catalogs/layouts/list-5x-box-title-center.json +0 -48
  471. package/dist/spec/catalogs/layouts/list-5x-box-vertical-title-center.json +0 -50
  472. package/dist/spec/catalogs/layouts/list-5x-box-vertical-title-left.json +0 -50
  473. package/dist/spec/catalogs/layouts/list-5x-box-vertical.json +0 -45
  474. package/dist/spec/catalogs/layouts/list-5x-box.json +0 -43
  475. package/dist/spec/catalogs/layouts/list-5x-itemimage-title-center.json +0 -48
  476. package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical-title-center.json +0 -48
  477. package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical-title-left.json +0 -48
  478. package/dist/spec/catalogs/layouts/list-5x-itemimage-vertical.json +0 -43
  479. package/dist/spec/catalogs/layouts/list-5x-title-center.json +0 -47
  480. package/dist/spec/catalogs/layouts/list-5x-vertical-title-center.json +0 -47
  481. package/dist/spec/catalogs/layouts/list-5x-vertical-title-left.json +0 -47
  482. package/dist/spec/catalogs/layouts/list-5x-vertical.json +0 -42
  483. package/dist/spec/catalogs/layouts/list-5x.json +0 -45
  484. package/dist/spec/catalogs/layouts/list-6x-box-title-center.json +0 -51
  485. package/dist/spec/catalogs/layouts/list-6x-box-vertical-title-center.json +0 -53
  486. package/dist/spec/catalogs/layouts/list-6x-box-vertical-title-left.json +0 -53
  487. package/dist/spec/catalogs/layouts/list-6x-box-vertical.json +0 -48
  488. package/dist/spec/catalogs/layouts/list-6x-box.json +0 -46
  489. package/dist/spec/catalogs/layouts/list-6x-itemimage-title-center.json +0 -51
  490. package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical-title-center.json +0 -51
  491. package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical-title-left.json +0 -51
  492. package/dist/spec/catalogs/layouts/list-6x-itemimage-vertical.json +0 -46
  493. package/dist/spec/catalogs/layouts/list-6x-title-center.json +0 -50
  494. package/dist/spec/catalogs/layouts/list-6x-vertical-title-center.json +0 -50
  495. package/dist/spec/catalogs/layouts/list-6x-vertical-title-left.json +0 -50
  496. package/dist/spec/catalogs/layouts/list-6x-vertical.json +0 -45
  497. package/dist/spec/catalogs/layouts/list-6x.json +0 -48
  498. package/dist/spec/catalogs/layouts/logic-tree.json +0 -98
  499. package/dist/spec/catalogs/layouts/market-size.json +0 -53
  500. package/dist/spec/catalogs/layouts/matrix-quadrant.json +0 -42
  501. package/dist/spec/catalogs/layouts/media-1x.json +0 -29
  502. package/dist/spec/catalogs/layouts/network-dependency-map.json +0 -30
  503. package/dist/spec/catalogs/layouts/number-1x-box-title-center.json +0 -30
  504. package/dist/spec/catalogs/layouts/number-1x-box.json +0 -25
  505. package/dist/spec/catalogs/layouts/number-1x-title-center.json +0 -29
  506. package/dist/spec/catalogs/layouts/number-1x.json +0 -28
  507. package/dist/spec/catalogs/layouts/number-2x-box-title-center.json +0 -36
  508. package/dist/spec/catalogs/layouts/number-2x-box.json +0 -31
  509. package/dist/spec/catalogs/layouts/number-2x-title-center.json +0 -35
  510. package/dist/spec/catalogs/layouts/number-2x.json +0 -34
  511. package/dist/spec/catalogs/layouts/number-3x-box-title-center.json +0 -39
  512. package/dist/spec/catalogs/layouts/number-3x-box.json +0 -34
  513. package/dist/spec/catalogs/layouts/number-3x-title-center.json +0 -38
  514. package/dist/spec/catalogs/layouts/number-3x.json +0 -37
  515. package/dist/spec/catalogs/layouts/number-4x-box-title-center.json +0 -43
  516. package/dist/spec/catalogs/layouts/number-4x-box.json +0 -38
  517. package/dist/spec/catalogs/layouts/number-4x-title-center.json +0 -42
  518. package/dist/spec/catalogs/layouts/number-4x.json +0 -41
  519. package/dist/spec/catalogs/layouts/number-5x-box-title-center.json +0 -46
  520. package/dist/spec/catalogs/layouts/number-5x-box.json +0 -41
  521. package/dist/spec/catalogs/layouts/number-5x-title-center.json +0 -45
  522. package/dist/spec/catalogs/layouts/number-5x.json +0 -44
  523. package/dist/spec/catalogs/layouts/number-6x-box-title-center.json +0 -49
  524. package/dist/spec/catalogs/layouts/number-6x-box.json +0 -44
  525. package/dist/spec/catalogs/layouts/number-6x-title-center.json +0 -48
  526. package/dist/spec/catalogs/layouts/number-6x.json +0 -47
  527. package/dist/spec/catalogs/layouts/one-column-explainer.json +0 -29
  528. package/dist/spec/catalogs/layouts/org-chart.json +0 -86
  529. package/dist/spec/catalogs/layouts/persona-grid.json +0 -30
  530. package/dist/spec/catalogs/layouts/photo-grid.json +0 -43
  531. package/dist/spec/catalogs/layouts/pricing-table.json +0 -29
  532. package/dist/spec/catalogs/layouts/process-flow.json +0 -29
  533. package/dist/spec/catalogs/layouts/product-feature.json +0 -30
  534. package/dist/spec/catalogs/layouts/pros-cons.json +0 -35
  535. package/dist/spec/catalogs/layouts/qa-discussion.json +0 -30
  536. package/dist/spec/catalogs/layouts/quote-1x.json +0 -23
  537. package/dist/spec/catalogs/layouts/quote-highlight.json +0 -29
  538. package/dist/spec/catalogs/layouts/raci-matrix.json +0 -29
  539. package/dist/spec/catalogs/layouts/risk-heatmap.json +0 -29
  540. package/dist/spec/catalogs/layouts/roadmap.json +0 -29
  541. package/dist/spec/catalogs/layouts/screenshot-walkthrough.json +0 -30
  542. package/dist/spec/catalogs/layouts/section-divider.json +0 -28
  543. package/dist/spec/catalogs/layouts/single-message-statement.json +0 -25
  544. package/dist/spec/catalogs/layouts/stats-metrics.json +0 -39
  545. package/dist/spec/catalogs/layouts/status-rag.json +0 -29
  546. package/dist/spec/catalogs/layouts/swimlane-process.json +0 -30
  547. package/dist/spec/catalogs/layouts/swot-analysis.json +0 -42
  548. package/dist/spec/catalogs/layouts/table-1x.json +0 -29
  549. package/dist/spec/catalogs/layouts/team-bio.json +0 -30
  550. package/dist/spec/catalogs/layouts/testimonial-grid.json +0 -38
  551. package/dist/spec/catalogs/layouts/text-1x-box-title-center.json +0 -31
  552. package/dist/spec/catalogs/layouts/text-1x-box-title-left.json +0 -31
  553. package/dist/spec/catalogs/layouts/text-1x-center-box-title-center.json +0 -31
  554. package/dist/spec/catalogs/layouts/text-1x-center-box-title-left.json +0 -31
  555. package/dist/spec/catalogs/layouts/text-1x-center-box.json +0 -26
  556. package/dist/spec/catalogs/layouts/text-1x-center-title-center.json +0 -30
  557. package/dist/spec/catalogs/layouts/text-1x-center-title-left.json +0 -30
  558. package/dist/spec/catalogs/layouts/text-1x-center.json +0 -25
  559. package/dist/spec/catalogs/layouts/text-1x-left-box.json +0 -26
  560. package/dist/spec/catalogs/layouts/text-1x-title-center.json +0 -30
  561. package/dist/spec/catalogs/layouts/text-1x.json +0 -23
  562. package/dist/spec/catalogs/layouts/text-2x-box-title-center.json +0 -37
  563. package/dist/spec/catalogs/layouts/text-2x-box-vertical-title-left.json +0 -37
  564. package/dist/spec/catalogs/layouts/text-2x-center-box-title-center.json +0 -37
  565. package/dist/spec/catalogs/layouts/text-2x-center-box-vertical-title-left.json +0 -37
  566. package/dist/spec/catalogs/layouts/text-2x-center-box.json +0 -32
  567. package/dist/spec/catalogs/layouts/text-2x-center-title-center.json +0 -36
  568. package/dist/spec/catalogs/layouts/text-2x-center-vertical-title-left.json +0 -36
  569. package/dist/spec/catalogs/layouts/text-2x-center.json +0 -31
  570. package/dist/spec/catalogs/layouts/text-2x-left-box.json +0 -32
  571. package/dist/spec/catalogs/layouts/text-2x-title-center.json +0 -36
  572. package/dist/spec/catalogs/layouts/text-2x-vertical-title-left.json +0 -36
  573. package/dist/spec/catalogs/layouts/text-2x.json +0 -29
  574. package/dist/spec/catalogs/layouts/text-3x-box-title-center.json +0 -40
  575. package/dist/spec/catalogs/layouts/text-3x-box-vertical-title-left.json +0 -41
  576. package/dist/spec/catalogs/layouts/text-3x-center-box-title-center.json +0 -40
  577. package/dist/spec/catalogs/layouts/text-3x-center-box-vertical-title-left.json +0 -41
  578. package/dist/spec/catalogs/layouts/text-3x-center-box.json +0 -35
  579. package/dist/spec/catalogs/layouts/text-3x-center-title-center.json +0 -39
  580. package/dist/spec/catalogs/layouts/text-3x-center-vertical-title-left.json +0 -40
  581. package/dist/spec/catalogs/layouts/text-3x-center.json +0 -34
  582. package/dist/spec/catalogs/layouts/text-3x-left-box.json +0 -35
  583. package/dist/spec/catalogs/layouts/text-3x-left.json +0 -34
  584. package/dist/spec/catalogs/layouts/text-3x-title-center.json +0 -39
  585. package/dist/spec/catalogs/layouts/text-3x-vertical-title-left.json +0 -40
  586. package/dist/spec/catalogs/layouts/text-3x.json +0 -32
  587. package/dist/spec/catalogs/layouts/thank-you-cta.json +0 -28
  588. package/dist/spec/catalogs/layouts/three-column.json +0 -39
  589. package/dist/spec/catalogs/layouts/timeline-1x.json +0 -23
  590. package/dist/spec/catalogs/layouts/timeline.json +0 -32
  591. package/dist/spec/catalogs/layouts/title-center-box.json +0 -27
  592. package/dist/spec/catalogs/layouts/title-center-image-bottom.json +0 -34
  593. package/dist/spec/catalogs/layouts/title-center-image-top.json +0 -34
  594. package/dist/spec/catalogs/layouts/title-center.json +0 -26
  595. package/dist/spec/catalogs/layouts/title-left-image-bottom.json +0 -34
  596. package/dist/spec/catalogs/layouts/title-left-image-left.json +0 -34
  597. package/dist/spec/catalogs/layouts/title-left-image-right.json +0 -34
  598. package/dist/spec/catalogs/layouts/title-left-image-top.json +0 -34
  599. package/dist/spec/catalogs/layouts/title-slide.json +0 -28
  600. package/dist/spec/catalogs/layouts/title-subtitle.json +0 -23
  601. package/dist/spec/catalogs/layouts/title.json +0 -20
  602. package/dist/spec/catalogs/layouts/two-column.json +0 -36
  603. package/dist/spec/catalogs/layouts/venn-overlap.json +0 -29
  604. package/dist/spec/catalogs/layouts/waterfall-bridge.json +0 -39
  605. package/dist/spec/catalogs/layouts/wheel-radial.json +0 -29
  606. package/dist/spec/catalogs/manifest.json +0 -111
  607. package/dist/spec/catalogs/narratives/board-meeting.json +0 -192
  608. package/dist/spec/catalogs/narratives/business-narrative.json +0 -87
  609. package/dist/spec/catalogs/narratives/business-review.json +0 -119
  610. package/dist/spec/catalogs/narratives/capacity-planning.json +0 -88
  611. package/dist/spec/catalogs/narratives/challenge-resolution.json +0 -80
  612. package/dist/spec/catalogs/narratives/change-story.json +0 -64
  613. package/dist/spec/catalogs/narratives/classic-story.json +0 -78
  614. package/dist/spec/catalogs/narratives/company-intro.json +0 -96
  615. package/dist/spec/catalogs/narratives/conference-talk.json +0 -54
  616. package/dist/spec/catalogs/narratives/data-story.json +0 -65
  617. package/dist/spec/catalogs/narratives/early-startup-pitch.json +0 -119
  618. package/dist/spec/catalogs/narratives/educate.json +0 -95
  619. package/dist/spec/catalogs/narratives/employee-review.json +0 -87
  620. package/dist/spec/catalogs/narratives/failure-analysis.json +0 -104
  621. package/dist/spec/catalogs/narratives/focus.json +0 -120
  622. package/dist/spec/catalogs/narratives/golden-circle.json +0 -50
  623. package/dist/spec/catalogs/narratives/heros-journey.json +0 -64
  624. package/dist/spec/catalogs/narratives/index.json +0 -1041
  625. package/dist/spec/catalogs/narratives/innovation.json +0 -96
  626. package/dist/spec/catalogs/narratives/justice.json +0 -112
  627. package/dist/spec/catalogs/narratives/marketing-strategy.json +0 -111
  628. package/dist/spec/catalogs/narratives/performance-improvement-plan.json +0 -87
  629. package/dist/spec/catalogs/narratives/performance-review.json +0 -111
  630. package/dist/spec/catalogs/narratives/persuade.json +0 -94
  631. package/dist/spec/catalogs/narratives/persuasive-sales.json +0 -87
  632. package/dist/spec/catalogs/narratives/pitch-deck.json +0 -107
  633. package/dist/spec/catalogs/narratives/problem-solution.json +0 -61
  634. package/dist/spec/catalogs/narratives/product-launch.json +0 -104
  635. package/dist/spec/catalogs/narratives/project-proposal.json +0 -104
  636. package/dist/spec/catalogs/narratives/pyramid-principle.json +0 -48
  637. package/dist/spec/catalogs/narratives/qbr.json +0 -85
  638. package/dist/spec/catalogs/narratives/rags-to-riches.json +0 -80
  639. package/dist/spec/catalogs/narratives/reveal.json +0 -87
  640. package/dist/spec/catalogs/narratives/scqa.json +0 -55
  641. package/dist/spec/catalogs/narratives/situation-complication-resolution.json +0 -56
  642. package/dist/spec/catalogs/narratives/sparkline.json +0 -56
  643. package/dist/spec/catalogs/narratives/star-method.json +0 -56
  644. package/dist/spec/catalogs/narratives/status-update.json +0 -72
  645. package/dist/spec/catalogs/narratives/strategic-advisory.json +0 -85
  646. package/dist/spec/catalogs/narratives/strategic-narrative.json +0 -61
  647. package/dist/spec/catalogs/narratives/survey-analysis.json +0 -104
  648. package/dist/spec/catalogs/narratives/survival-story.json +0 -103
  649. package/dist/spec/catalogs/narratives/transformation-arc.json +0 -50
  650. package/dist/spec/catalogs/narratives/trend-analysis.json +0 -79
  651. package/dist/spec/catalogs/narratives/underdog-victory.json +0 -87
  652. package/dist/spec/catalogs/narratives/venture-pitch.json +0 -109
  653. package/dist/spec/catalogs/narratives/vision-roadmap.json +0 -65
  654. package/dist/spec/catalogs/narratives/weekly-progress.json +0 -103
  655. package/dist/spec/catalogs/narratives/what-so-what-now-what.json +0 -48
  656. package/dist/spec/catalogs/purposes/align.json +0 -16
  657. package/dist/spec/catalogs/purposes/decide.json +0 -16
  658. package/dist/spec/catalogs/purposes/educate.json +0 -16
  659. package/dist/spec/catalogs/purposes/index.json +0 -63
  660. package/dist/spec/catalogs/purposes/inform.json +0 -16
  661. package/dist/spec/catalogs/purposes/persuade.json +0 -16
  662. package/dist/spec/catalogs/purposes/pitch.json +0 -16
  663. package/dist/spec/catalogs/purposes/plan.json +0 -16
  664. package/dist/spec/catalogs/purposes/report.json +0 -16
  665. package/dist/spec/catalogs/purposes/sell.json +0 -16
  666. package/dist/spec/catalogs/social-platforms/bluesky.json +0 -14
  667. package/dist/spec/catalogs/social-platforms/facebook.json +0 -14
  668. package/dist/spec/catalogs/social-platforms/github.json +0 -15
  669. package/dist/spec/catalogs/social-platforms/index.json +0 -69
  670. package/dist/spec/catalogs/social-platforms/instagram.json +0 -13
  671. package/dist/spec/catalogs/social-platforms/linkedin.json +0 -15
  672. package/dist/spec/catalogs/social-platforms/mastodon.json +0 -14
  673. package/dist/spec/catalogs/social-platforms/threads.json +0 -13
  674. package/dist/spec/catalogs/social-platforms/tiktok.json +0 -14
  675. package/dist/spec/catalogs/social-platforms/x.json +0 -14
  676. package/dist/spec/catalogs/social-platforms/youtube.json +0 -14
  677. package/dist/spec/catalogs/themes/bold.json +0 -13
  678. package/dist/spec/catalogs/themes/classic.json +0 -13
  679. package/dist/spec/catalogs/themes/dark.json +0 -13
  680. package/dist/spec/catalogs/themes/index.json +0 -33
  681. package/dist/spec/catalogs/themes/minimal.json +0 -13
  682. package/dist/spec/catalogs/tones/authoritative.json +0 -31
  683. package/dist/spec/catalogs/tones/casual.json +0 -31
  684. package/dist/spec/catalogs/tones/conversational.json +0 -31
  685. package/dist/spec/catalogs/tones/formal.json +0 -31
  686. package/dist/spec/catalogs/tones/index.json +0 -51
  687. package/dist/spec/catalogs/tones/inspirational.json +0 -31
  688. package/dist/spec/catalogs/tones/persuasive.json +0 -32
  689. package/dist/spec/catalogs/tones/technical.json +0 -31
  690. package/dist/spec/previews/layouts/action-plan.html +0 -1
  691. package/dist/spec/previews/layouts/agenda.html +0 -1
  692. package/dist/spec/previews/layouts/appendix-index.html +0 -1
  693. package/dist/spec/previews/layouts/architecture-stack.html +0 -1
  694. package/dist/spec/previews/layouts/assumptions-dependencies.html +0 -1
  695. package/dist/spec/previews/layouts/before-after.html +0 -1
  696. package/dist/spec/previews/layouts/benchmark-target-table.html +0 -1
  697. package/dist/spec/previews/layouts/bullet-list.html +0 -1
  698. package/dist/spec/previews/layouts/business-model-canvas.html +0 -1
  699. package/dist/spec/previews/layouts/capability-map.html +0 -1
  700. package/dist/spec/previews/layouts/case-study.html +0 -1
  701. package/dist/spec/previews/layouts/chapter-recap.html +0 -1
  702. package/dist/spec/previews/layouts/circular-lifecycle.html +0 -1
  703. package/dist/spec/previews/layouts/comparison.html +0 -1
  704. package/dist/spec/previews/layouts/competitive-landscape.html +0 -1
  705. package/dist/spec/previews/layouts/customer-journey.html +0 -1
  706. package/dist/spec/previews/layouts/customer-logos.html +0 -1
  707. package/dist/spec/previews/layouts/dashboard.html +0 -1
  708. package/dist/spec/previews/layouts/data-visualization.html +0 -1
  709. package/dist/spec/previews/layouts/decision-tree.html +0 -1
  710. package/dist/spec/previews/layouts/detailed-data-table.html +0 -1
  711. package/dist/spec/previews/layouts/ecosystem-map.html +0 -1
  712. package/dist/spec/previews/layouts/executive-decision.html +0 -1
  713. package/dist/spec/previews/layouts/executive-summary.html +0 -1
  714. package/dist/spec/previews/layouts/faq.html +0 -1
  715. package/dist/spec/previews/layouts/feature-comparison-matrix.html +0 -1
  716. package/dist/spec/previews/layouts/forecast-scenario.html +0 -1
  717. package/dist/spec/previews/layouts/funnel-pyramid.html +0 -1
  718. package/dist/spec/previews/layouts/gantt-project-plan.html +0 -1
  719. package/dist/spec/previews/layouts/geographic-map.html +0 -1
  720. package/dist/spec/previews/layouts/heatmap-cohort.html +0 -1
  721. package/dist/spec/previews/layouts/hub-and-spoke.html +0 -1
  722. package/dist/spec/previews/layouts/icon-grid.html +0 -1
  723. package/dist/spec/previews/layouts/image-focus.html +0 -1
  724. package/dist/spec/previews/layouts/index.json +0 -357
  725. package/dist/spec/previews/layouts/key-takeaway.html +0 -1
  726. package/dist/spec/previews/layouts/kpi-scorecard.html +0 -1
  727. package/dist/spec/previews/layouts/logic-tree.html +0 -1
  728. package/dist/spec/previews/layouts/market-size.html +0 -1
  729. package/dist/spec/previews/layouts/matrix-quadrant.html +0 -1
  730. package/dist/spec/previews/layouts/network-dependency-map.html +0 -1
  731. package/dist/spec/previews/layouts/one-column-explainer.html +0 -1
  732. package/dist/spec/previews/layouts/org-chart.html +0 -1
  733. package/dist/spec/previews/layouts/persona-grid.html +0 -1
  734. package/dist/spec/previews/layouts/photo-grid.html +0 -1
  735. package/dist/spec/previews/layouts/pricing-table.html +0 -1
  736. package/dist/spec/previews/layouts/process-flow.html +0 -1
  737. package/dist/spec/previews/layouts/product-feature.html +0 -1
  738. package/dist/spec/previews/layouts/pros-cons.html +0 -1
  739. package/dist/spec/previews/layouts/qa-discussion.html +0 -1
  740. package/dist/spec/previews/layouts/quote-highlight.html +0 -1
  741. package/dist/spec/previews/layouts/raci-matrix.html +0 -1
  742. package/dist/spec/previews/layouts/risk-heatmap.html +0 -1
  743. package/dist/spec/previews/layouts/roadmap.html +0 -1
  744. package/dist/spec/previews/layouts/screenshot-walkthrough.html +0 -1
  745. package/dist/spec/previews/layouts/section-divider.html +0 -1
  746. package/dist/spec/previews/layouts/single-message-statement.html +0 -1
  747. package/dist/spec/previews/layouts/stats-metrics.html +0 -1
  748. package/dist/spec/previews/layouts/status-rag.html +0 -1
  749. package/dist/spec/previews/layouts/swimlane-process.html +0 -1
  750. package/dist/spec/previews/layouts/swot-analysis.html +0 -1
  751. package/dist/spec/previews/layouts/team-bio.html +0 -1
  752. package/dist/spec/previews/layouts/testimonial-grid.html +0 -1
  753. package/dist/spec/previews/layouts/thank-you-cta.html +0 -1
  754. package/dist/spec/previews/layouts/three-column.html +0 -1
  755. package/dist/spec/previews/layouts/timeline.html +0 -1
  756. package/dist/spec/previews/layouts/title-slide.html +0 -1
  757. package/dist/spec/previews/layouts/two-column.html +0 -1
  758. package/dist/spec/previews/layouts/venn-overlap.html +0 -1
  759. package/dist/spec/previews/layouts/waterfall-bridge.html +0 -1
  760. package/dist/spec/previews/layouts/wheel-radial.html +0 -1
@@ -1,4 +1,4 @@
1
- import { b as CatalogOptions } from './catalog-refs-BSfGELpt.js';
1
+ import { a as CatalogOptions } from './catalog-refs-CSHevLn1.js';
2
2
  import './chart-data-BnNqgnC-.js';
3
3
 
4
4
  /** Canonical table grid. No renderer, fonts, DOM or network dependencies. */
@@ -45,10 +45,12 @@ declare function tableGrid(value: unknown, path?: string): TableGrid;
45
45
  declare function tableRowBoundaries(value: unknown): number[];
46
46
 
47
47
  /** The `design` keys that a layout record, the deck and a slide all share and that composition resolves per key. */
48
- declare const DESIGN_HINT_KEYS: readonly ["titleAlignment", "contentAlignment", "contentBox", "contentDirection", "chartPrimary", "imageFit", "listBullet"];
48
+ declare const DESIGN_HINT_KEYS: readonly ["titleAlignment", "contentAlignment", "contentBox", "contentDirection", "chartPrimary", "imageFit", "listBullet", "mirror"];
49
49
  type DesignHintKey = typeof DESIGN_HINT_KEYS[number];
50
- /** Where an effective design hint came from: the slide's own `design`, the deck's `design`, or the slide's layout record. */
51
- type DesignHintSource = 'slide' | 'deck' | 'layout';
50
+ /** The design keys a theme record may carry (`theme.design`), so a house style such as boxed content is set once. */
51
+ declare const THEME_DESIGN_KEYS: readonly ["titleAlignment", "contentAlignment", "contentBox", "contentDirection", "imageFit", "listBullet"];
52
+ /** Where an effective design hint came from: the slide's own `design`, the deck's `design`, the resolved theme record, or the slide's layout record. */
53
+ type DesignHintSource = 'slide' | 'deck' | 'theme' | 'layout';
52
54
  /** The effective value of every shared design key. A key nobody sets is absent, so the engine default applies. */
53
55
  interface DesignHints {
54
56
  titleAlignment?: 'left' | 'center' | 'right';
@@ -58,6 +60,8 @@ interface DesignHints {
58
60
  chartPrimary?: 'none' | 'top' | 'bottom' | 'left' | 'right';
59
61
  imageFit?: 'cover' | 'contain' | 'stretch';
60
62
  listBullet?: 'character' | 'image';
63
+ /** A layout template drawn mirrored: each row's cells and the column sizes reversed (OPF 0.19). Logical, so a right-to-left deck mirrors on top. */
64
+ mirror?: boolean;
61
65
  }
62
66
  /** The effective hints plus which level supplied each key and the document path that names it. */
63
67
  interface ResolvedDesignHints extends DesignHints {
@@ -65,7 +69,7 @@ interface ResolvedDesignHints extends DesignHints {
65
69
  sources: {
66
70
  [K in DesignHintKey]?: DesignHintSource;
67
71
  };
68
- /** Path of the supplying value: `slides.N.design.key`, `design.key`, or for a layout `slides.N.layout` (the reference that selected the record). */
72
+ /** Path of the supplying value: `slides.N.design.key`, `design.key`, for a theme the reference that selected it (`slides.N.design.theme` or `design.theme`), or for a layout `slides.N.layout` (the reference that selected the record). */
69
73
  paths: {
70
74
  [K in DesignHintKey]?: string;
71
75
  };
@@ -75,6 +79,8 @@ interface ResolveDesignHintsOptions {
75
79
  slide?: unknown;
76
80
  /** The slide's resolved layout record, for its `design`. */
77
81
  layout?: unknown;
82
+ /** The slide's resolved theme record, for its `design` (THEME_DESIGN_KEYS only). */
83
+ theme?: unknown;
78
84
  /** The document, for the deck's `design`. */
79
85
  presentation?: unknown;
80
86
  /** Index used in the reported paths; defaults to 0. */
@@ -84,12 +90,118 @@ interface ResolveDesignHintsOptions {
84
90
  }
85
91
  /**
86
92
  * Resolves the shared design keys with one merge, per key, the slide winning: the slide's `design`, then the
87
- * deck's `design` (or the host's `deck` values), then the resolved layout record's `design`. A key none of them
93
+ * deck's `design` (or the host's `deck` values), then the resolved theme record's `design` (THEME_DESIGN_KEYS only;
94
+ * new in 0.19), then the resolved layout record's `design`. A key none of them
88
95
  * sets stays absent. A value the schema does not allow for its key is skipped, so the next level answers. Composition, the renderer, the PPTX exporter and the audit all take their values from here
89
96
  * (`SlideComposition.design`), so they cannot disagree.
90
97
  */
91
98
  declare function resolveDesignHints(options?: ResolveDesignHintsOptions): ResolvedDesignHints;
92
99
 
100
+ /**
101
+ * OPF 0.19 layout templates (`opf-layout/v2`): a layout is a grid of named areas, written in the notation of CSS
102
+ * `grid-template-areas`, and the body areas are regions that say which content they take and how several blocks share
103
+ * them. This module parses and checks a record; binding content to regions is `bindRegions` (bind-regions.ts) and the
104
+ * geometry is `composeSlide`.
105
+ *
106
+ * A record is a template when it has `areas`. Until the default catalog moves to `@openpresentation/gallery` 2.0.0, the
107
+ * OPF 0.19 accepts only v2 grid templates; v1 placeholder records are removed.
108
+ */
109
+ /** The content kinds a region can accept: the body content kinds and `group` for a content group. */
110
+ declare const REGION_KINDS: readonly ["text", "list", "image", "video", "chart", "table", "code", "metric", "quote", "timeline", "group"];
111
+ type RegionKind = typeof REGION_KINDS[number];
112
+ /** Which content a region wants first (content binding, step 2). */
113
+ declare const REGION_ROLES: readonly ["primary", "secondary", "media", "supporting"];
114
+ type RegionRole = typeof REGION_ROLES[number];
115
+ /** How several blocks share a region. */
116
+ declare const REGION_FLOWS: readonly ["none", "grid", "column", "auto"];
117
+ type RegionFlow = typeof REGION_FLOWS[number];
118
+ declare const REGION_ANCHORS: readonly ["top", "middle", "bottom"];
119
+ type RegionAnchor = typeof REGION_ANCHORS[number];
120
+ /** The two heading areas. They hold the slide's headings and have no `regions` entry. */
121
+ declare const HEADING_AREAS: readonly ["title", "subtitle"];
122
+ /**
123
+ * Names a region may not take: the heading words, `auto`, and the six promoted-region words, so `region=` in the
124
+ * Markdown dialect stays unambiguous.
125
+ */
126
+ declare const RESERVED_REGION_NAMES: readonly ["title", "subtitle", "tag", "auto", "left", "center", "right", "top", "middle", "bottom"];
127
+ /** A template has at most this many rows and this many columns. */
128
+ declare const MAX_TEMPLATE_TRACKS = 12;
129
+ /** A region holds at most this many blocks on one slide. */
130
+ declare const MAX_REGION_BLOCKS = 12;
131
+ /** The layout id no catalog may define: `layout: "auto"` is automatic composition. */
132
+ declare const AUTO_LAYOUT = "auto";
133
+ /** One region of a template with every default applied. */
134
+ interface LayoutRegion {
135
+ name: string;
136
+ accepts: RegionKind[];
137
+ role: RegionRole;
138
+ flow: RegionFlow;
139
+ /** Blocks the region holds on one slide (1 for `flow: "none"`, else 6 unless set). */
140
+ max: number;
141
+ bleed: boolean;
142
+ listColumns: 'auto' | 1;
143
+ anchor: RegionAnchor;
144
+ empty: 'collapse' | 'keep';
145
+ }
146
+ /** One named area of the grid: its top-left cell and its span, in logical (left-to-right) columns. */
147
+ interface LayoutArea {
148
+ name: string;
149
+ row: number;
150
+ column: number;
151
+ rowSpan: number;
152
+ columnSpan: number;
153
+ /** `title` or `subtitle`. */
154
+ heading: boolean;
155
+ }
156
+ /** A parsed, checked template. */
157
+ interface LayoutTemplate {
158
+ /** Row track sizes: relative numbers, or `auto` for the height the row's content needs. */
159
+ rows: (number | 'auto')[];
160
+ /** Column track sizes, relative. */
161
+ columns: number[];
162
+ /** The cell grid: `grid[row][column]` is an area name or `.`. */
163
+ grid: string[][];
164
+ /** Every area, headings included, in reading order (by top-left cell, row by row, then cell by cell). */
165
+ areas: LayoutArea[];
166
+ /** The body regions in reading order, with defaults applied. */
167
+ regions: LayoutRegion[];
168
+ /**
169
+ * Where content no region accepts goes: `overflowRegion`, else the first primary region whose flow is not `none`.
170
+ * Absent when the record names none and has no such region (the slide then draws it in an implicit row below the grid).
171
+ */
172
+ overflowRegion?: string;
173
+ /** Whether the template has a `title` area and a `subtitle` area. */
174
+ title: boolean;
175
+ subtitle: boolean;
176
+ }
177
+ /** A problem with a template: `layout-template` for the grid itself, `layout-region` for the regions. */
178
+ interface LayoutTemplateIssue {
179
+ code: 'layout-template' | 'layout-region';
180
+ /** JSON Pointer inside the record (`/areas/1`, `/regions/notes/max`). */
181
+ path: string;
182
+ message: string;
183
+ }
184
+ /** Thrown by `layoutTemplate` (and so by `composeSlide`) for a record with a `layout-template` or `layout-region` finding. */
185
+ declare class OPFLayoutTemplateError extends RangeError {
186
+ readonly issues: LayoutTemplateIssue[];
187
+ readonly code = "layout-template";
188
+ constructor(issues: LayoutTemplateIssue[]);
189
+ }
190
+ /** Whether a layout record is a 0.19 template (it has `areas`). */
191
+ declare function isLayoutTemplate(layout: unknown): boolean;
192
+ /** The region of `name` with every default applied; `value` is the record's `regions[name]` entry. */
193
+ declare function layoutRegion(name: string, value: unknown): LayoutRegion;
194
+ /**
195
+ * The problems `validate` reports for a template record (`opf/layout-template`, `opf/layout-region`): ragged rows, a name
196
+ * whose cells are not one rectangle, track lists of the wrong length, a grid over 12 x 12, a word that is not a name;
197
+ * a body area with no region, a region with no area, a reserved region name, a `subtitle` area without `title`,
198
+ * `flow: "none"` with `max` other than 1, an `overflowRegion` that is not a region. Empty for a valid template and for a
199
+ * record that is not a template.
200
+ */
201
+ declare function layoutTemplateIssues(layout: unknown): LayoutTemplateIssue[];
202
+ /** Parse and check a template record. Throws OPFLayoutTemplateError for a record with a `layout-template` or `layout-region` issue. */
203
+ declare function layoutTemplate(layout: unknown): LayoutTemplate;
204
+
93
205
  /**
94
206
  * Metric trend mark (RR-07, FA-06): the arrow and colour that show `metric.trend` and
95
207
  * `metric.sentiment` in the SVG preview and the PPTX export. Core's metric layout places the trend word (up, down, flat) as ordinary
@@ -623,6 +735,8 @@ interface ResolvedColorRoles {
623
735
  hyperlink: string;
624
736
  /** Followed-hyperlink slot (OOXML folHlink). */
625
737
  followedHyperlink: string;
738
+ /** Quiet structural rules/cards: neutral slate on a light or dark slide, never a brand accent. Authored borders still resolve their own ColorRef. */
739
+ border: string;
626
740
  /** Whether the slide background is dark; text, surface and textSecondary defaults follow it. */
627
741
  dark: boolean;
628
742
  }
@@ -1314,81 +1428,147 @@ declare function chartHighlightMarks(highlight: ResolvedChartHighlight | undefin
1314
1428
  rows: readonly (readonly unknown[])[];
1315
1429
  }): ChartHighlightMarks | undefined;
1316
1430
 
1317
- /** Placeholder kinds that hold slide content (everything except the three heading kinds). */
1431
+ /** Body content kinds accepted by template regions. */
1318
1432
  declare const LAYOUT_BODY_KINDS: readonly ["text", "list", "image", "video", "chart", "table", "code", "metric", "quote", "timeline"];
1319
1433
  type LayoutBodyKind = typeof LAYOUT_BODY_KINDS[number];
1320
- /** FA-26: how deeply placeholder groups may nest inside one layout record (a top-level group is level 1). */
1321
- declare const MAX_PLACEHOLDER_GROUP_DEPTH = 3;
1322
- /** What a layout record holds, derived from its placeholders. */
1434
+ /** What a layout template holds, derived from its regions. */
1323
1435
  interface LayoutContent {
1324
- /** The most frequent body placeholder kind (a tie goes to the kind that appears first in reading order), or 'title' when the layout has no body placeholder. */
1436
+ /** First non-group kind accepted by its first primary region, or title without body regions. */
1325
1437
  kind: LayoutBodyKind | 'title';
1326
- /** The number of body placeholders: the leaf regions, inside placeholder groups too. */
1438
+ /** Number of body regions. */
1327
1439
  count: number;
1328
- /** Which heading placeholders the layout has. */
1440
+ /** Heading fields the template has areas for. */
1329
1441
  heading: {
1330
1442
  title: boolean;
1331
1443
  subtitle: boolean;
1332
1444
  tag: boolean;
1333
1445
  };
1334
1446
  }
1335
- /** One leaf region of a layout record, in reading order (depth first, in array order). */
1336
- interface LayoutLeaf {
1337
- /** The region's content kind (a heading kind only at the top level). */
1338
- type: string;
1339
- /** Where the region is written: `layout.placeholders.1`, or `layout.placeholders.1.placeholders.0` inside a group. */
1447
+ /** The template areas in reading order, with each body's flow and accepted kinds. */
1448
+ declare function layoutStructure(layout: unknown): string;
1449
+ /** Derive the body kind, region count and headings from a template record. */
1450
+ declare function layoutContent(layout: unknown): LayoutContent;
1451
+
1452
+ /** A diagnostic of content binding, in the `LayoutDiagnostic` shape composition reports. */
1453
+ interface RegionBindingDiagnostic {
1454
+ /** `region-unknown`, `region-kind` or `region-full` for an ignored pin; `layout-unplaced` for a block drawn beyond every region's room. */
1455
+ code: 'region-unknown' | 'region-kind' | 'region-full' | 'layout-unplaced';
1340
1456
  path: string;
1341
- /** 0 for a top-level region, else the level of the placeholder group that holds it (1 to 3). */
1342
- depth: number;
1343
- /** The raw placeholder entry. */
1344
- placeholder: Record<string, unknown>;
1457
+ message: string;
1458
+ /** The region the block was drawn in (`layout-unplaced`), or the pinned region (the pin codes). */
1459
+ region?: string;
1345
1460
  }
1346
- /** A placeholder entry of a layout record, as composition reads it: a region, or a group of entries. */
1347
- interface LayoutSlot {
1348
- type: string;
1461
+ /** One root node of the slide as binding sees it. */
1462
+ interface BoundBlock {
1463
+ /** OPF path of the node: `slides.N.blocks.I` for a block, `slides.N.<field>` for a root payload field. */
1349
1464
  path: string;
1350
- depth: number;
1351
- placeholder: Record<string, unknown>;
1352
- /** Present on a placeholder group: its entries, in reading order. */
1353
- children?: LayoutSlot[];
1354
- }
1355
- /** Whether a placeholder entry is a placeholder group (`{ type: "group", composition, placeholders }`). */
1356
- declare function isPlaceholderGroup(placeholder: unknown): placeholder is {
1357
- type: 'group';
1358
- composition?: Record<string, unknown>;
1359
- placeholders: unknown[];
1360
- };
1465
+ /** Its content kind; a content group is `group`. */
1466
+ kind: RegionKind;
1467
+ /** The block's index in `blocks`; absent for a root payload. */
1468
+ block?: number;
1469
+ /** Root payload fields the node holds (a root payload only). */
1470
+ fields?: string[];
1471
+ /** The block named this region with `region` and the pin was honoured. */
1472
+ pinned?: boolean;
1473
+ }
1474
+ interface RegionBinding {
1475
+ /** The region's name. */
1476
+ name: string;
1477
+ /** The blocks bound to the region within its `max`, in source order. */
1478
+ blocks: BoundBlock[];
1479
+ /** Blocks no region had room for, drawn here beyond `max` (the overflow region only). */
1480
+ overflow: BoundBlock[];
1481
+ }
1482
+ interface RegionBindingResult {
1483
+ /** Every region of the template in reading order, with what it holds. */
1484
+ regions: RegionBinding[];
1485
+ /** Blocks drawn in an implicit row below the grid: the layout has no overflow region. */
1486
+ below: BoundBlock[];
1487
+ diagnostics: RegionBindingDiagnostic[];
1488
+ }
1489
+ interface BindRegionsOptions {
1490
+ /** Index used in the reported paths; defaults to 0. */
1491
+ slideIndex?: number;
1492
+ }
1493
+ /** The content kind of a block: `group` for a content group, else its `type` or the kind of its first payload field. */
1494
+ declare function blockKind(block: unknown): RegionKind;
1495
+ /** Whether a region takes a block: its kind is accepted, or a group whose every leaf kind is accepted. */
1496
+ declare function regionAccepts(region: {
1497
+ readonly accepts: readonly string[];
1498
+ }, block: unknown): boolean;
1499
+ /**
1500
+ * The top-level image blocks that take a band of their own (`placement`): the first on each edge. They never occupy a
1501
+ * region. Composition places exactly these.
1502
+ */
1503
+ declare function placedImageBlocks(slide: unknown): Set<number>;
1504
+ /**
1505
+ * The slide's root nodes in source order, as content binding reads them: each block of `blocks` that is not a placed
1506
+ * image (a content group is one node of kind `group`), or the fields of a root payload (`bullets` with `text` are one node).
1507
+ * Empty payloads draw nothing and are not nodes.
1508
+ */
1509
+ declare function rootNodes(slide: unknown, slideIndex?: number): (BoundBlock & {
1510
+ value: Record<string, any>;
1511
+ })[];
1512
+ /** Role rank of a region for a block kind (content binding, step 2): pictures prefer media regions, everything else primary ones. */
1513
+ declare function regionRoleRank(role: LayoutRegion['role'], kind: RegionKind): number;
1514
+ /**
1515
+ * Bind a slide's content to the regions of a template layout (OPF 0.19, design section 3). Pure: no geometry.
1516
+ *
1517
+ * 1. **Pins.** A block with `region: "<name>"` goes to that region, in source order, when the region exists, accepts the
1518
+ * block's kind and has room; otherwise the pin is ignored with `region-unknown`, `region-kind` or `region-full` and the
1519
+ * block joins step 2.
1520
+ * 2. **Everything else, in source order.** Of the regions that accept the block and have room, the block goes to the one
1521
+ * with the lowest role rank (`regionRoleRank`), then the first in reading order.
1522
+ * 3. **No candidate.** The block goes to the overflow region whatever its `accepts` while it has room; beyond that it is
1523
+ * drawn there anyway (`layout-unplaced`, which `paginate` resolves with a continuation slide). A layout with no overflow
1524
+ * region draws it in an implicit row below the grid (`layout-unplaced` too).
1525
+ *
1526
+ * A slide with promoted regions (`left`, `top:left`, ...) composes them as in 0.18 and binds nothing.
1527
+ */
1528
+ declare function bindRegions(slide: unknown, layout: unknown, options?: BindRegionsOptions): RegionBindingResult;
1529
+
1530
+ /**
1531
+ * Pure geometry of OPF 0.19 layout templates: the grid sequence of a flowing region, track sizing, the collapse of empty
1532
+ * areas and the column breaks of a long list. `composeSlide` measures content and calls these; nothing here measures text.
1533
+ */
1534
+
1535
+ /** How a region's blocks are arranged on one slide. */
1536
+ interface FlowShape {
1537
+ /** Columns of the full rows. */
1538
+ columns: number;
1539
+ rows: number;
1540
+ /** Blocks in each row, top to bottom; only the last row can be short. */
1541
+ perRow: number[];
1542
+ }
1543
+ /**
1544
+ * The `grid` flow by block count. In a landscape region: 1 fills it; 2 side by side; 3 in a row; 4 as 2 x 2; 5 as 3 + 2;
1545
+ * 6 as 3 x 2; 7 to 12 in four columns. In a portrait region (taller than wide) rows and columns swap: 2 and 3 stacked,
1546
+ * 4 as 2 x 2, 5 as 2 + 2 + 1, 6 as 2 x 3, 7 to 12 in three rows.
1547
+ */
1548
+ declare function gridFlowShape(count: number, landscape: boolean): FlowShape;
1549
+ /**
1550
+ * Column breaks of a list laid out in `count` columns: indexes where a column starts after the first, chosen between
1551
+ * items (never inside one, and never before a nested item, which stays with its parent) so the tallest column is as short
1552
+ * as possible. `heights` are the items' heights in one column; `levels` their nesting levels.
1553
+ */
1554
+ declare function listColumnBreaks(heights: readonly number[], levels: readonly number[], count: number): number[];
1555
+ /** What a row of a slide's grid holds, for `allocateRows`. */
1556
+ interface RowDemand {
1557
+ size: number | 'auto';
1558
+ /** The height the row's content needs at the starting size (0 for an empty row). */
1559
+ need: number;
1560
+ /** `heading`: an auto row sized by a heading area; `below`: the implicit row of content no region took; `body`: anything else. */
1561
+ kind: 'heading' | 'body' | 'below';
1562
+ }
1361
1563
  /**
1362
- * The placeholder tree of a layout record: every entry with its path and depth, groups with their children.
1363
- * Throws a RangeError for a record composition cannot use: a group without placeholders, a heading inside a group, or
1364
- * groups nested deeper than MAX_PLACEHOLDER_GROUP_DEPTH. Validation reports the same cases as schema errors first.
1365
- */
1366
- declare function layoutSlots(layout: {
1367
- placeholders?: unknown;
1368
- } | null | undefined, base?: string): LayoutSlot[];
1369
- /** The leaf regions of a layout record in reading order, the order slide content fills them (FA-26). Groups are flattened. */
1370
- declare function layoutLeaves(layout: {
1371
- placeholders?: unknown;
1372
- } | null | undefined): LayoutLeaf[];
1373
- /**
1374
- * A one-line summary of a record's placeholders in reading order, each group with its mode and its entries in parentheses:
1375
- * `title, column (text, text), chart`. Pickers and catalog pages show it where a flat list of kinds would hide the structure.
1376
- */
1377
- declare function layoutStructure(layout: {
1378
- placeholders?: unknown;
1379
- } | null | undefined): string;
1380
- /** Whether a layout record holds at least one placeholder group. */
1381
- declare function hasPlaceholderGroups(layout: {
1382
- placeholders?: unknown;
1383
- } | null | undefined): boolean;
1384
- /**
1385
- * Derives what a layout holds from its `placeholders`, which are the single source of truth: the content kind,
1386
- * the number of body regions and which headings it has are never stored on the record. Placeholder groups count
1387
- * through their leaves.
1388
- */
1389
- declare function layoutContent(layout: {
1390
- placeholders?: ReadonlyArray<unknown>;
1391
- } | null | undefined): LayoutContent;
1564
+ * Row heights of a slide's template grid, so that no row with content is squeezed to nothing (RR-79, RR-81 review):
1565
+ * 1. A heading `auto` row takes what its headings need, at most half the content box.
1566
+ * 2. The numeric rows keep at least what their content needs, up to half of the space under the headings.
1567
+ * 3. The other `auto` rows take what they need (at most half the content box each; the implicit row below the grid has no
1568
+ * such cap) from what is left; when that is not enough they shrink together, in proportion to their needs.
1569
+ * 4. The numeric rows share the rest in proportion to their sizes. An `auto` row with nothing in it has no height and no gap.
1570
+ */
1571
+ declare function allocateRows(rows: readonly RowDemand[], total: number, gap: number): number[];
1392
1572
 
1393
1573
  /** Portable layout geometry. No fonts, DOM, renderer, or network dependencies. */
1394
1574
  interface Composition {
@@ -1408,9 +1588,19 @@ interface LayoutBox {
1408
1588
  height: number;
1409
1589
  }
1410
1590
  interface LayoutDiagnostic {
1411
- code: "text-overflow" | "small-cell" | "unresolved-content" | "unsupported-image-treatment" | "numbering-adapted";
1591
+ /**
1592
+ * OPF 0.19 adds the content-binding codes of template layouts: `region-unknown`, `region-kind` and `region-full` for an
1593
+ * ignored `region` pin, and `layout-unplaced` for a block no region had room for (drawn anyway; `paginate` moves it).
1594
+ */
1595
+ code: "text-overflow" | "small-cell" | "unresolved-content" | "unsupported-image-treatment" | "numbering-adapted" | "region-unknown" | "region-kind" | "region-full" | "layout-unplaced";
1412
1596
  path: string;
1413
1597
  message: string;
1598
+ /**
1599
+ * OPF 0.19, `layout-unplaced`: the overflow region the block was drawn in beyond its `max` (`paginate` moves it to a
1600
+ * continuation slide). Absent when the layout has no overflow region and the block is drawn below the grid, which a
1601
+ * continuation cannot change. The pin codes name the pinned region.
1602
+ */
1603
+ region?: string;
1414
1604
  }
1415
1605
  /** Physical legacy-family selection supplied by a font provider, independently of its numeric weight. */
1416
1606
  interface FontFaceSelection {
@@ -1547,6 +1737,82 @@ interface ComposedItem {
1547
1737
  * then left). Engines anchor native and preview text to this value.
1548
1738
  */
1549
1739
  alignment: 'left' | 'center' | 'right';
1740
+ /**
1741
+ * OPF 0.19: the layout template region the item was drawn in (`SlideComposition.regions[].name`); absent on headings,
1742
+ * placed images and slides without a template layout. The PPTX exporter tags the shape with it.
1743
+ */
1744
+ region?: string;
1745
+ /**
1746
+ * OPF 0.19: a list laid out in columns (a lone list in a region with `listColumns: "auto"`, or a list payload with
1747
+ * `columns`): one entry per column, in reading order, each with its cell, the half-open range of the payload's items it
1748
+ * holds and its own fit at the shared font size. Numbering continues across columns. The item's `text` is the whole list:
1749
+ * every entry of every column at its column's position (one ListFit, `overflow` when any column overflows), so a consumer
1750
+ * that ignores `listColumns` still draws every item; `box` is the whole list's cell.
1751
+ */
1752
+ listColumns?: ComposedListColumn[];
1753
+ }
1754
+ /** One column of a list laid out in columns (`ComposedItem.listColumns`). */
1755
+ interface ComposedListColumn {
1756
+ box: LayoutBox;
1757
+ /** First item of the payload in this column. */
1758
+ start: number;
1759
+ /** One past the last item. */
1760
+ end: number;
1761
+ text: ListFit;
1762
+ }
1763
+ /**
1764
+ * OPF 0.19: one body region of the slide's layout template, as composed for this slide (`SlideComposition.regions`), so
1765
+ * editors can draw drop targets and exporters can place layout placeholders and tag shapes. Every region of the template
1766
+ * is listed, in reading order, filled or not.
1767
+ */
1768
+ interface ComposedRegion {
1769
+ /** The region's name (its key in the record's `regions`). */
1770
+ name: string;
1771
+ /**
1772
+ * The region's cell on this slide, after mirroring and bleed: a bled region's outer edges that lie on the content box
1773
+ * reach the slide edge. A collapsed region keeps the cell of its own area (possibly zero high), which another area
1774
+ * has taken over.
1775
+ */
1776
+ box: LayoutBox;
1777
+ accepts: RegionKind[];
1778
+ role: RegionRole;
1779
+ /** The record's `flow`. */
1780
+ flow: RegionFlow;
1781
+ max: number;
1782
+ anchor: RegionAnchor;
1783
+ /**
1784
+ * How the blocks were arranged: `grid` (the grid sequence by count), `row`, `column`, or `composition` when the
1785
+ * slide's own `composition.mode`, `columns` or `weights` arranged its first primary flowing region. Absent when empty.
1786
+ */
1787
+ arrangement?: 'grid' | 'row' | 'column' | 'composition';
1788
+ /** OPF paths of the content bound to the region within `max`, in source order: root blocks (`slides.N.blocks.I`) or root payload fields (`slides.N.text`). */
1789
+ content: string[];
1790
+ /** Content no region had room for, drawn here beyond `max` (`opf/layout-unplaced`; `paginate` moves it to a continuation slide). */
1791
+ overflow?: string[];
1792
+ /** The region received no content and its cells joined a neighbour on this slide. */
1793
+ collapsed?: true;
1794
+ bleed?: true;
1795
+ /** A bled region's cell inside the content box, before bleed. */
1796
+ areaBox?: LayoutBox;
1797
+ }
1798
+ /** OPF 0.19: a heading area of the slide's layout template (`title`, or `subtitle` when the template has one). */
1799
+ interface ComposedHeadingArea {
1800
+ name: 'title' | 'subtitle';
1801
+ box: LayoutBox;
1802
+ /** The slide has no heading for it and its cells joined a neighbour. */
1803
+ collapsed?: true;
1804
+ /** The template has no `title` area: an `auto` row on top that holds the slide's headings. */
1805
+ implicit?: true;
1806
+ /**
1807
+ * The title area of a template without a `subtitle` area, split where the stacked heading group puts the subtitle: `title`
1808
+ * runs from the area's top to the bottom of the title (with the tag above it), `subtitle` from the subtitle's top (where it
1809
+ * would start, half a gap under the title, when the slide has none) to the area's bottom. PowerPoint's ctrTitle and
1810
+ * subTitle placeholders use these boxes. Absent when the slide has no headings in the area.
1811
+ */
1812
+ parts?: {
1813
+ title: LayoutBox;
1814
+ subtitle: LayoutBox;
1815
+ };
1550
1816
  }
1551
1817
  /** How a picture fills its frame: cover crops around the focus, contain shows all of it, stretch scales it to the frame. */
1552
1818
  type ImageFit = 'cover' | 'contain' | 'stretch';
@@ -1602,7 +1868,7 @@ interface ComposedPlacement {
1602
1868
  size: number;
1603
1869
  /** True when the frame sits inside the slide padding instead of edge to edge. */
1604
1870
  inset: boolean;
1605
- /** Where the placement is written: `slides.N.blocks.I.placement`, or `layout.placeholders.P.placement` for a layout image placeholder's. */
1871
+ /** Where the placement is written: `slides.N.blocks.I.placement`. */
1606
1872
  path: string;
1607
1873
  }
1608
1874
  /**
@@ -1698,33 +1964,6 @@ interface ComposedGroup {
1698
1964
  contentBox: LayoutBox;
1699
1965
  composition: Composition;
1700
1966
  }
1701
- /**
1702
- * FA-26: one body placeholder of a layout record that has placeholder groups, as composed: its cell and, for a filled
1703
- * region, the slide content in it. Groups and empty regions are listed too, so an editor can draw every slot. Only
1704
- * slides that compose through a record's placeholder groups carry slots.
1705
- */
1706
- interface ComposedSlot {
1707
- /** The placeholder: `layout.placeholders.2`, or `layout.placeholders.2.placeholders.0` inside a group. */
1708
- path: string;
1709
- /** The region's content kind, or `group`. */
1710
- type: string;
1711
- /** 0 at the record's top level, else the level of the group that holds it (1 to 3). */
1712
- depth: number;
1713
- /** The slot's cell (before any card inset or caption band). */
1714
- box: LayoutBox;
1715
- /** The OPF path of the content that fills a region; absent for a group and for an empty region. */
1716
- content?: string;
1717
- }
1718
- /**
1719
- * FA-26: design.chartPrimary is sugar for a placeholder group. The layout record a slide composes as while chartPrimary
1720
- * applies: the primary chart and one automatic placeholder group of the other root content (`kinds`, in source order),
1721
- * in a row (left, right) or a column (top, bottom) weighted 3:2 toward the chart. composeSlide builds exactly this record
1722
- * and fills it like any record with groups, except that the first chart, wherever it is, fills the chart region.
1723
- */
1724
- declare function chartPrimaryLayout(side: 'left' | 'right' | 'top' | 'bottom', kinds: readonly string[]): {
1725
- composition: Composition;
1726
- placeholders: Record<string, unknown>[];
1727
- };
1728
1967
  interface CompositionTrack {
1729
1968
  offset: number;
1730
1969
  size: number;
@@ -1779,12 +2018,19 @@ interface CompositionExplanation {
1779
2018
  interface SlideComposition {
1780
2019
  width: number;
1781
2020
  height: number;
2021
+ /**
2022
+ * The body's frame: the canvas minus padding, header and footer bands, the footnote area and placed-image bands, below
2023
+ * the headings on an automatic slide. For a template layout (OPF 0.19) it is the whole template frame, the title area
2024
+ * included (`headingAreas` and `regions` lie inside it, except where a bled region reaches the slide edge).
2025
+ */
1782
2026
  contentBox: LayoutBox;
1783
2027
  items: ComposedItem[];
1784
2028
  groups: ComposedGroup[];
1785
2029
  flows: ComposedFlow[];
1786
- /** FA-26: the layout record's body placeholders with their cells, when the slide composes through placeholder groups. */
1787
- slots?: ComposedSlot[];
2030
+ /** OPF 0.19: every body region of the slide's layout template, in reading order; present only for a template layout. */
2031
+ regions?: ComposedRegion[];
2032
+ /** OPF 0.19: the template's heading areas (`title`, `subtitle`) with their boxes; present only for a template layout. */
2033
+ headingAreas?: ComposedHeadingArea[];
1788
2034
  diagnostics: LayoutDiagnostic[];
1789
2035
  composition: Composition;
1790
2036
  /** Repeated furniture is measured separately from body pagination leaves. */
@@ -1824,6 +2070,7 @@ interface ComposeSlideOptions {
1824
2070
  titleAlignment?: unknown;
1825
2071
  contentAlignment?: unknown;
1826
2072
  contentBox?: unknown;
2073
+ mirror?: unknown;
1827
2074
  };
1828
2075
  organization?: unknown;
1829
2076
  speaker?: unknown;
@@ -1832,6 +2079,11 @@ interface ComposeSlideOptions {
1832
2079
  references?: unknown;
1833
2080
  datasets?: unknown;
1834
2081
  };
2082
+ /**
2083
+ * OPF 0.19: the resolved theme record's `design` (titleAlignment, contentAlignment, contentBox, contentDirection,
2084
+ * imageFit, listBullet). It ranks below the deck's design and above the layout record's. `resolveSlideContext` passes it.
2085
+ */
2086
+ themeDesign?: unknown;
1835
2087
  /**
1836
2088
  * Whether the slide background is dark, by the host's own luminance test. Selects each logo's
1837
2089
  * `onDark` value (cover logo, `var:organization.logo.*` in zone images, picture bullets). Core never inspects colors.
@@ -1994,7 +2246,7 @@ declare const FURNITURE_GAP = 12;
1994
2246
  declare const FURNITURE_IMAGE_SHARE = 0.4;
1995
2247
  /** Resolve and measure repeated fields without mutating metadata or consulting a clock. */
1996
2248
  declare function layoutFurniture(input: unknown, options?: ComposeSlideOptions): FurnitureLayout;
1997
- /** Deterministic estimate, not a font shaping engine. Preserves explicit line breaks. */
2249
+ /** Deterministic estimate, not a font shaping engine. Spacing marks outside Latin/CJK contribute; nonspacing/enclosing marks do not. */
1998
2250
  declare function measureText(text: string, fontSize: number): number;
1999
2251
  declare function wrapText(text: string, width: number, fontSize: number, measure?: MeasureTextWidth): string[];
2000
2252
  declare function fitText(text: string, box: LayoutBox, requestedSize?: number, minFontSize?: number, measure?: MeasureTextWidth, direction?: TextDirection): SourceTextFit;
@@ -2064,6 +2316,8 @@ interface QuotePhoto {
2064
2316
  shape: ImageShape;
2065
2317
  }
2066
2318
  interface QuoteLayout {
2319
+ /** Measured vertical content envelope at the allocated width, including the photo. */
2320
+ bounds: LayoutBox;
2067
2321
  algorithm: 'quote-flow-v1';
2068
2322
  textMeasurement: 'estimated' | 'provided';
2069
2323
  parts: QuoteTextPart[];
@@ -2135,6 +2389,8 @@ interface MetricLayoutDiagnostic extends LayoutDiagnostic {
2135
2389
  parts: MetricTextPart['role'][];
2136
2390
  }
2137
2391
  interface MetricLayout {
2392
+ /** Measured vertical value/metadata envelope at the allocated width. */
2393
+ bounds: LayoutBox;
2138
2394
  algorithm: 'metric-flow-v1';
2139
2395
  alignment: 'left' | 'center' | 'right';
2140
2396
  textMeasurement: 'estimated' | 'provided';
@@ -2442,6 +2698,8 @@ interface ListFitOptions extends RichTextOptions {
2442
2698
  /** Shared hanging indents, mixed-run fitting and description spacing for list payloads. */
2443
2699
  declare function fitList(input: readonly ListValue[], box: LayoutBox, requestedSize?: number, minFontSize?: number, options?: ListFitOptions): ListFit;
2444
2700
  interface TableLayoutOptions {
2701
+ /** Explicit resolved design alignment; absent uses typed numeric right/text left defaults. Cell style.align wins. */
2702
+ alignment?: 'left' | 'center' | 'right';
2445
2703
  scale?: number;
2446
2704
  minFontSize?: number;
2447
2705
  fontFamily?: string;
@@ -2460,6 +2718,8 @@ interface TableLayoutOptions {
2460
2718
  direction?: TextDirection;
2461
2719
  }
2462
2720
  interface TableCellLayout {
2721
+ /** Logical alignment, shared by preview and native export. Numeric default resolves to the physical right even in RTL. */
2722
+ alignment: 'left' | 'center' | 'right';
2463
2723
  value: unknown;
2464
2724
  input: unknown;
2465
2725
  sourcePath: string;
@@ -2494,6 +2754,42 @@ interface TableLayout {
2494
2754
  * All dimensions are canvas pixels; minFontSize is an unscaled canvas size.
2495
2755
  */
2496
2756
  declare function layoutTable(value: unknown, box: LayoutBox, options?: TableLayoutOptions): TableLayout;
2757
+ /** Options of `composeLayoutAreas`: those of composeSlide (canvas, deck, theme, direction, ...) plus the layout's own. */
2758
+ interface LayoutAreasOptions extends Omit<ComposeSlideOptions, 'layout' | 'explain'> {
2759
+ /** Draw the layout mirrored (design.mirror). Default: the deck's design.mirror, then the layout's. */
2760
+ mirror?: boolean;
2761
+ /** A bled region reaches the slide edge, as on a composed slide. Default true; false gives its cell inside the content box. */
2762
+ bleed?: boolean;
2763
+ /** Placed-image bands the slide layout reserves, as image blocks with these placements would. */
2764
+ placements?: readonly {
2765
+ edge: ImageEdge;
2766
+ size?: number;
2767
+ inset?: boolean;
2768
+ }[];
2769
+ }
2770
+ /** One area of a template on the empty layout. */
2771
+ interface ComposedLayoutArea {
2772
+ name: string;
2773
+ /** `title` or `subtitle`. */
2774
+ heading: boolean;
2775
+ box: LayoutBox;
2776
+ /** On the `title` area of a template without a `subtitle` area: the ctrTitle and subTitle sub-boxes (ComposedHeadingArea.parts). */
2777
+ parts?: {
2778
+ title: LayoutBox;
2779
+ subtitle: LayoutBox;
2780
+ };
2781
+ }
2782
+ /**
2783
+ * The areas of a template composed for an empty slide, nothing collapsed: where a PowerPoint slide layout puts a
2784
+ * placeholder per area (design section 8). It is composeSlide's own geometry for a slide with a one-line title and
2785
+ * subtitle and every region kept (`empty: "keep"`, so an empty auto row holds two lines of body text), with the deck's
2786
+ * header and footer (`presentation`), the given placed-image bands and bleed, so the placeholders land on the boxes a
2787
+ * slide composes to wherever its content does not resize an auto row.
2788
+ */
2789
+ declare function composeLayoutAreas(layout: unknown, options?: LayoutAreasOptions): {
2790
+ contentBox: LayoutBox;
2791
+ areas: ComposedLayoutArea[];
2792
+ };
2497
2793
  /** Compose a validated Slide. Layout resolution remains the caller's responsibility. */
2498
2794
  declare function composeSlide(input: unknown, options?: ComposeSlideOptions): SlideComposition;
2499
2795
  /** Canonical physical slide size, converted to reference pixels at 96 pixels/inch. */
@@ -2502,4 +2798,4 @@ declare function resolveCanvasDimensions(input: unknown): {
2502
2798
  height: number;
2503
2799
  };
2504
2800
 
2505
- export { type ChartOptionTarget as $, type AnnotatedRun as A, type BackgroundImageFit as B, type ComposeSlideOptions as C, CODE_HIGHLIGHT_LANGUAGES as D, ENGINE_DEFAULT_CHART_TYPES as E, type Fonts as F, CODE_HIGHLIGHT_MAX_LENGTH as G, CODE_PANEL_BACKGROUND as H, CODE_PANEL_FOREGROUND as I, CODE_SYNTAX_MIN_CONTRAST as J, type Caption as K, type LayoutDiagnostic as L, type MeasureTextWidth as M, type CaptionAlignment as N, type CaptionObject as O, type CaptionPosition as P, type CaptionSettings as Q, type ResolveLogoOptions as R, SOCIAL_PLATFORMS as S, type TextMeasurement as T, type ChartHighlightMarks as U, type ChartLabelContent as V, type ChartLabelPosition as W, type ChartLegendPosition as X, type ChartOptionDiagnostic as Y, type ChartOptionKind as Z, type ChartOptionSupport as _, CHART_TYPES as a, type ImageFitPlacement as a$, type CitationMarker as a0, type CitationNote as a1, type CodeContent as a2, type CodeHighlightBand as a3, type CodeHighlightColors as a4, type CodeHighlightEntry as a5, type CodeHighlightIssue as a6, type CodeHighlightLines as a7, type CodeLayout as a8, type CodeLayoutDiagnostic as a9, type CompositionExplanation as aA, type CompositionPenalties as aB, type CompositionTrack as aC, DARK_BACKGROUND_LUMINANCE as aD, DEFAULT_CHART_LABEL_SEPARATOR as aE, DEFAULT_FURNITURE_DATE_FORMAT as aF, DESIGN_HINT_KEYS as aG, type DeckCitations as aH, type DesignHintKey as aI, type DesignHintSource as aJ, type DesignHints as aK, FONT_SIZE_GRID_PER_PX as aL, FOOTNOTE_MAX_RATIO as aM, FURNITURE_GAP as aN, FURNITURE_IMAGE_SHARE as aO, type FontFaceSelection as aP, type FootnoteLayoutOptions as aQ, type FurnitureField as aR, type FurnitureImagePart as aS, type FurnitureLayout as aT, type FurniturePart as aU, type FurniturePartBase as aV, type FurnitureSocialLink as aW, type FurnitureTextExtras as aX, type FurnitureTextPart as aY, type ImageEdge as aZ, type ImageFit as a_, type CodeLayoutOptions as aa, type CodeLineSegment as ab, type CodeLineSource as ac, type CodeRun as ad, type CodeSyntaxPalette as ae, type CodeSyntaxPaletteOptions as af, type CodeSyntaxPaletteTheme as ag, type CodeTextFit as ah, type CodeTextPart as ai, type CodeToken as aj, type CodeTokenKind as ak, type ComposedBackgroundImage as al, type ComposedCaption as am, type ComposedFlow as an, type ComposedFootnoteEntry as ao, type ComposedFootnotes as ap, type ComposedGroup as aq, type ComposedImage as ar, type ComposedItem as as, type ComposedLogo as at, type ComposedOverlay as au, type ComposedPlacement as av, type ComposedSlot as aw, type Composition as ax, type CompositionCandidate as ay, type CompositionDecision as az, ENGINE_DEFAULT_COLOR_SCHEME as b, type ResolvedDesignHints as b$, type ImageFocus as b0, type ImageShape as b1, LAYOUT_BODY_KINDS as b2, type LayoutBodyKind as b3, type LayoutBox as b4, type LayoutContent as b5, type LayoutLeaf as b6, type LayoutSlot as b7, type ListBulletImage as b8, type ListEntryLayout as b9, type NumberingStyleName as bA, type NumberingSuffix as bB, OPFCompositionError as bC, PATTERN_PRESETS as bD, PATTERN_PRESET_ALIASES as bE, PATTERN_TILE_SIZE as bF, PICTURE_BULLET_SCALE as bG, type PhysicalAlignment as bH, type QuoteContent as bI, type QuoteLayout as bJ, type QuoteLayoutDiagnostic as bK, type QuoteLayoutOptions as bL, type QuotePhoto as bM, type QuoteTextPart as bN, type QuoteTextSource as bO, type ReadingBox as bP, type Reference as bQ, type ReferencesSlideOptions as bR, type ResolveColorRefOptions as bS, type ResolveColorRefRoles as bT, type ResolveColorRolesOptions as bU, type ResolveDesignHintsOptions as bV, type ResolveScriptFontsOptions as bW, type ResolvedChartDataLabels as bX, type ResolvedChartHighlight as bY, type ResolvedChartOptions as bZ, type ResolvedColorRoles as b_, type ListFit as ba, type ListFitOptions as bb, type ListNumber as bc, type ListText as bd, type ListValue as be, MAX_COMPOSITION_DEPTH as bf, MAX_NUMBERING_LEVELS as bg, MAX_NUMBERING_VALUE as bh, MAX_PLACEHOLDER_GROUP_DEPTH as bi, MAX_ROMAN_VALUE as bj, METRIC_TREND_MIN_CONTRAST as bk, METRIC_TREND_SHAPES as bl, type MetricContent as bm, type MetricLayout as bn, type MetricLayoutDiagnostic as bo, type MetricLayoutOptions as bp, type MetricSentiment as bq, type MetricTextPart as br, type MetricTextSource as bs, type MetricTrend as bt, type MetricTrendColorOptions as bu, type MetricTrendMark as bv, NUMBERING_STYLES as bw, NUMBERING_SUFFIXES as bx, type Numbering as by, type NumberingInput as bz, ENGINE_DEFAULT_FONT_SCHEME as c, codeHighlightLines as c$, type ResolvedNumbering as c0, type ResolvedScriptFonts as c1, type RichText as c2, type RichTextFit as c3, type RichTextFragment as c4, type RichTextLine as c5, type RichTextOptions as c6, type RichTextRun as c7, SURFACE_ALT_MIN_CONTRAST as c8, SURFACE_ALT_MIX as c9, type TextLineSource as cA, type TextPlacement as cB, type TextPlacementLine as cC, type TimelineContent as cD, type TimelineEvent as cE, type TimelineLayout as cF, type TimelineLayoutDiagnostic as cG, type TimelineLayoutOptions as cH, type TimelineMarkerShape as cI, type TimelineStatus as cJ, type TimelineStatusColors as cK, type TimelineTextPart as cL, type WatermarkTextLayout as cM, type WatermarkTextOptions as cN, annotationText as cO, captionSettings as cP, chartColorForFill as cQ, chartHighlightColors as cR, chartHighlightMarks as cS, chartLabelText as cT, chartOptionSupport as cU, chartOptionTarget as cV, chartPaletteForFill as cW, chartPrimaryLayout as cX, citationMarkerText as cY, codeHighlightBands as cZ, codeHighlightColors as c_, type ScriptFontApp as ca, type ScriptFontSlots as cb, type ScriptFontSource as cc, type ScriptFontSupplement as cd, type ScriptMeasurementProfile as ce, type ScriptRole as cf, type SlideCitations as cg, type SlideComposition as ch, type SocialProfile as ci, type SourceTextFit as cj, TIMELINE_OUTLINE_MIN_CONTRAST as ck, TIMELINE_STATUSES as cl, TIMELINE_TEXT_MIN_CONTRAST as cm, type TableBorder as cn, type TableCellLayout as co, type TableCellStyle as cp, type TableGrid as cq, type TableGridCell as cr, type TableGridIssue as cs, type TableLayout as ct, type TableLayoutOptions as cu, type TableRowLayout as cv, type TextDirection as cw, type TextFit as cx, type TextLineInk as cy, type TextLineSegment as cz, ENGINE_DEFAULT_THEME as d, resolveScriptFonts as d$, codeLineNumbers as d0, codeLineRuns as d1, codeSyntaxPalette as d2, codeSyntaxPaletteForScheme as d3, collectCitations as d4, colorContrast as d5, composeSlide as d6, defaultSlideBackground as d7, fitImage as d8, fitList as d9, layoutWatermark as dA, listNumbers as dB, measureText as dC, measureTextOutline as dD, metricTrendColor as dE, metricTrendMark as dF, metricTrendPoints as dG, normalizeHexColor as dH, numberingAtLevel as dI, numberingStyleDraws as dJ, paragraphDirection as dK, paragraphDirectionAt as dL, patternBitmap as dM, patternRuns as dN, physicalAlignment as dO, placeTextLines as dP, referencesSlide as dQ, resolveCanvasDimensions as dR, resolveChartOptions as dS, resolveCodeLanguage as dT, resolveColorRef as dU, resolveColorRoles as dV, resolveDesignHints as dW, resolveFontFamilies as dX, resolveLogo as dY, resolveNumbering as dZ, resolvePatternPreset as d_, fitRichText as da, fitText as db, formatChartLabelNumber as dc, formatChartLabelPercent as dd, formatFurnitureDate as de, formatListNumber as df, hasPlaceholderGroups as dg, imageBackground as dh, imageShape as di, intrinsicImageAspect as dj, intrinsicImageSize as dk, isDarkColor as dl, isPlaceholderGroup as dm, layoutCaption as dn, layoutCode as dp, layoutContent as dq, layoutFootnotes as dr, layoutFurniture as ds, layoutLeaves as dt, layoutMetric as du, layoutQuote as dv, layoutSlots as dw, layoutStructure as dx, layoutTable as dy, layoutTimeline as dz, type FontFamilies as e, resolveSlideDirection as e0, resolveSocialProfile as e1, resolveTextStyle as e2, scriptFontRole as e3, sliceNumberedItems as e4, slideCitations as e5, snapFontSizeDown as e6, snapFontSizeUp as e7, surfaceAltColor as e8, tableGrid as e9, tableRowBoundaries as ea, textColorForFill as eb, textWidthMeasurer as ec, timelineMarkerShapes as ed, timelineTextColor as ee, tokenizeCode as ef, visualReadingOrder as eg, walkCitationRuns as eh, wrapText as ei, LANGUAGES as f, LOGO_SHAPES as g, type LanguageFamilyName as h, type LanguageVocabulary as i, type LogoShape as j, type LogoVariant as k, type ResolvedLogo as l, type SocialPlatformVocabulary as m, type TextStyle as n, normalizeLanguageFamily as o, type AnnotationFitter as p, type AnnotationLayoutOptions as q, CAPTIONABLE_FIELDS as r, CAPTION_FONT_RATIO as s, CAPTION_MAX_RATIO as t, CHART_HIGHLIGHT_MUTED_MIN_CONTRAST as u, CHART_HIGHLIGHT_MUTED_MIX as v, CHART_SERIES_MIN_DIFFERENCE as w, CHART_SERIES_MIN_LIGHTNESS_STEP as x, CITATION_MARKER_RAISE as y, CITATION_MARKER_SCALE as z };
2801
+ export { type ChartOptionDiagnostic as $, AUTO_LAYOUT as A, type BackgroundImageFit as B, type ComposeSlideOptions as C, CHART_SERIES_MIN_LIGHTNESS_STEP as D, ENGINE_DEFAULT_CHART_TYPES as E, type Fonts as F, CITATION_MARKER_RAISE as G, CITATION_MARKER_SCALE as H, CODE_HIGHLIGHT_LANGUAGES as I, CODE_HIGHLIGHT_MAX_LENGTH as J, CODE_PANEL_BACKGROUND as K, type LayoutDiagnostic as L, type MeasureTextWidth as M, CODE_PANEL_FOREGROUND as N, CODE_SYNTAX_MIN_CONTRAST as O, type Caption as P, type CaptionAlignment as Q, type ResolveLogoOptions as R, SOCIAL_PLATFORMS as S, type TextMeasurement as T, type CaptionObject as U, type CaptionPosition as V, type CaptionSettings as W, type ChartHighlightMarks as X, type ChartLabelContent as Y, type ChartLabelPosition as Z, type ChartLegendPosition as _, CHART_TYPES as a, type FurniturePart as a$, type ChartOptionKind as a0, type ChartOptionSupport as a1, type ChartOptionTarget as a2, type CitationMarker as a3, type CitationNote as a4, type CodeContent as a5, type CodeHighlightBand as a6, type CodeHighlightColors as a7, type CodeHighlightEntry as a8, type CodeHighlightIssue as a9, type ComposedOverlay as aA, type ComposedPlacement as aB, type ComposedRegion as aC, type Composition as aD, type CompositionCandidate as aE, type CompositionDecision as aF, type CompositionExplanation as aG, type CompositionPenalties as aH, type CompositionTrack as aI, DARK_BACKGROUND_LUMINANCE as aJ, DEFAULT_CHART_LABEL_SEPARATOR as aK, DEFAULT_FURNITURE_DATE_FORMAT as aL, DESIGN_HINT_KEYS as aM, type DeckCitations as aN, type DesignHintKey as aO, type DesignHintSource as aP, type DesignHints as aQ, FONT_SIZE_GRID_PER_PX as aR, FOOTNOTE_MAX_RATIO as aS, FURNITURE_GAP as aT, FURNITURE_IMAGE_SHARE as aU, type FlowShape as aV, type FontFaceSelection as aW, type FootnoteLayoutOptions as aX, type FurnitureField as aY, type FurnitureImagePart as aZ, type FurnitureLayout as a_, type CodeHighlightLines as aa, type CodeLayout as ab, type CodeLayoutDiagnostic as ac, type CodeLayoutOptions as ad, type CodeLineSegment as ae, type CodeLineSource as af, type CodeRun as ag, type CodeSyntaxPalette as ah, type CodeSyntaxPaletteOptions as ai, type CodeSyntaxPaletteTheme as aj, type CodeTextFit as ak, type CodeTextPart as al, type CodeToken as am, type CodeTokenKind as an, type ComposedBackgroundImage as ao, type ComposedCaption as ap, type ComposedFlow as aq, type ComposedFootnoteEntry as ar, type ComposedFootnotes as as, type ComposedGroup as at, type ComposedHeadingArea as au, type ComposedImage as av, type ComposedItem as aw, type ComposedLayoutArea as ax, type ComposedListColumn as ay, type ComposedLogo as az, ENGINE_DEFAULT_COLOR_SCHEME as b, type QuoteTextSource as b$, type FurniturePartBase as b0, type FurnitureSocialLink as b1, type FurnitureTextExtras as b2, type FurnitureTextPart as b3, HEADING_AREAS as b4, type ImageEdge as b5, type ImageFit as b6, type ImageFitPlacement as b7, type ImageFocus as b8, type ImageShape as b9, type MetricLayoutDiagnostic as bA, type MetricLayoutOptions as bB, type MetricSentiment as bC, type MetricTextPart as bD, type MetricTextSource as bE, type MetricTrend as bF, type MetricTrendColorOptions as bG, type MetricTrendMark as bH, NUMBERING_STYLES as bI, NUMBERING_SUFFIXES as bJ, type Numbering as bK, type NumberingInput as bL, type NumberingStyleName as bM, type NumberingSuffix as bN, OPFCompositionError as bO, OPFLayoutTemplateError as bP, PATTERN_PRESETS as bQ, PATTERN_PRESET_ALIASES as bR, PATTERN_TILE_SIZE as bS, PICTURE_BULLET_SCALE as bT, type PhysicalAlignment as bU, type QuoteContent as bV, type QuoteLayout as bW, type QuoteLayoutDiagnostic as bX, type QuoteLayoutOptions as bY, type QuotePhoto as bZ, type QuoteTextPart as b_, LAYOUT_BODY_KINDS as ba, type LayoutArea as bb, type LayoutAreasOptions as bc, type LayoutBodyKind as bd, type LayoutBox as be, type LayoutContent as bf, type LayoutRegion as bg, type LayoutTemplate as bh, type LayoutTemplateIssue as bi, type ListBulletImage as bj, type ListEntryLayout as bk, type ListFit as bl, type ListFitOptions as bm, type ListNumber as bn, type ListText as bo, type ListValue as bp, MAX_COMPOSITION_DEPTH as bq, MAX_NUMBERING_LEVELS as br, MAX_NUMBERING_VALUE as bs, MAX_REGION_BLOCKS as bt, MAX_ROMAN_VALUE as bu, MAX_TEMPLATE_TRACKS as bv, METRIC_TREND_MIN_CONTRAST as bw, METRIC_TREND_SHAPES as bx, type MetricContent as by, type MetricLayout as bz, ENGINE_DEFAULT_FONT_SCHEME as c, type TextLineSource as c$, REGION_ANCHORS as c0, REGION_FLOWS as c1, REGION_KINDS as c2, REGION_ROLES as c3, RESERVED_REGION_NAMES as c4, type ReadingBox as c5, type Reference as c6, type ReferencesSlideOptions as c7, type RegionAnchor as c8, type RegionBinding as c9, type ScriptFontApp as cA, type ScriptFontSlots as cB, type ScriptFontSource as cC, type ScriptFontSupplement as cD, type ScriptMeasurementProfile as cE, type ScriptRole as cF, type SlideCitations as cG, type SlideComposition as cH, type SocialProfile as cI, type SourceTextFit as cJ, THEME_DESIGN_KEYS as cK, TIMELINE_OUTLINE_MIN_CONTRAST as cL, TIMELINE_STATUSES as cM, TIMELINE_TEXT_MIN_CONTRAST as cN, type TableBorder as cO, type TableCellLayout as cP, type TableCellStyle as cQ, type TableGrid as cR, type TableGridCell as cS, type TableGridIssue as cT, type TableLayout as cU, type TableLayoutOptions as cV, type TableRowLayout as cW, type TextDirection as cX, type TextFit as cY, type TextLineInk as cZ, type TextLineSegment as c_, type RegionBindingDiagnostic as ca, type RegionBindingResult as cb, type RegionFlow as cc, type RegionKind as cd, type RegionRole as ce, type ResolveColorRefOptions as cf, type ResolveColorRefRoles as cg, type ResolveColorRolesOptions as ch, type ResolveDesignHintsOptions as ci, type ResolveScriptFontsOptions as cj, type ResolvedChartDataLabels as ck, type ResolvedChartHighlight as cl, type ResolvedChartOptions as cm, type ResolvedColorRoles as cn, type ResolvedDesignHints as co, type ResolvedNumbering as cp, type ResolvedScriptFonts as cq, type RichText as cr, type RichTextFit as cs, type RichTextFragment as ct, type RichTextLine as cu, type RichTextOptions as cv, type RichTextRun as cw, type RowDemand as cx, SURFACE_ALT_MIN_CONTRAST as cy, SURFACE_ALT_MIX as cz, ENGINE_DEFAULT_THEME as d, layoutTable as d$, type TextPlacement as d0, type TextPlacementLine as d1, type TimelineContent as d2, type TimelineEvent as d3, type TimelineLayout as d4, type TimelineLayoutDiagnostic as d5, type TimelineLayoutOptions as d6, type TimelineMarkerShape as d7, type TimelineStatus as d8, type TimelineStatusColors as d9, composeLayoutAreas as dA, composeSlide as dB, defaultSlideBackground as dC, fitImage as dD, fitList as dE, fitRichText as dF, fitText as dG, formatChartLabelNumber as dH, formatChartLabelPercent as dI, formatFurnitureDate as dJ, formatListNumber as dK, gridFlowShape as dL, imageBackground as dM, imageShape as dN, intrinsicImageAspect as dO, intrinsicImageSize as dP, isDarkColor as dQ, isLayoutTemplate as dR, layoutCaption as dS, layoutCode as dT, layoutContent as dU, layoutFootnotes as dV, layoutFurniture as dW, layoutMetric as dX, layoutQuote as dY, layoutRegion as dZ, layoutStructure as d_, type TimelineTextPart as da, type WatermarkTextLayout as db, type WatermarkTextOptions as dc, allocateRows as dd, annotationText as de, bindRegions as df, blockKind as dg, captionSettings as dh, chartColorForFill as di, chartHighlightColors as dj, chartHighlightMarks as dk, chartLabelText as dl, chartOptionSupport as dm, chartOptionTarget as dn, chartPaletteForFill as dp, citationMarkerText as dq, codeHighlightBands as dr, codeHighlightColors as ds, codeHighlightLines as dt, codeLineNumbers as du, codeLineRuns as dv, codeSyntaxPalette as dw, codeSyntaxPaletteForScheme as dx, collectCitations as dy, colorContrast as dz, type FontFamilies as e, layoutTemplate as e0, layoutTemplateIssues as e1, layoutTimeline as e2, layoutWatermark as e3, listColumnBreaks as e4, listNumbers as e5, measureText as e6, measureTextOutline as e7, metricTrendColor as e8, metricTrendMark as e9, resolveSocialProfile as eA, resolveTextStyle as eB, rootNodes as eC, scriptFontRole as eD, sliceNumberedItems as eE, slideCitations as eF, snapFontSizeDown as eG, snapFontSizeUp as eH, surfaceAltColor as eI, tableGrid as eJ, tableRowBoundaries as eK, textColorForFill as eL, textWidthMeasurer as eM, timelineMarkerShapes as eN, timelineTextColor as eO, tokenizeCode as eP, visualReadingOrder as eQ, walkCitationRuns as eR, wrapText as eS, metricTrendPoints as ea, normalizeHexColor as eb, numberingAtLevel as ec, numberingStyleDraws as ed, paragraphDirection as ee, paragraphDirectionAt as ef, patternBitmap as eg, patternRuns as eh, physicalAlignment as ei, placeTextLines as ej, placedImageBlocks as ek, referencesSlide as el, regionAccepts as em, regionRoleRank as en, resolveCanvasDimensions as eo, resolveChartOptions as ep, resolveCodeLanguage as eq, resolveColorRef as er, resolveColorRoles as es, resolveDesignHints as et, resolveFontFamilies as eu, resolveLogo as ev, resolveNumbering as ew, resolvePatternPreset as ex, resolveScriptFonts as ey, resolveSlideDirection as ez, LANGUAGES as f, LOGO_SHAPES as g, type LanguageFamilyName as h, type LanguageVocabulary as i, type LogoShape as j, type LogoVariant as k, type ResolvedLogo as l, type SocialPlatformVocabulary as m, type TextStyle as n, normalizeLanguageFamily as o, type AnnotatedRun as p, type AnnotationFitter as q, type AnnotationLayoutOptions as r, type BindRegionsOptions as s, type BoundBlock as t, CAPTIONABLE_FIELDS as u, CAPTION_FONT_RATIO as v, CAPTION_MAX_RATIO as w, CHART_HIGHLIGHT_MUTED_MIN_CONTRAST as x, CHART_HIGHLIGHT_MUTED_MIX as y, CHART_SERIES_MIN_DIFFERENCE as z };