import React from "react"; import * as G from "../types/global"; import type { ClassName } from "@reshaped/headless"; type Unit = number; type Literal = string; type Size = Literal | Unit; export type Margin = Unit; export type Padding = Unit; export type Inset = Unit | "auto"; export type AspectRatio = number; export type Bleed = Unit; export type Height = Size; export type Width = Size; export type MaxHeight = Size; export type MaxWidth = Size; export type MinHeight = Size; export type MinWidth = Size; export type TextAlign = "start" | "center" | "end"; export type Justify = "start" | "center" | "end" | "space-between"; export type Align = "start" | "center" | "end" | "stretch" | "baseline"; export type Radius = "small" | "medium" | "large" | "circular" | "none"; export type Position = "relative" | "absolute" | "fixed" | "sticky" | "static"; export type Border = boolean; export type BorderColor = "neutral" | "neutral-faded" | "critical" | "critical-faded" | "warning" | "warning-faded" | "positive" | "positive-faded" | "primary" | "primary-faded" | "disabled" | "brand" | "transparent"; /** * Utilities */ export type StyleResolver = (value?: G.Responsive) => { variables?: React.CSSProperties; classNames?: ClassName; }; export type Mixin = { align?: G.Responsive; justify?: G.Responsive; textAlign?: G.Responsive; radius?: G.Responsive; aspectRatio?: G.Responsive; bleed?: G.Responsive; borderColor?: G.Responsive; border?: G.Responsive; borderTop?: G.Responsive; borderBottom?: G.Responsive; borderStart?: G.Responsive; borderEnd?: G.Responsive; borderInline?: G.Responsive; borderBlock?: G.Responsive; width?: G.Responsive; height?: G.Responsive; maxWidth?: G.Responsive; maxHeight?: G.Responsive; minWidth?: G.Responsive; minHeight?: G.Responsive; position?: G.Responsive; inset?: G.Responsive; insetTop?: G.Responsive; insetBottom?: G.Responsive; insetStart?: G.Responsive; insetEnd?: G.Responsive; insetInline?: G.Responsive; insetBlock?: G.Responsive; padding?: G.Responsive; paddingTop?: G.Responsive; paddingBottom?: G.Responsive; paddingStart?: G.Responsive; paddingEnd?: G.Responsive; paddingInline?: G.Responsive; paddingBlock?: G.Responsive; margin?: G.Responsive; marginTop?: G.Responsive; marginBottom?: G.Responsive; marginStart?: G.Responsive; marginEnd?: G.Responsive; marginInline?: G.Responsive; marginBlock?: G.Responsive; }; export {};