import type { CssConfig, ParsedClass, UtilityRuleResult } from './types'; // Resolve a size/spacing token shared by the sizing utilities: fractions, // keyword map, theme spacing, off-scale numbers (0.25rem steps), and // arbitrary values. Unknown words return undefined — they previously // leaked verbatim (`w-sidebar` emitted `width: sidebar;`). export declare function resolveSizeToken(parsed: { value?: string, arbitrary: boolean }, config: { theme: { spacing: Record } }, sizeMap: Record): string | undefined; /** * A theme colour as a utility writes it: the value itself, or, for a palette * in `colorVariables`, a variable named after the colour that falls back to it. */ export declare function themeColorValue(key: string, value: string, palette: string, variables: readonly string[] | undefined): string; // Helper to apply opacity to color export declare function applyOpacity(color: string, opacity: number): string; /** * Shared helper: resolve a color value (with optional opacity) from theme config. * Handles: special keywords, direct colors, color-shade, opacity modifiers (/50, /[0.04]). * Returns the resolved CSS color string or undefined if not found. */ export declare function resolveColorValue(value: string, config: { theme: { colors: Record }, colorVariables?: string[] }, modifierArbitrary?: boolean): string | undefined; /** * Built-in utility rules * Each rule checks if it matches the parsed class and returns CSS properties */ // Display utilities export declare const displayRule: UtilityRule; // Scrollbar utilities export declare const scrollbarRule: UtilityRule; // Content property for pseudo-elements: content-none, content-empty, content-['hello'] export declare const contentPropertyRule: UtilityRule; // Container utilities (for container queries) export declare const containerRule: UtilityRule; // Flexbox utilities export declare const flexDirectionRule: UtilityRule; export declare const flexWrapRule: UtilityRule; export declare const flexRule: UtilityRule; export declare const flexGrowRule: UtilityRule; export declare const flexShrinkRule: UtilityRule; export declare const justifyContentRule: UtilityRule; export declare const alignItemsRule: UtilityRule; export declare const justifyItemsRule: UtilityRule; export declare const alignContentRule: UtilityRule; // Spacing utilities (margin, padding) export declare const spacingRule: UtilityRule; // Width and height utilities export declare const sizingRule: UtilityRule; export declare const colorRule: UtilityRule; // Placeholder color utilities (placeholder-{color}) export declare const placeholderColorRule: UtilityRule; // Typography utilities export declare const fontSizeRule: UtilityRule; export declare const fontWeightRule: UtilityRule; export declare const leadingRule: UtilityRule; export declare const textAlignRule: UtilityRule; // Border utilities export declare const borderWidthRule: UtilityRule; // Border side width utilities (border-t-0, border-r-2, border-x-4, etc.) export declare const borderSideWidthRule: UtilityRule; export declare const borderRadiusRule: UtilityRule; // Export all rules (order matters - more specific rules first) export declare const builtInRules: UtilityRule[]; export type UtilityRule = (_parsed: ParsedClass, _config: CssConfig) => Record | UtilityRuleResult | undefined;