@adguard/agtree 3.0.0 → 3.1.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 (628) hide show
  1. package/README.md +1 -1
  2. package/dist/{esm/ast-utils/clone.mjs → ast-utils/clone.js} +3 -3
  3. package/dist/{esm/ast-utils/modifiers.mjs → ast-utils/modifiers.js} +4 -4
  4. package/dist/{esm/ast-utils/network-rules.mjs → ast-utils/network-rules.js} +6 -6
  5. package/dist/{esm/ast-utils/scriptlets.mjs → ast-utils/scriptlets.js} +5 -5
  6. package/dist/{esm/common/abp-snippet-injection-body-common.mjs → common/abp-snippet-injection-body-common.js} +9 -2
  7. package/dist/{esm/common/agent-common.mjs → common/agent-common.js} +3 -3
  8. package/dist/common/ubo-selector-common.js +17 -0
  9. package/dist/{esm/compatibility-tables/base.mjs → compatibility-tables/base.js} +6 -6
  10. package/dist/{esm/compatibility-tables/compatibility-table-data.mjs → compatibility-tables/compatibility-table-data.js} +3 -3
  11. package/dist/{esm/compatibility-tables/modifiers.mjs → compatibility-tables/modifiers.js} +6 -6
  12. package/dist/compatibility-tables/platforms.js +76 -0
  13. package/dist/{esm/compatibility-tables/redirects.mjs → compatibility-tables/redirects.js} +8 -8
  14. package/dist/{esm/compatibility-tables/schemas/base.mjs → compatibility-tables/schemas/base.js} +4 -4
  15. package/dist/{esm/compatibility-tables/schemas/modifier.mjs → compatibility-tables/schemas/modifier.js} +31 -7
  16. package/dist/{esm/compatibility-tables/schemas/platform.mjs → compatibility-tables/schemas/platform.js} +4 -4
  17. package/dist/{esm/compatibility-tables/schemas/redirect.mjs → compatibility-tables/schemas/redirect.js} +5 -5
  18. package/dist/compatibility-tables/schemas/resource-type.js +36 -0
  19. package/dist/{esm/compatibility-tables/schemas/scriptlet.mjs → compatibility-tables/schemas/scriptlet.js} +4 -4
  20. package/dist/{esm/compatibility-tables/scriptlets.mjs → compatibility-tables/scriptlets.js} +5 -5
  21. package/dist/{esm/compatibility-tables/utils/platform-helpers.mjs → compatibility-tables/utils/platform-helpers.js} +3 -3
  22. package/dist/{esm/compatibility-tables/utils/resource-type-helpers.mjs → compatibility-tables/utils/resource-type-helpers.js} +5 -5
  23. package/dist/{esm/compatibility-tables/utils/zod-camelcase.mjs → compatibility-tables/utils/zod-camelcase.js} +2 -2
  24. package/dist/{esm/converter/base-interfaces/base-converter.mjs → converter/base-interfaces/base-converter.js} +3 -3
  25. package/dist/{esm/converter/base-interfaces/conversion-result.mjs → converter/base-interfaces/conversion-result.js} +2 -2
  26. package/dist/{esm/converter/base-interfaces/rule-converter-base.mjs → converter/base-interfaces/rule-converter-base.js} +4 -4
  27. package/dist/{esm/converter/comment/index.mjs → converter/comment/index.js} +7 -7
  28. package/dist/{esm/converter/cosmetic/css.mjs → converter/cosmetic/css.js} +9 -9
  29. package/dist/{esm/converter/cosmetic/element-hiding.mjs → converter/cosmetic/element-hiding.js} +9 -9
  30. package/dist/{esm/converter/cosmetic/header-removal.mjs → converter/cosmetic/header-removal.js} +12 -12
  31. package/dist/{esm/converter/cosmetic/html.mjs → converter/cosmetic/html.js} +21 -30
  32. package/dist/{esm/converter/cosmetic/index.mjs → converter/cosmetic/index.js} +43 -13
  33. package/dist/{esm/converter/cosmetic/rule-modifiers/adg.mjs → converter/cosmetic/rule-modifiers/adg.js} +10 -10
  34. package/dist/converter/cosmetic/rule-modifiers/ubo.js +149 -0
  35. package/dist/{esm/converter/cosmetic/scriptlet.mjs → converter/cosmetic/scriptlet.js} +23 -23
  36. package/dist/{esm/converter/css/index.mjs → converter/css/index.js} +21 -25
  37. package/dist/{esm/converter/data/css.mjs → converter/data/css.js} +2 -2
  38. package/dist/{esm/converter/filter-list.mjs → converter/filter-list.js} +7 -7
  39. package/dist/converter/index.js +8 -0
  40. package/dist/{esm/converter/misc/network-rule-modifier.mjs → converter/misc/network-rule-modifier.js} +22 -22
  41. package/dist/{esm/converter/network/index.mjs → converter/network/index.js} +6 -6
  42. package/dist/{esm/converter/raw-filter-list.mjs → converter/raw-filter-list.js} +9 -9
  43. package/dist/{esm/converter/rule.mjs → converter/rule.js} +9 -9
  44. package/dist/{esm/deserializer/base-deserializer.mjs → deserializer/base-deserializer.js} +4 -4
  45. package/dist/{esm/deserializer/comment/agent-comment-deserializer.mjs → deserializer/comment/agent-comment-deserializer.js} +14 -9
  46. package/dist/{esm/deserializer/comment/agent-deserializer.mjs → deserializer/comment/agent-deserializer.js} +8 -8
  47. package/dist/{esm/deserializer/comment/comment-rule-deserializer.mjs → deserializer/comment/comment-rule-deserializer.js} +11 -64
  48. package/dist/{esm/deserializer/comment/config-comment-deserializer.mjs → deserializer/comment/config-comment-deserializer.js} +10 -10
  49. package/dist/{esm/deserializer/comment/hint-comment-deserializer.mjs → deserializer/comment/hint-comment-deserializer.js} +15 -10
  50. package/dist/{esm/deserializer/comment/hint-deserializer.mjs → deserializer/comment/hint-deserializer.js} +8 -8
  51. package/dist/{esm/deserializer/comment/metadata-comment-deserializer.mjs → deserializer/comment/metadata-comment-deserializer.js} +9 -9
  52. package/dist/{esm/deserializer/comment/pre-processor-comment-deserializer.mjs → deserializer/comment/pre-processor-comment-deserializer.js} +12 -12
  53. package/dist/{esm/deserializer/comment/simple-comment-deserializer.mjs → deserializer/comment/simple-comment-deserializer.js} +9 -9
  54. package/dist/{esm/deserializer/cosmetic/cosmetic-rule-deserializer.mjs → deserializer/cosmetic/cosmetic-rule-deserializer.js} +24 -18
  55. package/dist/{esm/deserializer/cosmetic/css-injection-body-deserializer.mjs → deserializer/cosmetic/css-injection-body-deserializer.js} +10 -7
  56. package/dist/{esm/deserializer/cosmetic/element-hiding-body-deserializer.mjs → deserializer/cosmetic/element-hiding-body-deserializer.js} +11 -7
  57. package/dist/{esm/deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.mjs → deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.js} +9 -5
  58. package/dist/{esm/deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.mjs → deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.js} +10 -5
  59. package/dist/{esm/deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.mjs → deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.js} +11 -7
  60. package/dist/{esm/deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.mjs → deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.js} +9 -6
  61. package/dist/{esm/deserializer/empty-rule-deserializer.mjs → deserializer/empty-rule-deserializer.js} +12 -8
  62. package/dist/{esm/deserializer/filterlist-deserializer.mjs → deserializer/filterlist-deserializer.js} +11 -7
  63. package/dist/{esm/deserializer/index.mjs → deserializer/index.js} +4 -4
  64. package/dist/{esm/deserializer/invalid-rule-deserializer.mjs → deserializer/invalid-rule-deserializer.js} +12 -8
  65. package/dist/{esm/deserializer/invalid-rule-error-node-deserializer.mjs → deserializer/invalid-rule-error-node-deserializer.js} +10 -6
  66. package/dist/{esm/deserializer/misc/domain-list-deserializer.mjs → deserializer/misc/domain-list-deserializer.js} +8 -8
  67. package/dist/{esm/deserializer/misc/list-item-deserializer.mjs → deserializer/misc/list-item-deserializer.js} +13 -7
  68. package/dist/{esm/deserializer/misc/list-items-deserializer.mjs → deserializer/misc/list-items-deserializer.js} +7 -3
  69. package/dist/{esm/deserializer/misc/logical-expression-deserializer.mjs → deserializer/misc/logical-expression-deserializer.js} +8 -8
  70. package/dist/{esm/deserializer/misc/modifier-deserializer.mjs → deserializer/misc/modifier-deserializer.js} +8 -8
  71. package/dist/{esm/deserializer/misc/modifier-list-deserializer.mjs → deserializer/misc/modifier-list-deserializer.js} +12 -7
  72. package/dist/{esm/deserializer/misc/parameter-list-deserializer.mjs → deserializer/misc/parameter-list-deserializer.js} +11 -7
  73. package/dist/{esm/deserializer/misc/value-deserializer.mjs → deserializer/misc/value-deserializer.js} +6 -6
  74. package/dist/{esm/deserializer/network/host-rule-deserializer.mjs → deserializer/network/host-rule-deserializer.js} +15 -27
  75. package/dist/{esm/deserializer/network/hostname-list-deserializer.mjs → deserializer/network/hostname-list-deserializer.js} +15 -7
  76. package/dist/{esm/deserializer/network/network-rule-deserializer.mjs → deserializer/network/network-rule-deserializer.js} +11 -11
  77. package/dist/{esm/deserializer/rule-deserializer.mjs → deserializer/rule-deserializer.js} +10 -10
  78. package/dist/{esm/deserializer/syntax-deserialization-map.mjs → deserializer/syntax-deserialization-map.js} +3 -3
  79. package/dist/{esm/errors/adblock-syntax-error.mjs → errors/adblock-syntax-error.js} +2 -2
  80. package/dist/{esm/errors/binary-schema-mismatch-error.mjs → errors/binary-schema-mismatch-error.js} +2 -2
  81. package/dist/{esm/errors/not-implemented-error.mjs → errors/not-implemented-error.js} +2 -2
  82. package/dist/{esm/errors/rule-conversion-error.mjs → errors/rule-conversion-error.js} +2 -2
  83. package/dist/{esm/generator/base-generator.mjs → generator/base-generator.js} +4 -4
  84. package/dist/{esm/generator/comment/agent-comment-generator.mjs → generator/comment/agent-comment-generator.js} +8 -5
  85. package/dist/{esm/generator/comment/agent-generator.mjs → generator/comment/agent-generator.js} +9 -5
  86. package/dist/{esm/generator/comment/comment-rule-generator.mjs → generator/comment/comment-rule-generator.js} +11 -64
  87. package/dist/{esm/generator/comment/config-comment-generator.mjs → generator/comment/config-comment-generator.js} +8 -5
  88. package/dist/{esm/generator/comment/hint-comment-generator.mjs → generator/comment/hint-comment-generator.js} +8 -5
  89. package/dist/{esm/generator/comment/hint-generator.mjs → generator/comment/hint-generator.js} +11 -8
  90. package/dist/{esm/generator/comment/metadata-comment-generator.mjs → generator/comment/metadata-comment-generator.js} +8 -5
  91. package/dist/{esm/generator/comment/pre-processor-comment-generator.mjs → generator/comment/pre-processor-comment-generator.js} +10 -7
  92. package/dist/{esm/generator/comment/simple-comment-generator.mjs → generator/comment/simple-comment-generator.js} +8 -5
  93. package/dist/{esm/generator/cosmetic/body/abp-snippet-injection-body-generator.mjs → generator/cosmetic/body/abp-snippet-injection-body-generator.js} +10 -6
  94. package/dist/{esm/generator/cosmetic/body/adg-scriptlet-injection-body-generator.mjs → generator/cosmetic/body/adg-scriptlet-injection-body-generator.js} +10 -6
  95. package/dist/{esm/generator/cosmetic/body/ubo-scriptlet-injection-body-generator.mjs → generator/cosmetic/body/ubo-scriptlet-injection-body-generator.js} +10 -6
  96. package/dist/{esm/generator/cosmetic/cosmetic-rule-body-generator.mjs → generator/cosmetic/cosmetic-rule-body-generator.js} +17 -13
  97. package/dist/{esm/generator/cosmetic/cosmetic-rule-generator.mjs → generator/cosmetic/cosmetic-rule-generator.js} +19 -21
  98. package/dist/{esm/generator/cosmetic/cosmetic-rule-pattern-generator.mjs → generator/cosmetic/cosmetic-rule-pattern-generator.js} +10 -7
  99. package/dist/{esm/generator/css/adg-css-injection-generator.mjs → generator/css/adg-css-injection-generator.js} +8 -5
  100. package/dist/{esm/generator/filterlist-generator.mjs → generator/filterlist-generator.js} +21 -9
  101. package/dist/{esm/generator/index.mjs → generator/index.js} +5 -5
  102. package/dist/{esm/generator/misc/domain-list-generator.mjs → generator/misc/domain-list-generator.js} +7 -4
  103. package/dist/{esm/generator/misc/list-items-generator.mjs → generator/misc/list-items-generator.js} +6 -3
  104. package/dist/{esm/generator/misc/logical-expression-generator.mjs → generator/misc/logical-expression-generator.js} +8 -5
  105. package/dist/{esm/generator/misc/modifier-generator.mjs → generator/misc/modifier-generator.js} +9 -6
  106. package/dist/{esm/generator/misc/modifier-list-generator.mjs → generator/misc/modifier-list-generator.js} +8 -5
  107. package/dist/{esm/generator/misc/parameter-list-generator.mjs → generator/misc/parameter-list-generator.js} +8 -6
  108. package/dist/{esm/generator/misc/value-generator.mjs → generator/misc/value-generator.js} +6 -3
  109. package/dist/{esm/generator/network/host-rule-generator.mjs → generator/network/host-rule-generator.js} +7 -4
  110. package/dist/{esm/generator/network/network-rule-generator.mjs → generator/network/network-rule-generator.js} +11 -8
  111. package/dist/{esm/generator/rule-generator.mjs → generator/rule-generator.js} +12 -9
  112. package/dist/{esm/index.mjs → index.js} +66 -66
  113. package/dist/{cjs/marshalling-utils/empty-rule-common.js → marshalling-utils/comment/agent-comment-common.js} +9 -9
  114. package/dist/{esm/marshalling-utils/comment/agent-common.mjs → marshalling-utils/comment/agent-common.js} +8 -9
  115. package/dist/{esm/marshalling-utils/comment/config-comment-common.mjs → marshalling-utils/comment/config-comment-common.js} +15 -17
  116. package/dist/marshalling-utils/comment/hint-comment-common.js +22 -0
  117. package/dist/{esm/marshalling-utils/comment/hint-common.mjs → marshalling-utils/comment/hint-common.js} +8 -9
  118. package/dist/{esm/marshalling-utils/comment/metadata-comment-common.mjs → marshalling-utils/comment/metadata-comment-common.js} +9 -10
  119. package/dist/{esm/marshalling-utils/comment/pre-processor-comment-common.mjs → marshalling-utils/comment/pre-processor-comment-common.js} +9 -10
  120. package/dist/marshalling-utils/comment/simple-comment-common.js +22 -0
  121. package/dist/{esm/marshalling-utils/cosmetic/body/abp-snippet-injection-body-common.mjs → marshalling-utils/cosmetic/body/abp-snippet-injection-body-common.js} +7 -8
  122. package/dist/{esm/marshalling-utils/cosmetic/body/adg-scriptlet-injection-body-common.mjs → marshalling-utils/cosmetic/body/adg-scriptlet-injection-body-common.js} +2 -2
  123. package/dist/marshalling-utils/cosmetic/body/css-injection-body-common.js +24 -0
  124. package/dist/marshalling-utils/cosmetic/body/element-hiding-body-common.js +21 -0
  125. package/dist/{esm/marshalling-utils/cosmetic/body/ubo-scriptlet-injection-body-common.mjs → marshalling-utils/cosmetic/body/ubo-scriptlet-injection-body-common.js} +2 -2
  126. package/dist/{esm/marshalling-utils/cosmetic/cosmetic-rule-common.mjs → marshalling-utils/cosmetic/cosmetic-rule-common.js} +10 -13
  127. package/dist/{esm/marshalling-utils/empty-rule-common.mjs → marshalling-utils/empty-rule-common.js} +6 -7
  128. package/dist/marshalling-utils/filter-list-common.js +21 -0
  129. package/dist/{esm/marshalling-utils/invalid-rule-common.mjs → marshalling-utils/invalid-rule-common.js} +7 -8
  130. package/dist/marshalling-utils/invalid-rule-error-node-common.js +22 -0
  131. package/dist/marshalling-utils/misc/binary-type-common.js +54 -0
  132. package/dist/{esm/marshalling-utils/misc/domain-list-common.mjs → marshalling-utils/misc/domain-list-common.js} +9 -10
  133. package/dist/marshalling-utils/misc/host-rule-common.js +24 -0
  134. package/dist/marshalling-utils/misc/hostname-list-common.js +21 -0
  135. package/dist/marshalling-utils/misc/list-item-common.js +22 -0
  136. package/dist/marshalling-utils/misc/logical-expression-common.js +83 -0
  137. package/dist/{esm/marshalling-utils/misc/modifier-common.mjs → marshalling-utils/misc/modifier-common.js} +9 -10
  138. package/dist/marshalling-utils/misc/modifier-list-common.js +21 -0
  139. package/dist/marshalling-utils/misc/parameter-list-common.js +21 -0
  140. package/dist/marshalling-utils/misc/value-common.js +22 -0
  141. package/dist/marshalling-utils/network/network-rule-common.js +24 -0
  142. package/dist/{esm/marshalling-utils/syntax-serialization-map.mjs → marshalling-utils/syntax-serialization-map.js} +3 -3
  143. package/dist/{esm/nodes/index.mjs → nodes/index.js} +66 -79
  144. package/dist/{esm/package.json.mjs → package.json.js} +3 -3
  145. package/dist/{esm/parser/base-parser.mjs → parser/base-parser.js} +3 -3
  146. package/dist/{esm/parser/comment/agent-comment-parser.mjs → parser/comment/agent-comment-parser.js} +12 -12
  147. package/dist/{esm/parser/comment/agent-parser.mjs → parser/comment/agent-parser.js} +19 -14
  148. package/dist/{esm/parser/comment/comment-parser.mjs → parser/comment/comment-parser.js} +10 -10
  149. package/dist/{esm/parser/comment/config-comment-parser.mjs → parser/comment/config-comment-parser.js} +10 -10
  150. package/dist/{esm/parser/comment/hint-comment-parser.mjs → parser/comment/hint-comment-parser.js} +10 -10
  151. package/dist/{esm/parser/comment/hint-parser.mjs → parser/comment/hint-parser.js} +9 -9
  152. package/dist/{esm/parser/comment/metadata-comment-parser.mjs → parser/comment/metadata-comment-parser.js} +11 -11
  153. package/dist/{esm/parser/comment/preprocessor-parser.mjs → parser/comment/preprocessor-parser.js} +12 -12
  154. package/dist/{esm/parser/comment/simple-comment-parser.mjs → parser/comment/simple-comment-parser.js} +9 -9
  155. package/dist/{esm/parser/cosmetic/body/abp-snippet-injection-body-parser.mjs → parser/cosmetic/body/abp-snippet-injection-body-parser.js} +9 -9
  156. package/dist/{esm/parser/cosmetic/body/adg-scriptlet-injection-body-parser.mjs → parser/cosmetic/body/adg-scriptlet-injection-body-parser.js} +9 -9
  157. package/dist/{esm/parser/cosmetic/body/ubo-scriptlet-injection-body-parser.mjs → parser/cosmetic/body/ubo-scriptlet-injection-body-parser.js} +8 -8
  158. package/dist/{esm/parser/cosmetic/cosmetic-rule-parser.mjs → parser/cosmetic/cosmetic-rule-parser.js} +63 -23
  159. package/dist/{esm/parser/css/adg-css-injection-parser.mjs → parser/css/adg-css-injection-parser.js} +7 -7
  160. package/dist/{esm/parser/css/balancing.mjs → parser/css/balancing.js} +6 -6
  161. package/dist/{esm/parser/css/constants.mjs → parser/css/constants.js} +2 -2
  162. package/dist/{esm/parser/css/css-token-stream.mjs → parser/css/css-token-stream.js} +24 -14
  163. package/dist/{esm/parser/css/ubo-selector-parser.mjs → parser/css/ubo-selector-parser.js} +8 -8
  164. package/dist/{esm/parser/filterlist-parser.mjs → parser/filterlist-parser.js} +7 -7
  165. package/dist/parser/index.js +12 -0
  166. package/dist/{esm/parser/misc/app-list-parser.mjs → parser/misc/app-list-parser.js} +7 -7
  167. package/dist/{esm/parser/misc/domain-list-parser.mjs → parser/misc/domain-list-parser.js} +7 -7
  168. package/dist/{esm/parser/misc/list-items-parser.mjs → parser/misc/list-items-parser.js} +10 -7
  169. package/dist/{esm/parser/misc/logical-expression-parser.mjs → parser/misc/logical-expression-parser.js} +18 -20
  170. package/dist/{esm/parser/misc/method-list-parser.mjs → parser/misc/method-list-parser.js} +7 -7
  171. package/dist/{esm/parser/misc/modifier-list.mjs → parser/misc/modifier-list.js} +7 -7
  172. package/dist/{esm/parser/misc/modifier-parser.mjs → parser/misc/modifier-parser.js} +8 -8
  173. package/dist/{esm/parser/misc/parameter-list-parser.mjs → parser/misc/parameter-list-parser.js} +10 -7
  174. package/dist/{esm/parser/misc/stealth-option-list-parser.mjs → parser/misc/stealth-option-list-parser.js} +7 -7
  175. package/dist/{esm/parser/misc/ubo-parameter-list-parser.mjs → parser/misc/ubo-parameter-list-parser.js} +12 -9
  176. package/dist/{esm/parser/misc/value-parser.mjs → parser/misc/value-parser.js} +5 -5
  177. package/dist/{esm/parser/network/host-rule-parser.mjs → parser/network/host-rule-parser.js} +11 -11
  178. package/dist/{esm/parser/network/network-rule-parser.mjs → parser/network/network-rule-parser.js} +17 -11
  179. package/dist/{esm/parser/options.mjs → parser/options.js} +2 -2
  180. package/dist/{esm/parser/rule-parser.mjs → parser/rule-parser.js} +11 -11
  181. package/dist/{esm/serializer/base-serializer.mjs → serializer/base-serializer.js} +3 -3
  182. package/dist/{esm/serializer/comment/agent-comment-serializer.mjs → serializer/comment/agent-comment-serializer.js} +11 -8
  183. package/dist/{esm/serializer/comment/agent-serializer.mjs → serializer/comment/agent-serializer.js} +9 -18
  184. package/dist/{esm/serializer/comment/comment-rule-serializer.mjs → serializer/comment/comment-rule-serializer.js} +10 -10
  185. package/dist/{esm/serializer/comment/config-comment-serializer.mjs → serializer/comment/config-comment-serializer.js} +10 -10
  186. package/dist/{esm/serializer/comment/hint-comment-serializer.mjs → serializer/comment/hint-comment-serializer.js} +13 -10
  187. package/dist/{esm/serializer/comment/hint-serializer.mjs → serializer/comment/hint-serializer.js} +9 -9
  188. package/dist/{esm/serializer/comment/metadata-comment-serializer.mjs → serializer/comment/metadata-comment-serializer.js} +8 -8
  189. package/dist/{esm/serializer/comment/pre-processor-comment-serializer.mjs → serializer/comment/pre-processor-comment-serializer.js} +11 -11
  190. package/dist/{esm/serializer/comment/simple-comment-serializer.mjs → serializer/comment/simple-comment-serializer.js} +10 -10
  191. package/dist/{esm/serializer/cosmetic/body/abp-snippet-injection-body-serializer.mjs → serializer/cosmetic/body/abp-snippet-injection-body-serializer.js} +9 -9
  192. package/dist/{esm/serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.mjs → serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.js} +9 -9
  193. package/dist/{esm/serializer/cosmetic/body/scriptlet-body-serializer.mjs → serializer/cosmetic/body/scriptlet-body-serializer.js} +16 -13
  194. package/dist/{esm/serializer/cosmetic/body/ubo-scriptlet-injection-body-serializer.mjs → serializer/cosmetic/body/ubo-scriptlet-injection-body-serializer.js} +5 -5
  195. package/dist/{esm/serializer/cosmetic/cosmetic-rule-serializer.mjs → serializer/cosmetic/cosmetic-rule-serializer.js} +22 -31
  196. package/dist/{esm/serializer/cosmetic/css-injection-body-serializer.mjs → serializer/cosmetic/css-injection-body-serializer.js} +11 -8
  197. package/dist/{esm/serializer/cosmetic/element-hiding-body-serializer.mjs → serializer/cosmetic/element-hiding-body-serializer.js} +11 -8
  198. package/dist/{esm/serializer/empty-rule-serializer.mjs → serializer/empty-rule-serializer.js} +10 -7
  199. package/dist/{esm/serializer/filterlist-serializer.mjs → serializer/filterlist-serializer.js} +9 -10
  200. package/dist/serializer/index.js +7 -0
  201. package/dist/{esm/serializer/invalid-rule-error-node-serializer.mjs → serializer/invalid-rule-error-node-serializer.js} +10 -7
  202. package/dist/{esm/serializer/invalid-rule-serializer.mjs → serializer/invalid-rule-serializer.js} +11 -8
  203. package/dist/{esm/serializer/misc/domain-list-serializer.mjs → serializer/misc/domain-list-serializer.js} +10 -10
  204. package/dist/{esm/serializer/misc/list-item-serializer.mjs → serializer/misc/list-item-serializer.js} +11 -8
  205. package/dist/{esm/serializer/misc/list-items-serializer.mjs → serializer/misc/list-items-serializer.js} +6 -3
  206. package/dist/{esm/serializer/misc/logical-expression-serializer.mjs → serializer/misc/logical-expression-serializer.js} +14 -14
  207. package/dist/{esm/serializer/misc/modifier-list-serializer.mjs → serializer/misc/modifier-list-serializer.js} +11 -8
  208. package/dist/{esm/serializer/misc/modifier-serializer.mjs → serializer/misc/modifier-serializer.js} +8 -8
  209. package/dist/{esm/serializer/misc/parameter-list-serializer.mjs → serializer/misc/parameter-list-serializer.js} +11 -8
  210. package/dist/{esm/serializer/misc/value-serializer.mjs → serializer/misc/value-serializer.js} +7 -7
  211. package/dist/{esm/serializer/network/host-rule-serializer.mjs → serializer/network/host-rule-serializer.js} +10 -10
  212. package/dist/{esm/serializer/network/hostname-list-serializer.mjs → serializer/network/hostname-list-serializer.js} +14 -8
  213. package/dist/{esm/serializer/network/network-rule-serializer.mjs → serializer/network/network-rule-serializer.js} +10 -10
  214. package/dist/{esm/serializer/rule-serializer.mjs → serializer/rule-serializer.js} +10 -10
  215. package/dist/types/common/abp-snippet-injection-body-common.d.ts +7 -0
  216. package/dist/types/common/ubo-selector-common.d.ts +7 -6
  217. package/dist/types/compatibility-tables/compatibility-table-data.d.ts +2 -1
  218. package/dist/types/compatibility-tables/platforms.d.ts +36 -34
  219. package/dist/types/compatibility-tables/schemas/base.d.ts +1 -12
  220. package/dist/types/compatibility-tables/schemas/modifier.d.ts +5 -0
  221. package/dist/types/compatibility-tables/schemas/redirect.d.ts +1 -1
  222. package/dist/types/compatibility-tables/schemas/resource-type.d.ts +29 -15
  223. package/dist/types/compatibility-tables/utils/zod-camelcase.d.ts +1 -1
  224. package/dist/types/converter/cosmetic/rule-modifiers/ubo.d.ts +24 -0
  225. package/dist/types/converter/css/index.d.ts +17 -0
  226. package/dist/types/deserializer/comment/comment-rule-deserializer.d.ts +1 -54
  227. package/dist/types/deserializer/cosmetic/cosmetic-rule-deserializer.d.ts +6 -0
  228. package/dist/types/deserializer/cosmetic/css-injection-body-deserializer.d.ts +3 -0
  229. package/dist/types/deserializer/cosmetic/element-hiding-body-deserializer.d.ts +4 -0
  230. package/dist/types/deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.d.ts +4 -0
  231. package/dist/types/deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.d.ts +5 -0
  232. package/dist/types/deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.d.ts +4 -0
  233. package/dist/types/deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.d.ts +4 -1
  234. package/dist/types/deserializer/empty-rule-deserializer.d.ts +4 -0
  235. package/dist/types/deserializer/filterlist-deserializer.d.ts +4 -0
  236. package/dist/types/deserializer/invalid-rule-deserializer.d.ts +4 -0
  237. package/dist/types/deserializer/invalid-rule-error-node-deserializer.d.ts +4 -0
  238. package/dist/types/deserializer/misc/list-item-deserializer.d.ts +6 -0
  239. package/dist/types/deserializer/misc/list-items-deserializer.d.ts +4 -0
  240. package/dist/types/deserializer/misc/modifier-deserializer.d.ts +1 -1
  241. package/dist/types/deserializer/misc/parameter-list-deserializer.d.ts +4 -0
  242. package/dist/types/deserializer/network/host-rule-deserializer.d.ts +4 -16
  243. package/dist/types/deserializer/network/hostname-list-deserializer.d.ts +3 -0
  244. package/dist/types/generator/comment/agent-comment-generator.d.ts +3 -0
  245. package/dist/types/generator/comment/agent-generator.d.ts +4 -0
  246. package/dist/types/generator/comment/comment-rule-generator.d.ts +1 -54
  247. package/dist/types/generator/comment/config-comment-generator.d.ts +3 -0
  248. package/dist/types/generator/comment/hint-comment-generator.d.ts +3 -0
  249. package/dist/types/generator/comment/hint-generator.d.ts +6 -3
  250. package/dist/types/generator/comment/index.d.ts +1 -2
  251. package/dist/types/generator/comment/metadata-comment-generator.d.ts +3 -0
  252. package/dist/types/generator/comment/pre-processor-comment-generator.d.ts +3 -0
  253. package/dist/types/generator/comment/simple-comment-generator.d.ts +3 -0
  254. package/dist/types/generator/cosmetic/body/abp-snippet-injection-body-generator.d.ts +4 -0
  255. package/dist/types/generator/cosmetic/body/adg-scriptlet-injection-body-generator.d.ts +5 -1
  256. package/dist/types/generator/cosmetic/body/ubo-scriptlet-injection-body-generator.d.ts +5 -1
  257. package/dist/types/generator/cosmetic/cosmetic-rule-body-generator.d.ts +5 -0
  258. package/dist/types/generator/cosmetic/cosmetic-rule-generator.d.ts +3 -11
  259. package/dist/types/generator/cosmetic/cosmetic-rule-pattern-generator.d.ts +3 -0
  260. package/dist/types/generator/css/adg-css-injection-generator.d.ts +3 -0
  261. package/dist/types/generator/css/ubo-selector-generator.d.ts +3 -0
  262. package/dist/types/generator/filterlist-generator.d.ts +4 -3
  263. package/dist/types/generator/misc/domain-list-generator.d.ts +3 -0
  264. package/dist/types/generator/misc/list-items-generator.d.ts +3 -0
  265. package/dist/types/generator/misc/logical-expression-generator.d.ts +3 -0
  266. package/dist/types/generator/misc/modifier-generator.d.ts +5 -2
  267. package/dist/types/generator/misc/modifier-list-generator.d.ts +3 -0
  268. package/dist/types/generator/misc/parameter-list-generator.d.ts +3 -0
  269. package/dist/types/generator/misc/value-generator.d.ts +3 -0
  270. package/dist/types/generator/network/host-rule-generator.d.ts +3 -0
  271. package/dist/types/generator/network/network-rule-generator.d.ts +6 -3
  272. package/dist/types/generator/rule-generator.d.ts +3 -0
  273. package/dist/types/marshalling-utils/comment/agent-comment-common.d.ts +6 -5
  274. package/dist/types/marshalling-utils/comment/agent-common.d.ts +7 -6
  275. package/dist/types/marshalling-utils/comment/config-comment-common.d.ts +15 -13
  276. package/dist/types/marshalling-utils/comment/hint-comment-common.d.ts +7 -6
  277. package/dist/types/marshalling-utils/comment/hint-common.d.ts +7 -6
  278. package/dist/types/marshalling-utils/comment/metadata-comment-common.d.ts +8 -7
  279. package/dist/types/marshalling-utils/comment/pre-processor-comment-common.d.ts +8 -7
  280. package/dist/types/marshalling-utils/comment/simple-comment-common.d.ts +7 -6
  281. package/dist/types/marshalling-utils/cosmetic/body/abp-snippet-injection-body-common.d.ts +6 -5
  282. package/dist/types/marshalling-utils/cosmetic/body/css-injection-body-common.d.ts +9 -8
  283. package/dist/types/marshalling-utils/cosmetic/body/element-hiding-body-common.d.ts +6 -5
  284. package/dist/types/marshalling-utils/cosmetic/cosmetic-rule-common.d.ts +11 -10
  285. package/dist/types/marshalling-utils/empty-rule-common.d.ts +5 -4
  286. package/dist/types/marshalling-utils/filter-list-common.d.ts +6 -5
  287. package/dist/types/marshalling-utils/invalid-rule-common.d.ts +6 -5
  288. package/dist/types/marshalling-utils/invalid-rule-error-node-common.d.ts +7 -6
  289. package/dist/types/marshalling-utils/misc/binary-type-common.d.ts +52 -51
  290. package/dist/types/marshalling-utils/misc/domain-list-common.d.ts +7 -6
  291. package/dist/types/marshalling-utils/misc/host-rule-common.d.ts +10 -9
  292. package/dist/types/marshalling-utils/misc/hostname-list-common.d.ts +6 -5
  293. package/dist/types/marshalling-utils/misc/list-item-common.d.ts +7 -6
  294. package/dist/types/marshalling-utils/misc/logical-expression-common.d.ts +21 -18
  295. package/dist/types/marshalling-utils/misc/modifier-common.d.ts +8 -7
  296. package/dist/types/marshalling-utils/misc/modifier-list-common.d.ts +6 -5
  297. package/dist/types/marshalling-utils/misc/parameter-list-common.d.ts +6 -5
  298. package/dist/types/marshalling-utils/misc/value-common.d.ts +7 -6
  299. package/dist/types/marshalling-utils/network/network-rule-common.d.ts +10 -9
  300. package/dist/types/nodes/index.d.ts +104 -98
  301. package/dist/types/parser/comment/agent-parser.d.ts +7 -0
  302. package/dist/types/parser/css/balancing.d.ts +21 -1
  303. package/dist/types/parser/index.d.ts +1 -0
  304. package/dist/types/parser/misc/list-items-parser.d.ts +3 -0
  305. package/dist/types/parser/misc/logical-expression-parser.d.ts +6 -5
  306. package/dist/types/parser/misc/parameter-list-parser.d.ts +3 -0
  307. package/dist/types/parser/misc/ubo-parameter-list-parser.d.ts +3 -0
  308. package/dist/types/parser/misc/value-parser.d.ts +1 -1
  309. package/dist/types/serializer/comment/agent-serializer.d.ts +1 -10
  310. package/dist/types/serializer/comment/config-comment-serializer.d.ts +1 -1
  311. package/dist/types/serializer/comment/simple-comment-serializer.d.ts +2 -2
  312. package/dist/types/serializer/cosmetic/body/abp-snippet-injection-body-serializer.d.ts +4 -4
  313. package/dist/types/serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.d.ts +4 -4
  314. package/dist/types/serializer/cosmetic/body/scriptlet-body-serializer.d.ts +8 -5
  315. package/dist/types/serializer/cosmetic/cosmetic-rule-serializer.d.ts +4 -11
  316. package/dist/types/serializer/cosmetic/css-injection-body-serializer.d.ts +3 -0
  317. package/dist/types/serializer/cosmetic/element-hiding-body-serializer.d.ts +3 -0
  318. package/dist/types/serializer/empty-rule-serializer.d.ts +3 -0
  319. package/dist/types/serializer/filterlist-serializer.d.ts +1 -2
  320. package/dist/types/serializer/invalid-rule-error-node-serializer.d.ts +3 -0
  321. package/dist/types/serializer/invalid-rule-serializer.d.ts +3 -0
  322. package/dist/types/serializer/misc/domain-list-serializer.d.ts +2 -2
  323. package/dist/types/serializer/misc/list-item-serializer.d.ts +3 -0
  324. package/dist/types/serializer/misc/list-items-serializer.d.ts +3 -0
  325. package/dist/types/serializer/misc/logical-expression-serializer.d.ts +7 -6
  326. package/dist/types/serializer/misc/parameter-list-serializer.d.ts +3 -0
  327. package/dist/types/serializer/network/hostname-list-serializer.d.ts +3 -0
  328. package/dist/types/utils/adblockers.d.ts +7 -6
  329. package/dist/types/utils/constants.d.ts +5 -0
  330. package/dist/types/utils/domain.d.ts +3 -0
  331. package/dist/types/utils/index.d.ts +1 -1
  332. package/dist/types/utils/input-byte-buffer.d.ts +6 -0
  333. package/dist/types/utils/output-byte-buffer.d.ts +6 -0
  334. package/dist/types/utils/quotes.d.ts +7 -6
  335. package/dist/types/utils/regexp.d.ts +21 -0
  336. package/dist/types/utils/string.d.ts +3 -0
  337. package/dist/types/validator/value.d.ts +2 -1
  338. package/dist/{esm/utils/adblockers.mjs → utils/adblockers.js} +8 -9
  339. package/dist/{esm/utils/binary-schema-version.mjs → utils/binary-schema-version.js} +2 -2
  340. package/dist/{esm/utils/byte-buffer.mjs → utils/byte-buffer.js} +2 -2
  341. package/dist/{esm/utils/categorizer.mjs → utils/categorizer.js} +5 -5
  342. package/dist/{esm/utils/clone.mjs → utils/clone.js} +2 -2
  343. package/dist/{esm/utils/constants.mjs → utils/constants.js} +10 -3
  344. package/dist/{esm/utils/cosmetic-rule-separator.mjs → utils/cosmetic-rule-separator.js} +4 -4
  345. package/dist/{esm/utils/deep-freeze.mjs → utils/deep-freeze.js} +2 -2
  346. package/dist/{esm/utils/domain.mjs → utils/domain.js} +6 -3
  347. package/dist/{esm/utils/error.mjs → utils/error.js} +2 -2
  348. package/dist/utils/index.js +21 -0
  349. package/dist/{esm/utils/input-byte-buffer.mjs → utils/input-byte-buffer.js} +17 -8
  350. package/dist/{esm/utils/is-chromium.mjs → utils/is-chromium.js} +2 -2
  351. package/dist/{esm/utils/logical-expression.mjs → utils/logical-expression.js} +4 -4
  352. package/dist/{esm/utils/multi-value-map.mjs → utils/multi-value-map.js} +3 -3
  353. package/dist/{esm/utils/output-byte-buffer.mjs → utils/output-byte-buffer.js} +14 -6
  354. package/dist/{esm/utils/position-provider.mjs → utils/position-provider.js} +3 -3
  355. package/dist/{esm/utils/quotes.mjs → utils/quotes.js} +9 -10
  356. package/dist/{esm/utils/regexp.mjs → utils/regexp.js} +49 -3
  357. package/dist/{esm/utils/string.mjs → utils/string.js} +6 -3
  358. package/dist/{esm/utils/text-decoder-polyfill.mjs → utils/text-decoder-polyfill.js} +3 -3
  359. package/dist/{esm/utils/text-encoder-polyfill.mjs → utils/text-encoder-polyfill.js} +2 -2
  360. package/dist/{esm/utils/type-guards.mjs → utils/type-guards.js} +2 -2
  361. package/dist/{esm/validator/constants.mjs → validator/constants.js} +4 -4
  362. package/dist/{esm/validator/helpers.mjs → validator/helpers.js} +4 -4
  363. package/dist/{esm/validator/index.mjs → validator/index.js} +11 -11
  364. package/dist/{esm/validator/value.mjs → validator/value.js} +34 -29
  365. package/dist/{esm/version.mjs → version.js} +3 -3
  366. package/package.json +24 -70
  367. package/dist/cjs/ast-utils/clone.js +0 -65
  368. package/dist/cjs/ast-utils/modifiers.js +0 -56
  369. package/dist/cjs/ast-utils/network-rules.js +0 -43
  370. package/dist/cjs/ast-utils/scriptlets.js +0 -93
  371. package/dist/cjs/common/abp-snippet-injection-body-common.js +0 -18
  372. package/dist/cjs/common/agent-common.js +0 -58
  373. package/dist/cjs/common/ubo-selector-common.js +0 -18
  374. package/dist/cjs/compatibility-tables/base.js +0 -264
  375. package/dist/cjs/compatibility-tables/compatibility-table-data.js +0 -15
  376. package/dist/cjs/compatibility-tables/modifiers.js +0 -57
  377. package/dist/cjs/compatibility-tables/platforms.js +0 -58
  378. package/dist/cjs/compatibility-tables/redirects.js +0 -102
  379. package/dist/cjs/compatibility-tables/schemas/base.js +0 -116
  380. package/dist/cjs/compatibility-tables/schemas/modifier.js +0 -107
  381. package/dist/cjs/compatibility-tables/schemas/platform.js +0 -71
  382. package/dist/cjs/compatibility-tables/schemas/redirect.js +0 -31
  383. package/dist/cjs/compatibility-tables/schemas/resource-type.js +0 -39
  384. package/dist/cjs/compatibility-tables/schemas/scriptlet.js +0 -81
  385. package/dist/cjs/compatibility-tables/scriptlets.js +0 -30
  386. package/dist/cjs/compatibility-tables/utils/platform-helpers.js +0 -112
  387. package/dist/cjs/compatibility-tables/utils/resource-type-helpers.js +0 -64
  388. package/dist/cjs/compatibility-tables/utils/zod-camelcase.js +0 -27
  389. package/dist/cjs/converter/base-interfaces/base-converter.js +0 -61
  390. package/dist/cjs/converter/base-interfaces/conversion-result.js +0 -41
  391. package/dist/cjs/converter/base-interfaces/rule-converter-base.js +0 -62
  392. package/dist/cjs/converter/comment/index.js +0 -56
  393. package/dist/cjs/converter/cosmetic/css.js +0 -71
  394. package/dist/cjs/converter/cosmetic/element-hiding.js +0 -64
  395. package/dist/cjs/converter/cosmetic/header-removal.js +0 -126
  396. package/dist/cjs/converter/cosmetic/html.js +0 -384
  397. package/dist/cjs/converter/cosmetic/index.js +0 -120
  398. package/dist/cjs/converter/cosmetic/rule-modifiers/adg.js +0 -81
  399. package/dist/cjs/converter/cosmetic/scriptlet.js +0 -356
  400. package/dist/cjs/converter/css/index.js +0 -193
  401. package/dist/cjs/converter/data/css.js +0 -133
  402. package/dist/cjs/converter/filter-list.js +0 -90
  403. package/dist/cjs/converter/index.js +0 -15
  404. package/dist/cjs/converter/misc/network-rule-modifier.js +0 -313
  405. package/dist/cjs/converter/network/index.js +0 -101
  406. package/dist/cjs/converter/raw-filter-list.js +0 -58
  407. package/dist/cjs/converter/rule.js +0 -83
  408. package/dist/cjs/deserializer/base-deserializer.js +0 -31
  409. package/dist/cjs/deserializer/comment/agent-comment-deserializer.js +0 -76
  410. package/dist/cjs/deserializer/comment/agent-deserializer.js +0 -67
  411. package/dist/cjs/deserializer/comment/comment-rule-deserializer.js +0 -109
  412. package/dist/cjs/deserializer/comment/config-comment-deserializer.js +0 -113
  413. package/dist/cjs/deserializer/comment/hint-comment-deserializer.js +0 -69
  414. package/dist/cjs/deserializer/comment/hint-deserializer.js +0 -88
  415. package/dist/cjs/deserializer/comment/metadata-comment-deserializer.js +0 -71
  416. package/dist/cjs/deserializer/comment/pre-processor-comment-deserializer.js +0 -114
  417. package/dist/cjs/deserializer/comment/simple-comment-deserializer.js +0 -67
  418. package/dist/cjs/deserializer/cosmetic/cosmetic-rule-deserializer.js +0 -127
  419. package/dist/cjs/deserializer/cosmetic/css-injection-body-deserializer.js +0 -55
  420. package/dist/cjs/deserializer/cosmetic/element-hiding-body-deserializer.js +0 -46
  421. package/dist/cjs/deserializer/cosmetic/scriptlet-body/abp-snippet-injection-body-deserializer.js +0 -37
  422. package/dist/cjs/deserializer/cosmetic/scriptlet-body/adg-scriptlet-injection-body-deserializer.js +0 -37
  423. package/dist/cjs/deserializer/cosmetic/scriptlet-body/scriptlet-body-deserializer.js +0 -52
  424. package/dist/cjs/deserializer/cosmetic/scriptlet-body/ubo-scriptlet-injection-body-deserializer.js +0 -38
  425. package/dist/cjs/deserializer/empty-rule-deserializer.js +0 -46
  426. package/dist/cjs/deserializer/filterlist-deserializer.js +0 -83
  427. package/dist/cjs/deserializer/index.js +0 -15
  428. package/dist/cjs/deserializer/invalid-rule-deserializer.js +0 -48
  429. package/dist/cjs/deserializer/invalid-rule-error-node-deserializer.js +0 -48
  430. package/dist/cjs/deserializer/misc/domain-list-deserializer.js +0 -66
  431. package/dist/cjs/deserializer/misc/list-item-deserializer.js +0 -65
  432. package/dist/cjs/deserializer/misc/list-items-deserializer.js +0 -28
  433. package/dist/cjs/deserializer/misc/logical-expression-deserializer.js +0 -199
  434. package/dist/cjs/deserializer/misc/modifier-deserializer.js +0 -89
  435. package/dist/cjs/deserializer/misc/modifier-list-deserializer.js +0 -58
  436. package/dist/cjs/deserializer/misc/parameter-list-deserializer.js +0 -62
  437. package/dist/cjs/deserializer/misc/value-deserializer.js +0 -52
  438. package/dist/cjs/deserializer/network/host-rule-deserializer.js +0 -81
  439. package/dist/cjs/deserializer/network/hostname-list-deserializer.js +0 -50
  440. package/dist/cjs/deserializer/network/network-rule-deserializer.js +0 -67
  441. package/dist/cjs/deserializer/rule-deserializer.js +0 -67
  442. package/dist/cjs/deserializer/syntax-deserialization-map.js +0 -23
  443. package/dist/cjs/errors/adblock-syntax-error.js +0 -41
  444. package/dist/cjs/errors/binary-schema-mismatch-error.js +0 -39
  445. package/dist/cjs/errors/not-implemented-error.js +0 -33
  446. package/dist/cjs/errors/rule-conversion-error.js +0 -28
  447. package/dist/cjs/generator/base-generator.js +0 -29
  448. package/dist/cjs/generator/comment/agent-comment-generator.js +0 -30
  449. package/dist/cjs/generator/comment/agent-generator.js +0 -34
  450. package/dist/cjs/generator/comment/comment-rule-generator.js +0 -102
  451. package/dist/cjs/generator/comment/config-comment-generator.js +0 -44
  452. package/dist/cjs/generator/comment/hint-comment-generator.js +0 -27
  453. package/dist/cjs/generator/comment/hint-generator.js +0 -32
  454. package/dist/cjs/generator/comment/metadata-comment-generator.js +0 -32
  455. package/dist/cjs/generator/comment/pre-processor-comment-generator.js +0 -47
  456. package/dist/cjs/generator/comment/simple-comment-generator.js +0 -28
  457. package/dist/cjs/generator/cosmetic/body/abp-snippet-injection-body-generator.js +0 -36
  458. package/dist/cjs/generator/cosmetic/body/adg-scriptlet-injection-body-generator.js +0 -41
  459. package/dist/cjs/generator/cosmetic/body/ubo-scriptlet-injection-body-generator.js +0 -43
  460. package/dist/cjs/generator/cosmetic/cosmetic-rule-body-generator.js +0 -92
  461. package/dist/cjs/generator/cosmetic/cosmetic-rule-generator.js +0 -66
  462. package/dist/cjs/generator/cosmetic/cosmetic-rule-pattern-generator.js +0 -41
  463. package/dist/cjs/generator/css/adg-css-injection-generator.js +0 -41
  464. package/dist/cjs/generator/filterlist-generator.js +0 -57
  465. package/dist/cjs/generator/index.js +0 -17
  466. package/dist/cjs/generator/misc/domain-list-generator.js +0 -25
  467. package/dist/cjs/generator/misc/list-items-generator.js +0 -38
  468. package/dist/cjs/generator/misc/logical-expression-generator.js +0 -47
  469. package/dist/cjs/generator/misc/modifier-generator.js +0 -33
  470. package/dist/cjs/generator/misc/modifier-list-generator.js +0 -28
  471. package/dist/cjs/generator/misc/parameter-list-generator.js +0 -41
  472. package/dist/cjs/generator/misc/value-generator.js +0 -23
  473. package/dist/cjs/generator/network/host-rule-generator.js +0 -38
  474. package/dist/cjs/generator/network/network-rule-generator.js +0 -37
  475. package/dist/cjs/generator/rule-generator.js +0 -64
  476. package/dist/cjs/index.js +0 -201
  477. package/dist/cjs/marshalling-utils/comment/agent-comment-common.js +0 -22
  478. package/dist/cjs/marshalling-utils/comment/agent-common.js +0 -43
  479. package/dist/cjs/marshalling-utils/comment/config-comment-common.js +0 -58
  480. package/dist/cjs/marshalling-utils/comment/hint-comment-common.js +0 -23
  481. package/dist/cjs/marshalling-utils/comment/hint-common.js +0 -60
  482. package/dist/cjs/marshalling-utils/comment/metadata-comment-common.js +0 -44
  483. package/dist/cjs/marshalling-utils/comment/pre-processor-comment-common.js +0 -63
  484. package/dist/cjs/marshalling-utils/comment/simple-comment-common.js +0 -23
  485. package/dist/cjs/marshalling-utils/cosmetic/body/abp-snippet-injection-body-common.js +0 -64
  486. package/dist/cjs/marshalling-utils/cosmetic/body/adg-scriptlet-injection-body-common.js +0 -68
  487. package/dist/cjs/marshalling-utils/cosmetic/body/css-injection-body-common.js +0 -25
  488. package/dist/cjs/marshalling-utils/cosmetic/body/element-hiding-body-common.js +0 -22
  489. package/dist/cjs/marshalling-utils/cosmetic/body/ubo-scriptlet-injection-body-common.js +0 -116
  490. package/dist/cjs/marshalling-utils/cosmetic/cosmetic-rule-common.js +0 -51
  491. package/dist/cjs/marshalling-utils/filter-list-common.js +0 -22
  492. package/dist/cjs/marshalling-utils/invalid-rule-common.js +0 -22
  493. package/dist/cjs/marshalling-utils/invalid-rule-error-node-common.js +0 -23
  494. package/dist/cjs/marshalling-utils/misc/binary-type-common.js +0 -67
  495. package/dist/cjs/marshalling-utils/misc/domain-list-common.js +0 -39
  496. package/dist/cjs/marshalling-utils/misc/host-rule-common.js +0 -26
  497. package/dist/cjs/marshalling-utils/misc/hostname-list-common.js +0 -22
  498. package/dist/cjs/marshalling-utils/misc/list-item-common.js +0 -23
  499. package/dist/cjs/marshalling-utils/misc/logical-expression-common.js +0 -89
  500. package/dist/cjs/marshalling-utils/misc/modifier-common.js +0 -236
  501. package/dist/cjs/marshalling-utils/misc/modifier-list-common.js +0 -22
  502. package/dist/cjs/marshalling-utils/misc/parameter-list-common.js +0 -22
  503. package/dist/cjs/marshalling-utils/misc/value-common.js +0 -23
  504. package/dist/cjs/marshalling-utils/network/network-rule-common.js +0 -26
  505. package/dist/cjs/marshalling-utils/syntax-serialization-map.js +0 -32
  506. package/dist/cjs/nodes/index.js +0 -180
  507. package/dist/cjs/package.json.js +0 -11
  508. package/dist/cjs/parser/base-parser.js +0 -32
  509. package/dist/cjs/parser/comment/agent-comment-parser.js +0 -121
  510. package/dist/cjs/parser/comment/agent-parser.js +0 -111
  511. package/dist/cjs/parser/comment/comment-parser.js +0 -110
  512. package/dist/cjs/parser/comment/config-comment-parser.js +0 -139
  513. package/dist/cjs/parser/comment/hint-comment-parser.js +0 -119
  514. package/dist/cjs/parser/comment/hint-parser.js +0 -131
  515. package/dist/cjs/parser/comment/metadata-comment-parser.js +0 -131
  516. package/dist/cjs/parser/comment/preprocessor-parser.js +0 -201
  517. package/dist/cjs/parser/comment/simple-comment-parser.js +0 -108
  518. package/dist/cjs/parser/cosmetic/body/abp-snippet-injection-body-parser.js +0 -81
  519. package/dist/cjs/parser/cosmetic/body/adg-scriptlet-injection-body-parser.js +0 -151
  520. package/dist/cjs/parser/cosmetic/body/ubo-scriptlet-injection-body-parser.js +0 -112
  521. package/dist/cjs/parser/cosmetic/cosmetic-rule-parser.js +0 -456
  522. package/dist/cjs/parser/css/adg-css-injection-parser.js +0 -213
  523. package/dist/cjs/parser/css/balancing.js +0 -97
  524. package/dist/cjs/parser/css/constants.js +0 -21
  525. package/dist/cjs/parser/css/css-token-stream.js +0 -345
  526. package/dist/cjs/parser/css/ubo-selector-parser.js +0 -373
  527. package/dist/cjs/parser/filterlist-parser.js +0 -104
  528. package/dist/cjs/parser/index.js +0 -21
  529. package/dist/cjs/parser/misc/app-list-parser.js +0 -47
  530. package/dist/cjs/parser/misc/domain-list-parser.js +0 -54
  531. package/dist/cjs/parser/misc/list-items-parser.js +0 -116
  532. package/dist/cjs/parser/misc/logical-expression-parser.js +0 -283
  533. package/dist/cjs/parser/misc/method-list-parser.js +0 -48
  534. package/dist/cjs/parser/misc/modifier-list.js +0 -72
  535. package/dist/cjs/parser/misc/modifier-parser.js +0 -91
  536. package/dist/cjs/parser/misc/parameter-list-parser.js +0 -74
  537. package/dist/cjs/parser/misc/stealth-option-list-parser.js +0 -48
  538. package/dist/cjs/parser/misc/ubo-parameter-list-parser.js +0 -148
  539. package/dist/cjs/parser/misc/value-parser.js +0 -39
  540. package/dist/cjs/parser/network/host-rule-parser.js +0 -151
  541. package/dist/cjs/parser/network/network-rule-parser.js +0 -113
  542. package/dist/cjs/parser/options.js +0 -25
  543. package/dist/cjs/parser/rule-parser.js +0 -194
  544. package/dist/cjs/serializer/base-serializer.js +0 -31
  545. package/dist/cjs/serializer/comment/agent-comment-serializer.js +0 -73
  546. package/dist/cjs/serializer/comment/agent-serializer.js +0 -70
  547. package/dist/cjs/serializer/comment/comment-rule-serializer.js +0 -107
  548. package/dist/cjs/serializer/comment/config-comment-serializer.js +0 -84
  549. package/dist/cjs/serializer/comment/hint-comment-serializer.js +0 -64
  550. package/dist/cjs/serializer/comment/hint-serializer.js +0 -56
  551. package/dist/cjs/serializer/comment/metadata-comment-serializer.js +0 -75
  552. package/dist/cjs/serializer/comment/pre-processor-comment-serializer.js +0 -73
  553. package/dist/cjs/serializer/comment/simple-comment-serializer.js +0 -54
  554. package/dist/cjs/serializer/cosmetic/body/abp-snippet-injection-body-serializer.js +0 -38
  555. package/dist/cjs/serializer/cosmetic/body/adg-scriptlet-injection-body-serializer.js +0 -38
  556. package/dist/cjs/serializer/cosmetic/body/scriptlet-body-serializer.js +0 -49
  557. package/dist/cjs/serializer/cosmetic/body/ubo-scriptlet-injection-body-serializer.js +0 -38
  558. package/dist/cjs/serializer/cosmetic/cosmetic-rule-serializer.js +0 -131
  559. package/dist/cjs/serializer/cosmetic/css-injection-body-serializer.js +0 -50
  560. package/dist/cjs/serializer/cosmetic/element-hiding-body-serializer.js +0 -39
  561. package/dist/cjs/serializer/empty-rule-serializer.js +0 -36
  562. package/dist/cjs/serializer/filterlist-serializer.js +0 -48
  563. package/dist/cjs/serializer/index.js +0 -13
  564. package/dist/cjs/serializer/invalid-rule-error-node-serializer.js +0 -40
  565. package/dist/cjs/serializer/invalid-rule-serializer.js +0 -39
  566. package/dist/cjs/serializer/misc/domain-list-serializer.js +0 -66
  567. package/dist/cjs/serializer/misc/list-item-serializer.js +0 -57
  568. package/dist/cjs/serializer/misc/list-items-serializer.js +0 -28
  569. package/dist/cjs/serializer/misc/logical-expression-serializer.js +0 -138
  570. package/dist/cjs/serializer/misc/modifier-list-serializer.js +0 -57
  571. package/dist/cjs/serializer/misc/modifier-serializer.js +0 -51
  572. package/dist/cjs/serializer/misc/parameter-list-serializer.js +0 -51
  573. package/dist/cjs/serializer/misc/value-serializer.js +0 -52
  574. package/dist/cjs/serializer/network/host-rule-serializer.js +0 -72
  575. package/dist/cjs/serializer/network/hostname-list-serializer.js +0 -49
  576. package/dist/cjs/serializer/network/network-rule-serializer.js +0 -56
  577. package/dist/cjs/serializer/rule-serializer.js +0 -63
  578. package/dist/cjs/utils/adblockers.js +0 -57
  579. package/dist/cjs/utils/binary-schema-version.js +0 -19
  580. package/dist/cjs/utils/byte-buffer.js +0 -93
  581. package/dist/cjs/utils/categorizer.js +0 -46
  582. package/dist/cjs/utils/clone.js +0 -30
  583. package/dist/cjs/utils/constants.js +0 -380
  584. package/dist/cjs/utils/cosmetic-rule-separator.js +0 -129
  585. package/dist/cjs/utils/deep-freeze.js +0 -34
  586. package/dist/cjs/utils/domain.js +0 -60
  587. package/dist/cjs/utils/error.js +0 -51
  588. package/dist/cjs/utils/index.js +0 -69
  589. package/dist/cjs/utils/input-byte-buffer.js +0 -259
  590. package/dist/cjs/utils/is-chromium.js +0 -22
  591. package/dist/cjs/utils/logical-expression.js +0 -94
  592. package/dist/cjs/utils/multi-value-map.js +0 -35
  593. package/dist/cjs/utils/output-byte-buffer.js +0 -225
  594. package/dist/cjs/utils/position-provider.js +0 -75
  595. package/dist/cjs/utils/quotes.js +0 -218
  596. package/dist/cjs/utils/regexp.js +0 -190
  597. package/dist/cjs/utils/string.js +0 -560
  598. package/dist/cjs/utils/text-decoder-polyfill.js +0 -109
  599. package/dist/cjs/utils/text-encoder-polyfill.js +0 -80
  600. package/dist/cjs/utils/type-guards.js +0 -52
  601. package/dist/cjs/validator/constants.js +0 -222
  602. package/dist/cjs/validator/helpers.js +0 -49
  603. package/dist/cjs/validator/index.js +0 -176
  604. package/dist/cjs/validator/value.js +0 -565
  605. package/dist/cjs/version.js +0 -20
  606. package/dist/esm/common/ubo-selector-common.mjs +0 -18
  607. package/dist/esm/compatibility-tables/platforms.mjs +0 -58
  608. package/dist/esm/compatibility-tables/schemas/resource-type.mjs +0 -37
  609. package/dist/esm/converter/index.mjs +0 -8
  610. package/dist/esm/marshalling-utils/comment/agent-comment-common.mjs +0 -22
  611. package/dist/esm/marshalling-utils/comment/hint-comment-common.mjs +0 -23
  612. package/dist/esm/marshalling-utils/comment/simple-comment-common.mjs +0 -23
  613. package/dist/esm/marshalling-utils/cosmetic/body/css-injection-body-common.mjs +0 -25
  614. package/dist/esm/marshalling-utils/cosmetic/body/element-hiding-body-common.mjs +0 -22
  615. package/dist/esm/marshalling-utils/filter-list-common.mjs +0 -22
  616. package/dist/esm/marshalling-utils/invalid-rule-error-node-common.mjs +0 -23
  617. package/dist/esm/marshalling-utils/misc/binary-type-common.mjs +0 -67
  618. package/dist/esm/marshalling-utils/misc/host-rule-common.mjs +0 -26
  619. package/dist/esm/marshalling-utils/misc/hostname-list-common.mjs +0 -22
  620. package/dist/esm/marshalling-utils/misc/list-item-common.mjs +0 -23
  621. package/dist/esm/marshalling-utils/misc/logical-expression-common.mjs +0 -86
  622. package/dist/esm/marshalling-utils/misc/modifier-list-common.mjs +0 -22
  623. package/dist/esm/marshalling-utils/misc/parameter-list-common.mjs +0 -22
  624. package/dist/esm/marshalling-utils/misc/value-common.mjs +0 -23
  625. package/dist/esm/marshalling-utils/network/network-rule-common.mjs +0 -26
  626. package/dist/esm/parser/index.mjs +0 -11
  627. package/dist/esm/serializer/index.mjs +0 -7
  628. package/dist/esm/utils/index.mjs +0 -21
