@jesscss/css-parser 1.0.8-alpha.6 → 2.0.0-alpha.2

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 (52) hide show
  1. package/lib/advancedActionsParser.d.ts +60 -0
  2. package/lib/advancedActionsParser.js +203 -0
  3. package/lib/advancedActionsParser.js.map +1 -0
  4. package/lib/cssActionsParser.d.ts +155 -0
  5. package/lib/cssActionsParser.js +376 -0
  6. package/lib/cssActionsParser.js.map +1 -0
  7. package/lib/cssErrorMessageProvider.d.ts +14 -0
  8. package/lib/cssErrorMessageProvider.js +40 -0
  9. package/lib/cssErrorMessageProvider.js.map +1 -0
  10. package/lib/cssParser.d.ts +36 -103
  11. package/lib/cssParser.js +75 -58
  12. package/lib/cssParser.js.map +1 -0
  13. package/lib/cssTokens.d.ts +539 -5
  14. package/lib/cssTokens.js +488 -232
  15. package/lib/cssTokens.js.map +1 -0
  16. package/lib/index.d.ts +8 -16
  17. package/lib/index.js +9 -41
  18. package/lib/index.js.map +1 -0
  19. package/lib/productions.d.ts +273 -0
  20. package/lib/productions.js +3499 -0
  21. package/lib/productions.js.map +1 -0
  22. package/lib/test/ast-serialize.test.d.ts +1 -0
  23. package/lib/test/ast-serialize.test.js +157 -0
  24. package/lib/test/ast-serialize.test.js.map +1 -0
  25. package/lib/test/container.test.d.ts +1 -0
  26. package/lib/test/container.test.js +369 -0
  27. package/lib/test/container.test.js.map +1 -0
  28. package/lib/test/css-files.test.d.ts +1 -0
  29. package/lib/test/css-files.test.js +21 -0
  30. package/lib/test/css-files.test.js.map +1 -0
  31. package/lib/test/less-output.test.d.ts +1 -0
  32. package/lib/test/less-output.test.js +52 -0
  33. package/lib/test/less-output.test.js.map +1 -0
  34. package/lib/util/cst.d.ts +7 -2
  35. package/lib/util/cst.js +5 -9
  36. package/lib/util/cst.js.map +1 -0
  37. package/lib/util/index.d.ts +19 -13
  38. package/lib/util/index.js +98 -87
  39. package/lib/util/index.js.map +1 -0
  40. package/package.json +43 -20
  41. package/lib/productions/atRules.d.ts +0 -2
  42. package/lib/productions/atRules.js +0 -196
  43. package/lib/productions/blocks.d.ts +0 -2
  44. package/lib/productions/blocks.js +0 -181
  45. package/lib/productions/declarations.d.ts +0 -14
  46. package/lib/productions/declarations.js +0 -59
  47. package/lib/productions/root.d.ts +0 -2
  48. package/lib/productions/root.js +0 -49
  49. package/lib/productions/selectors.d.ts +0 -2
  50. package/lib/productions/selectors.js +0 -231
  51. package/lib/productions/values.d.ts +0 -2
  52. package/lib/productions/values.js +0 -114
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssTokens.js","sourceRoot":"","sources":["../src/cssTokens.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,16 +1,8 @@
1
- import { Lexer, ILexingResult } from 'chevrotain';
2
- import { CssParser, CstNode } from './cssParser';
3
- export * from './cssTokens';
4
- export * from './util';
5
- export * from './cssParser';
6
- export interface IParseResult<T extends CssParser = CssParser> {
7
- cst: CstNode;
8
- lexerResult: ILexingResult;
9
- parser: T;
10
- }
11
- export declare class Parser {
12
- lexer: Lexer;
13
- parser: CssParser;
14
- constructor();
15
- parse(text: string): IParseResult;
16
- }
1
+ export * from './cssTokens.js';
2
+ export * from './util/index.js';
3
+ export * from './advancedActionsParser.js';
4
+ export * from './cssActionsParser.js';
5
+ export * from './cssErrorMessageProvider.js';
6
+ export * from './cssParser.js';
7
+ export * as productions from './productions.js';
8
+ export * from './productions.js';
package/lib/index.js CHANGED
@@ -1,41 +1,9 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.Parser = void 0;
14
- const chevrotain_1 = require("chevrotain");
15
- const cssTokens_1 = require("./cssTokens");
16
- const cssParser_1 = require("./cssParser");
17
- const util_1 = require("./util");
18
- __exportStar(require("./cssTokens"), exports);
19
- __exportStar(require("./util"), exports);
20
- __exportStar(require("./cssParser"), exports);
21
- class Parser {
22
- constructor() {
23
- const { tokens, T } = util_1.createTokens(cssTokens_1.Fragments, cssTokens_1.Tokens);
24
- this.lexer = new chevrotain_1.Lexer(tokens, {
25
- ensureOptimizations: true,
26
- // Always run the validations during testing (dev flows).
27
- // And avoid validation during productive flows to reduce the Lexer's startup time.
28
- skipValidations: process.env['JESS_TESTING_MODE'] !== 'true'
29
- });
30
- this.parser = new cssParser_1.CssParser(tokens, T);
31
- }
32
- parse(text) {
33
- const parser = this.parser;
34
- const lexerResult = this.lexer.tokenize(text);
35
- const lexedTokens = lexerResult.tokens;
36
- parser.input = lexedTokens;
37
- const cst = parser.root();
38
- return { cst, lexerResult, parser };
39
- }
40
- }
41
- exports.Parser = Parser;
1
+ export * from './cssTokens.js';
2
+ export * from './util/index.js';
3
+ export * from './advancedActionsParser.js';
4
+ export * from './cssActionsParser.js';
5
+ export * from './cssErrorMessageProvider.js';
6
+ export * from './cssParser.js';
7
+ export * as productions from './productions.js';
8
+ export * from './productions.js';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gBAAgB,CAAC;AAC/B,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,273 @@
1
+ import type { CssActionsParser, TokenMap, RuleContext } from './cssActionsParser.js';
2
+ import { type IToken, type IOrAlt, type OrMethodOpts } from 'chevrotain';
3
+ import { Node, Any, Keyword, Block, Ruleset, type SimpleSelector, SelectorList, CompoundSelector, ComplexSelector, Rules, BasicSelector, List, Sequence, Call, Url, Paren, AttributeSelector, AtRule, QueryCondition, CustomDeclaration, type ComplexSelectorComponent } from '@jesscss/core';
4
+ type C = CssActionsParser;
5
+ export type Alt = Array<IOrAlt<any>> | OrMethodOpts<any>;
6
+ /** ALT which makes decisions based on context */
7
+ export type AltContext = (ctx?: RuleContext) => Alt;
8
+ export declare function stylesheet(this: C, T: TokenMap): (options?: Record<string, any>) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | undefined;
9
+ export declare function main(this: C, T: TokenMap, alt?: AltContext | Alt): (ctx?: RuleContext) => Rules | undefined;
10
+ export declare function qualifiedRule(this: C, T: TokenMap, selectorAlt?: AltContext): (ctx?: RuleContext) => Ruleset<{
11
+ selector: any;
12
+ rules: Rules;
13
+ }> | undefined;
14
+ /** * SELECTORS ***/
15
+ /** @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors */
16
+ /**
17
+ A selector with a single component, such as a single id selector
18
+ or type selector, that's not used in combination with or contains
19
+ any other selector component or combinator
20
+ .e.g `a` | `#selected` | `.foo`
21
+
22
+ @todo Define known pseudos
23
+
24
+ NOTE: A COLOR_IDENT_START token is a valid ID
25
+ */
26
+ export declare function simpleSelector(this: C, T: TokenMap, selectorAlt?: AltContext): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | undefined;
27
+ export declare function classSelector(this: C, T: TokenMap): () => BasicSelector | undefined;
28
+ export declare function idSelector(this: C, T: TokenMap, selectorAlt?: AltContext): (ctx?: RuleContext) => BasicSelector | undefined;
29
+ export declare function pseudoSelector(this: C, T: TokenMap, selectorAlt?: AltContext): (ctx?: RuleContext) => any;
30
+ export declare function nthValue(this: C, T: TokenMap, valueAlt?: AltContext): (ctx?: RuleContext) => Any<"any"> | undefined;
31
+ export declare function attributeSelector(this: C, T: TokenMap, valueAlt?: AltContext): (ctx?: RuleContext) => AttributeSelector | undefined;
32
+ export declare function compoundSelector(this: C, T: TokenMap): (ctx?: RuleContext) => SimpleSelector<any, import("core/lib/tree/node-base.js").NodeOptions> | CompoundSelector | undefined;
33
+ /**
34
+ * @param manyGate - Exposed for Less to exclude the keyword 'all' from the selector list
35
+ */
36
+ export declare function complexSelector(this: C, T: TokenMap, manyGate?: (ctx: RuleContext) => () => boolean): (ctx?: RuleContext) => ComplexSelectorComponent | ComplexSelector | undefined;
37
+ /**
38
+ A selector representing an element relative to one or more
39
+ anchor elements preceded by a combinator.
40
+ e.g. + div#topic > #reference
41
+ */
42
+ export declare function relativeSelector(this: C, T: TokenMap): (ctx?: RuleContext) => any;
43
+ export declare function forgivingSelectorList(this: C, T: TokenMap): (ctx?: RuleContext) => ComplexSelector | SelectorList | undefined;
44
+ export declare function selectorList(this: C, T: TokenMap): (ctx?: RuleContext) => ComplexSelector | SelectorList | undefined;
45
+ export declare function declarationList(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Rules | undefined;
46
+ export declare function declaration(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => CustomDeclaration | undefined;
47
+ /**
48
+ * @todo - This could be implemented with a multi-mode lexer?
49
+ * Multi-modes was the right way to do it with Antlr, but
50
+ * Chevrotain does not support recursive tokens very well.
51
+ */
52
+ export declare function customValue(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
53
+ export declare function innerCustomValue(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
54
+ /**
55
+ * Extra tokens in a custom property or general enclosed. Should include any
56
+ * and every token possible (except semis), including unknown tokens.
57
+ *
58
+ * @todo - In tests, is there a way to test that every token is captured?
59
+ */
60
+ export declare function extraTokens(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | undefined;
61
+ export declare function customBlock(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Sequence | Block | undefined;
62
+ export declare function valueList(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | List<Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>> | undefined;
63
+ export declare function valueSequence(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | Sequence | undefined;
64
+ export declare function squareValue(this: C, T: TokenMap): (ctx?: RuleContext) => Block | undefined;
65
+ export declare function value(this: C, T: TokenMap, valueAlt?: AltContext): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | List<Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>> | undefined;
66
+ export declare function string(this: C, T: TokenMap, stringAlt?: AltContext): (ctx?: RuleContext) => any;
67
+ /** Implementers can decide to throw errors or warnings or not */
68
+ /** Abstracted for easy over-ride */
69
+ export declare function mathSum(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | undefined;
70
+ export declare function mathProduct(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | undefined;
71
+ export declare function mathValue(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | undefined;
72
+ export declare function mathParen(this: C, T: TokenMap): (ctx?: RuleContext) => Paren | undefined;
73
+ export declare function knownFunctions(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
74
+ export declare function ifFunctionArgs(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | List<Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>> | undefined;
75
+ export declare function ifFunction(this: C, T: TokenMap): (ctx?: RuleContext) => Call | undefined;
76
+ export declare function varFunction(this: C, T: TokenMap): (ctx?: RuleContext) => Call | undefined;
77
+ export declare function calcFunction(this: C, T: TokenMap): (ctx?: RuleContext) => Call | undefined;
78
+ export declare function urlFunction(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Url | undefined;
79
+ /**
80
+ All At-rules according to spec are supposed to end with either
81
+ a semi-colon or a curly-braced block. Some pre-processors
82
+ (like PostCSS) allow the semi-colon to be optional, so we also
83
+ allow it and insert it if it's missing.
84
+ */
85
+ export declare function atRule(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
86
+ /**
87
+ Inner rules are mostly the same except they have a declarationList
88
+ instead of a main block within {}
89
+ */
90
+ export declare function innerAtRule(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
91
+ /**
92
+ * @see https://www.w3.org/TR/css-nesting-1/#conditionals
93
+ */
94
+ export declare function atRuleBody(this: C, T: TokenMap): (ctx?: RuleContext) => any;
95
+ type PreludeRule = unknown;
96
+ export declare function mediaAtRule(this: C, T: TokenMap, preludeRule?: PreludeRule): (ctx?: RuleContext) => AtRule | undefined;
97
+ export declare function mediaQueryList(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | List<Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>> | undefined;
98
+ /**
99
+ * @see https://w3c.github.io/csswg-drafts/mediaqueries/#mq-syntax
100
+ * Note, some of the spec had to be re-written for less ambiguity.
101
+ * However, this is a spec-compliant implementation.
102
+ */
103
+ export declare function mediaQuery(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
104
+ /** Doesn't include only, not, and, or, layer */
105
+ export declare function mediaType(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Keyword | undefined;
106
+ export declare function mediaCondition(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
107
+ export declare function mediaConditionWithoutOr(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
108
+ export declare function mediaNot(this: C, T: TokenMap): (ctx?: RuleContext) => QueryCondition | undefined;
109
+ export declare function mediaAnd(this: C, T: TokenMap): (ctx?: RuleContext) => any[] | undefined;
110
+ export declare function mediaOr(this: C, T: TokenMap): (ctx?: RuleContext) => any[] | undefined;
111
+ export declare function mediaInParens(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Paren | undefined;
112
+ /**
113
+ An identifier is a legal value, so it can be
114
+ ambiguous which side of the expression we're on
115
+ while parsing. The browser figures this out
116
+ post-parsing.
117
+ */
118
+ export declare function mediaFeature(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
119
+ /**
120
+ * @note Both comparison operators have to match.
121
+ */
122
+ export declare function mediaRange(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => Sequence | undefined;
123
+ export declare function mfNonIdentifierValue(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
124
+ export declare function mfValue(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
125
+ export declare function mfComparison(this: C, T: TokenMap): () => IToken;
126
+ /**
127
+ * @see https://www.w3.org/TR/css-page-3/
128
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/@page
129
+ */
130
+ export declare function pageAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
131
+ export declare function pageSelector(this: C, T: TokenMap): (ctx?: RuleContext) => BasicSelector | undefined;
132
+ export declare function fontFaceAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
133
+ export declare function keyframesAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
134
+ /**
135
+ * Keyframes name prelude
136
+ * CSS: Ident | String
137
+ */
138
+ export declare function keyframesName(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>;
139
+ /**
140
+ * Parses @container at-rule with optional container name and container query list.
141
+ *
142
+ * WHAT I'M TRYING TO DO:
143
+ * Disambiguate between:
144
+ * 1. `@container sidebar (width > 400px)` - `sidebar` is a container name
145
+ * 2. `@container size(min-width: 60ch)` - `size` is NOT a container name, it's a function call (FunctionStart token)
146
+ * 3. `@container (width > 400px)` - no container name, query starts directly
147
+ *
148
+ * Strategy:
149
+ * - If next token is FunctionStart (like `size(` or `style(`), it's a query function, NOT a container name
150
+ * - If next token is Ident (not a query keyword), it COULD be a container name
151
+ * - The containerQueryList production will handle parsing the actual query (whether it's a function or condition)
152
+ *
153
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@container
154
+ */
155
+ export declare function containerAtRule(this: C, T: TokenMap, preludeRule?: PreludeRule): (ctx?: RuleContext) => AtRule | undefined;
156
+ /**
157
+ * Container name: an optional identifier
158
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@container#container-name
159
+ */
160
+ export declare function containerName(this: C, T: TokenMap): (ctx?: RuleContext) => Any<"ident"> | undefined;
161
+ /**
162
+ * Container query list: comma-separated list of container queries
163
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@container#container-query
164
+ */
165
+ export declare function containerQueryList(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions> | List<Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>> | undefined;
166
+ /**
167
+ * Container query: a container condition or container query type function
168
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@container#container-query
169
+ *
170
+ * Container queries can be:
171
+ * - Regular conditions: (width > 400px)
172
+ * - Container query type functions: size(min-width: 60ch), style(--responsive: true), scroll-state(stuck: top)
173
+ */
174
+ export declare function containerQuery(this: C, T: TokenMap): (ctx?: RuleContext) => any;
175
+ /**
176
+ * Container condition: similar to media condition but without mediaType variant
177
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@container#container-query
178
+ *
179
+ * Container conditions can also have `not` followed by a container query type function,
180
+ * and `and`/`or` can be followed by `not`, which media queries don't support.
181
+ */
182
+ export declare function containerCondition(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
183
+ /**
184
+ * Container and: similar to mediaAnd but can handle `and not` and function calls
185
+ */
186
+ export declare function containerAnd(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>[] | undefined;
187
+ /**
188
+ * Container or: similar to mediaOr but can handle `or not` and function calls
189
+ */
190
+ export declare function containerOr(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>[] | undefined;
191
+ /**
192
+ * Container in parens: similar to media in parens
193
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@container#container-query
194
+ */
195
+ export declare function containerInParens(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
196
+ /**
197
+ * Container feature: similar to media feature
198
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@container#container-query
199
+ */
200
+ export declare function containerFeature(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
201
+ export declare function scopeAtRule(this: C, T: TokenMap, preludeRule?: PreludeRule): (ctx?: RuleContext) => AtRule | undefined;
202
+ export declare function documentAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
203
+ /**
204
+ * `@layer` at rule
205
+ *
206
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/@layer
207
+ *
208
+ * `@layer` =
209
+ * `@layer` <layer-name>? { <rule-list> } |
210
+ * `@layer` <layer-name># ;
211
+ *
212
+ * `<layer-name>` =
213
+ * <ident> [ '.' <ident> ]*
214
+ */
215
+ export declare function layerAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
216
+ /**
217
+ * <layer-name> = <ident> ('.' <ident>)*
218
+ */
219
+ export declare function layerName(this: C, T: TokenMap): (ctx?: RuleContext) => Sequence | undefined;
220
+ /**
221
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/@supports
222
+ */
223
+ export declare function supportsAtRule(this: C, T: TokenMap, preludeRule?: any): (ctx?: RuleContext) => AtRule | undefined;
224
+ /** spec-compliant but simplified */
225
+ export declare function supportsCondition(this: C, T: TokenMap): (ctx?: RuleContext) => any;
226
+ export declare function supportsInParens(this: C, T: TokenMap): (ctx?: RuleContext) => any;
227
+ /** Used within anyOuterValue */
228
+ export declare function functionCallLike(this: C, T: TokenMap): (ctx?: RuleContext) => Call | undefined;
229
+ export declare function functionCall(this: C, T: TokenMap, alt?: AltContext): (ctx?: RuleContext) => any;
230
+ /**
231
+ * Originally, function arguments always had commas,
232
+ * but it looks like that might be expanded in the
233
+ * future in CSS to allow for semi-colon separators.
234
+ * with the same rationale of why this was introduced
235
+ * by Less (that values can already have commas).
236
+ *
237
+ * @see https://drafts.csswg.org/css-values-4/#interpolate
238
+ *
239
+ * @todo - if a function is introduced where semi-colons
240
+ * are separators AND only 1 argument is required, then
241
+ * that will have to be specially handled.
242
+ */
243
+ export declare function functionCallArgs(this: C, T: TokenMap): (ctx?: RuleContext) => List<Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>> | undefined;
244
+ export declare function importAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
245
+ /** import prelude: url(...) or "string" */
246
+ export declare function importPrelude(this: C, T: TokenMap): (ctx?: RuleContext) => any;
247
+ /** import postlude: optional layer(), supports(), media. Returns Node[] */
248
+ export declare function importPostlude(this: C, T: TokenMap): (ctx?: RuleContext) => Node<unknown, import("core/lib/tree/node-base.js").NodeOptions>[];
249
+ /**
250
+ * @todo - add more structure for known nested at-rules.
251
+ */
252
+ export declare function nestedAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
253
+ export declare function nonNestedAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
254
+ export declare function unknownAtRule(this: C, T: TokenMap): (ctx?: RuleContext) => AtRule | undefined;
255
+ /**
256
+ @todo - add all tokens
257
+ @see - https://stackoverflow.com/questions/55594491/antlr-4-parser-match-any-token
258
+
259
+ From - https://w3c.github.io/csswg-drafts/css-syntax-3/#typedef-any-value
260
+ The <any-value> production is identical to <declaration-value>, but also allows
261
+ top-level <semicolon-token> tokens and <delim-token> tokens with a value of "!".
262
+ It represents the entirety of what valid CSS can be in any context.
263
+
264
+ Parts of the spec that allow any value should not display a warning or error
265
+ for any unknown token.
266
+ */
267
+ export declare function anyOuterValue(this: C, T: TokenMap): (ctx?: RuleContext) => any;
268
+ /**
269
+ * Same as allowable outer values, but allows
270
+ * semi-colons and curly blocks.
271
+ */
272
+ export declare function anyInnerValue(this: C, T: TokenMap): (ctx?: RuleContext) => any;
273
+ export {};