import type { cva, VariantProps } from "class-variance-authority"; /** * Represents the available color shades. */ type ColorShade = "50" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | "950"; /** * Represents the base colors available in the design system. */ type BaseColor = "card" | "primary" | "secondary" | "accent" | "background" | "foreground" | "destructive" | "white" | "sidebar-accent" | "sidebar"; /** * Represents all available colors, including base colors and their shades. */ type Color = BaseColor | `${"neutral"}-${ColorShade}`; /** * Represents the available size values. */ declare const sizeMap: { readonly large: 8; readonly medium: 5; readonly none: 0; readonly small: 3; readonly xlarge: 12; readonly xsmall: 2; readonly xxlarge: 24; readonly xxsmall: 1; }; declare const numericSizes: readonly [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 16, 20, 24, 28, 32]; type Size = keyof typeof sizeMap | (typeof numericSizes)[number]; /** * Represents a value that can be responsive (i.e., different for each breakpoint). * @template T The type of the value. */ type ResponsiveValue = T | [T, T] | [T, T, T] | [T, T, T, T]; /** * Makes all properties of T responsive. */ type ResponsiveProps = { [K in keyof T]: ResponsiveValue; }; /** * Creates responsive variants based on the given cva variants and props. * Returns a string that includes all possible responsive class combinations. */ declare function createResponsiveVariants>(variants: ReturnType, props: ResponsiveProps): string; /** * Creates a responsive component based on the given cva variants. */ declare function createResponsiveComponent>(variants: T): { createResponsive: (props: ResponsiveProps>) => string; }; export { createResponsiveComponent, createResponsiveVariants }; export type { Color, ColorShade, Size, ResponsiveValue, ResponsiveProps };