@@ -1,17 +1,17 @@
1
1
  /*
2
- * AGTree v3.0.0 (build date: Tue, 12 Nov 2024 14:05:06 GMT)
3
- * (c) 2024 Adguard Software Ltd.
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
+ * (c) 2025 Adguard Software Ltd.
4
4
  * Released under the MIT license
5
5
  * https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
6
6
  */
7
- import { NULL } from '../../utils/constants.mjs';
8
- import { isUndefined } from '../../utils/type-guards.mjs';
9
- import { ValueSerializer } from '../misc/value-serializer.mjs';
10
- import { BaseSerializer } from '../base-serializer.mjs';
11
- import { ModifierListSerializer } from '../misc/modifier-list-serializer.mjs';
12
- import { NetworkRuleMarshallingMap } from '../../marshalling-utils/network/network-rule-common.mjs';
13
- import { BinaryTypeMarshallingMap } from '../../marshalling-utils/misc/binary-type-common.mjs';
14
- import { getSyntaxSerializationMap } from '../../marshalling-utils/syntax-serialization-map.mjs';
7
+ import { NULL } from '../../utils/constants.js';
8
+ import { isUndefined } from '../../utils/type-guards.js';
9
+ import { ValueSerializer } from '../misc/value-serializer.js';
10
+ import { BaseSerializer } from '../base-serializer.js';
11
+ import { ModifierListSerializer } from '../misc/modifier-list-serializer.js';
12
+ import { NetworkRuleMarshallingMap } from '../../marshalling-utils/network/network-rule-common.js';
13
+ import { BinaryTypeMarshallingMap } from '../../marshalling-utils/misc/binary-type-common.js';
14
+ import { getSyntaxSerializationMap } from '../../marshalling-utils/syntax-serialization-map.js';
15
15
 
