import { type LookPropertyValueKind } from "./properties.ts"; export declare const LOOK_PROPERTY_KEYWORDS: ReadonlyMap>; /** * D73 rule 187 — every kind whose string values are decided per property. D65 * rule 168 drew this line at `kind === "keyword"`, which was that wave's * boundary rather than the principle: the principle is that publishing a * surface which cannot be reached, or which swallows a false value, is worse * than not publishing it (D50 rule 92), and that principle does not know about * kinds. `metric` is absent because it answers with the sizing words when it * has no table of its own, and `color`, `background` and `image` are absent * because their diagnostics name a real vocabulary — a color keyword, a builder * — rather than a table. `text`, `filter`, `transform` and `animation` accept * arbitrary text by construction. */ export declare const LOOK_KEYWORD_DECIDED_KINDS: ReadonlySet; /** A property's own closed values, without the CSS-wide keywords every property shares. */ export declare function lookOwnKeywords(property: string): readonly string[]; /** Closed, directly writable string values worth offering for one Look property. */ export declare function lookPropertyCompletionKeywords(property: string): readonly string[]; /** Whether a velar/look builder's result can be assigned directly to a property. */ export declare function lookBuilderSupportsProperty(builder: string, property: string): boolean; /** * D67 rule 174 — how many of a property's own values a diagnostic writes out * before it names the shape of the set instead. * * The number is not load-bearing at its exact value: the published tables fall * into two clumps with nothing between them, the largest single-grammar set * holding twenty-two values and the next set up holding thirty-five. Anything * in that gap draws the same line. What matters is that a set on the far side * of it still says something an author can act on, which is what * LOOK_LARGE_KEYWORD_SETS below is for. */ export declare const LOOK_KEYWORD_LISTING_LIMIT = 24; /** * What a vocabulary too long to write out holds, in the terms the author would * look it up by. A diagnostic reads this when the value it rejected is not a * near miss of anything, so that "one of the closed keywords" is never the * whole of the answer (D67 rule 174). */ export declare const LOOK_LARGE_KEYWORD_SETS: ReadonlyMap; /** * D65 rule 169 — what a partly closable property leaves out, and why. * * Some CSS value spaces cannot be written as a set: `listStyleType` reaches * into `@counter-style` names, `fontVariant` into a combination of six feature * groups, `fontStretch` into percentages. Such a property publishes the subset it * can close and records the remainder here, so the boundary is visible in the * table and in the diagnostic instead of being waved through by a fallback * vocabulary. This is the per-value sibling of LOOK_EXCLUDED_PROPERTIES, which * records the properties left out whole. */ export declare const LOOK_PARTIAL_KEYWORD_PROPERTIES: ReadonlyMap; /** Real CSS properties deliberately outside the checked Look domain. */ export declare const LOOK_EXCLUDED_PROPERTIES: ReadonlyMap; //# sourceMappingURL=keywords.d.ts.map