@tbela99/css-parser 1.3.3 → 1.3.4

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 (46) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +20 -17
  3. package/dist/index-umd-web.js +1031 -571
  4. package/dist/index.cjs +1031 -566
  5. package/dist/index.d.ts +247 -171
  6. package/dist/lib/ast/expand.js +5 -10
  7. package/dist/lib/ast/features/calc.js +3 -2
  8. package/dist/lib/ast/features/inlinecssvariables.js +5 -3
  9. package/dist/lib/ast/features/prefix.js +1 -1
  10. package/dist/lib/ast/features/shorthand.js +1 -0
  11. package/dist/lib/ast/features/transform.js +13 -19
  12. package/dist/lib/ast/minify.js +5 -2
  13. package/dist/lib/ast/transform/compute.js +2 -4
  14. package/dist/lib/ast/transform/matrix.js +20 -20
  15. package/dist/lib/ast/transform/minify.js +105 -12
  16. package/dist/lib/ast/transform/rotate.js +11 -11
  17. package/dist/lib/ast/transform/scale.js +6 -6
  18. package/dist/lib/ast/transform/skew.js +4 -4
  19. package/dist/lib/ast/transform/translate.js +3 -3
  20. package/dist/lib/ast/transform/utils.js +30 -37
  21. package/dist/lib/ast/types.js +14 -2
  22. package/dist/lib/ast/walk.js +61 -49
  23. package/dist/lib/fs/resolve.js +6 -3
  24. package/dist/lib/parser/declaration/list.js +3 -1
  25. package/dist/lib/parser/parse.js +345 -305
  26. package/dist/lib/parser/tokenize.js +11 -13
  27. package/dist/lib/renderer/render.js +2 -2
  28. package/dist/lib/syntax/syntax.js +36 -18
  29. package/dist/lib/validation/at-rules/container.js +11 -0
  30. package/dist/lib/validation/at-rules/counter-style.js +11 -0
  31. package/dist/lib/validation/at-rules/font-feature-values.js +11 -0
  32. package/dist/lib/validation/at-rules/keyframes.js +11 -0
  33. package/dist/lib/validation/at-rules/layer.js +11 -0
  34. package/dist/lib/validation/at-rules/media.js +11 -0
  35. package/dist/lib/validation/at-rules/page-margin-box.js +11 -0
  36. package/dist/lib/validation/at-rules/page.js +11 -0
  37. package/dist/lib/validation/at-rules/supports.js +11 -0
  38. package/dist/lib/validation/at-rules/when.js +11 -0
  39. package/dist/lib/validation/config.js +0 -2
  40. package/dist/lib/validation/config.json.js +21 -1
  41. package/dist/lib/validation/parser/parse.js +53 -2
  42. package/dist/lib/validation/syntax.js +199 -36
  43. package/dist/node.js +17 -12
  44. package/dist/web.js +11 -11
  45. package/package.json +6 -3
  46. package/dist/lib/validation/parser/types.js +0 -54
package/dist/index.d.ts CHANGED
@@ -17,19 +17,31 @@ declare enum ValidationLevel {
17
17
  * disable validation
18
18
  */
19
19
  None = 0,
20
+ /**
21
+ * validate selectors
22
+ */
23
+ Selector = 1,
24
+ /**
25
+ * validate at-rules
26
+ */
27
+ AtRule = 2,
28
+ /**
29
+ * validate declarations
30
+ */
31
+ Declaration = 4,
20
32
  /**
21
33
  * validate selectors and at-rules
22
34
  */
23
- Default = 1,// selectors + at-rules
35
+ Default = 3,// selectors + at-rules
24
36
  /**
25
37
  * validate selectors, at-rules and declarations
26
38
  */
27
- All = 2
39
+ All = 7
28
40
  }
29
41
  /**
30
42
  * enum of all token types
31
43
  */