16
16
  /**
17
17
  * `NetworkRuleSerializer` is responsible for serializing network rules.
@@ -1,17 +1,17 @@
1
1
  /*
2
- * AGTree v3.0.0 (build date: Tue, 12 Nov 2024 14:05:06 GMT)
3
- * (c) 2024 Adguard Software Ltd.
2
+ * AGTree v3.1.0 (build date: Mon, 31 Mar 2025 16:50:55 GMT)
3
+ * (c) 2025 Adguard Software Ltd.
4
4
  * Released under the MIT license
5
5
  * https://github.com/AdguardTeam/tsurlfilter/tree/master/packages/agtree#readme
6
6
  */
7
- import { RuleCategory, NetworkRuleType } from '../nodes/index.mjs';
8
- import { BaseSerializer } from './base-serializer.mjs';
9
- import { CommentRuleSerializer } from './comment/comment-rule-serializer.mjs';
10
- import { CosmeticRuleSerializer } from './cosmetic/cosmetic-rule-serializer.mjs';
11
- import { HostRuleSerializer } from './network/host-rule-serializer.mjs';
12
- import { NetworkRuleSerializer } from './network/network-rule-serializer.mjs';
13
- import { EmptyRuleSerializer } from './empty-rule-serializer.mjs';
14
- import { InvalidRuleSerializer } from './invalid-rule-serializer.mjs';
7
+ import { RuleCategory, NetworkRuleType } from '../nodes/index.js';
8
+ import { BaseSerializer } from './base-serializer.js';
9
+ import { CommentRuleSerializer } from './comment/comment-rule-serializer.js';
10
+ import { CosmeticRuleSerializer } from './cosmetic/cosmetic-rule-serializer.js';
11
+ import { HostRuleSerializer } from './network/host-rule-serializer.js';
12
+ import { NetworkRuleSerializer } from './network/network-rule-serializer.js';
13
+ import { EmptyRuleSerializer } from './empty-rule-serializer.js';
14
+ import { InvalidRuleSerializer } from './invalid-rule-serializer.js';
15
15
 
