@campxdev/pdfme 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/dist/types/_vendors/common/constants.d.ts +20 -0
  2. package/dist/types/_vendors/common/dynamicTemplate.d.ts +27 -0
  3. package/dist/types/_vendors/common/expression.d.ts +6 -0
  4. package/dist/types/_vendors/common/fontData.d.ts +29 -0
  5. package/dist/types/_vendors/common/helper.d.ts +37 -0
  6. package/dist/types/_vendors/common/index.d.ts +9 -0
  7. package/dist/types/_vendors/common/pluginRegistry.d.ts +5 -0
  8. package/dist/types/_vendors/common/schema.d.ts +822 -0
  9. package/dist/types/_vendors/common/types.d.ts +189 -0
  10. package/dist/types/_vendors/common/version.d.ts +1 -0
  11. package/dist/types/_vendors/converter/img2pdf.d.ts +12 -0
  12. package/dist/types/_vendors/converter/index.browser.d.ts +8 -0
  13. package/dist/types/_vendors/converter/index.node.d.ts +8 -0
  14. package/dist/types/_vendors/converter/pdf2img.d.ts +17 -0
  15. package/dist/types/_vendors/converter/pdf2size.d.ts +10 -0
  16. package/dist/types/_vendors/generator/constants.d.ts +1 -0
  17. package/dist/types/_vendors/generator/generate.d.ts +3 -0
  18. package/dist/types/_vendors/generator/helper.d.ts +29 -0
  19. package/dist/types/_vendors/generator/index.d.ts +2 -0
  20. package/dist/types/_vendors/generator/types.d.ts +20 -0
  21. package/dist/types/_vendors/manipulator/index.d.ts +46 -0
  22. package/dist/types/_vendors/pdf-lib/api/Embeddable.d.ts +7 -0
  23. package/dist/types/_vendors/pdf-lib/api/PDFDocument.d.ts +778 -0
  24. package/dist/types/_vendors/pdf-lib/api/PDFDocumentOptions.d.ts +38 -0
  25. package/dist/types/_vendors/pdf-lib/api/PDFEmbeddedFile.d.ts +38 -0
  26. package/dist/types/_vendors/pdf-lib/api/PDFEmbeddedPage.d.ts +73 -0
  27. package/dist/types/_vendors/pdf-lib/api/PDFFont.d.ts +94 -0
  28. package/dist/types/_vendors/pdf-lib/api/PDFImage.d.ts +95 -0
  29. package/dist/types/_vendors/pdf-lib/api/PDFJavaScript.d.ts +38 -0
  30. package/dist/types/_vendors/pdf-lib/api/PDFPage.d.ts +910 -0
  31. package/dist/types/_vendors/pdf-lib/api/PDFPageOptions.d.ts +172 -0
  32. package/dist/types/_vendors/pdf-lib/api/StandardFonts.d.ts +16 -0
  33. package/dist/types/_vendors/pdf-lib/api/colors.d.ts +34 -0
  34. package/dist/types/_vendors/pdf-lib/api/errors.d.ts +42 -0
  35. package/dist/types/_vendors/pdf-lib/api/form/PDFButton.d.ts +137 -0
  36. package/dist/types/_vendors/pdf-lib/api/form/PDFCheckBox.d.ts +142 -0
  37. package/dist/types/_vendors/pdf-lib/api/form/PDFDropdown.d.ts +402 -0
  38. package/dist/types/_vendors/pdf-lib/api/form/PDFField.d.ts +203 -0
  39. package/dist/types/_vendors/pdf-lib/api/form/PDFForm.d.ts +411 -0
  40. package/dist/types/_vendors/pdf-lib/api/form/PDFOptionList.d.ts +335 -0
  41. package/dist/types/_vendors/pdf-lib/api/form/PDFRadioGroup.d.ts +252 -0
  42. package/dist/types/_vendors/pdf-lib/api/form/PDFSignature.d.ts +29 -0
  43. package/dist/types/_vendors/pdf-lib/api/form/PDFTextField.d.ts +537 -0
  44. package/dist/types/_vendors/pdf-lib/api/form/appearances.d.ts +41 -0
  45. package/dist/types/_vendors/pdf-lib/api/form/index.d.ts +10 -0
  46. package/dist/types/_vendors/pdf-lib/api/image/alignment.d.ts +5 -0
  47. package/dist/types/_vendors/pdf-lib/api/image/index.d.ts +1 -0
  48. package/dist/types/_vendors/pdf-lib/api/index.d.ts +20 -0
  49. package/dist/types/_vendors/pdf-lib/api/objects.d.ts +4 -0
  50. package/dist/types/_vendors/pdf-lib/api/operations.d.ts +226 -0
  51. package/dist/types/_vendors/pdf-lib/api/operators.d.ts +90 -0
  52. package/dist/types/_vendors/pdf-lib/api/rotations.d.ts +38 -0
  53. package/dist/types/_vendors/pdf-lib/api/sizes.d.ts +52 -0
  54. package/dist/types/_vendors/pdf-lib/api/svg.d.ts +70 -0
  55. package/dist/types/_vendors/pdf-lib/api/svgPath.d.ts +2 -0
  56. package/dist/types/_vendors/pdf-lib/api/text/alignment.d.ts +5 -0
  57. package/dist/types/_vendors/pdf-lib/api/text/index.d.ts +2 -0
  58. package/dist/types/_vendors/pdf-lib/api/text/layout.d.ts +54 -0
  59. package/dist/types/_vendors/pdf-lib/core/PDFContext.d.ts +84 -0
  60. package/dist/types/_vendors/pdf-lib/core/PDFObjectCopier.d.ts +37 -0
  61. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroButton.d.ts +21 -0
  62. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroCheckBox.d.ts +13 -0
  63. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroChoice.d.ts +20 -0
  64. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroComboBox.d.ts +9 -0
  65. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroField.d.ts +36 -0
  66. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroForm.d.ts +20 -0
  67. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroListBox.d.ts +9 -0
  68. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroNonTerminal.d.ts +13 -0
  69. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroPushButton.d.ts +9 -0
  70. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroRadioButton.d.ts +13 -0
  71. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroSignature.d.ts +7 -0
  72. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroTerminal.d.ts +16 -0
  73. package/dist/types/_vendors/pdf-lib/core/acroform/PDFAcroText.d.ts +22 -0
  74. package/dist/types/_vendors/pdf-lib/core/acroform/flags.d.ts +141 -0
  75. package/dist/types/_vendors/pdf-lib/core/acroform/index.d.ts +15 -0
  76. package/dist/types/_vendors/pdf-lib/core/acroform/utils.d.ts +6 -0
  77. package/dist/types/_vendors/pdf-lib/core/annotation/AppearanceCharacteristics.d.ts +33 -0
  78. package/dist/types/_vendors/pdf-lib/core/annotation/BorderStyle.d.ts +11 -0
  79. package/dist/types/_vendors/pdf-lib/core/annotation/PDFAnnotation.d.ts +51 -0
  80. package/dist/types/_vendors/pdf-lib/core/annotation/PDFWidgetAnnotation.d.ts +26 -0
  81. package/dist/types/_vendors/pdf-lib/core/annotation/flags.d.ts +79 -0
  82. package/dist/types/_vendors/pdf-lib/core/annotation/index.d.ts +4 -0
  83. package/dist/types/_vendors/pdf-lib/core/crypto.d.ts +95 -0
  84. package/dist/types/_vendors/pdf-lib/core/document/PDFCrossRefSection.d.ts +27 -0
  85. package/dist/types/_vendors/pdf-lib/core/document/PDFHeader.d.ts +10 -0
  86. package/dist/types/_vendors/pdf-lib/core/document/PDFTrailer.d.ts +9 -0
  87. package/dist/types/_vendors/pdf-lib/core/document/PDFTrailerDict.d.ts +10 -0
  88. package/dist/types/_vendors/pdf-lib/core/embedders/CMap.d.ts +3 -0
  89. package/dist/types/_vendors/pdf-lib/core/embedders/CustomFontEmbedder.d.ts +44 -0
  90. package/dist/types/_vendors/pdf-lib/core/embedders/CustomFontSubsetEmbedder.d.ts +20 -0
  91. package/dist/types/_vendors/pdf-lib/core/embedders/FileEmbedder.d.ts +33 -0
  92. package/dist/types/_vendors/pdf-lib/core/embedders/FontFlags.d.ts +13 -0
  93. package/dist/types/_vendors/pdf-lib/core/embedders/JavaScriptEmbedder.d.ts +10 -0
  94. package/dist/types/_vendors/pdf-lib/core/embedders/JpegEmbedder.d.ts +23 -0
  95. package/dist/types/_vendors/pdf-lib/core/embedders/PDFPageEmbedder.d.ts +37 -0
  96. package/dist/types/_vendors/pdf-lib/core/embedders/PngEmbedder.d.ts +19 -0
  97. package/dist/types/_vendors/pdf-lib/core/embedders/StandardFontEmbedder.d.ts +36 -0
  98. package/dist/types/_vendors/pdf-lib/core/errors.d.ts +91 -0
  99. package/dist/types/_vendors/pdf-lib/core/index.d.ts +47 -0
  100. package/dist/types/_vendors/pdf-lib/core/interactive/ViewerPreferences.d.ts +347 -0
  101. package/dist/types/_vendors/pdf-lib/core/objects/PDFArray.d.ts +63 -0
  102. package/dist/types/_vendors/pdf-lib/core/objects/PDFBool.d.ts +13 -0
  103. package/dist/types/_vendors/pdf-lib/core/objects/PDFDict.d.ts +62 -0
  104. package/dist/types/_vendors/pdf-lib/core/objects/PDFHexString.d.ts +16 -0
  105. package/dist/types/_vendors/pdf-lib/core/objects/PDFInvalidObject.d.ts +11 -0
  106. package/dist/types/_vendors/pdf-lib/core/objects/PDFName.d.ts +41 -0
  107. package/dist/types/_vendors/pdf-lib/core/objects/PDFNull.d.ts +10 -0
  108. package/dist/types/_vendors/pdf-lib/core/objects/PDFNumber.d.ts +15 -0
  109. package/dist/types/_vendors/pdf-lib/core/objects/PDFObject.d.ts +8 -0
  110. package/dist/types/_vendors/pdf-lib/core/objects/PDFRawStream.d.ts +16 -0
  111. package/dist/types/_vendors/pdf-lib/core/objects/PDFRef.d.ts +13 -0
  112. package/dist/types/_vendors/pdf-lib/core/objects/PDFStream.d.ts +16 -0
  113. package/dist/types/_vendors/pdf-lib/core/objects/PDFString.d.ts +16 -0
  114. package/dist/types/_vendors/pdf-lib/core/operators/PDFOperator.d.ts +19 -0
  115. package/dist/types/_vendors/pdf-lib/core/operators/PDFOperatorNames.d.ts +76 -0
  116. package/dist/types/_vendors/pdf-lib/core/parser/BaseParser.d.ts +14 -0
  117. package/dist/types/_vendors/pdf-lib/core/parser/ByteStream.d.ts +26 -0
  118. package/dist/types/_vendors/pdf-lib/core/parser/PDFObjectParser.d.ts +31 -0
  119. package/dist/types/_vendors/pdf-lib/core/parser/PDFObjectStreamParser.d.ts +13 -0
  120. package/dist/types/_vendors/pdf-lib/core/parser/PDFParser.d.ts +46 -0
  121. package/dist/types/_vendors/pdf-lib/core/parser/PDFXRefStreamParser.d.ts +21 -0
  122. package/dist/types/_vendors/pdf-lib/core/streams/Ascii85Stream.d.ts +9 -0
  123. package/dist/types/_vendors/pdf-lib/core/streams/AsciiHexStream.d.ts +9 -0
  124. package/dist/types/_vendors/pdf-lib/core/streams/DecodeStream.d.ts +26 -0
  125. package/dist/types/_vendors/pdf-lib/core/streams/DecryptStream.d.ts +12 -0
  126. package/dist/types/_vendors/pdf-lib/core/streams/FlateStream.d.ts +13 -0
  127. package/dist/types/_vendors/pdf-lib/core/streams/LZWStream.d.ts +12 -0
  128. package/dist/types/_vendors/pdf-lib/core/streams/RunLengthStream.d.ts +8 -0
  129. package/dist/types/_vendors/pdf-lib/core/streams/Stream.d.ts +34 -0
  130. package/dist/types/_vendors/pdf-lib/core/streams/decode.d.ts +3 -0
  131. package/dist/types/_vendors/pdf-lib/core/structures/PDFCatalog.d.ts +27 -0
  132. package/dist/types/_vendors/pdf-lib/core/structures/PDFContentStream.d.ts +15 -0
  133. package/dist/types/_vendors/pdf-lib/core/structures/PDFCrossRefStream.d.ts +53 -0
  134. package/dist/types/_vendors/pdf-lib/core/structures/PDFFlateStream.d.ts +13 -0
  135. package/dist/types/_vendors/pdf-lib/core/structures/PDFObjectStream.d.ts +20 -0
  136. package/dist/types/_vendors/pdf-lib/core/structures/PDFPageLeaf.d.ts +54 -0
  137. package/dist/types/_vendors/pdf-lib/core/structures/PDFPageTree.d.ts +41 -0
  138. package/dist/types/_vendors/pdf-lib/core/syntax/CharCodes.d.ts +61 -0
  139. package/dist/types/_vendors/pdf-lib/core/syntax/Delimiters.d.ts +1 -0
  140. package/dist/types/_vendors/pdf-lib/core/syntax/Irregular.d.ts +1 -0
  141. package/dist/types/_vendors/pdf-lib/core/syntax/Keywords.d.ts +22 -0
  142. package/dist/types/_vendors/pdf-lib/core/syntax/Numeric.d.ts +3 -0
  143. package/dist/types/_vendors/pdf-lib/core/syntax/Whitespace.d.ts +1 -0
  144. package/dist/types/_vendors/pdf-lib/core/writers/PDFStreamWriter.d.ts +19 -0
  145. package/dist/types/_vendors/pdf-lib/core/writers/PDFWriter.d.ts +29 -0
  146. package/dist/types/_vendors/pdf-lib/index.d.ts +4 -0
  147. package/dist/types/_vendors/pdf-lib/types/fontkit.d.ts +597 -0
  148. package/dist/types/_vendors/pdf-lib/types/index.d.ts +25 -0
  149. package/dist/types/_vendors/pdf-lib/types/matrix.d.ts +21 -0
  150. package/dist/types/_vendors/pdf-lib/utils/Cache.d.ts +10 -0
  151. package/dist/types/_vendors/pdf-lib/utils/arrays.d.ts +16 -0
  152. package/dist/types/_vendors/pdf-lib/utils/async.d.ts +5 -0
  153. package/dist/types/_vendors/pdf-lib/utils/base64.d.ts +10 -0
  154. package/dist/types/_vendors/pdf-lib/utils/elements/Arc.d.ts +22 -0
  155. package/dist/types/_vendors/pdf-lib/utils/elements/Circle.d.ts +14 -0
  156. package/dist/types/_vendors/pdf-lib/utils/elements/Ellipse.d.ts +20 -0
  157. package/dist/types/_vendors/pdf-lib/utils/elements/GraphElement.d.ts +6 -0
  158. package/dist/types/_vendors/pdf-lib/utils/elements/Line.d.ts +23 -0
  159. package/dist/types/_vendors/pdf-lib/utils/elements/Plot.d.ts +11 -0
  160. package/dist/types/_vendors/pdf-lib/utils/elements/Point.d.ts +18 -0
  161. package/dist/types/_vendors/pdf-lib/utils/elements/Rectangle.d.ts +21 -0
  162. package/dist/types/_vendors/pdf-lib/utils/elements/Segment.d.ts +19 -0
  163. package/dist/types/_vendors/pdf-lib/utils/elements/index.d.ts +9 -0
  164. package/dist/types/_vendors/pdf-lib/utils/errors.d.ts +1 -0
  165. package/dist/types/_vendors/pdf-lib/utils/index.d.ts +11 -0
  166. package/dist/types/_vendors/pdf-lib/utils/intersections.d.ts +9 -0
  167. package/dist/types/_vendors/pdf-lib/utils/maths.d.ts +45 -0
  168. package/dist/types/_vendors/pdf-lib/utils/numbers.d.ts +23 -0
  169. package/dist/types/_vendors/pdf-lib/utils/objects.d.ts +15 -0
  170. package/dist/types/_vendors/pdf-lib/utils/pdfDocEncoding.d.ts +7 -0
  171. package/dist/types/_vendors/pdf-lib/utils/png.d.ts +17 -0
  172. package/dist/types/_vendors/pdf-lib/utils/rng.d.ts +13 -0
  173. package/dist/types/_vendors/pdf-lib/utils/strings.d.ts +25 -0
  174. package/dist/types/_vendors/pdf-lib/utils/unicode.d.ts +186 -0
  175. package/dist/types/_vendors/pdf-lib/utils/validators.d.ts +26 -0
  176. package/dist/types/_vendors/print-designer-editor/Canvas.d.ts +12 -0
  177. package/dist/types/_vendors/print-designer-editor/PdfmeProvider.d.ts +4 -0
  178. package/dist/types/_vendors/print-designer-editor/PropPanel.d.ts +10 -0
  179. package/dist/types/_vendors/print-designer-editor/SchemaList.d.ts +10 -0
  180. package/dist/types/_vendors/print-designer-editor/index.d.ts +14 -0
  181. package/dist/types/_vendors/print-designer-editor/plugins.d.ts +1 -0
  182. package/dist/types/_vendors/print-designer-editor/types.d.ts +64 -0
  183. package/dist/types/_vendors/print-designer-editor/useDesigner.d.ts +84 -0
  184. package/dist/types/_vendors/print-designer-editor/useDesignerContext.d.ts +1 -0
  185. package/dist/types/_vendors/print-designer-editor/utils.d.ts +9 -0
  186. package/dist/types/_vendors/schemas/barcodes/constants.d.ts +4 -0
  187. package/dist/types/_vendors/schemas/barcodes/helper.d.ts +21 -0
  188. package/dist/types/_vendors/schemas/barcodes/index.d.ts +4 -0
  189. package/dist/types/_vendors/schemas/barcodes/pdfRender.d.ts +3 -0
  190. package/dist/types/_vendors/schemas/barcodes/propPanel.d.ts +3 -0
  191. package/dist/types/_vendors/schemas/barcodes/types.d.ts +10 -0
  192. package/dist/types/_vendors/schemas/barcodes/uiRender.d.ts +3 -0
  193. package/dist/types/_vendors/schemas/checkbox/index.d.ts +6 -0
  194. package/dist/types/_vendors/schemas/constants.d.ts +2 -0
  195. package/dist/types/_vendors/schemas/date/date.d.ts +2 -0
  196. package/dist/types/_vendors/schemas/date/dateTime.d.ts +2 -0
  197. package/dist/types/_vendors/schemas/date/helper.d.ts +8 -0
  198. package/dist/types/_vendors/schemas/date/time.d.ts +2 -0
  199. package/dist/types/_vendors/schemas/date/types.d.ts +17 -0
  200. package/dist/types/_vendors/schemas/dynamicTable/engine/core/cell.d.ts +17 -0
  201. package/dist/types/_vendors/schemas/dynamicTable/engine/core/index.d.ts +2 -0
  202. package/dist/types/_vendors/schemas/dynamicTable/engine/core/settings-validator.d.ts +10 -0
  203. package/dist/types/_vendors/schemas/dynamicTable/engine/core/table.d.ts +130 -0
  204. package/dist/types/_vendors/schemas/dynamicTable/engine/engines/layout.engine.d.ts +66 -0
  205. package/dist/types/_vendors/schemas/dynamicTable/engine/engines/overflow.engine.d.ts +36 -0
  206. package/dist/types/_vendors/schemas/dynamicTable/engine/index.d.ts +16 -0
  207. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/core/cell.interface.d.ts +13 -0
  208. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/core/index.d.ts +1 -0
  209. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/engines/index.d.ts +1 -0
  210. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/engines/layout-engine.interface.d.ts +36 -0
  211. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/index.d.ts +5 -0
  212. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/rules/index.d.ts +3 -0
  213. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/rules/rule-engine.interface.d.ts +21 -0
  214. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/rules/rule-registry.interface.d.ts +19 -0
  215. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/stores/cell-registry.interface.d.ts +12 -0
  216. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/stores/index.d.ts +3 -0
  217. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/stores/merge-registry.interface.d.ts +42 -0
  218. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/stores/structure-store.interface.d.ts +31 -0
  219. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/table/index.d.ts +1 -0
  220. package/dist/types/_vendors/schemas/dynamicTable/engine/interfaces/table/table.inteface.d.ts +63 -0
  221. package/dist/types/_vendors/schemas/dynamicTable/engine/renderers/types/renderable-types.d.ts +79 -0
  222. package/dist/types/_vendors/schemas/dynamicTable/engine/renderers/types/serialization.types.d.ts +46 -0
  223. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/ast.types.d.ts +117 -0
  224. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/compiler.d.ts +54 -0
  225. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/evaluator.d.ts +36 -0
  226. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/extract-deps.d.ts +8 -0
  227. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/functions/registry.d.ts +47 -0
  228. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/index.d.ts +20 -0
  229. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/lexer.d.ts +36 -0
  230. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/parser.d.ts +45 -0
  231. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/range-resolver.d.ts +25 -0
  232. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/scope-vocabulary.d.ts +25 -0
  233. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/text-measurer.d.ts +88 -0
  234. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/expression/var-catalog.d.ts +34 -0
  235. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/index.d.ts +13 -0
  236. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/rule-engine.d.ts +36 -0
  237. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/rule-matcher.d.ts +28 -0
  238. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/rule-registry.d.ts +32 -0
  239. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/types/evaluation.types.d.ts +178 -0
  240. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/types/index.d.ts +5 -0
  241. package/dist/types/_vendors/schemas/dynamicTable/engine/rules/types/rule.types.d.ts +78 -0
  242. package/dist/types/_vendors/schemas/dynamicTable/engine/stores/cell-registry.store.d.ts +20 -0
  243. package/dist/types/_vendors/schemas/dynamicTable/engine/stores/merge-registry.stores.d.ts +51 -0
  244. package/dist/types/_vendors/schemas/dynamicTable/engine/stores/structure.store.d.ts +39 -0
  245. package/dist/types/_vendors/schemas/dynamicTable/engine/styles/defaults.d.ts +7 -0
  246. package/dist/types/_vendors/schemas/dynamicTable/engine/styles/index.d.ts +2 -0
  247. package/dist/types/_vendors/schemas/dynamicTable/engine/styles/resolve.d.ts +12 -0
  248. package/dist/types/_vendors/schemas/dynamicTable/engine/types/common.d.ts +138 -0
  249. package/dist/types/_vendors/schemas/dynamicTable/engine/types/index.d.ts +1 -0
  250. package/dist/types/_vendors/schemas/dynamicTable/engine/types/rule-target.types.d.ts +89 -0
  251. package/dist/types/_vendors/schemas/dynamicTable/helpers/cellSchemaMapper.d.ts +21 -0
  252. package/dist/types/_vendors/schemas/dynamicTable/helpers/cellStyleControls.d.ts +6 -0
  253. package/dist/types/_vendors/schemas/dynamicTable/helpers/domUtils.d.ts +24 -0
  254. package/dist/types/_vendors/schemas/dynamicTable/helpers/propPanelWidgets.d.ts +13 -0
  255. package/dist/types/_vendors/schemas/dynamicTable/helpers/regionStyleControls.d.ts +5 -0
  256. package/dist/types/_vendors/schemas/dynamicTable/helpers/toast.d.ts +5 -0
  257. package/dist/types/_vendors/schemas/dynamicTable/helpers/widgets/settingsWidgets.d.ts +16 -0
  258. package/dist/types/_vendors/schemas/dynamicTable/helpers/widgets/structureWidget.d.ts +13 -0
  259. package/dist/types/_vendors/schemas/dynamicTable/helpers/widgets/styleWidgets.d.ts +20 -0
  260. package/dist/types/_vendors/schemas/dynamicTable/index.d.ts +4 -0
  261. package/dist/types/_vendors/schemas/dynamicTable/instanceManager.d.ts +18 -0
  262. package/dist/types/_vendors/schemas/dynamicTable/pdfRender.d.ts +8 -0
  263. package/dist/types/_vendors/schemas/dynamicTable/propPanel.d.ts +15 -0
  264. package/dist/types/_vendors/schemas/dynamicTable/types.d.ts +39 -0
  265. package/dist/types/_vendors/schemas/dynamicTable/uiComponents/addRemoveButtons.d.ts +6 -0
  266. package/dist/types/_vendors/schemas/dynamicTable/uiComponents/cellResizeInteractions.d.ts +17 -0
  267. package/dist/types/_vendors/schemas/dynamicTable/uiComponents/cellSelection.d.ts +16 -0
  268. package/dist/types/_vendors/schemas/dynamicTable/uiComponents/createButton.d.ts +14 -0
  269. package/dist/types/_vendors/schemas/dynamicTable/uiComponents/index.d.ts +4 -0
  270. package/dist/types/_vendors/schemas/dynamicTable/uiRender.d.ts +26 -0
  271. package/dist/types/_vendors/schemas/graphics/image.d.ts +5 -0
  272. package/dist/types/_vendors/schemas/graphics/imagehelper.d.ts +4 -0
  273. package/dist/types/_vendors/schemas/graphics/signature.d.ts +5 -0
  274. package/dist/types/_vendors/schemas/graphics/svg.d.ts +4 -0
  275. package/dist/types/_vendors/schemas/index.d.ts +22 -0
  276. package/dist/types/_vendors/schemas/insertVariableWidget.d.ts +9 -0
  277. package/dist/types/_vendors/schemas/multiVariableText/helper.d.ts +3 -0
  278. package/dist/types/_vendors/schemas/multiVariableText/index.d.ts +4 -0
  279. package/dist/types/_vendors/schemas/multiVariableText/pdfRender.d.ts +3 -0
  280. package/dist/types/_vendors/schemas/multiVariableText/propPanel.d.ts +3 -0
  281. package/dist/types/_vendors/schemas/multiVariableText/types.d.ts +5 -0
  282. package/dist/types/_vendors/schemas/multiVariableText/uiRender.d.ts +3 -0
  283. package/dist/types/_vendors/schemas/radioGroup/index.d.ts +7 -0
  284. package/dist/types/_vendors/schemas/select/index.d.ts +7 -0
  285. package/dist/types/_vendors/schemas/shapes/line.d.ts +6 -0
  286. package/dist/types/_vendors/schemas/shapes/rectAndEllipse.d.ts +175 -0
  287. package/dist/types/_vendors/schemas/tables/cell.d.ts +4 -0
  288. package/dist/types/_vendors/schemas/tables/classes.d.ts +69 -0
  289. package/dist/types/_vendors/schemas/tables/dynamicTemplate.d.ts +7 -0
  290. package/dist/types/_vendors/schemas/tables/helper.d.ts +265 -0
  291. package/dist/types/_vendors/schemas/tables/index.d.ts +4 -0
  292. package/dist/types/_vendors/schemas/tables/pdfRender.d.ts +3 -0
  293. package/dist/types/_vendors/schemas/tables/propPanel.d.ts +3 -0
  294. package/dist/types/_vendors/schemas/tables/tableHelper.d.ts +10 -0
  295. package/dist/types/_vendors/schemas/tables/types.d.ts +88 -0
  296. package/dist/types/_vendors/schemas/tables/uiRender.d.ts +3 -0
  297. package/dist/types/_vendors/schemas/text/constants.d.ts +23 -0
  298. package/dist/types/_vendors/schemas/text/extraFormatter.d.ts +25 -0
  299. package/dist/types/_vendors/schemas/text/helper.d.ts +39 -0
  300. package/dist/types/_vendors/schemas/text/icons/index.d.ts +9 -0
  301. package/dist/types/_vendors/schemas/text/index.d.ts +4 -0
  302. package/dist/types/_vendors/schemas/text/pdfRender.d.ts +3 -0
  303. package/dist/types/_vendors/schemas/text/propPanel.d.ts +3 -0
  304. package/dist/types/_vendors/schemas/text/types.d.ts +28 -0
  305. package/dist/types/_vendors/schemas/text/uiRender.d.ts +11 -0
  306. package/dist/types/_vendors/schemas/utils.d.ts +40 -0
  307. package/dist/types/_vendors/schemas/variableBarcode/helper.d.ts +10 -0
  308. package/dist/types/_vendors/schemas/variableBarcode/index.d.ts +6 -0
  309. package/dist/types/_vendors/schemas/variableBarcode/pdfRender.d.ts +3 -0
  310. package/dist/types/_vendors/schemas/variableBarcode/propPanel.d.ts +4 -0
  311. package/dist/types/_vendors/schemas/variableBarcode/types.d.ts +7 -0
  312. package/dist/types/_vendors/schemas/variableBarcode/uiRender.d.ts +3 -0
  313. package/dist/types/_vendors/ui/Designer.d.ts +23 -0
  314. package/dist/types/_vendors/ui/Form.d.ts +26 -0
  315. package/dist/types/_vendors/ui/Viewer.d.ts +17 -0
  316. package/dist/types/_vendors/ui/class.d.ts +89 -0
  317. package/dist/types/_vendors/ui/components/AppContextProvider.d.ts +11 -0
  318. package/dist/types/_vendors/ui/components/CtlBar.d.ts +18 -0
  319. package/dist/types/_vendors/ui/components/Designer/Canvas/Guides.d.ts +9 -0
  320. package/dist/types/_vendors/ui/components/Designer/Canvas/Mask.d.ts +4 -0
  321. package/dist/types/_vendors/ui/components/Designer/Canvas/Moveable.d.ts +37 -0
  322. package/dist/types/_vendors/ui/components/Designer/Canvas/Padding.d.ts +6 -0
  323. package/dist/types/_vendors/ui/components/Designer/Canvas/Selecto.d.ts +10 -0
  324. package/dist/types/_vendors/ui/components/Designer/Canvas/index.d.ts +22 -0
  325. package/dist/types/_vendors/ui/components/Designer/LeftSidebar.d.ts +8 -0
  326. package/dist/types/_vendors/ui/components/Designer/PluginIcon.d.ts +10 -0
  327. package/dist/types/_vendors/ui/components/Designer/RightSidebar/DetailView/AlignWidget.d.ts +4 -0
  328. package/dist/types/_vendors/ui/components/Designer/RightSidebar/DetailView/ButtonGroupWidget.d.ts +4 -0
  329. package/dist/types/_vendors/ui/components/Designer/RightSidebar/DetailView/WidgetRenderer.d.ts +7 -0
  330. package/dist/types/_vendors/ui/components/Designer/RightSidebar/DetailView/index.d.ts +9 -0
  331. package/dist/types/_vendors/ui/components/Designer/RightSidebar/ListView/Item.d.ts +45 -0
  332. package/dist/types/_vendors/ui/components/Designer/RightSidebar/ListView/SelectableSortableContainer.d.ts +4 -0
  333. package/dist/types/_vendors/ui/components/Designer/RightSidebar/ListView/SelectableSortableItem.d.ts +14 -0
  334. package/dist/types/_vendors/ui/components/Designer/RightSidebar/ListView/index.d.ts +4 -0
  335. package/dist/types/_vendors/ui/components/Designer/RightSidebar/index.d.ts +4 -0
  336. package/dist/types/_vendors/ui/components/Designer/RightSidebar/layout.d.ts +15 -0
  337. package/dist/types/_vendors/ui/components/Designer/index.d.ts +11 -0
  338. package/dist/types/_vendors/ui/components/ErrorScreen.d.ts +7 -0
  339. package/dist/types/_vendors/ui/components/Paper.d.ts +20 -0
  340. package/dist/types/_vendors/ui/components/Preview.d.ts +15 -0
  341. package/dist/types/_vendors/ui/components/Renderer.d.ts +13 -0
  342. package/dist/types/_vendors/ui/components/Root.d.ts +9 -0
  343. package/dist/types/_vendors/ui/components/Spinner.d.ts +3 -0
  344. package/dist/types/_vendors/ui/components/StaticSchema.d.ts +10 -0
  345. package/dist/types/_vendors/ui/components/UnitPager.d.ts +10 -0
  346. package/dist/types/_vendors/ui/constants.d.ts +11 -0
  347. package/dist/types/_vendors/ui/contexts.d.ts +10 -0
  348. package/dist/types/_vendors/ui/helper.d.ts +73 -0
  349. package/dist/types/_vendors/ui/hooks.d.ts +46 -0
  350. package/dist/types/_vendors/ui/i18n.d.ts +3 -0
  351. package/dist/types/_vendors/ui/index.d.ts +4 -0
  352. package/dist/types/_vendors/ui/theme.d.ts +2 -0
  353. package/dist/types/_vendors/ui/types.d.ts +19 -0
  354. package/dist/types/common.d.ts +1 -2
  355. package/dist/types/converter.d.ts +1 -2
  356. package/dist/types/generator.d.ts +1 -2
  357. package/dist/types/index.d.ts +7 -9
  358. package/dist/types/manipulator.d.ts +1 -2
  359. package/dist/types/print-designer-editor.d.ts +1 -2
  360. package/dist/types/schemas.d.ts +1 -2
  361. package/dist/types/ui.d.ts +1 -2
  362. package/package.json +12 -11
  363. package/dist/types/common.d.ts.map +0 -1
  364. package/dist/types/converter.d.ts.map +0 -1
  365. package/dist/types/generator.d.ts.map +0 -1
  366. package/dist/types/index.d.ts.map +0 -1
  367. package/dist/types/manipulator.d.ts.map +0 -1
  368. package/dist/types/print-designer-editor.d.ts.map +0 -1
  369. package/dist/types/schemas.d.ts.map +0 -1
  370. package/dist/types/ui.d.ts.map +0 -1
