import { CdrBreakpointKey } from '@rei/cdr-tokens/types/breakpoint.keys'; import { CdrColorBackgroundKey } from '@rei/cdr-tokens/types/color-background.keys'; import { CdrColorBorderKey } from '@rei/cdr-tokens/types/color-border.keys'; import { CdrProminenceKey } from '@rei/cdr-tokens/types/prominence.keys'; import { CdrRadiusKey } from '@rei/cdr-tokens/types/radius.keys'; import { CdrSpaceKey } from '@rei/cdr-tokens/types/space.keys'; import { CdrSpaceScaleKey } from '@rei/cdr-tokens/types/space-scale.keys'; import { CedarTypeScale } from '../tokens/adapters'; export type Breakpoint = CdrBreakpointKey; export type SpaceFixed = CdrSpaceKey; type SpaceScaleRangeKey = Extract; type SpaceScaleSingleKey = Exclude; type CedarSpaceScaleRangeMap = { 'range0-to1': 'scale-0--1'; 'range3-to4': 'scale-3--4'; 'range3-to5': 'scale-3--5'; }; export type SpaceFluid = `scale-${SpaceScaleSingleKey}`; export type SpaceScale = CedarSpaceScaleRangeMap[SpaceScaleRangeKey]; export type Space = SpaceFixed | SpaceFluid | SpaceScale; export type TypeScale = CedarTypeScale; export type Background = CdrColorBackgroundKey; export type BorderColor = CdrColorBorderKey; export type Radius = CdrRadiusKey; export type CdrProminenceBaseKey = Extract; export type Shadow = CdrProminenceBaseKey; type TokenNameMap = Record; export declare const surfaceBackgroundTokens: TokenNameMap; export declare const surfaceBorderColorTokens: TokenNameMap; export declare const surfaceRadiusTokens: TokenNameMap; export declare const surfaceShadowTokens: TokenNameMap; export declare const spaceFixedTokens: TokenNameMap; export declare const spaceFluidTokens: TokenNameMap; export declare const spaceScaleTokens: TokenNameMap; export declare const surfaceBackgroundOptions: Background[]; export declare const surfaceBorderColorOptions: BorderColor[]; export declare const surfaceRadiusOptions: Radius[]; export declare const surfaceShadowOptions: Shadow[]; export declare const spaceFixedOptions: SpaceFixed[]; export declare const spaceFluidOptions: SpaceFluid[]; export declare const spaceScaleOptions: SpaceScale[]; export declare const spaceOptions: readonly ("scale-0" | "scale-1" | "scale-2" | "scale-3" | "scale-4" | "scale-5" | "scale-6" | "scale-7" | CdrSpaceKey | "scale-8" | SpaceScale)[]; export type Tag = keyof HTMLElementTagNameMap; export declare const surfacePaletteOptions: readonly ["default", "sandstone", "membership-subtle", "membership-vibrant"]; export declare const primarySecondaryOptions: readonly ["primary", "secondary"]; export declare const checkboxModifierOptions: readonly ["", "hide-figure"]; export declare const errorStateOptions: readonly [false, true, "error message"]; export declare const headingLevelOptions: readonly [1, 2, 3, 4, 5, 6]; export declare const imageFitOptions: readonly ["contain", "cover", "fill", "none", "scale-down"]; export declare const imageLoadingOptions: readonly ["lazy", "eager"]; export declare const imageRadiusOptions: readonly ["soft", "softer", "round"]; export declare const inputTypeOptions: readonly ["text", "email", "number", "password", "search", "url", "tel", "date", "datetime-local"]; export declare const largeSizeOptions: readonly [undefined, "large"]; export declare const borderStyleOptions: readonly ["solid", "dotted", "dashed"]; export declare const flowOptions: readonly ["row", "column"]; export declare const queryTypeOptions: readonly ["container", "media"]; export declare const positionValueOptions: readonly ["top", "right", "bottom", "left"]; export declare const responsiveBooleanOptions: readonly [false, true, "@sm @lg"]; export declare const alignmentValueOptions: readonly ["start", "center", "end"]; export declare const layoutGapDemoOptions: readonly ["zero", "one-x", "two-x", "scale-4", "scale-3--5"]; export declare const mediaObjectContentPaddingDemoOptions: readonly ["zero", "one-x", "two-x"]; export declare const statusTypeOptions: readonly ["default", "info", "warning", "success", "error"]; export declare const buttonTagOptions: readonly ["button", "a"]; export declare const buttonTypeOptions: readonly ["button", "submit", "reset"]; export declare const buttonModifierOptions: readonly ["primary", "secondary", "sale", "dark", "link"]; export declare const containerModifierOptions: readonly ["static", "fluid"]; export declare const linkTagOptions: readonly ["a", "button"]; export declare const linkModifierOptions: readonly ["", "standalone"]; export declare const listTagOptions: readonly ["ul", "ol"]; export declare const modalRoleOptions: readonly ["dialog", "alertdialog"]; export declare const switchSizeOptions: readonly ["medium", "large"]; /** @semantic Cedar palette names for surface theming */ export type SurfacePalette = (typeof surfacePaletteOptions)[number]; export type CheckboxModifier = (typeof checkboxModifierOptions)[number]; export type HeadingLevel = (typeof headingLevelOptions)[number]; export type ImageFit = (typeof imageFitOptions)[number]; export type ImageLoading = (typeof imageLoadingOptions)[number]; export type ImageRadius = (typeof imageRadiusOptions)[number]; export type InputType = (typeof inputTypeOptions)[number]; export type PrimarySecondary = (typeof primarySecondaryOptions)[number]; export type BorderStyle = (typeof borderStyleOptions)[number]; export type ButtonTag = (typeof buttonTagOptions)[number]; export type ButtonType = (typeof buttonTypeOptions)[number]; export type ButtonModifier = (typeof buttonModifierOptions)[number]; export type ContainerModifier = (typeof containerModifierOptions)[number]; export type LinkTag = (typeof linkTagOptions)[number]; export type LinkModifier = (typeof linkModifierOptions)[number]; export type ListTag = (typeof listTagOptions)[number]; export type ModalRole = (typeof modalRoleOptions)[number]; export type Modifier = 'default' | 'primary' | 'secondary'; export type Flow = (typeof flowOptions)[number]; export type Structure = 'rows' | 'columns'; export type StatusType = (typeof statusTypeOptions)[number]; export type SwitchSize = (typeof switchSizeOptions)[number]; export type StructureValue = number | string; export type StructureArray = StructureValue[]; export type StructureObject = { [key in Breakpoint]: StructureValue | StructureArray; }; export type StructureOption = StructureValue | StructureArray | StructureObject; export type SpaceTuple = [SpaceFixed] | [SpaceFixed, SpaceFixed] | [SpaceFixed, SpaceFixed, SpaceFixed] | [SpaceFixed, SpaceFixed, SpaceFixed, SpaceFixed]; export type Spacing = SpaceFixed | SpaceTuple; export type SpaceObject = { [key in Breakpoint]: Space; }; export type SpaceOption = Space | SpaceObject; export type ResponsiveSpace = { [key in Breakpoint]?: Spacing; }; export type QueryType = (typeof queryTypeOptions)[number]; export type PositionValue = (typeof positionValueOptions)[number]; export type PositionObject = { [key in Breakpoint]: PositionValue; }; export type Position = PositionValue | PositionObject; export type AlignmentValue = (typeof alignmentValueOptions)[number]; export type AlignmentObject = { [key in Breakpoint]: AlignmentValue; }; export type Alignment = AlignmentValue | AlignmentObject; export type MediaMeasurementObject = { [key in Breakpoint]: string; }; export type MediaMeasurement = string | MediaMeasurementObject; export {};