16
16
  /**
17
17
  * `RuleSerializer` is responsible for serializing the rules.
@@ -1,8 +1,15 @@
1
+ /**
2
+ * Common class for the ABP snippet injection body.
3
+ * This class contains shared constants and utilities for handling ABP snippet injection bodies.
4
+ */
1
5
  export declare class AbpSnippetInjectionBodyCommon {
2
6
  /**
3
7
  * Error messages used by the parser and generator.
4
8
  */
5
9
  static ERROR_MESSAGES: {
10
+ /**
11
+ * Error message indicating that an ABP snippet call is empty.
12
+ */
6
13
  EMPTY_SCRIPTLET_CALL: string;
7
14
  };
8
15
  }
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * Known uBO-specific pseudo-class names.
3
3
  */
4
- export declare const enum UboPseudoName {
5
- MatchesMedia = "matches-media",
6
- MatchesPath = "matches-path",
7
- Remove = "remove",
8
- Style = "style"
9
- }
4
+ export declare const UboPseudoName: {
5
+ readonly MatchesMedia: "matches-media";
6
+ readonly MatchesPath: "matches-path";
7
+ readonly Remove: "remove";
8
+ readonly Style: "style";
9
+ };
10
+ export type UboPseudoName = typeof UboPseudoName[keyof typeof UboPseudoName];
@@ -40,7 +40,7 @@ export declare const redirectsCompatibilityTableData: CompatibilityTable<{
40
40
  removed: boolean;
41
41
  removalMessage: string | null;
42
42
  isBlocking: boolean;
43
- resourceTypes: import(".").ResourceType[];
43
+ resourceTypes: ("object" | "image" | "other" | "font" | "media" | "ping" | "script" | "stylesheet" | "websocket" | "xmlhttprequest" | "main_frame" | "sub_frame")[];
44
44
  }>;