32
- declare enum EnumToken$1 {
44
+ declare enum EnumToken {
33
45
  /**
34
46
  * comment token
35
47
  */
@@ -658,18 +670,18 @@ declare enum WalkerOptionEnum {
658
670
  */
659
671
  Stop = 2,
660
672
  /**
661
- * ignore node and process children
673
+ * ignore the current node and process its children
662
674
  */
663
675
  Children = 4,
664
676
  /**
665
- * ignore children
677
+ * ignore the current node children
666
678
  */
667
679
  IgnoreChildren = 8
668
680
  }
669
681
  /**
670
682
  * event types for the walkValues function
671
683
  */
672
- declare enum WalkerValueEvent {
684
+ declare enum WalkerEvent {
673
685
  /**
674
686
  * enter node
675
687
  */
@@ -709,11 +721,10 @@ declare enum WalkerValueEvent {
709
721
  * }
710
722
  * ```
711
723
  *
712
- * Using a filter to control the walk process:
724
+ * Using a {@link filter} function to control the ast traversal. the filter function returns a value of type {@link WalkerOption}.
713
725
  *
714
726
  * ```ts
715
- *
716
- * import {walk} from '@tbela99/css-parser';
727
+ * import {EnumToken, transform, walk, WalkerOptionEnum} from '@tbela99/css-parser';
717
728
  *
718
729
  * const css = `
719
730
  * body { color: color(from var(--base-color) display-p3 r calc(g + 0.24) calc(b + 0.15)); }
@@ -729,17 +740,28 @@ declare enum WalkerValueEvent {
729
740
  * }
730
741
  * `;
731
742
  *
732
- * for (const {node, parent, root} of walk(ast, (node) => {
743
+ * function filter(node) {
733
744
  *
734
745
  * if (node.typ == EnumToken.AstRule && node.sel.includes('html')) {
735
746
  *
736
747
  * // skip the children of the current node
737
748
  * return WalkerOptionEnum.IgnoreChildren;
738
749
  * }
739
- * })) {
750
+ * }
740
751
  *
741
- * // do something with node
752
+ * const result = await transform(css);
753
+ * for (const {node} of walk(result.ast, filter)) {
754
+ *
755
+ * console.error([EnumToken[node.typ]]);
742
756
  * }
757
+ *
758
+ * // [ "StyleSheetNodeType" ]
759
+ * // [ "RuleNodeType" ]
760
+ * // [ "DeclarationNodeType" ]
761
+ * // [ "RuleNodeType" ]
762
+ * // [ "DeclarationNodeType" ]
763
+ * // [ "RuleNodeType" ]
764
+ * // [ "DeclarationNodeType" ]
743
765
  * ```
744
766
  */
745
767
  declare function walk(node: AstNode$1, filter?: WalkerFilter | null, reverse?: boolean): Generator<WalkResult>;
@@ -754,32 +776,46 @@ declare function walk(node: AstNode$1, filter?: WalkerFilter | null, reverse?: b
754
776
  *
755
777
  * ```ts
756
778
  *
757
- * import {EnumToken, walk} from '@tbela99/css-parser';
779
+ * import {AstDeclaration, EnumToken, transform, walkValues} from '@tbela99/css-parser';
758
780
  *
759
781
  * const css = `
760
782
  * body { color: color(from var(--base-color) display-p3 r calc(g + 0.24) calc(b + 0.15)); }
761
- *
762
- * html,
763
- * body {
764
- * line-height: 1.474;
765
- * }
766
- *
767
- * .ruler {
768
- *
769
- * height: 10px;
770
- * }
771
783
  * `;
772
784
  *
773
- * for (const {value} of walkValues(result.ast.chi[0].chi[0].val, null, null,true)) {
785
+ * const result = await transform(css);
786
+ * const declaration = result.ast.chi[0].chi[0] as AstDeclaration;
787
+ *
788
+ * // walk the node attribute's tokens in reverse order
789
+ * for (const {value} of walkValues(declaration.val, null, null,true)) {
774
790
  *
775
791
  * console.error([EnumToken[value.typ], value.val]);
776
792
  * }
777
793
  *
794
+ * // [ "Color", "color" ]
795
+ * // [ "FunctionTokenType", "calc" ]
796
+ * // [ "Number", 0.15 ]
797
+ * // [ "Add", undefined ]
798
+ * // [ "Iden", "b" ]
799
+ * // [ "Whitespace", undefined ]
800
+ * // [ "FunctionTokenType", "calc" ]
801
+ * // [ "Number", 0.24 ]
802
+ * // [ "Add", undefined ]
803
+ * // [ "Iden", "g" ]
804
+ * // [ "Whitespace", undefined ]
805
+ * // [ "Iden", "r" ]
806
+ * // [ "Whitespace", undefined ]
807
+ * // [ "Iden", "display-p3" ]
808
+ * // [ "Whitespace", undefined ]
809
+ * // [ "FunctionTokenType", "var" ]
810
+ * // [ "DashedIden", "--base-color" ]
811
+ * // [ "Whitespace", undefined ]
812
+ * // [ "Iden", "from" ]
813
+ * ```
778
814
  */
779
815
  declare function walkValues(values: Token$1[], root?: AstNode$1 | Token$1 | null, filter?: WalkerValueFilter | null | {
780
- event?: WalkerValueEvent;
816
+ event?: WalkerEvent;
781
817
  fn?: WalkerValueFilter;
782
- type?: EnumToken$1 | EnumToken$1[] | ((token: Token$1) => boolean);
818
+ type?: EnumToken | EnumToken[] | ((token: Token$1) => boolean);
783
819
  }, reverse?: boolean): Generator<WalkAttributesResult>;
784
820
 
785
821
  /**
@@ -788,7 +824,7 @@ declare function walkValues(values: Token$1[], root?: AstNode$1 | Token$1 | null
788
824
  *
789
825
  * @private
790
826
  */
791
- declare function expand(ast: AstNode$1): AstNode$1;
827
+ declare function expand(ast: AstStyleSheet | AstAtRule | AstRule): AstNode$1;
792
828
 
793
829
  /**
794
830
  *
@@ -889,7 +925,7 @@ declare function parseTokens(tokens: Token$1[], options?: ParseTokenOptions): To
889
925
  */
890
926
  export declare interface LiteralToken extends BaseToken {
891
927
 
892
- typ: EnumToken$1.LiteralTokenType;
928
+ typ: EnumToken.LiteralTokenType;
893
929
  val: string;
894
930
  }
895
931
 
@@ -898,7 +934,7 @@ export declare interface LiteralToken extends BaseToken {
898
934
  */
899
935
  export declare interface ClassSelectorToken extends BaseToken {
900
936
 
901
- typ: EnumToken$1.ClassSelectorTokenType;
937
+ typ: EnumToken.ClassSelectorTokenType;
902
938
  val: string;
903
939
  }
904
940
 
@@ -907,7 +943,7 @@ export declare interface ClassSelectorToken extends BaseToken {
907
943
  */
908
944
  export declare interface InvalidClassSelectorToken extends BaseToken {
909
945
 
910
- typ: EnumToken$1.InvalidClassSelectorTokenType;
946
+ typ: EnumToken.InvalidClassSelectorTokenType;
911
947
  val: string;
912
948
  }
913
949
 
@@ -916,7 +952,7 @@ export declare interface InvalidClassSelectorToken extends BaseToken {
916
952
  */
917
953
  export declare interface UniversalSelectorToken extends BaseToken {
918
954
 
919
- typ: EnumToken$1.UniversalSelectorTokenType;
955
+ typ: EnumToken.UniversalSelectorTokenType;
920
956
  }
921
957
 
922
958
  /**
@@ -924,7 +960,7 @@ export declare interface UniversalSelectorToken extends BaseToken {
924
960
  */
925
961
  export declare interface IdentToken extends BaseToken {
926
962
 
927
- typ: EnumToken$1.IdenTokenType,
963
+ typ: EnumToken.IdenTokenType,
928
964
  val: string;
929
965
  }
930
966
 
@@ -933,7 +969,7 @@ export declare interface IdentToken extends BaseToken {
933
969
  */
934
970
  export declare interface IdentListToken extends BaseToken {
935
971
 
936
- typ: EnumToken$1.IdenListTokenType,
972
+ typ: EnumToken.IdenListTokenType,
937
973
  val: string;
938
974
  }
939
975
 
@@ -942,7 +978,7 @@ export declare interface IdentListToken extends BaseToken {
942
978
  */
943
979
  export declare interface DashedIdentToken extends BaseToken {
944
980
 
945
- typ: EnumToken$1.DashedIdenTokenType,
981
+ typ: EnumToken.DashedIdenTokenType,
946
982
  val: string;
947
983
  }
948
984
 
@@ -951,7 +987,7 @@ export declare interface DashedIdentToken extends BaseToken {
951
987
  */
952
988
  export declare interface CommaToken extends BaseToken {
953
989
 
954
- typ: EnumToken$1.CommaTokenType
990
+ typ: EnumToken.CommaTokenType
955
991
  }
956
992
 
957
993
  /**
@@ -959,7 +995,7 @@ export declare interface CommaToken extends BaseToken {
959
995
  */
960
996
  export declare interface ColonToken extends BaseToken {
961
997
 
962
- typ: EnumToken$1.ColonTokenType
998
+ typ: EnumToken.ColonTokenType
963
999
  }
964
1000
 
965
1001
  /**
@@ -967,7 +1003,7 @@ export declare interface ColonToken extends BaseToken {
967
1003
  */
968
1004
  export declare interface SemiColonToken extends BaseToken {
969
1005
 
970
- typ: EnumToken$1.SemiColonTokenType
1006
+ typ: EnumToken.SemiColonTokenType
971
1007
  }
972
1008
 
973
1009
  /**
@@ -975,7 +1011,7 @@ export declare interface SemiColonToken extends BaseToken {
975
1011
  */
976
1012
  export declare interface NestingSelectorToken extends BaseToken {
977
1013
 
978
- typ: EnumToken$1.NestingSelectorTokenType
1014
+ typ: EnumToken.NestingSelectorTokenType
979
1015
  }
980
1016
 
981
1017
  /**
@@ -983,7 +1019,7 @@ export declare interface NestingSelectorToken extends BaseToken {
983
1019
  */
984
1020
  export declare interface NumberToken extends BaseToken {
985
1021
 
986
- typ: EnumToken$1.NumberTokenType,
1022
+ typ: EnumToken.NumberTokenType,
987
1023
  val: number | FractionToken;
988
1024
  }
989
1025
 
@@ -992,7 +1028,7 @@ export declare interface NumberToken extends BaseToken {
992
1028
  */
993
1029
  export declare interface AtRuleToken extends BaseToken {
994
1030
 
995
- typ: EnumToken$1.AtRuleTokenType,
1031
+ typ: EnumToken.AtRuleTokenType,
996
1032
  val: string;
997
1033
  pre: string;
998
1034
  }
@@ -1002,7 +1038,7 @@ export declare interface AtRuleToken extends BaseToken {
1002
1038
  */
1003
1039
  export declare interface PercentageToken extends BaseToken {
1004
1040
 
1005
- typ: EnumToken$1.PercentageTokenType,
1041
+ typ: EnumToken.PercentageTokenType,
1006
1042
  val: number | FractionToken;
1007
1043
  }
1008
1044
 
@@ -1011,7 +1047,7 @@ export declare interface PercentageToken extends BaseToken {
1011
1047
  */
1012
1048
  export declare interface FlexToken extends BaseToken {
1013
1049
 
1014
- typ: EnumToken$1.FlexTokenType,
1050
+ typ: EnumToken.FlexTokenType,
1015
1051
  val: number | FractionToken;
1016
1052
  }
1017
1053
 
@@ -1020,7 +1056,7 @@ export declare interface FlexToken extends BaseToken {
1020
1056
  */
1021
1057
  export declare interface FunctionToken extends BaseToken {
1022
1058
 
1023
- typ: EnumToken$1.FunctionTokenType,
1059
+ typ: EnumToken.FunctionTokenType,
1024
1060
  val: string;
1025
1061
  chi: Token$1[];
1026
1062
  }
@@ -1030,7 +1066,7 @@ export declare interface FunctionToken extends BaseToken {
1030
1066
  */
1031
1067
  export declare interface GridTemplateFuncToken extends BaseToken {
1032
1068
 
1033
- typ: EnumToken$1.GridTemplateFuncTokenType,
1069
+ typ: EnumToken.GridTemplateFuncTokenType,
1034
1070
  val: string;
1035
1071
  chi: Token$1[];
1036
1072
  }
@@ -1040,7 +1076,7 @@ export declare interface GridTemplateFuncToken extends BaseToken {
1040
1076
  */
1041
1077
  export declare interface FunctionURLToken extends BaseToken {
1042
1078
 
1043
- typ: EnumToken$1.UrlFunctionTokenType,
1079
+ typ: EnumToken.UrlFunctionTokenType,
1044
1080
  val: 'url';
1045
1081
  chi: Array<UrlToken | CommentToken>;
1046
1082
  }
@@ -1050,7 +1086,7 @@ export declare interface FunctionURLToken extends BaseToken {
1050
1086
  */
1051
1087
  export declare interface FunctionImageToken extends BaseToken {
1052
1088
 
1053
- typ: EnumToken$1.ImageFunctionTokenType,
1089
+ typ: EnumToken.ImageFunctionTokenType,
1054
1090
  val: 'linear-gradient' | 'radial-gradient' | 'repeating-linear-gradient' | 'repeating-radial-gradient' | 'conic-gradient' | 'image' | 'image-set' | 'element' | 'cross-fade';
1055
1091
  chi: Array<UrlToken | CommentToken>;
1056
1092
  }
@@ -1060,7 +1096,7 @@ export declare interface FunctionImageToken extends BaseToken {
1060
1096
  */
1061
1097
  export declare interface TimingFunctionToken extends BaseToken {
1062
1098
 
1063
- typ: EnumToken$1.TimingFunctionTokenType;
1099
+ typ: EnumToken.TimingFunctionTokenType;
1064
1100
  val: string;
1065
1101
  chi: Token$1[];
1066
1102
  }
@@ -1070,7 +1106,7 @@ export declare interface TimingFunctionToken extends BaseToken {
1070
1106
  */
1071
1107
  export declare interface TimelineFunctionToken extends BaseToken {
1072
1108
 
1073
- typ: EnumToken$1.TimelineFunctionTokenType;
1109
+ typ: EnumToken.TimelineFunctionTokenType;
1074
1110
  val: string;
1075
1111
  chi: Token$1[];
1076
1112
  }
@@ -1080,7 +1116,7 @@ export declare interface TimelineFunctionToken extends BaseToken {
1080
1116
  */
1081
1117
  export declare interface StringToken extends BaseToken {
1082
1118
 
1083
- typ: EnumToken$1.StringTokenType;
1119
+ typ: EnumToken.StringTokenType;
1084
1120
  val: string;
1085
1121
  }
1086
1122
 
@@ -1089,7 +1125,7 @@ export declare interface StringToken extends BaseToken {
1089
1125
  */
1090
1126
  export declare interface BadStringToken extends BaseToken {
1091
1127
 
1092
- typ: EnumToken$1.BadStringTokenType;
1128
+ typ: EnumToken.BadStringTokenType;
1093
1129
  val: string;
1094
1130
  }
1095
1131
 
@@ -1098,7 +1134,7 @@ export declare interface BadStringToken extends BaseToken {
1098
1134
  */
1099
1135
  export declare interface UnclosedStringToken extends BaseToken {
1100
1136
 
1101
- typ: EnumToken$1.UnclosedStringTokenType;
1137
+ typ: EnumToken.UnclosedStringTokenType;
1102
1138
  val: string;
1103
1139
  }
1104
1140
 
@@ -1107,7 +1143,7 @@ export declare interface UnclosedStringToken extends BaseToken {
1107
1143
  */
1108
1144
  export declare interface DimensionToken extends BaseToken {
1109
1145
 
1110
- typ: EnumToken$1.DimensionTokenType;
1146
+ typ: EnumToken.DimensionTokenType;
1111
1147
  val: number | FractionToken;
1112
1148
  unit: string;
1113
1149
  }
@@ -1117,7 +1153,7 @@ export declare interface DimensionToken extends BaseToken {
1117
1153
  */
1118
1154
  export declare interface LengthToken extends BaseToken {
1119
1155
 
1120
- typ: EnumToken$1.LengthTokenType;
1156
+ typ: EnumToken.LengthTokenType;
1121
1157
  val: number | FractionToken;
1122
1158
  unit: string;
1123
1159
  }
@@ -1127,7 +1163,7 @@ export declare interface LengthToken extends BaseToken {
1127
1163
  */
1128
1164
  export declare interface AngleToken extends BaseToken {
1129
1165
 
1130
- typ: EnumToken$1.AngleTokenType;
1166
+ typ: EnumToken.AngleTokenType;
1131
1167
  val: number | FractionToken;
1132
1168
  unit: string;
1133
1169
  }
@@ -1137,7 +1173,7 @@ export declare interface AngleToken extends BaseToken {
1137
1173
  */
1138
1174
  export declare interface TimeToken extends BaseToken {
1139
1175
 
1140
- typ: EnumToken$1.TimeTokenType;
1176
+ typ: EnumToken.TimeTokenType;
1141
1177
  val: number | FractionToken;
1142
1178
  unit: 'ms' | 's';
1143
1179
  }
@@ -1147,7 +1183,7 @@ export declare interface TimeToken extends BaseToken {
1147
1183
  */
1148
1184
  export declare interface FrequencyToken extends BaseToken {
1149
1185
 
1150
- typ: EnumToken$1.FrequencyTokenType;
1186
+ typ: EnumToken.FrequencyTokenType;
1151
1187
  val: number | FractionToken;
1152
1188
  unit: 'Hz' | 'Khz';
1153
1189
  }
@@ -1157,7 +1193,7 @@ export declare interface FrequencyToken extends BaseToken {
1157
1193
  */
1158
1194
  export declare interface ResolutionToken extends BaseToken {
1159
1195
 
1160
- typ: EnumToken$1.ResolutionTokenType;
1196
+ typ: EnumToken.ResolutionTokenType;
1161
1197
  val: number | FractionToken;
1162
1198
  unit: 'dpi' | 'dpcm' | 'dppx' | 'x';
1163
1199
  }
@@ -1167,7 +1203,7 @@ export declare interface ResolutionToken extends BaseToken {
1167
1203
  */
1168
1204
  export declare interface HashToken extends BaseToken {
1169
1205
 
1170
- typ: EnumToken$1.HashTokenType;
1206
+ typ: EnumToken.HashTokenType;
1171
1207
  val: string;
1172
1208
  }
1173
1209
 
@@ -1176,7 +1212,7 @@ export declare interface HashToken extends BaseToken {
1176
1212
  */
1177
1213
  export declare interface BlockStartToken extends BaseToken {
1178
1214
 
1179
- typ: EnumToken$1.BlockStartTokenType
1215
+ typ: EnumToken.BlockStartTokenType
1180
1216
  }
1181
1217
 
1182
1218
  /**
@@ -1184,7 +1220,7 @@ export declare interface BlockStartToken extends BaseToken {
1184
1220
  */
1185
1221
  export declare interface BlockEndToken extends BaseToken {
1186
1222
 
1187
- typ: EnumToken$1.BlockEndTokenType
1223
+ typ: EnumToken.BlockEndTokenType
1188
1224
  }
1189
1225
 
1190
1226
  /**
@@ -1192,7 +1228,7 @@ export declare interface BlockEndToken extends BaseToken {
1192
1228
  */
1193
1229
  export declare interface AttrStartToken extends BaseToken {
1194
1230
 
1195
- typ: EnumToken$1.AttrStartTokenType;
1231
+ typ: EnumToken.AttrStartTokenType;
1196
1232
  chi?: Token$1[];
1197
1233
  }
1198
1234
 
@@ -1201,7 +1237,7 @@ export declare interface AttrStartToken extends BaseToken {
1201
1237
  */
1202
1238
  export declare interface AttrEndToken extends BaseToken {
1203
1239
 
1204
- typ: EnumToken$1.AttrEndTokenType
1240
+ typ: EnumToken.AttrEndTokenType
1205
1241
  }
1206
1242
 
1207
1243
  /**
@@ -1209,7 +1245,7 @@ export declare interface AttrEndToken extends BaseToken {
1209
1245
  */
1210
1246
  export declare interface ParensStartToken extends BaseToken {
1211
1247
 
1212
- typ: EnumToken$1.StartParensTokenType;
1248
+ typ: EnumToken.StartParensTokenType;
1213
1249
  }
1214
1250
 
1215
1251
  /**
@@ -1217,7 +1253,7 @@ export declare interface ParensStartToken extends BaseToken {
1217
1253
  */
1218
1254
  export declare interface ParensEndToken extends BaseToken {
1219
1255
 
1220
- typ: EnumToken$1.EndParensTokenType
1256
+ typ: EnumToken.EndParensTokenType
1221
1257
  }
1222
1258
 
1223
1259
  /**
@@ -1225,7 +1261,7 @@ export declare interface ParensEndToken extends BaseToken {
1225
1261
  */
1226
1262
  export declare interface ParensToken extends BaseToken {
1227
1263
 
1228
- typ: EnumToken$1.ParensTokenType;
1264
+ typ: EnumToken.ParensTokenType;
1229
1265
  chi: Token$1[];
1230
1266
  }
1231
1267
 
@@ -1234,7 +1270,7 @@ export declare interface ParensToken extends BaseToken {
1234
1270
  */
1235
1271
  export declare interface WhitespaceToken extends BaseToken {
1236
1272
 
1237
- typ: EnumToken$1.WhitespaceTokenType
1273
+ typ: EnumToken.WhitespaceTokenType
1238
1274
  }
1239
1275
 
1240
1276
  /**
@@ -1242,7 +1278,7 @@ export declare interface WhitespaceToken extends BaseToken {
1242
1278
  */
1243
1279
  export declare interface CommentToken extends BaseToken {
1244
1280
 
1245
- typ: EnumToken$1.CommentTokenType;
1281
+ typ: EnumToken.CommentTokenType;
1246
1282
  val: string;
1247
1283
  }
1248
1284
 
@@ -1251,7 +1287,7 @@ export declare interface CommentToken extends BaseToken {
1251
1287
  */
1252
1288
  export declare interface BadCommentToken extends BaseToken {
1253
1289
 
1254
- typ: EnumToken$1.BadCommentTokenType;
1290
+ typ: EnumToken.BadCommentTokenType;
1255
1291
  val: string;
1256
1292
  }
1257
1293
 
@@ -1260,7 +1296,7 @@ export declare interface BadCommentToken extends BaseToken {
1260
1296
  */
1261
1297
  export declare interface CDOCommentToken extends BaseToken {
1262
1298
 
1263
- typ: EnumToken$1.CDOCOMMTokenType;
1299
+ typ: EnumToken.CDOCOMMTokenType;
1264
1300
  val: string;
1265
1301
  }
1266
1302
 
@@ -1269,7 +1305,7 @@ export declare interface CDOCommentToken extends BaseToken {
1269
1305
  */
1270
1306
  export declare interface BadCDOCommentToken extends BaseToken {
1271
1307
 
1272
- typ: EnumToken$1.BadCdoTokenType;
1308
+ typ: EnumToken.BadCdoTokenType;
1273
1309
  val: string;
1274
1310
  }
1275
1311
 
@@ -1278,7 +1314,7 @@ export declare interface BadCDOCommentToken extends BaseToken {
1278
1314
  */
1279
1315
  export declare interface IncludeMatchToken extends BaseToken {
1280
1316
 
1281
- typ: EnumToken$1.IncludeMatchTokenType;
1317
+ typ: EnumToken.IncludeMatchTokenType;
1282
1318
  // val: '~=';
1283
1319
  }
1284
1320
 
@@ -1287,7 +1323,7 @@ export declare interface IncludeMatchToken extends BaseToken {
1287
1323
  */
1288
1324
  export declare interface DashMatchToken extends BaseToken {
1289
1325
 
1290
- typ: EnumToken$1.DashMatchTokenType;
1326
+ typ: EnumToken.DashMatchTokenType;
1291
1327
  // val: '|=';
1292
1328
  }
1293
1329
 
@@ -1296,7 +1332,7 @@ export declare interface DashMatchToken extends BaseToken {
1296
1332
  */
1297
1333
  export declare interface EqualMatchToken extends BaseToken {
1298
1334
 
1299
- typ: EnumToken$1.EqualMatchTokenType;
1335
+ typ: EnumToken.EqualMatchTokenType;
1300
1336
  // val: '|=';
1301
1337
  }
1302
1338
 
@@ -1305,7 +1341,7 @@ export declare interface EqualMatchToken extends BaseToken {
1305
1341
  */
1306
1342
  export declare interface StartMatchToken extends BaseToken {
1307
1343
 
1308
- typ: EnumToken$1.StartMatchTokenType;
1344
+ typ: EnumToken.StartMatchTokenType;
1309
1345
  // val: '^=';
1310
1346
  }
1311
1347
 
@@ -1314,7 +1350,7 @@ export declare interface StartMatchToken extends BaseToken {
1314
1350
  */
1315
1351
  export declare interface EndMatchToken extends BaseToken {
1316
1352
 
1317
- typ: EnumToken$1.EndMatchTokenType;
1353
+ typ: EnumToken.EndMatchTokenType;
1318
1354
  // val: '|=';
1319
1355
  }
1320
1356
 
@@ -1323,7 +1359,7 @@ export declare interface EndMatchToken extends BaseToken {
1323
1359
  */
1324
1360
  export declare interface ContainMatchToken extends BaseToken {
1325
1361
 
1326
- typ: EnumToken$1.ContainMatchTokenType;
1362
+ typ: EnumToken.ContainMatchTokenType;
1327
1363
  // val: '|=';
1328
1364
  }
1329
1365
 
@@ -1332,7 +1368,7 @@ export declare interface ContainMatchToken extends BaseToken {
1332
1368
  */
1333
1369
  export declare interface LessThanToken extends BaseToken {
1334
1370
 
1335
- typ: EnumToken$1.LtTokenType;
1371
+ typ: EnumToken.LtTokenType;
1336
1372
  }
1337
1373
 
1338
1374
  /**
@@ -1340,7 +1376,7 @@ export declare interface LessThanToken extends BaseToken {
1340
1376
  */
1341
1377
  export declare interface LessThanOrEqualToken extends BaseToken {
1342
1378
 
1343
- typ: EnumToken$1.LteTokenType;
1379
+ typ: EnumToken.LteTokenType;
1344
1380
  }
1345
1381
 
1346
1382
  /**
@@ -1348,7 +1384,7 @@ export declare interface LessThanOrEqualToken extends BaseToken {
1348
1384
  */
1349
1385
  export declare interface GreaterThanToken extends BaseToken {
1350
1386
 
1351
- typ: EnumToken$1.GtTokenType;
1387
+ typ: EnumToken.GtTokenType;
1352
1388
  }
1353
1389
 
1354
1390
  /**
@@ -1356,7 +1392,7 @@ export declare interface GreaterThanToken extends BaseToken {
1356
1392
  */
1357
1393
  export declare interface GreaterThanOrEqualToken extends BaseToken {
1358
1394
 
1359
- typ: EnumToken$1.GteTokenType;
1395
+ typ: EnumToken.GteTokenType;
1360
1396
  }
1361
1397
 
1362
1398
  /**
@@ -1364,7 +1400,7 @@ export declare interface GreaterThanOrEqualToken extends BaseToken {
1364
1400
  */
1365
1401
  export declare interface ColumnCombinatorToken extends BaseToken {
1366
1402
 
1367
- typ: EnumToken$1.ColumnCombinatorTokenType;
1403
+ typ: EnumToken.ColumnCombinatorTokenType;
1368
1404
  }
1369
1405
 
1370
1406
  /**
@@ -1372,7 +1408,7 @@ export declare interface ColumnCombinatorToken extends BaseToken {
1372
1408
  */
1373
1409
  export declare interface PseudoClassToken extends BaseToken {
1374
1410
 
1375
- typ: EnumToken$1.PseudoClassTokenType;
1411
+ typ: EnumToken.PseudoClassTokenType;
1376
1412
  val: string;
1377
1413
  }
1378
1414
 
@@ -1381,7 +1417,7 @@ export declare interface PseudoClassToken extends BaseToken {
1381
1417
  */
1382
1418
  export declare interface PseudoElementToken extends BaseToken {
1383
1419
 
1384
- typ: EnumToken$1.PseudoElementTokenType;
1420
+ typ: EnumToken.PseudoElementTokenType;
1385
1421
  val: string;
1386
1422
  }
1387
1423
 
@@ -1390,7 +1426,7 @@ export declare interface PseudoElementToken extends BaseToken {
1390
1426
  */
1391
1427
  export declare interface PseudoPageToken extends BaseToken {
1392
1428
 
1393
- typ: EnumToken$1.PseudoPageTokenType;
1429
+ typ: EnumToken.PseudoPageTokenType;
1394
1430
  val: string;
1395
1431
  }
1396
1432
 
@@ -1399,7 +1435,7 @@ export declare interface PseudoPageToken extends BaseToken {
1399
1435
  */
1400
1436
  export declare interface PseudoClassFunctionToken extends BaseToken {
1401
1437
 
1402
- typ: EnumToken$1.PseudoClassFuncTokenType;
1438
+ typ: EnumToken.PseudoClassFuncTokenType;
1403
1439
  val: string;
1404
1440
  chi: Token$1[];
1405
1441
  }
@@ -1409,7 +1445,7 @@ export declare interface PseudoClassFunctionToken extends BaseToken {
1409
1445
  */
1410
1446
  export declare interface DelimToken extends BaseToken {
1411
1447
 
1412
- typ: EnumToken$1.DelimTokenType;
1448
+ typ: EnumToken.DelimTokenType;
1413
1449
  }
1414
1450
 
1415
1451
  /**
@@ -1417,7 +1453,7 @@ export declare interface DelimToken extends BaseToken {
1417
1453
  */
1418
1454
  export declare interface BadUrlToken extends BaseToken {
1419
1455
 
1420
- typ: EnumToken$1.BadUrlTokenType,
1456
+ typ: EnumToken.BadUrlTokenType,
1421
1457
  val: string;
1422
1458
  }
1423
1459
 
@@ -1426,7 +1462,7 @@ export declare interface BadUrlToken extends BaseToken {
1426
1462
  */
1427
1463
  export declare interface UrlToken extends BaseToken {
1428
1464
 
1429
- typ: EnumToken$1.UrlTokenTokenType,
1465
+ typ: EnumToken.UrlTokenTokenType,
1430
1466
  val: string;
1431
1467
  }
1432
1468
 
@@ -1435,7 +1471,7 @@ export declare interface UrlToken extends BaseToken {
1435
1471
  */
1436
1472
  export declare interface EOFToken extends BaseToken {
1437
1473
 
1438
- typ: EnumToken$1.EOFTokenType;
1474
+ typ: EnumToken.EOFTokenType;
1439
1475
  }
1440
1476
 
1441
1477
  /**
@@ -1443,7 +1479,7 @@ export declare interface EOFToken extends BaseToken {
1443
1479
  */
1444
1480
  export declare interface ImportantToken extends BaseToken {
1445
1481
 
1446
- typ: EnumToken$1.ImportantTokenType;
1482
+ typ: EnumToken.ImportantTokenType;
1447
1483
  }
1448
1484
 
1449
1485
  /**
@@ -1451,7 +1487,7 @@ export declare interface ImportantToken extends BaseToken {
1451
1487
  */
1452
1488
  export declare interface ColorToken extends BaseToken {
1453
1489
 
1454
- typ: EnumToken$1.ColorTokenType;
1490
+ typ: EnumToken.ColorTokenType;
1455
1491
  val: string;
1456
1492
  kin: ColorType;
1457
1493
  chi?: Token$1[];
@@ -1464,7 +1500,7 @@ export declare interface ColorToken extends BaseToken {
1464
1500
  */
1465
1501
  export declare interface AttrToken extends BaseToken {
1466
1502
 
1467
- typ: EnumToken$1.AttrTokenType,
1503
+ typ: EnumToken.AttrTokenType,
1468
1504
  chi: Token$1[]
1469
1505
  }
1470
1506
 
@@ -1473,7 +1509,7 @@ export declare interface AttrToken extends BaseToken {
1473
1509
  */
1474
1510
  export declare interface InvalidAttrToken extends BaseToken {
1475
1511
 
1476
- typ: EnumToken$1.InvalidAttrTokenType,
1512
+ typ: EnumToken.InvalidAttrTokenType,
1477
1513
  chi: Token$1[]
1478
1514
  }
1479
1515
 
@@ -1482,7 +1518,7 @@ export declare interface InvalidAttrToken extends BaseToken {
1482
1518
  */
1483
1519
  export declare interface ChildCombinatorToken extends BaseToken {
1484
1520
 
1485
- typ: EnumToken$1.ChildCombinatorTokenType
1521
+ typ: EnumToken.ChildCombinatorTokenType
1486
1522
  }
1487
1523
 
1488
1524
  /**
@@ -1490,7 +1526,7 @@ export declare interface ChildCombinatorToken extends BaseToken {
1490
1526
  */
1491
1527
  export declare interface MediaFeatureToken extends BaseToken {
1492
1528
 
1493
- typ: EnumToken$1.MediaFeatureTokenType,
1529
+ typ: EnumToken.MediaFeatureTokenType,
1494
1530
  val: string;
1495
1531
  }
1496
1532
 
@@ -1499,7 +1535,7 @@ export declare interface MediaFeatureToken extends BaseToken {
1499
1535
  */
1500
1536
  export declare interface MediaFeatureNotToken extends BaseToken {
1501
1537
 
1502
- typ: EnumToken$1.MediaFeatureNotTokenType,
1538
+ typ: EnumToken.MediaFeatureNotTokenType,
1503
1539
  val: Token$1;
1504
1540
  }
1505
1541
 
@@ -1508,7 +1544,7 @@ export declare interface MediaFeatureNotToken extends BaseToken {
1508
1544
  */
1509
1545
  export declare interface MediaFeatureOnlyToken extends BaseToken {
1510
1546
 
1511
- typ: EnumToken$1.MediaFeatureOnlyTokenType,
1547
+ typ: EnumToken.MediaFeatureOnlyTokenType,
1512
1548
  val: Token$1;
1513
1549
  }
1514
1550
 
@@ -1517,7 +1553,7 @@ export declare interface MediaFeatureOnlyToken extends BaseToken {
1517
1553
  */
1518
1554
  export declare interface MediaFeatureAndToken extends BaseToken {
1519
1555
 
1520
- typ: EnumToken$1.MediaFeatureAndTokenType;
1556
+ typ: EnumToken.MediaFeatureAndTokenType;
1521
1557
  }
1522
1558
 
1523
1559
  /**
@@ -1525,7 +1561,7 @@ export declare interface MediaFeatureAndToken extends BaseToken {
1525
1561
  */
1526
1562
  export declare interface MediaFeatureOrToken extends BaseToken {
1527
1563
 
1528
- typ: EnumToken$1.MediaFeatureOrTokenType;
1564
+ typ: EnumToken.MediaFeatureOrTokenType;
1529
1565
  }
1530
1566
 
1531
1567
  /**
@@ -1533,7 +1569,7 @@ export declare interface MediaFeatureOrToken extends BaseToken {
1533
1569
  */
1534
1570
  export declare interface MediaQueryConditionToken extends BaseToken {
1535
1571
 
1536
- typ: EnumToken$1.MediaQueryConditionTokenType,
1572
+ typ: EnumToken.MediaQueryConditionTokenType,
1537
1573
  l: Token$1,
1538
1574
  op: ColonToken | GreaterThanToken | LessThanToken | GreaterThanOrEqualToken | LessThanOrEqualToken,
1539
1575
  r: Token$1[]
@@ -1544,7 +1580,7 @@ export declare interface MediaQueryConditionToken extends BaseToken {
1544
1580
  */
1545
1581
  export declare interface DescendantCombinatorToken extends BaseToken {
1546
1582
 
1547
- typ: EnumToken$1.DescendantCombinatorTokenType
1583
+ typ: EnumToken.DescendantCombinatorTokenType
1548
1584
  }
1549
1585
 
1550
1586
  /**
@@ -1552,7 +1588,7 @@ export declare interface DescendantCombinatorToken extends BaseToken {
1552
1588
  */
1553
1589
  export declare interface NextSiblingCombinatorToken extends BaseToken {
1554
1590
 
1555
- typ: EnumToken$1.NextSiblingCombinatorTokenType
1591
+ typ: EnumToken.NextSiblingCombinatorTokenType
1556
1592
  }
1557
1593
 
1558
1594
  /**
@@ -1560,7 +1596,7 @@ export declare interface NextSiblingCombinatorToken extends BaseToken {
1560
1596
  */
1561
1597
  export declare interface SubsequentCombinatorToken extends BaseToken {
1562
1598
 
1563
- typ: EnumToken$1.SubsequentSiblingCombinatorTokenType
1599
+ typ: EnumToken.SubsequentSiblingCombinatorTokenType
1564
1600
  }
1565
1601
 
1566
1602
  /**
@@ -1568,7 +1604,7 @@ export declare interface SubsequentCombinatorToken extends BaseToken {
1568
1604
  */
1569
1605
  export declare interface AddToken extends BaseToken {
1570
1606
 
1571
- typ: EnumToken$1.Add;
1607
+ typ: EnumToken.Add;
1572
1608
  }
1573
1609
 
1574
1610
  /**
@@ -1576,7 +1612,7 @@ export declare interface AddToken extends BaseToken {
1576
1612
  */
1577
1613
  export declare interface SubToken extends BaseToken {
1578
1614
 
1579
- typ: EnumToken$1.Sub;
1615
+ typ: EnumToken.Sub;
1580
1616
  }
1581
1617
 
1582
1618
  /**
@@ -1584,7 +1620,7 @@ export declare interface SubToken extends BaseToken {
1584
1620
  */
1585
1621
  export declare interface DivToken extends BaseToken {
1586
1622
 
1587
- typ: EnumToken$1.Div;
1623
+ typ: EnumToken.Div;
1588
1624
  }
1589
1625
 
1590
1626
  /**
@@ -1592,7 +1628,7 @@ export declare interface DivToken extends BaseToken {
1592
1628
  */
1593
1629
  export declare interface MulToken extends BaseToken {
1594
1630
 
1595
- typ: EnumToken$1.Mul;
1631
+ typ: EnumToken.Mul;
1596
1632
  }
1597
1633
 
1598
1634
  /**
@@ -1600,8 +1636,8 @@ export declare interface MulToken extends BaseToken {
1600
1636
  */
1601
1637
  export declare interface UnaryExpression extends BaseToken {
1602
1638
 
1603
- typ: EnumToken$1.UnaryExpressionTokenType
1604
- sign: EnumToken$1.Add | EnumToken$1.Sub;
1639
+ typ: EnumToken.UnaryExpressionTokenType
1640
+ sign: EnumToken.Add | EnumToken.Sub;
1605
1641
  val: UnaryExpressionNode;
1606
1642
  }
1607
1643
 
@@ -1610,7 +1646,7 @@ export declare interface UnaryExpression extends BaseToken {
1610
1646
  */
1611
1647
  export declare interface FractionToken extends BaseToken {
1612
1648
 
1613
- typ: EnumToken$1.FractionTokenType;
1649
+ typ: EnumToken.FractionTokenType;
1614
1650
  l: NumberToken;
1615
1651
  r: NumberToken;
1616
1652
  }
@@ -1620,8 +1656,8 @@ export declare interface FractionToken extends BaseToken {
1620
1656
  */
1621
1657
  export declare interface BinaryExpressionToken extends BaseToken {
1622
1658
 
1623
- typ: EnumToken$1.BinaryExpressionTokenType
1624
- op: EnumToken$1.Add | EnumToken$1.Sub | EnumToken$1.Div | EnumToken$1.Mul;
1659
+ typ: EnumToken.BinaryExpressionTokenType
1660
+ op: EnumToken.Add | EnumToken.Sub | EnumToken.Div | EnumToken.Mul;
1625
1661
  l: BinaryExpressionNode | Token$1;
1626
1662
  r: BinaryExpressionNode | Token$1;
1627
1663
  }
@@ -1631,7 +1667,7 @@ export declare interface BinaryExpressionToken extends BaseToken {
1631
1667
  */
1632
1668
  export declare interface MatchExpressionToken extends BaseToken {
1633
1669
 
1634
- typ: EnumToken$1.MatchExpressionTokenType
1670
+ typ: EnumToken.MatchExpressionTokenType
1635
1671
  op: EqualMatchToken | DashMatchToken | StartMatchToken | ContainMatchToken | EndMatchToken | IncludeMatchToken;
1636
1672
  l: Token$1;
1637
1673
  r: Token$1;
@@ -1643,7 +1679,7 @@ export declare interface MatchExpressionToken extends BaseToken {
1643
1679
  */
1644
1680
  export declare interface NameSpaceAttributeToken extends BaseToken {
1645
1681
 
1646
- typ: EnumToken$1.NameSpaceAttributeTokenType
1682
+ typ: EnumToken.NameSpaceAttributeTokenType
1647
1683
  l?: Token$1;
1648
1684
  r: Token$1;
1649
1685
  }
@@ -1653,7 +1689,7 @@ export declare interface NameSpaceAttributeToken extends BaseToken {
1653
1689
  */
1654
1690
  export declare interface ListToken extends BaseToken {
1655
1691
 
1656
- typ: EnumToken$1.ListToken
1692
+ typ: EnumToken.ListToken
1657
1693
  chi: Token$1[];
1658
1694
  }
1659
1695
 
@@ -1828,12 +1864,16 @@ declare const enum ValidationSyntaxGroupEnum {
1828
1864
  Selectors = "selectors",
1829
1865
  AtRules = "atRules"
1830
1866
  }
1867
+
1831
1868
  interface Position$1 {
1869
+
1832
1870
  ind: number;
1833
1871
  lin: number;
1834
1872
  col: number;
1835
1873
  }
1874
+
1836
1875
  interface ValidationToken$1 {
1876
+
1837
1877
  typ: ValidationTokenEnum;
1838
1878
  pos: Position$1;
1839
1879
  isList?: boolean;
@@ -1845,7 +1885,7 @@ interface ValidationToken$1 {
1845
1885
  occurence?: {
1846
1886
  min: number;
1847
1887
  max: number | null;
1848
- };
1888
+ }
1849
1889
  }
1850
1890
 
1851
1891
  export declare interface ValidationSyntaxNode {
@@ -1993,7 +2033,7 @@ export declare interface BaseToken {
1993
2033
  /**
1994
2034
  * token type
1995
2035
  */
1996
- typ: EnumToken$1;
2036
+ typ: EnumToken;
1997
2037
  /**
1998
2038
  * location info
1999
2039
  */
@@ -2005,7 +2045,7 @@ export declare interface BaseToken {
2005
2045
  /**
2006
2046
  * parent node
2007
2047
  */
2008
- parent?: AstRuleList | null;
2048
+ parent?: AstAtRule | astRule | AstKeyframesAtRule | AstKeyFrameRule | AstInvalidRule | AstInvalidAtRule | null;
2009
2049
  /**
2010
2050
  * @private
2011
2051
  */
@@ -2017,7 +2057,8 @@ export declare interface BaseToken {
2017
2057
  */
2018
2058
  export declare interface AstComment extends BaseToken {
2019
2059
 
2020
- typ: EnumToken$1.CommentNodeType | EnumToken$1.CDOCOMMNodeType,
2060
+ typ: EnumToken.CommentNodeType | EnumToken.CDOCOMMNodeType,
2061
+ tokens?: null;
2021
2062
  val: string;
2022
2063
  }
2023
2064
 
@@ -2027,8 +2068,9 @@ export declare interface AstComment extends BaseToken {
2027
2068
  export declare interface AstDeclaration extends BaseToken {
2028
2069
 
2029
2070
  nam: string,
2071
+ tokens?: null;
2030
2072
  val: Token$1[];
2031
- typ: EnumToken$1.DeclarationNodeType
2073
+ typ: EnumToken.DeclarationNodeType
2032
2074
  }
2033
2075
 
2034
2076
  /**
@@ -2036,9 +2078,9 @@ export declare interface AstDeclaration extends BaseToken {
2036
2078
  */
2037
2079
  export declare interface AstRule extends BaseToken {
2038
2080
 
2039
- typ: EnumToken$1.RuleNodeType;
2081
+ typ: EnumToken.RuleNodeType;
2040
2082
  sel: string;
2041
- chi: Array<AstDeclaration | AstComment | AstRuleList>;
2083
+ chi: Array<AstDeclaration | AstComment | AstRule | AstAtRule | AstInvalidRule | AstInvalidDeclaration | AstInvalidAtRule>;
2042
2084
  optimized?: OptimizedSelector | null;
2043
2085
  raw?: RawSelectorTokens | null;
2044
2086
  }
@@ -2048,7 +2090,7 @@ export declare interface AstRule extends BaseToken {
2048
2090
  */
2049
2091
  export declare interface AstInvalidRule extends BaseToken {
2050
2092
 
2051
- typ: EnumToken$1.InvalidRuleTokenType;
2093
+ typ: EnumToken.InvalidRuleTokenType;
2052
2094
  sel: string;
2053
2095
  chi: Array<AstNode$1>;
2054
2096
  }
@@ -2058,8 +2100,9 @@ export declare interface AstInvalidRule extends BaseToken {
2058
2100
  */
2059
2101
  export declare interface AstInvalidDeclaration extends BaseToken {
2060
2102
 
2061
- typ: EnumToken$1.InvalidDeclarationNodeType;
2062
- val: Array<AstNode$1>;
2103
+ typ: EnumToken.InvalidDeclarationNodeType;
2104
+ tokens?: null;
2105
+ val: Array<Token$1>;
2063
2106
  }
2064
2107
 
2065
2108
  /**
@@ -2067,7 +2110,7 @@ export declare interface AstInvalidDeclaration extends BaseToken {
2067
2110
  */
2068
2111
  export declare interface AstInvalidAtRule extends BaseToken {
2069
2112
 
2070
- typ: EnumToken$1.InvalidAtRuleTokenType;
2113
+ typ: EnumToken.InvalidAtRuleTokenType;
2071
2114
  nam: string;
2072
2115
  val: string;
2073
2116
  chi?: Array<AstNode$1>;
@@ -2078,9 +2121,9 @@ export declare interface AstInvalidAtRule extends BaseToken {
2078
2121
  */
2079
2122
  export declare interface AstKeyFrameRule extends BaseToken {
2080
2123
 
2081
- typ: EnumToken$1.KeyFramesRuleNodeType;
2124
+ typ: EnumToken.KeyFramesRuleNodeType;
2082
2125
  sel: string;
2083
- chi: Array<AstDeclaration | AstComment>;
2126
+ chi: Array<AstDeclaration | AstComment | AstInvalidDeclaration>;
2084
2127
  optimized?: OptimizedSelector;
2085
2128
  raw?: RawSelectorTokens;
2086
2129
  tokens?: Token$1[]
@@ -2120,7 +2163,7 @@ export declare interface OptimizedSelectorToken {
2120
2163
  */
2121
2164
  export declare interface AstAtRule extends BaseToken {
2122
2165
 
2123
- typ: EnumToken$1.AtRuleNodeType,
2166
+ typ: EnumToken.AtRuleNodeType,
2124
2167
  nam: string;
2125
2168
  val: string;
2126
2169
  chi?: Array<AstDeclaration | AstInvalidDeclaration | AstComment> | Array<AstRule | AstComment>
@@ -2131,7 +2174,7 @@ export declare interface AstAtRule extends BaseToken {
2131
2174
  */
2132
2175
  export declare interface AstKeyframesRule extends BaseToken {
2133
2176
 
2134
- typ: EnumToken$1.KeyFramesRuleNodeType;
2177
+ typ: EnumToken.KeyFramesRuleNodeType;
2135
2178
  sel: string;
2136
2179
  chi: Array<AstDeclaration | AstInvalidDeclaration | AstComment | AstRuleList>;
2137
2180
  optimized?: OptimizedSelector;
@@ -2143,7 +2186,7 @@ export declare interface AstKeyframesRule extends BaseToken {
2143
2186
  */
2144
2187
  export declare interface AstKeyframesAtRule extends BaseToken {
2145
2188
 
2146
- typ: EnumToken$1.KeyframesAtRuleNodeType,
2189
+ typ: EnumToken.KeyframesAtRuleNodeType,
2147
2190
  nam: string;
2148
2191
  val: string;
2149
2192
  chi: Array<AstKeyframesRule | AstComment>;
@@ -2152,18 +2195,20 @@ export declare interface AstKeyframesAtRule extends BaseToken {
2152
2195
  /**
2153
2196
  * rule list node
2154
2197
  */
2155
- export declare interface AstRuleList extends BaseToken {
2156
-
2157
- typ: EnumToken$1.StyleSheetNodeType | EnumToken$1.RuleNodeType | EnumToken$1.AtRuleNodeType | EnumToken$1.KeyframesAtRuleNodeType | EnumToken$1.KeyFramesRuleNodeType | EnumToken$1.InvalidRuleTokenType | EnumToken$1.InvalidAtRuleTokenType,
2158
- chi: Array<BaseToken | AstComment>;
2159
- }
2198
+ export declare type AstRuleList =
2199
+ AstStyleSheet
2200
+ | AstAtRule
2201
+ | AstRule
2202
+ | AstKeyframesAtRule
2203
+ | AstKeyFrameRule
2204
+ | AstInvalidRule;
2160
2205
 
2161
2206
  /**
2162
- * rule list node
2207
+ * stylesheet node
2163
2208
  */
2164
- export declare interface AstStyleSheet extends AstRuleList {
2165
- typ: EnumToken$1.StyleSheetNodeType,
2166
- chi: Array<AstRuleList | AstComment>;
2209
+ export declare interface AstStyleSheet extends BaseToken {
2210
+ typ: EnumToken.StyleSheetNodeType,
2211
+ chi: Array<AstRule | AstAtRule | astKeyframesAtRule | AstComment | AstInvalidAtRule | AstInvalidRule>;
2167
2212
  tokens?: null;
2168
2213
  }
2169
2214
 
@@ -2180,15 +2225,16 @@ export declare type AstNode$1 =
2180
2225
  | AstKeyframesAtRule
2181
2226
  | AstKeyFrameRule
2182
2227
  | AstInvalidRule
2228
+ | AstInvalidAtRule
2183
2229
  | AstInvalidDeclaration;
2184
2230
 
2185
- export declare type VisitorEventType = 'Enter' | 'Leave' ;
2186
2231
  export declare type GenericVisitorResult<T> = T | T[] | Promise<T> | Promise<T[]> | null | Promise<null>;
2187
2232
  export declare type GenericVisitorHandler<T> = ((node: T, parent?: AstNode | Token, root?: AstNode | Token) => GenericVisitorResult<T>);
2188
2233
  export declare type GenericVisitorAstNodeHandlerMap<T> =
2189
2234
  Record<string, GenericVisitorHandler<T>>
2190
2235
  | GenericVisitorHandler<T>
2191
- | { type: VisitorEventType, handler: Record<string, GenericVisitorHandler<T>> | GenericVisitorHandler<T> };
2236
+ | { type: WalkerEvent, handler: GenericVisitorHandler<T> }
2237
+ | { type: WalkerEvent, handler: Record<string, GenericVisitorHandler<T>> };
2192
2238
 
2193
2239
  export declare type ValueVisitorHandler = GenericVisitorHandler<Token>;
2194
2240
 
@@ -2402,15 +2448,12 @@ export declare interface VisitorNodeMap {
2402
2448
 
2403
2449
  KeyframesRule?: GenericVisitorAstNodeHandlerMap<AstKeyframesRule>;
2404
2450
 
2405
- KeyframesAtRule?: GenericVisitorAstNodeHandlerMap<AstKeyframesAtRule> | Record<string, GenericVisitorAstNodeHandlerMap<AstKeyframesAtRule>>;
2451
+ KeyframesAtRule?: GenericVisitorAstNodeHandlerMap<AstKeyframesAtRule>;
2406
2452
 
2407
2453
  /**
2408
2454
  * value visitor
2409
2455
  */
2410
- Value?: GenericVisitorHandler<Token> | Record<keyof EnumToken, GenericVisitorHandler<Token>> | {
2411
- type: VisitorEventType,
2412
- handler: GenericVisitorHandler<Token> | Record<keyof EnumToken, GenericVisitorHandler<Token>>
2413
- };
2456
+ Value?: GenericVisitorAstNodeHandlerMap<Token>;
2414
2457
 
2415
2458
  /**
2416
2459
  * generic token visitor. the key name is of type keyof EnumToken.
@@ -2459,23 +2502,35 @@ export declare interface VisitorNodeMap {
2459
2502
  * // body {color:#f3fff0}
2460
2503
  * ```
2461
2504
  */
2462
- [key: keyof EnumToken]: GenericVisitorHandler<Token> | {
2463
- type: VisitorEventType,
2464
- handler: GenericVisitorHandler<Token>
2465
- };
2505
+ [key: keyof typeof EnumToken]: GenericVisitorAstNodeHandlerMap<Token> | GenericVisitorAstNodeHandlerMap<AstNode>;
2466
2506
  }
2467
2507
 
2468
2508
  export declare interface PropertyListOptions {
2469
2509
 
2470
- removeDuplicateDeclarations?: boolean;
2510
+ removeDuplicateDeclarations?: boolean | string | string[];
2471
2511
  computeShorthand?: boolean;
2472
2512
  }
2473
2513
 
2514
+ /**
2515
+ * parse info
2516
+ */
2474
2517
  export declare interface ParseInfo {
2475
2518
 
2519
+ /**
2520
+ * read buffer
2521
+ */
2476
2522
  buffer: string;
2523
+ /**
2524
+ * stream
2525
+ */
2477
2526
  stream: string;
2527
+ /**
2528
+ * last token position
2529
+ */
2478
2530
  position: Position;
2531
+ /**
2532
+ * current parsing position
2533
+ */
2479
2534
  currentPosition: Position;
2480
2535
  }
2481
2536
 
@@ -2521,7 +2576,7 @@ interface ShorthandPropertyType {
2521
2576
  types: string[];
2522
2577
  multiple: boolean;
2523
2578
  separator: {
2524
- typ: keyof EnumToken$1;
2579
+ typ: keyof EnumToken;
2525
2580
  val: string
2526
2581
  };
2527
2582
  keywords: string[];
@@ -2540,13 +2595,13 @@ interface PropertyMapType {
2540
2595
  required?: boolean;
2541
2596
  multiple?: boolean;
2542
2597
  prefix?: {
2543
- typ: keyof EnumToken$1;
2598
+ typ: keyof EnumToken;
2544
2599
  val: string
2545
2600
  };
2546
2601
  previous?: string;
2547
2602
  separator?: {
2548
2603
 
2549
- typ: keyof EnumToken$1;
2604
+ typ: keyof EnumToken;
2550
2605
  };
2551
2606
  constraints?: {
2552
2607
  [key: string]: {
@@ -2564,7 +2619,7 @@ interface ShorthandMapType {
2564
2619
  default: string[];
2565
2620
  mapping?: Record<string, string>;
2566
2621
  multiple?: boolean;
2567
- separator?: { typ: keyof EnumToken$1; val?: string };
2622
+ separator?: { typ: keyof EnumToken; val?: string };
2568
2623
  set?: Record<string, string[]>
2569
2624
  properties: {
2570
2625
  [property: string]: PropertyMapType;
@@ -2572,7 +2627,7 @@ interface ShorthandMapType {
2572
2627
  }
2573
2628
 
2574
2629
  interface ShorthandProperties {
2575
- types: EnumToken$1[];
2630
+ types: EnumToken[];
2576
2631
  default: string[];
2577
2632
  keywords: string[];
2578
2633
  required?: boolean;
@@ -3006,20 +3061,22 @@ interface BorderRadius {
3006
3061
  /**
3007
3062
  * node walker option
3008
3063
  */
3009
- export declare type WalkerOption = WalkerOptionEnum | Token$1 | null;
3064
+ export declare type WalkerOption = WalkerOptionEnum | AstNode$1 | Token$1 | null;
3010
3065
  /**
3011
3066
  * returned value:
3012
3067
  * - {@link WalkerOptionEnum.Ignore}: ignore this node and its children
3013
3068
  * - {@link WalkerOptionEnum.Stop}: stop walking the tree
3014
3069
  * - {@link WalkerOptionEnum.Children}: walk the children and ignore the current node
3015
3070
  * - {@link WalkerOptionEnum.IgnoreChildren}: walk the node and ignore children
3071
+ * - {@link AstNode}:
3072
+ * - {@link Token}:
3016
3073
  */
3017
3074
  export declare type WalkerFilter = (node: AstNode$1) => WalkerOption;
3018
3075
 
3019
3076
  /**
3020
3077
  * filter nod
3021
3078
  */
3022
- export declare type WalkerValueFilter = (node: AstNode$1 | Token$1, parent?: AstNode$1 | Token$1 | null, event?: WalkerValueEvent) => WalkerOption | null;
3079
+ export declare type WalkerValueFilter = (node: AstNode$1 | Token$1, parent?: AstNode$1 | Token$1 | null, event?: WalkerEvent) => WalkerOption | null;
3023
3080
 
3024
3081
  export declare interface WalkResult {
3025
3082
  node: AstNode$1;
@@ -3115,7 +3172,7 @@ interface ValidationOptions {
3115
3172
  *
3116
3173
  * @private
3117
3174
  */
3118
- occurence?: boolean | null;
3175
+ occurrence?: boolean | null;
3119
3176
  /**
3120
3177
  * at least once
3121
3178
  *
@@ -3172,7 +3229,7 @@ interface MinifyOptions {
3172
3229
  *
3173
3230
  * ```
3174
3231
  */
3175
- removeDuplicateDeclarations?: boolean | string[];
3232
+ removeDuplicateDeclarations?: boolean | string | string[];
3176
3233
  /**
3177
3234
  * compute shorthand properties
3178
3235
  */
@@ -3246,9 +3303,10 @@ export declare interface ParserOptions extends MinifyOptions, MinifyFeatureOptio
3246
3303
  * url and file loader
3247
3304
  * @param url
3248
3305
  * @param currentUrl
3306
+ * @param asStream
3249
3307
  *
3250
3308
  */
3251
- load?: (url: string, currentUrl: string) => LoadResult;
3309
+ load?: (url: string, currentUrl: string, asStream?: boolean) => LoadResult;
3252
3310
  /**
3253
3311
  * get directory name
3254
3312
  * @param path
@@ -3274,9 +3332,9 @@ export declare interface ParserOptions extends MinifyOptions, MinifyFeatureOptio
3274
3332
 
3275
3333
  /**
3276
3334
  * node visitor
3277
- * {@link VisitorNodeMap}
3335
+ * {@link VisitorNodeMap | VisitorNodeMap[]}
3278
3336
  */
3279
- visitor?: VisitorNodeMap;
3337
+ visitor?: VisitorNodeMap | VisitorNodeMap[];
3280
3338
  /**
3281
3339
  * abort signal
3282
3340
  *
@@ -3326,6 +3384,11 @@ export declare interface MinifyFeatureOptions {
3326
3384
  */
3327
3385
  export declare interface MinifyFeature {
3328
3386
 
3387
+ /**
3388
+ * accepted tokens
3389
+ */
3390
+ accept?: Set<EnumToken>;
3391
+
3329
3392
  /**
3330
3393
  * ordering
3331
3394
  */
@@ -3487,7 +3550,17 @@ export declare interface ParseResultStats {
3487
3550
  /**
3488
3551
  * imported files stats
3489
3552
  */
3490
- imports: ParseResultStats[]
3553
+ imports: ParseResultStats[],
3554
+
3555
+ /**
3556
+ * nodes count
3557
+ */
3558
+ nodesCount: number;
3559
+
3560
+ /**
3561
+ * tokens count
3562
+ */
3563
+ tokensCount: number;
3491
3564
  }
3492
3565
 
3493
3566
  /**
@@ -3605,7 +3678,7 @@ export declare interface TokenizeResult {
3605
3678
  /**
3606
3679
  * token type hint
3607
3680
  */
3608
- hint?: EnumToken$1;
3681
+ hint?: EnumToken;
3609
3682
  /**
3610
3683
  * token start position
3611
3684
  */
@@ -3712,11 +3785,12 @@ declare function resolve(url: string, currentDirectory: string, cwd?: string): {
3712
3785
  * load file or url as stream
3713
3786
  * @param url
3714
3787
  * @param currentFile
3788
+ * @param asStream
3715
3789
  * @throws Error file not found
3716
3790
  *
3717
3791
  * @private
3718
3792
  */
3719
- declare function load(url: string, currentFile?: string): Promise<ReadableStream<Uint8Array> | string>;
3793
+ declare function load(url: string, currentFile?: string, asStream?: boolean): Promise<string | ReadableStream<Uint8Array<ArrayBufferLike>>>;
3720
3794
  /**
3721
3795
  * render the ast tree
3722
3796
  * @param data
@@ -3750,6 +3824,7 @@ declare function render(data: AstNode$1, options?: RenderOptions): RenderResult;
3750
3824
  * parse css file
3751
3825
  * @param file url or path
3752
3826
  * @param options
3827
+ * @param asStream load file as stream
3753
3828
  *
3754
3829
  * @throws Error file not found
3755
3830
  *
@@ -3768,7 +3843,7 @@ declare function render(data: AstNode$1, options?: RenderOptions): RenderResult;
3768
3843
  * console.log(result.ast);
3769
3844
  * ```
3770
3845
  */
3771
- declare function parseFile(file: string, options?: ParserOptions): Promise<ParseResult>;
3846
+ declare function parseFile(file: string, options?: ParserOptions, asStream?: boolean): Promise<ParseResult>;
3772
3847
  /**
3773
3848
  * parse css
3774
3849
  * @param stream
@@ -3817,6 +3892,7 @@ declare function parse(stream: string | ReadableStream<Uint8Array>, options?: Pa
3817
3892
  * transform css file
3818
3893
  * @param file url or path
3819
3894
  * @param options
3895
+ * @param asStream load file as stream
3820
3896
  *
3821
3897
  * @throws Error file not found
3822
3898
  *
@@ -3835,7 +3911,7 @@ declare function parse(stream: string | ReadableStream<Uint8Array>, options?: Pa
3835
3911
  * console.log(result.code);
3836
3912
  * ```
3837
3913
  */
3838
- declare function transformFile(file: string, options?: TransformOptions): Promise<TransformResult>;
3914
+ declare function transformFile(file: string, options?: TransformOptions, asStream?: boolean): Promise<TransformResult>;
3839
3915
  /**
3840
3916
  * transform css
3841
3917
  * @param css
@@ -3881,5 +3957,5 @@ declare function transformFile(file: string, options?: TransformOptions): Promis
3881
3957
  */
3882
3958
  declare function transform(css: string | ReadableStream<Uint8Array>, options?: TransformOptions): Promise<TransformResult>;
3883
3959
 
3884
- export { ColorType, EnumToken$1 as EnumToken, FeatureWalkMode, SourceMap, ValidationLevel, WalkerOptionEnum, WalkerValueEvent, convertColor, dirname, expand, isOkLabClose, load, mathFuncs, minify, okLabDistance, parse, parseDeclarations, parseFile, parseString, parseTokens, render, renderToken, resolve, transform, transformFile, transformFunctions, walk, walkValues };
3885
- export type { AddToken, AngleToken, AstAtRule, AstComment, AstDeclaration, AstInvalidAtRule, AstInvalidDeclaration, AstInvalidRule, AstKeyFrameRule, AstKeyframesAtRule, AstKeyframesRule, AstNode$1 as AstNode, AstRule, AstRuleList, AstStyleSheet, AtRuleToken, AtRuleVisitorHandler, AttrEndToken, AttrStartToken, AttrToken, Background, BackgroundAttachmentMapping, BackgroundPosition, BackgroundPositionClass, BackgroundPositionConstraints, BackgroundPositionMapping, BackgroundProperties, BackgroundRepeat, BackgroundRepeatMapping, BackgroundSize, BackgroundSizeMapping, BadCDOCommentToken, BadCommentToken, BadStringToken, BadUrlToken, BaseToken, BinaryExpressionNode, BinaryExpressionToken, BlockEndToken, BlockStartToken, Border, BorderColor, BorderColorClass, BorderProperties, BorderRadius, CDOCommentToken, ChildCombinatorToken, ClassSelectorToken, ColonToken, ColorToken, ColumnCombinatorToken, CommaToken, CommentToken, ConstraintsMapping, ContainMatchToken, Context, DashMatchToken, DashedIdentToken, DeclarationVisitorHandler, DelimToken, DescendantCombinatorToken, DimensionToken, DivToken, EOFToken, EndMatchToken, EqualMatchToken, ErrorDescription, FlexToken, Font, FontFamily, FontProperties, FontWeight, FontWeightConstraints, FontWeightMapping, FractionToken, FrequencyToken, FunctionImageToken, FunctionToken, FunctionURLToken, GenericVisitorAstNodeHandlerMap, GenericVisitorHandler, GenericVisitorResult, GreaterThanOrEqualToken, GreaterThanToken, GridTemplateFuncToken, HashToken, IdentListToken, IdentToken, ImportantToken, IncludeMatchToken, InvalidAttrToken, InvalidClassSelectorToken, LengthToken, LessThanOrEqualToken, LessThanToken, LineHeight, ListToken, LiteralToken, LoadResult, Location, Map$1 as Map, MatchExpressionToken, MatchedSelector, MediaFeatureAndToken, MediaFeatureNotToken, MediaFeatureOnlyToken, MediaFeatureOrToken, MediaFeatureToken, MediaQueryConditionToken, MinifyFeature, MinifyFeatureOptions, MinifyOptions, MulToken, NameSpaceAttributeToken, NestingSelectorToken, NextSiblingCombinatorToken, NumberToken, OptimizedSelector, OptimizedSelectorToken, Outline, OutlineProperties, ParensEndToken, ParensStartToken, ParensToken, ParseInfo, ParseResult, ParseResultStats, ParseTokenOptions, ParserOptions, PercentageToken, Position, Prefix, PropertiesConfig, PropertiesConfigProperties, PropertyListOptions, PropertyMapType, PropertySetType, PropertyType, PseudoClassFunctionToken, PseudoClassToken, PseudoElementToken, PseudoPageToken, PurpleBackgroundAttachment, RawSelectorTokens, RenderOptions, RenderResult, ResolutionToken, ResolvedPath, RuleVisitorHandler, SemiColonToken, Separator, ShorthandDef, ShorthandMapType, ShorthandProperties, ShorthandPropertyType, ShorthandType, SourceMapObject, StartMatchToken, StringToken, SubToken, SubsequentCombinatorToken, TimeToken, TimelineFunctionToken, TimingFunctionToken, Token$1 as Token, TokenizeResult, TransformOptions, TransformResult, UnaryExpression, UnaryExpressionNode, UnclosedStringToken, UniversalSelectorToken, UrlToken, ValidationConfiguration, ValidationOptions, ValidationResult, ValidationSelectorOptions, ValidationSyntaxNode, ValidationSyntaxResult, Value, ValueVisitorHandler, VariableScopeInfo, VisitorEventType, VisitorNodeMap, WalkAttributesResult, WalkResult, WalkerFilter, WalkerOption, WalkerValueFilter, WhitespaceToken };
3960
+ export { ColorType, EnumToken, FeatureWalkMode, SourceMap, ValidationLevel, WalkerEvent, WalkerOptionEnum, convertColor, dirname, expand, isOkLabClose, load, mathFuncs, minify, okLabDistance, parse, parseDeclarations, parseFile, parseString, parseTokens, render, renderToken, resolve, transform, transformFile, transformFunctions, walk, walkValues };
3961
+ export type { AddToken, AngleToken, AstAtRule, AstComment, AstDeclaration, AstInvalidAtRule, AstInvalidDeclaration, AstInvalidRule, AstKeyFrameRule, AstKeyframesAtRule, AstKeyframesRule, AstNode$1 as AstNode, AstRule, AstRuleList, AstStyleSheet, AtRuleToken, AtRuleVisitorHandler, AttrEndToken, AttrStartToken, AttrToken, Background, BackgroundAttachmentMapping, BackgroundPosition, BackgroundPositionClass, BackgroundPositionConstraints, BackgroundPositionMapping, BackgroundProperties, BackgroundRepeat, BackgroundRepeatMapping, BackgroundSize, BackgroundSizeMapping, BadCDOCommentToken, BadCommentToken, BadStringToken, BadUrlToken, BaseToken, BinaryExpressionNode, BinaryExpressionToken, BlockEndToken, BlockStartToken, Border, BorderColor, BorderColorClass, BorderProperties, BorderRadius, CDOCommentToken, ChildCombinatorToken, ClassSelectorToken, ColonToken, ColorToken, ColumnCombinatorToken, CommaToken, CommentToken, ConstraintsMapping, ContainMatchToken, Context, DashMatchToken, DashedIdentToken, DeclarationVisitorHandler, DelimToken, DescendantCombinatorToken, DimensionToken, DivToken, EOFToken, EndMatchToken, EqualMatchToken, ErrorDescription, FlexToken, Font, FontFamily, FontProperties, FontWeight, FontWeightConstraints, FontWeightMapping, FractionToken, FrequencyToken, FunctionImageToken, FunctionToken, FunctionURLToken, GenericVisitorAstNodeHandlerMap, GenericVisitorHandler, GenericVisitorResult, GreaterThanOrEqualToken, GreaterThanToken, GridTemplateFuncToken, HashToken, IdentListToken, IdentToken, ImportantToken, IncludeMatchToken, InvalidAttrToken, InvalidClassSelectorToken, LengthToken, LessThanOrEqualToken, LessThanToken, LineHeight, ListToken, LiteralToken, LoadResult, Location, Map$1 as Map, MatchExpressionToken, MatchedSelector, MediaFeatureAndToken, MediaFeatureNotToken, MediaFeatureOnlyToken, MediaFeatureOrToken, MediaFeatureToken, MediaQueryConditionToken, MinifyFeature, MinifyFeatureOptions, MinifyOptions, MulToken, NameSpaceAttributeToken, NestingSelectorToken, NextSiblingCombinatorToken, NumberToken, OptimizedSelector, OptimizedSelectorToken, Outline, OutlineProperties, ParensEndToken, ParensStartToken, ParensToken, ParseInfo, ParseResult, ParseResultStats, ParseTokenOptions, ParserOptions, PercentageToken, Position, Prefix, PropertiesConfig, PropertiesConfigProperties, PropertyListOptions, PropertyMapType, PropertySetType, PropertyType, PseudoClassFunctionToken, PseudoClassToken, PseudoElementToken, PseudoPageToken, PurpleBackgroundAttachment, RawSelectorTokens, RenderOptions, RenderResult, ResolutionToken, ResolvedPath, RuleVisitorHandler, SemiColonToken, Separator, ShorthandDef, ShorthandMapType, ShorthandProperties, ShorthandPropertyType, ShorthandType, SourceMapObject, StartMatchToken, StringToken, SubToken, SubsequentCombinatorToken, TimeToken, TimelineFunctionToken, TimingFunctionToken, Token$1 as Token, TokenizeResult, TransformOptions, TransformResult, UnaryExpression, UnaryExpressionNode, UnclosedStringToken, UniversalSelectorToken, UrlToken, ValidationConfiguration, ValidationOptions, ValidationResult, ValidationSelectorOptions, ValidationSyntaxNode, ValidationSyntaxResult, Value, ValueVisitorHandler, VariableScopeInfo, VisitorNodeMap, WalkAttributesResult, WalkResult, WalkerFilter, WalkerOption, WalkerValueFilter, WhitespaceToken };