import { type ResponsiveValue } from "../theme/responsiveValue.js"; import type { ThemeBreakpoints } from "../theme/themeTypes.js"; type VariantStylesConstraint = Record | undefined>; export interface ResponsiveVariantProperty { themeKey: keyof TVariantStyles; /** CSS property name(s); defaults to the kebab-case form of `themeKey`. */ cssProperties?: string | readonly string[]; unit?: string; } /** A variant property is either a bare theme key (CSS name derived) or a descriptor for the exceptions. */ export type ResponsiveVariantProperties = ReadonlyArray>; interface ResponsiveVariantGroup { selector: (variantName: string) => string; properties: ResponsiveVariantProperties; } interface GenerateResponsiveVariantCssOptions { breakpoints: ThemeBreakpoints; variants: Record | undefined; groups: ReadonlyArray>; } /** * Generates `max-width` media-query CSS for a themed component's variant overrides. * Returns an empty string when no variant has breakpoint overrides. */ export declare function generateResponsiveVariantCss({ breakpoints, variants, groups, }: GenerateResponsiveVariantCssOptions): string; interface ResponsiveToken { value: ResponsiveValue; cssProperty: string; unit?: string; } /** * Generates `max-width` media-query CSS for theme tokens that are not keyed by variant name. * Returns an empty string when no token has breakpoint overrides. */ export declare function generateResponsiveTokenCss({ breakpoints, selector, tokens, }: { breakpoints: ThemeBreakpoints; selector: string; tokens: readonly ResponsiveToken[]; }): string; export {};