45
45
  /**
46
46
  * Compatibility table data for modifiers.
@@ -64,4 +64,5 @@ export declare const modifiersCompatibilityTableData: CompatibilityTable<{
64
64
  exceptionOnly: boolean;
65
65
  valueOptional: boolean;
66
66
  valueFormat: string | null;
67
+ valueFormatFlags: string | null;
67
68
  }>;
@@ -8,40 +8,42 @@
8
8
  /**
9
9
  * List of specific platforms.
10
10
  */
11
- export declare enum SpecificPlatform {
12
- AdgOsWindows = 1,
13
- AdgOsMac = 2,
14
- AdgOsAndroid = 4,
15
- AdgExtChrome = 8,
16
- AdgExtOpera = 16,
17
- AdgExtEdge = 32,
18
- AdgExtFirefox = 64,
19
- AdgCbAndroid = 128,
20
- AdgCbIos = 256,
21
- AdgCbSafari = 512,
22
- UboExtChrome = 1024,
23
- UboExtOpera = 2048,
24
- UboExtEdge = 4096,
25
- UboExtFirefox = 8192,
26
- AbpExtChrome = 16384,
27
- AbpExtOpera = 32768,
28
- AbpExtEdge = 65536,
29
- AbpExtFirefox = 131072
30
- }
11
+ export declare const SpecificPlatform: {
12
+ readonly AdgOsWindows: 1;
13
+ readonly AdgOsMac: number;
14
+ readonly AdgOsAndroid: number;
15
+ readonly AdgExtChrome: number;
16
+ readonly AdgExtOpera: number;
17
+ readonly AdgExtEdge: number;
18
+ readonly AdgExtFirefox: number;
19
+ readonly AdgCbAndroid: number;
20
+ readonly AdgCbIos: number;
21
+ readonly AdgCbSafari: number;
22
+ readonly UboExtChrome: number;
23
+ readonly UboExtOpera: number;
24
+ readonly UboExtEdge: number;
25
+ readonly UboExtFirefox: number;
26
+ readonly AbpExtChrome: number;
27
+ readonly AbpExtOpera: number;
28
+ readonly AbpExtEdge: number;
29
+ readonly AbpExtFirefox: number;
30
+ };
31
+ export type SpecificPlatform = typeof SpecificPlatform[keyof typeof SpecificPlatform];
31
32
  /**
32
33
  * List of generic platforms (combinations of specific platforms).
33
34
  */