@@ -0,0 +1,21 @@
1
+ import type { ICell } from '../core';
2
+ import type { EvaluationResult, ResolvedCell } from '../../rules/types/evaluation.types';
3
+ import type { RulePayload } from '../../rules/types/rule.types';
4
+ export interface IRuleEngine {
5
+ /** Evaluate all matching rules for one cell. Stores result internally. */
6
+ evaluateCell(cell: ICell): EvaluationResult;
7
+ /** Evaluate all cells in the table. Stores results internally. */
8
+ evaluateAll(): void;
9
+ /** Get the cached evaluation result for a cell. */
10
+ getResult(cellId: string): EvaluationResult | undefined;
11
+ /** Get all cached results. */
12
+ getAllResults(): ReadonlyMap<string, EvaluationResult>;
13
+ /** Build a ResolvedCell (final renderer snapshot) by merging base style + rule patches. */
14
+ resolveCell(cell: ICell): ResolvedCell;
15
+ /** Clear all cached results. */
16
+ clearResults(): void;
17
+ /** Export all rules as serializable payloads. */
18
+ exportRules(): RulePayload[];
19
+ /** Import rules from serializable payloads, replacing all existing rules. */
20
+ importRules(payloads: RulePayload[]): void;
21
+ }
@@ -0,0 +1,19 @@
1
+ import type { ICell } from '../core';
2
+ import type { Rule, RuleInput, RulePayload, RuleUpdate } from '../../rules/types/rule.types';
3
+ import type { RuleScope } from '../../types/rule-target.types';
4
+ export type { MatchContext } from '../../rules/rule-matcher';
5
+ export interface IRuleRegistry {
6
+ addRule(input: RuleInput): string;
7
+ removeRule(ruleId: string): void;
8
+ updateRule(ruleId: string, update: RuleUpdate): boolean;
9
+ getRule(ruleId: string): Rule | undefined;
10
+ getAll(): Rule[];
11
+ enableRule(ruleId: string): void;
12
+ disableRule(ruleId: string): void;
13
+ getRulesForCell(cell: ICell, ctx: import('../../rules/rule-matcher').MatchContext): Rule[];
14
+ getRulesByScope(scope: RuleScope): Rule[];
15
+ searchByLabel(query: string): Rule[];
16
+ getRulesByValueDep(depKey: string): Rule[];
17
+ export(): RulePayload[];
18
+ import(payloads: RulePayload[]): void;
19
+ }
@@ -0,0 +1,12 @@
1
+ import { CellPayload, CellStyle, Region } from "../../types";
2
+ import { ICell } from "../core";
3
+ export interface ICellRegistry {
4
+ createCell(region: Region, rawValue?: string, style?: Partial<CellStyle>, isDynamic?: boolean): string;
5
+ createCellWithId(cellId: string, region: Region, rawValue?: string, style?: Partial<CellStyle>, isDynamic?: boolean, computedValue?: string | number): string;
6
+ getCellById(cellId: string): ICell | undefined;
7
+ getCellByAddress(address: string): ICell | undefined;
8
+ updateCell(cellId: string, payload: CellPayload): void;
9
+ deleteCell(cellId: string): void;
10
+ setCellAddress(cellId: string, address: string): void;
11
+ clearCellAddress(cellId: string): void;
12
+ }
@@ -0,0 +1,3 @@
1
+ export type { ICellRegistry } from "./cell-registry.interface";
2
+ export type { IMergeRegistry } from "./merge-registry.interface";
3
+ export type { IStructureStore } from "./structure-store.interface";
@@ -0,0 +1,42 @@
1
+ import { Rect } from "../../types/common";
2
+ export interface IMergeRegistry {
3
+ /**
4
+ * Create a merge for the given rectangle of cells
5
+ */
6
+ createMerge(rect: Rect): void;
7
+ /**
8
+ * Validate if a merge rectangle is valid for the current table structure
9
+ */
10
+ isValidMerge(rect: Rect): boolean;
11
+ /**
12
+ * Get merge by root cell ID
13
+ * Returns the merge rectangle if it exists
14
+ */
15
+ getMergeByRootId(cellId: string): Rect | undefined;
16
+ /**
17
+ * Delete a merge by its root cell ID
18
+ * After deletion, cells are unmerged and layout must be rebuilt
19
+ */
20
+ deleteMerge(cellId: string): void;
21
+ /**
22
+ * Get all merges organized as top-level rects
23
+ * Filters nested merges to only return the parent merges
24
+ */
25
+ getMergeSet(): Map<string, Rect>;
26
+ /**
27
+ * Find a merge that contains a specific cell
28
+ * Returns the root cell ID and merge rectangle if found
29
+ */
30
+ findMergeByContainedCell(cellId: string): {
31
+ rootCellId: string;
32
+ merge: Rect;
33
+ } | undefined;
34
+ /**
35
+ * Check if a cell ID is a merge root
36
+ */
37
+ isMergeRoot(cellId: string): boolean;
38
+ /**
39
+ * Get all cell IDs that are merge roots
40
+ */
41
+ getMergeRoots(): string[];
42
+ }
@@ -0,0 +1,31 @@
1
+ import { Region } from "../../types";
2
+ export interface IStructureStore {
3
+ addRootCell(cellId: string, region: Region): void;
4
+ removeRootCell(cellId: string, region: Region): void;
5
+ getRoots(region: Region): readonly string[] | undefined;
6
+ addChildCell(parentId: string, region: Region, childId: string, index?: number): void;
7
+ removeChildCell(parentId: string, childId: string, region: Region): void;
8
+ getChildren(parentId: string): readonly string[] | undefined;
9
+ insertBodyRow(rowIndex: number, cellIds: string[]): void;
10
+ removeBodyRow(rowIndex: number): string[];
11
+ insertBodyCol(colIndex: number, cellIds: string[]): void;
12
+ removeBodyCol(colIndex: number): string[];
13
+ getBodyCell(rowIndex: number, colIndex: number): string | undefined;
14
+ getBody(): readonly (readonly string[])[];
15
+ countTotalRows(): number;
16
+ countTotalCols(): number;
17
+ getLeafCells(cellId: string): string[];
18
+ getHeightOfCell(cellId: string): number;
19
+ isLeafCell(cellId: string): boolean;
20
+ getLeafCount(region: Region): number;
21
+ getBodyIndexForHeaderLeafCell(region: Region, cellId: string): number;
22
+ reorderHeaderCell(region: Region, fromIndex: number, toIndex: number, withChildren?: boolean): void;
23
+ /** Check if the body grid needs a new row/col slice to match this region's current leaf count */
24
+ needsBodySliceForRegion(region: Region): boolean;
25
+ addFooterCell(rowIndex: number, cellId: string): void;
26
+ removeFooterCell(rowIndex: number, colIndex: number): string;
27
+ addFooterRow(cellId: string): void;
28
+ removeFooterRow(rowIndex: number): string[];
29
+ getFooter(): readonly (readonly string[])[];
30
+ getFooterCell(rowIndex: number, colIndex: number): string | undefined;
31
+ }
@@ -0,0 +1 @@
1
+ export type { ITable } from "./table.inteface";
@@ -0,0 +1,63 @@
1
+ import { ICell } from "../core";
2
+ import { CellPayload, CellStyle, Region, TableSettings, TablePosition, TableStyle, RegionStyle, BodyRegionStyle, RegionStyleMap, UIState } from "../../types";
3
+ import { Rect } from "../../types/common";
4
+ import type { EvaluationResult } from "../../rules/types/evaluation.types";
5
+ import type { TableExportData } from "../../renderers/types/serialization.types";
6
+ import type { RenderableTableInstance } from "../../renderers/types/renderable-types";
7
+ export interface ITable {
8
+ addHeaderCell(region: Region, parentId?: string, index?: number): string | 'exceeds-bounds';
9
+ removeHeaderCell(cellId: string, region: Region, isRoot: boolean, parentId?: string): void;
10
+ buildBody(data: (string | number)[][]): void;
11
+ insertBodyRow(rowIndex: number, data?: (string | number)[]): 'added' | 'max-reached' | 'exceeds-bounds';
12
+ removeBodyRow(rowIndex: number): 'removed' | 'cleared';
13
+ insertBodyCol(colIndex: number, data?: (string | number)[]): 'added' | 'max-reached' | 'exceeds-bounds';
14
+ removeBodyCol(colIndex: number): 'removed' | 'cleared';
15
+ getCellById(cellId: string): ICell | undefined;
16
+ getCellByAddress(row: number, col: number): ICell | undefined;
17
+ updateCell(cellId: string, payload: CellPayload): void;
18
+ mergeCells(rect: Rect): void;
19
+ unmergeCells(cellId: string): void;
20
+ getMerges(): Map<string, Rect>;
21
+ getSettings(): TableSettings;
22
+ updateSettings(settings: Partial<TableSettings>): string | null;
23
+ getTableStyle(): TableStyle;
24
+ setTableStyle(style: Partial<TableStyle>): void;
25
+ getRegionStyles(): RegionStyleMap;
26
+ getRegionStyle(region: Region): RegionStyle | BodyRegionStyle | undefined;
27
+ setRegionStyle(region: Region, style: RegionStyle | BodyRegionStyle): void;
28
+ setColumnWidth(colIndex: number, width: number): void;
29
+ setRowHeight(rowIndex: number, height: number): void;
30
+ setDefaultCellWidth(width: number): void;
31
+ setDefaultCellHeight(height: number): void;
32
+ getColumnWidths(): number[];
33
+ getRowHeights(): number[];
34
+ setTablePosition(position: TablePosition): void;
35
+ getTablePosition(): TablePosition;
36
+ setFooterRowHeight(rowIndex: number, height: number): void;
37
+ getFooterRowHeights(): number[];
38
+ getFooterCellWidths(): number[][];
39
+ setFooterCellWidth(rowIndex: number, colIndex: number, width: number): void;
40
+ getFooter(): readonly (readonly string[])[];
41
+ addFooterRow(): void;
42
+ addFooterCell(rowIndex: number): void;
43
+ removeFooterCell(rowIndex: number, colIndex: number): void;
44
+ removeFooterRow(rowIndex: number): void;
45
+ getCompleteGrid(): string[][];
46
+ getEvaluationResult(cellId: string): EvaluationResult | undefined;
47
+ getOverflowStylePatch(cellId: string): Partial<CellStyle> | undefined;
48
+ exportState(): TableExportData;
49
+ getUIState(): UIState;
50
+ startEditing(cellId: string): void;
51
+ stopEditing(): void;
52
+ selectCell(cellId: string): void;
53
+ selectCells(cellIds: string[]): void;
54
+ setSelectionAnchor(anchor: {
55
+ row: number;
56
+ col: number;
57
+ region: string;
58
+ } | null): void;
59
+ clearSelection(): void;
60
+ resetUIState(): void;
61
+ getRenderSnapshot(): RenderableTableInstance;
62
+ toJSON(): string;
63
+ }
@@ -0,0 +1,79 @@
1
+ import { CellLayout, CellStyle, TableSettings, TableStyle, RegionStyleMap, Region, Rect } from "../../types";
2
+ import { EvaluationResult } from "../../rules/types/evaluation.types";
3
+ /**
4
+ * Renderable version of a cell - optimized for rendering
5
+ * Contains all calculated and style information needed by renderers.
6
+ * style is the fully resolved CellStyle (after cascade).
7
+ */
8
+ export interface RenderableCell {
9
+ cellID: string;
10
+ rawValue: string | number;
11
+ computedValue?: string | number;
12
+ layout: CellLayout;
13
+ style: CellStyle;
14
+ inRegion: Region;
15
+ evaluationResult?: EvaluationResult;
16
+ isDynamic: boolean;
17
+ mergeRect?: Rect;
18
+ }
19
+ /**
20
+ * Renderable row - groups cells that belong to same row
21
+ */
22
+ export interface RenderableRow {
23
+ rowIndex: number;
24
+ globalRowIndex: number;
25
+ region: Region;
26
+ height: number;
27
+ cells: Map<number, RenderableCell>;
28
+ rawValues: (string | number)[];
29
+ }
30
+ /**
31
+ * Column information with calculated width
32
+ */
33
+ export interface RenderableColumn {
34
+ colIndex: number;
35
+ width: number;
36
+ }
37
+ /**
38
+ * Renderable merge - tracks merged cell regions
39
+ */
40
+ export interface RenderableMerge {
41
+ cellID: string;
42
+ startRow: number;
43
+ startCol: number;
44
+ endRow: number;
45
+ endCol: number;
46
+ primaryRegion: Region;
47
+ }
48
+ /**
49
+ * Complete renderable table instance
50
+ * Everything needed to render without touching the Table facade
51
+ */
52
+ export interface RenderableTableInstance {
53
+ settings: TableSettings;
54
+ tableStyle: TableStyle;
55
+ regionStyles: RegionStyleMap;
56
+ columns: RenderableColumn[];
57
+ footerColumns: RenderableColumn[];
58
+ regions: {
59
+ theader: RenderableRow[];
60
+ lheader: RenderableRow[];
61
+ rheader: RenderableRow[];
62
+ footer: RenderableRow[];
63
+ body: RenderableRow[];
64
+ };
65
+ cellsById: Map<string, RenderableCell>;
66
+ merges: RenderableMerge[];
67
+ evaluationResults: Map<string, EvaluationResult>;
68
+ editingCellId: string | null;
69
+ selectedCellIds: ReadonlySet<string>;
70
+ mergeMode: 'none' | 'selecting' | 'unmerging' | 'styling';
71
+ getCellAt(row: number, col: number, region: Region): RenderableCell | undefined;
72
+ getCellByID(cellID: string): RenderableCell | undefined;
73
+ getRowsInRegion(region: Region): RenderableRow[];
74
+ getWidth(): number;
75
+ getHeight(): number;
76
+ getHeadHeight(): number;
77
+ getBodyHeight(): number;
78
+ getFooterHeight(): number;
79
+ }
@@ -0,0 +1,46 @@
1
+ import type { CellStyle, OverflowMode, Rect, TableSettings, TableStyle, RegionStyleMap } from '../../types';
2
+ import type { RulePayload } from '../../rules/types/rule.types';
3
+ /**
4
+ * JSON-serializable representation of a header tree node.
5
+ * Used only for transport/storage — at runtime, StructureStore is the source of truth.
6
+ */
7
+ export interface SerializedHeaderNode {
8
+ cellId: string;
9
+ rawValue: string | number;
10
+ style: Partial<CellStyle>;
11
+ overflow?: OverflowMode;
12
+ isDynamic: boolean;
13
+ computedValue?: string | number;
14
+ children: SerializedHeaderNode[];
15
+ }
16
+ /**
17
+ * Serialized body cell data (one entry per body grid position).
18
+ */
19
+ export interface SerializedBodyCell {
20
+ cellId: string;
21
+ rawValue: string | number;
22
+ style: Partial<CellStyle>;
23
+ overflow?: OverflowMode;
24
+ isDynamic: boolean;
25
+ computedValue?: string | number;
26
+ }
27
+ /**
28
+ * Complete export of a Table's state — everything needed to reconstruct
29
+ * the Table instance from scratch.
30
+ *
31
+ * CellLayout is NOT included because it is always recomputed by LayoutEngine.rebuild().
32
+ */
33
+ export interface TableExportData {
34
+ headerTrees: Record<'theader' | 'lheader' | 'rheader', SerializedHeaderNode[]>;
35
+ footer: SerializedBodyCell[][];
36
+ body: SerializedBodyCell[][];
37
+ merges: Rect[];
38
+ settings: TableSettings;
39
+ tableStyle: TableStyle;
40
+ regionStyles: RegionStyleMap;
41
+ columnWidths: number[];
42
+ rowHeights: number[];
43
+ footerCellWidths: number[][];
44
+ footerRowHeights: number[];
45
+ rules: RulePayload[];
46
+ }
@@ -0,0 +1,117 @@
1
+ /**
2
+ * AST (Abstract Syntax Tree) node types for rule expressions.
3
+ * Discriminated union of all expression node types.
4
+ */
5
+ /**
6
+ * Literal value — number, string, or boolean.
7
+ * Evaluates to its value directly.
8
+ */
9
+ export interface LiteralNode {
10
+ type: 'Literal';
11
+ value: string | number | boolean | null;
12
+ }
13
+ /**
14
+ * Variable reference — dot-path like "cell.value", "table.rowCount".
15
+ * Engine resolves path against EvalContext at evaluation time.
16
+ *
17
+ * Examples:
18
+ * - "cell.value" → string display value
19
+ * - "cell.numericValue"→ numeric value
20
+ * - "cell.rowIndex" → row index
21
+ * - "cell.overflows" → boolean
22
+ * - "table.rowCount" → total rows
23
+ */
24
+ export interface VarNode {
25
+ type: 'Var';
26
+ path: string;
27
+ }
28
+ /**
29
+ * Binary operation — left operator right.
30
+ * Examples: >100, cell.value == "red", SUM(col:0) > AVG(col:1)
31
+ *
32
+ * Operators:
33
+ * - Comparison: >, <, >=, <=, ==, !=
34
+ * - Arithmetic: +, -, *, /, %
35
+ * - Logical: AND, OR
36
+ */
37
+ export interface BinaryOpNode {
38
+ type: 'BinaryOp';
39
+ op: '>' | '<' | '>=' | '<=' | '==' | '!=' | '+' | '-' | '*' | '/' | '%' | 'AND' | 'OR';
40
+ left: ExprNode;
41
+ right: ExprNode;
42
+ }
43
+ /**
44
+ * Unary operation — operator operand.
45
+ * Examples: NOT true, -5
46
+ *
47
+ * Operators: NOT (logical negation), - (numeric negation)
48
+ */
49
+ export interface UnaryOpNode {
50
+ type: 'UnaryOp';
51
+ op: 'NOT' | '-';
52
+ operand: ExprNode;
53
+ }
54
+ /**
55
+ * Function call — name with arguments.
56
+ * Examples: SUM(col:0), TEXT_HEIGHT(cell.value, 12), CELL(0, 1)
57
+ *
58
+ * Arguments are evaluated recursively; functions receive resolved values.
59
+ */
60
+ export interface FnCallNode {
61
+ type: 'FnCall';
62
+ name: string;
63
+ args: ExprNode[];
64
+ }
65
+ /**
66
+ * Range reference — notation like "col:0", "row:3", "col:self", "body", "self", etc.
67
+ * Evaluates to ICell[] (array of cells matching the range).
68
+ *
69
+ * Notation examples:
70
+ * - "col:0" → all cells in column 0
71
+ * - "col:self" → all cells in the rule's target column (resolved at eval time)
72
+ * - "row:3" → all cells in row 3
73
+ * - "row:self" → all cells in the rule's target row (resolved at eval time)
74
+ * - "r0c0:r2c3" → rectangular selection (rows 0-2, cols 0-3)
75
+ * - "body" → all body cells
76
+ * - "self" → for selection-scoped rules, the selection rect
77
+ */
78
+ export interface RangeRefNode {
79
+ type: 'RangeRef';
80
+ notation: string;
81
+ }
82
+ /**
83
+ * Object literal — key-value pairs.
84
+ * Used in result expressions to build structured outputs.
85
+ *
86
+ * Examples:
87
+ * - { style: { backgroundColor: 'red' } }
88
+ * - { rowHeightMin: 50, colWidthMin: 100 }
89
+ */
90
+ export interface ObjectLiteralNode {
91
+ type: 'ObjectLiteral';
92
+ properties: Map<string, ExprNode>;
93
+ }
94
+ /**
95
+ * Array literal — list of values.
96
+ * Used in complex expressions (though less common in rule conditions).
97
+ */
98
+ export interface ArrayLiteralNode {
99
+ type: 'ArrayLiteral';
100
+ elements: ExprNode[];
101
+ }
102
+ /**
103
+ * ExprNode — discriminated union of all expression node types.
104
+ * Represents the complete syntax tree of a rule expression.
105
+ */
106
+ export type ExprNode = LiteralNode | VarNode | BinaryOpNode | UnaryOpNode | FnCallNode | RangeRefNode | ObjectLiteralNode | ArrayLiteralNode;
107
+ /**
108
+ * Helper type guard functions (optional, for convenience).
109
+ */
110
+ export declare const isLiteral: (node: ExprNode) => node is LiteralNode;
111
+ export declare const isVar: (node: ExprNode) => node is VarNode;
112
+ export declare const isBinaryOp: (node: ExprNode) => node is BinaryOpNode;
113
+ export declare const isUnaryOp: (node: ExprNode) => node is UnaryOpNode;
114
+ export declare const isFnCall: (node: ExprNode) => node is FnCallNode;
115
+ export declare const isRangeRef: (node: ExprNode) => node is RangeRefNode;
116
+ export declare const isObjectLiteral: (node: ExprNode) => node is ObjectLiteralNode;
117
+ export declare const isArrayLiteral: (node: ExprNode) => node is ArrayLiteralNode;
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Compiler — converts expression strings to AST and validates them.
3
+ * Wraps lexer, parser, and validation logic.
4
+ *
5
+ * Pipeline: string → Lexer → tokens → Parser → AST → validator → (AST or error)
6
+ */
7
+ import type { ExprNode } from './ast.types';
8
+ export interface CompileError {
9
+ message: string;
10
+ position?: number;
11
+ }
12
+ export interface ValidationResult {
13
+ valid: boolean;
14
+ errors: CompileError[];
15
+ }
16
+ /**
17
+ * Compiler — translates expression strings to AST.
18
+ */
19
+ export declare class Compiler {
20
+ /**
21
+ * Compile an expression string to AST.
22
+ * @param expr - expression string (e.g., "cell.value > 100")
23
+ * @returns AST node
24
+ * @throws CompileError if syntax is invalid
25
+ */
26
+ static compile(expr: string): ExprNode;
27
+ /**
28
+ * Validate an expression string without evaluating it.
29
+ * Checks syntax only; does not verify Var/FnCall names exist.
30
+ *
31
+ * @param expr - expression string
32
+ * @returns validation result
33
+ */
34
+ static validate(expr: string): ValidationResult;
35
+ /**
36
+ * Quick syntax check without throwing.
37
+ * @param expr - expression string
38
+ * @returns true if syntax is valid
39
+ */
40
+ static isSyntaxValid(expr: string): boolean;
41
+ /**
42
+ * Parse multiple expressions at once (batch validation).
43
+ * Useful for validating a whole rule set.
44
+ */
45
+ static compileMultiple(expressions: string[]): {
46
+ asts: ExprNode[];
47
+ errors: Record<number, CompileError[]>;
48
+ };
49
+ }
50
+ /**
51
+ * Convenience function — compile and return AST, or null on error.
52
+ * Useful for lenient parsing.
53
+ */
54
+ export declare function tryCompile(expr: string): ExprNode | null;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Evaluator — walks an AST and evaluates it to a typed value.
3
+ * Handles the engine-specific parts:
4
+ * - Var resolution (cell.value, table.rowCount)
5
+ * - FnCall dispatch (SUM, AVG, TEXT_HEIGHT, etc.)
6
+ * - RangeRef resolution (col:0, row:self, body, etc.)
7
+ *
8
+ * Everything else (literals, operators, object literals) is standard expression evaluation.
9
+ */
10
+ import type { ExprNode } from './ast.types';
11
+ import type { EvalContext } from '../types/evaluation.types';
12
+ export declare class EvaluationError extends Error {
13
+ message: string;
14
+ constructor(message: string);
15
+ }
16
+ /**
17
+ * Evaluator — evaluates an ExprNode AST.
18
+ */
19
+ export declare class Evaluator {
20
+ /**
21
+ * Evaluate an AST node against the given context.
22
+ * @param node - AST node to evaluate
23
+ * @param ctx - evaluation context (cell, table, stores, etc.)
24
+ * @returns the evaluated result
25
+ */
26
+ static evaluate(node: ExprNode, ctx: EvalContext): any;
27
+ private static evaluateVar;
28
+ private static evaluateBinaryOp;
29
+ private static evaluateUnaryOp;
30
+ private static evaluateFnCall;
31
+ private static evaluateRangeRef;
32
+ private static evaluateObjectLiteral;
33
+ private static evaluateArrayLiteral;
34
+ /** Convert value to boolean (for AND, OR, NOT) */
35
+ private static toBoolean;
36
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * extractVarPaths — walks an AST and collects all variable dependency keys.
3
+ *
4
+ * Used by RuleRegistry to auto-populate Rule.valueDeps on addRule/updateRule.
5
+ * Collects Var node paths (e.g. "cell.value") and RangeRef notations (e.g. "col:0").
6
+ */
7
+ import type { ExprNode } from './ast.types';
8
+ export declare function extractVarPaths(ast: ExprNode): string[];
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Function Registry — hardcoded FnCall definitions that the engine understands.
3
+ * Maps function names to implementations.
4
+ *
5
+ * Canvas uses the catalog to show autocomplete / pick-list.
6
+ * Engine uses implementations to evaluate FnCall nodes at runtime.
7
+ */
8
+ import type { EvalContext } from '../../types/evaluation.types';
9
+ export interface FnDef {
10
+ /** Function name */
11
+ name: string;
12
+ /** Human-readable signature (e.g., "SUM(range)") */
13
+ signature: string;
14
+ /** Description */
15
+ description: string;
16
+ /** Return type */
17
+ returnType: 'string' | 'number' | 'boolean';
18
+ /** Implementation: (resolvedArgs, context) => result */
19
+ fn: (args: any[], ctx: EvalContext) => string | number | boolean | null | undefined;
20
+ }
21
+ /**
22
+ * FunctionRegistry — manages custom function registration.
23
+ */
24
+ export declare class FunctionRegistry {
25
+ private customFunctions;
26
+ constructor();
27
+ /**
28
+ * Register a custom function.
29
+ */
30
+ register(def: FnDef): void;
31
+ /**
32
+ * Get a function by name.
33
+ */
34
+ getFunction(name: string): FnDef | undefined;
35
+ /**
36
+ * Call a function with resolved arguments.
37
+ */
38
+ call(name: string, args: any[], ctx: EvalContext): any;
39
+ /**
40
+ * Get list of all available functions (for canvas UI).
41
+ */
42
+ getAvailableFunctions(): FnDef[];
43
+ }
44
+ /**
45
+ * Global singleton function registry.
46
+ */
47
+ export declare const functionRegistry: FunctionRegistry;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Barrel export for the expression evaluator module.
3
+ */
4
+ export type { ExprNode, LiteralNode, VarNode, BinaryOpNode, UnaryOpNode, FnCallNode, RangeRefNode, ObjectLiteralNode, ArrayLiteralNode, } from './ast.types';
5
+ export { isLiteral, isVar, isBinaryOp, isUnaryOp, isFnCall, isRangeRef, isObjectLiteral, isArrayLiteral, } from './ast.types';
6
+ export type { Token, TokenType } from './lexer';
7
+ export { Lexer } from './lexer';
8
+ export { Parser, ParseError } from './parser';
9
+ export { Evaluator, EvaluationError } from './evaluator';
10
+ export { Compiler, tryCompile } from './compiler';
11
+ export type { CompileError, ValidationResult } from './compiler';
12
+ export { VAR_CATALOG, resolveVar, getAvailableVars } from './var-catalog';
13
+ export type { VarDef } from './var-catalog';
14
+ export { functionRegistry, FunctionRegistry } from './functions/registry';
15
+ export type { FnDef } from './functions/registry';
16
+ export { TextMeasurer } from './text-measurer';
17
+ export { resolveRangeRef } from './range-resolver';
18
+ export { extractVarPaths } from './extract-deps';
19
+ export { SCOPE_VOCABULARY } from './scope-vocabulary';
20
+ export type { PaletteItem, RuleScope } from './scope-vocabulary';
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Lexer — tokenizes expression strings into a token stream.
3
+ * Input: "cell.value > 100 AND SUM(col:0) == 0"
4
+ * Output: Token[] with type, value, and position info
5
+ */
6
+ export type TokenType = 'Number' | 'String' | 'Identifier' | 'Keyword' | 'Dot' | 'LParen' | 'RParen' | 'LBrace' | 'RBrace' | 'LBracket' | 'RBracket' | 'Colon' | 'Comma' | 'Operator' | 'EOF';
7
+ export interface Token {
8
+ type: TokenType;
9
+ value: string | number | boolean;
10
+ position: number;
11
+ }
12
+ /**
13
+ * Lexer class — tokenizes expression strings.
14
+ */
15
+ export declare class Lexer {
16
+ private input;
17
+ private pos;
18
+ constructor(input: string);
19
+ /**
20
+ * Tokenize the input string into a Token array.
21
+ * Throws ParseError if invalid token encountered.
22
+ */
23
+ tokenize(): Token[];
24
+ /** Try to scan a multi-character operator */
25
+ private tryOperator;
26
+ private scanNumber;
27
+ private scanString;
28
+ private scanIdentifier;
29
+ private isKeyword;
30
+ private isWhitespace;
31
+ private isDigit;
32
+ private isIdentifierStart;
33
+ private isIdentifierPart;
34
+ private current;
35
+ private advance;
36
+ }