34
- export declare enum GenericPlatform {
35
- AdgOsAny = 7,
36
- AdgSafariAny = 768,
37
- AdgExtChromium = 56,
38
- AdgExtAny = 120,
39
- AdgAny = 1023,
40
- UboExtChromium = 7168,
41
- UboExtAny = 15360,
42
- UboAny = 15360,
43
- AbpExtChromium = 114688,
44
- AbpExtAny = 245760,
45
- AbpAny = 245760,
46
- Any = 262143
47
- }
35
+ export declare const GenericPlatform: {
36
+ readonly AdgOsAny: number;
37
+ readonly AdgSafariAny: number;
38
+ readonly AdgExtChromium: number;
39
+ readonly AdgExtAny: number;
40
+ readonly AdgAny: number;
41
+ readonly UboExtChromium: number;
42
+ readonly UboExtAny: number;
43
+ readonly UboAny: number;
44
+ readonly AbpExtChromium: number;
45
+ readonly AbpExtAny: number;
46
+ readonly AbpAny: number;
47
+ readonly Any: number;
48
+ };
49
+ export type GenericPlatform = typeof GenericPlatform[keyof typeof GenericPlatform];
@@ -117,18 +117,7 @@ export declare const baseRefineLogic: (data: zod.infer<typeof baseCompatibilityD
117
117
  *
118
118
  * @returns Base file schema.
119
119
  */
120
- export declare const baseFileSchema: <T extends {
121
- name: string;
122
- description: string | null;
123
- aliases: string[] | null;
124
- docs: string | null;
125
- versionAdded: string | null;
126
- versionRemoved: string | null;
127
- deprecated: boolean;
128
- deprecationMessage: string | null;
129
- removed: boolean;
130
- removalMessage: string | null;
131
- }>(dataSchema: zod.ZodType<T>) => zod.ZodPipeline<zod.ZodEffects<zod.ZodRecord<zod.ZodAny, zod.ZodAny>, Record<any, any>, Record<any, any>>, zod.ZodRecord<zod.ZodEffects<zod.ZodString, number, string>, zod.ZodType<T, zod.ZodTypeDef, T>>>;
120
+ export declare const baseFileSchema: <T extends BaseCompatibilityDataSchema>(dataSchema: zod.ZodType<T>) => zod.ZodPipeline<zod.ZodEffects<zod.ZodRecord<zod.ZodAny, zod.ZodAny>, Record<any, any>, Record<any, any>>, zod.ZodRecord<zod.ZodEffects<zod.ZodString, number, string>, zod.ZodType<T, zod.ZodTypeDef, T>>>;
132
121
  /**
133
122
  * Type of the base file schema.
134
123
  */
@@ -2,6 +2,10 @@
2
2
  * @file Schema for modifier data.
3
3
  */
4
4
  import zod from 'zod';
5
+ /**
6
+ * Known validators that don't need to be validated as regex.
7
+ */
8
+ export declare const KNOWN_VALIDATORS: ReadonlySet<string>;
5
9
  /**
6
10
  * Zod schema for modifier data.
7
11
  */
@@ -24,6 +28,7 @@ export declare const modifierDataSchema: zod.ZodEffects<zod.ZodTypeAny, {
24
28
  exceptionOnly: boolean;
25
29
  valueOptional: boolean;
26
30
  valueFormat: string | null;
31
+ valueFormatFlags: string | null;
27
32
  }, any>;
28
33
  /**
29
34
  * Type of the modifier data schema.
@@ -17,7 +17,7 @@ export declare const redirectDataSchema: zod.ZodEffects<zod.ZodTypeAny, {
17
17
  removed: boolean;
18
18
  removalMessage: string | null;
19
19
  isBlocking: boolean;
20
- resourceTypes: import("./resource-type").ResourceType[];
20
+ resourceTypes: ("object" | "image" | "other" | "font" | "media" | "ping" | "script" | "stylesheet" | "websocket" | "xmlhttprequest" | "main_frame" | "sub_frame")[];
21
21
  }, any>;
22
22
  /**
23
23
  * Type of the redirect data schema.
@@ -7,21 +7,35 @@ import zod from 'zod';
7
7
  *
8
8
  * @see {@link https://developer.chrome.com/docs/extensions/reference/declarativeNetRequest/#type-ResourceType}
9
9
  */
10
- export declare enum ResourceType {
11
- MainFrame = "main_frame",
12
- SubFrame = "sub_frame",
13
- Stylesheet = "stylesheet",
14
- Script = "script",
15
- Image = "image",
16
- Font = "font",
17
- Object = "object",
18
- XmlHttpRequest = "xmlhttprequest",
19
- Ping = "ping",
20
- Media = "media",
21
- WebSocket = "websocket",
22
- Other = "other"
23
- }
10
+ export declare const ResourceType: {
11
+ readonly MainFrame: "main_frame";
12
+ readonly SubFrame: "sub_frame";
13
+ readonly Stylesheet: "stylesheet";
14
+ readonly Script: "script";
15
+ readonly Image: "image";
16
+ readonly Font: "font";
17
+ readonly Object: "object";
18
+ readonly XmlHttpRequest: "xmlhttprequest";
19
+ readonly Ping: "ping";
20
+ readonly Media: "media";
21
+ readonly WebSocket: "websocket";
22
+ readonly Other: "other";
23
+ };
24
+ export type ResourceType = typeof ResourceType[keyof typeof ResourceType];
24
25
  /**
25
26
  * Resource type schema.
26
27
  */
27
- export declare const resourceTypeSchema: zod.ZodNativeEnum<typeof ResourceType>;
28
+ export declare const resourceTypeSchema: zod.ZodNativeEnum<{
29
+ readonly MainFrame: "main_frame";
30
+ readonly SubFrame: "sub_frame";
31
+ readonly Stylesheet: "stylesheet";
32
+ readonly Script: "script";
33
+ readonly Image: "image";
34
+ readonly Font: "font";
35
+ readonly Object: "object";
36
+ readonly XmlHttpRequest: "xmlhttprequest";
37
+ readonly Ping: "ping";
38
+ readonly Media: "media";
39
+ readonly WebSocket: "websocket";
40
+ readonly Other: "other";
41
+ }>;
@@ -12,4 +12,4 @@ import { type CamelCasedPropertiesDeep } from 'type-fest';
12
12
  *
13
13
  * @see {@link https://github.com/colinhacks/zod/issues/486#issuecomment-1501097361}
14
14
  */
15
- export declare const zodToCamelCase: <T extends zod.ZodTypeAny>(zod: T) => zod.ZodEffects<zod.ZodTypeAny, CamelCasedPropertiesDeep<T["_output"]>, any>;
15
+ export declare const zodToCamelCase: <T extends zod.ZodTypeAny>(zod: T) => zod.ZodEffects<zod.ZodTypeAny, CamelCasedPropertiesDeep<T["_output"]>>;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @file Cosmetic rule modifier converter from ADG to uBO
3
+ */
4
+ import { type DomainList, type ModifierList } from '../../../nodes';
5
+ import { type ConversionResult } from '../../base-interfaces/conversion-result';
6
+ /**
7
+ * Helper class for converting cosmetic rule modifiers from ADG to uBO
8
+ */
9
+ export declare class UboCosmeticRuleModifierConverter {
10
+ /**
11
+ * Converts a ADG cosmetic rule modifier list to uBO, if possible.
12
+ *
13
+ * @param modifierList Cosmetic rule modifier list node to convert
14
+ * @returns An object which follows the {@link ConversionResult} interface. Its `result` property contains
15
+ * the converted node, and its `isConverted` flag indicates whether the original node was converted.
16
+ * If the node was not converted, the result will contain the original node with the same object reference
17
+ * @throws If the modifier list cannot be converted
18
+ * @see {@link https://github.com/gorhill/uBlock/wiki/Procedural-cosmetic-filters#cosmetic-filter-operators}
19
+ */
20
+ static convertFromAdg(modifierList: ModifierList): ConversionResult<{
21
+ modifierList: ModifierList;
22
+ domains?: DomainList;
23
+ }>;
24
+ }
@@ -4,6 +4,23 @@ import { CssTokenStream } from '../../parser/css/css-token-stream';
4
4
  export declare const ERROR_MESSAGES: {
5
5
  INVALID_ATTRIBUTE_VALUE: string;
6
6
  };
7
+ export declare const PseudoClasses: {
8
+ readonly AbpContains: "-abp-contains";
9
+ readonly AbpHas: "-abp-has";
10
+ readonly Contains: "contains";
11
+ readonly Has: "has";
12
+ readonly HasText: "has-text";
13
+ readonly MatchesCss: "matches-css";
14
+ readonly MatchesCssAfter: "matches-css-after";
15
+ readonly MatchesCssBefore: "matches-css-before";
16
+ readonly Not: "not";
17
+ };
18
+ export type PseudoClasses = typeof PseudoClasses[keyof typeof PseudoClasses];
19
+ export declare const PseudoElements: {
20
+ readonly After: "after";
21
+ readonly Before: "before";
22
+ };
23
+ export type PseudoElements = typeof PseudoElements[keyof typeof PseudoElements];
7
24
  /**
8
25
  * CSS selector converter
9
26
  *
@@ -2,60 +2,7 @@ import { type AnyCommentRule } from '../../nodes';
2
2
  import { BaseDeserializer } from '../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
4
  /**
5
- * `CommentRuleSerializer` is responsible for serializing any comment-like adblock rules.
6
- *
7
- * @example
8
- * Example rules:
9
- * - Adblock agent rules:
10
- * - ```adblock
11
- * [AdGuard]
12
- * ```
13
- * - ```adblock
14
- * [Adblock Plus 2.0]
15
- * ```
16
- * - etc.
17
- * - AdGuard hint rules:
18
- * - ```adblock
19
- * !+ NOT_OPTIMIZED
20
- * ```
21
- * - ```adblock
22
- * !+ NOT_OPTIMIZED PLATFORM(windows)
23
- * ```
24
- * - etc.
25
- * - Pre-processor rules:
26
- * - ```adblock
27
- * !#if (adguard)
28
- * ```
29
- * - ```adblock
30
- * !#endif
31
- * ```
32
- * - etc.
33
- * - Metadata rules:
34
- * - ```adblock
35
- * ! Title: My List
36
- * ```
37
- * - ```adblock
38
- * ! Version: 2.0.150
39
- * ```
40
- * - etc.
41
- * - AGLint inline config rules:
42
- * - ```adblock
43
- * ! aglint-enable some-rule
44
- * ```
45
- * - ```adblock
46
- * ! aglint-disable some-rule
47
- * ```
48
- * - etc.
49
- * - Simple comments:
50
- * - Regular version:
51
- * ```adblock
52
- * ! This is just a comment
53
- * ```
54
- * - uBlock Origin / "hostlist" version:
55
- * ```adblock
56
- * # This is just a comment
57
- * ```
58
- * - etc.
5
+ * `CommentRuleDeserializer` is responsible for deserializing any comment-like adblock rules.
59
6
  */
60
7
  export declare class CommentRuleDeserializer extends BaseDeserializer {
61
8
  /**
@@ -1,6 +1,12 @@
1
1
  import { type AnyCosmeticRule } from '../../nodes';
2
2
  import { BaseDeserializer } from '../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializer for cosmetic rules.
6
+ * Converts binary data into structured cosmetic rule nodes, supporting various types
7
+ * like element hiding, CSS injection, scriptlet injection, JavaScript injection, and HTML filtering.
8
+ * Handles rule type, syntax, exceptions, separators, modifiers, and domain lists.
9
+ */
4
10
  export declare class CosmeticRuleDeserializer extends BaseDeserializer {
5
11
  /**
6
12
  * Deserializes a cosmetic rule node from binary format.
@@ -1,6 +1,9 @@
1
1
  import { type CssInjectionRuleBody } from '../../nodes';
2
2
  import { BaseDeserializer } from '../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializes CSS injection rule body nodes from binary format.
6
+ */
4
7
  export declare class CssInjectionBodyDeserializer extends BaseDeserializer {
5
8
  /**
6
9
  * Deserializes CSS injection rule body node from binary format.
@@ -1,6 +1,10 @@
1
1
  import { BaseDeserializer } from '../base-deserializer';
2
2
  import { type ElementHidingRuleBody } from '../../nodes';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializes element hiding rule body nodes from binary data.
6
+ * Populates the provided node with the deserialized data.
7
+ */
4
8
  export declare class ElementHidingBodyDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes an element hiding rule body node from binary format.
@@ -1,6 +1,10 @@
1
1
  import { type ScriptletInjectionRuleBody } from '../../../nodes';
2
2
  import { BaseDeserializer } from '../../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializer for ABP snippet injection rule body nodes.
6
+ * Converts binary data into a structured format using a map of frequently used arguments.
7
+ */
4
8
  export declare class AbpSnippetInjectionBodyDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes a scriptlet call body node from binary format.
@@ -1,6 +1,11 @@
1
1
  import { type ScriptletInjectionRuleBody } from '../../../nodes';
2
2
  import { BaseDeserializer } from '../../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializer for AdGuard scriptlet injection body nodes.
6
+ * Converts binary data into a structured scriptlet call body node specific to AdGuard,
7
+ * using a predefined deserialization map for frequently used scriptlet arguments.
8
+ */
4
9
  export declare class AdgScriptletInjectionBodyDeserializer extends BaseDeserializer {
5
10
  /**
6
11
  * Deserializes a scriptlet call body node from binary format.
@@ -1,6 +1,10 @@
1
1
  import { type ScriptletInjectionRuleBody } from '../../../nodes';
2
2
  import { BaseDeserializer } from '../../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializes binary data into scriptlet body nodes.
6
+ * Optionally uses a map of frequently used scriptlet arguments.
7
+ */
4
8
  export declare class ScriptletBodyDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes a hint rule node from binary format.
@@ -2,12 +2,15 @@ import { type ScriptletInjectionRuleBody } from '../../../nodes';
2
2
  import { BaseDeserializer } from '../../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../../utils/input-byte-buffer';
4
4
  export declare const getFrequentPlatformsDeserializationMap: () => Map<number, string>;
5
+ /**
6
+ * Deserializes uBlock Origin scriptlet injection body nodes from binary data.
7
+ */
5
8
  export declare class UboScriptletInjectionBodyDeserializer extends BaseDeserializer {
6
9
  /**
7
10
  * Deserializes a scriptlet call body node from binary format.
8
11
  *
9
12
  * @param buffer ByteBuffer for reading binary data.
10
- * @param node Destination node.
13
+ * @param node Destination node to populate with deserialized data.
11
14
  * @throws If the binary data is malformed.
12
15
  */
13
16
  static deserialize(buffer: InputByteBuffer, node: Partial<ScriptletInjectionRuleBody>): void;
@@ -1,6 +1,10 @@
1
1
  import { BaseDeserializer } from './base-deserializer';
2
2
  import { type EmptyRule } from '../nodes';
3
3
  import { type InputByteBuffer } from '../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializer for empty rule nodes.
6
+ * This class handles the deserialization of empty rule nodes from binary format.
7
+ */
4
8
  export declare class EmptyRuleDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes an empty rule node from binary format.
@@ -1,6 +1,10 @@
1
1
  import { type FilterList } from '../nodes';
2
2
  import { BaseDeserializer } from './base-deserializer';
3
3
  import { type InputByteBuffer } from '../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializer for filter lists.
6
+ * Converts binary data into filter list nodes.
7
+ */
4
8
  export declare class FilterListDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes a filter list node from binary format.
@@ -1,6 +1,10 @@
1
1
  import { BaseDeserializer } from './base-deserializer';
2
2
  import { type InvalidRule } from '../nodes';
3
3
  import { type InputByteBuffer } from '../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializer for invalid rule nodes.
6
+ * Converts binary data into invalid rule nodes.
7
+ */
4
8
  export declare class InvalidRuleDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes an invalid rule node from binary format.
@@ -1,6 +1,10 @@
1
1
  import { BaseDeserializer } from './base-deserializer';
2
2
  import { type InvalidRuleError } from '../nodes';
3
3
  import { type InputByteBuffer } from '../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializer for invalid rule error nodes.
6
+ * Converts binary data into invalid rule error nodes.
7
+ */
4
8
  export declare class InvalidRuleErrorNodeDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes an invalid rule error node from binary format.
@@ -1,6 +1,12 @@
1
1
  import { BaseDeserializer } from '../base-deserializer';
2
2
  import { type ListItem, ListItemNodeType } from '../../nodes';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
+ /**
5
+ * `ListItemDeserializer` is responsible for deserializing list item nodes from binary format.
6
+ *
7
+ * @example
8
+ * `app`, `domain`, `method`, `stealth-option`
9
+ */
4
10
  export declare class ListItemDeserializer extends BaseDeserializer {
5
11
  /**
6
12
  * Deserializes a list item from binary format.
@@ -1,5 +1,9 @@
1
1
  import { type ListItem, type ListItemNodeType } from '../../nodes';
2
2
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
3
+ /**
4
+ * Deserializes lists of items from binary format.
5
+ * Converts binary data to structured item nodes.
6
+ */
3
7
  export declare class ListItemsDeserializer {
4
8
  /**
5
9
  * Deserializes a list of items from binary format.
@@ -2,7 +2,7 @@ import { type Modifier } from '../../nodes';
2
2
  import { BaseDeserializer } from '../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
4
  /**
5
- * `ModifierSerializer` is responsible for serializing modifiers.
5
+ * `ModifierDeserializer` is responsible for deserializing modifiers.
6
6
  *
7
7
  * @example
8
8
  * `match-case`, `~third-party`, `domain=example.com|~example.org`
@@ -1,6 +1,10 @@
1
1
  import { type ParameterList } from '../../nodes';
2
2
  import { BaseDeserializer } from '../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
+ /**
5
+ * Deserializes binary data into parameter list nodes.
6
+ * Optionally uses a map of frequent values for optimization.
7
+ */
4
8
  export declare class ParameterListDeserializer extends BaseDeserializer {
5
9
  /**
6
10
  * Deserializes a parameter list node from binary format.
@@ -2,29 +2,17 @@ import { type HostRule } from '../../nodes';
2
2
  import { BaseDeserializer } from '../base-deserializer';
3
3
  import { type InputByteBuffer } from '../../utils/input-byte-buffer';
4
4
  /**
5
- * `HostRuleSerializer` is responsible for serializing hosts-like rules.
5
+ * `HostRuleDeserializer` is responsible for deserializing hosts-like rules.
6
6
  *
7
7
  * HostRule is a structure for simple host-level rules (i.e. /etc/hosts syntax).
8
8
  * It also supports "just domain" syntax. In this case, the IP will be set to 0.0.0.0.
9
- *
10
- * Rules syntax looks like this:
11
- * ```text
12
- * IP_address canonical_hostname [aliases...]
13
- * ```
14
- *
15
- * @example
16
- * `192.168.1.13 bar.mydomain.org bar` -- ipv4
17
- * `ff02::1 ip6-allnodes` -- ipv6
18
- * `::1 localhost ip6-localhost ip6-loopback` -- ipv6 aliases
19
- * `example.org` -- "just domain" syntax
20
- * @see {@link http://man7.org/linux/man-pages/man5/hosts.5.html}
21
9
  */
22
10
  export declare class HostRuleDeserializer extends BaseDeserializer {
23
11
  /**
24
- * Deserializes a modifier node from binary format.
12
+ * Deserializes a host rule node from binary format.
25
13
  *
26
- * @param buffer ByteBuffer for reading binary data.
27
- * @param node Destination node.
14
+ * @param buffer Input byte buffer to read from.
15
+ * @param node Destination node to write to.
28
16
  */
29
17
  static deserialize(buffer: InputByteBuffer, node: Partial<HostRule>): void;
30
18
  }