import { type FunkitTokens } from './tokens'; /** * Projects the nested Fun Variables {@link FunkitTokens} onto the object * `@shopify/restyle`'s `createTheme` consumes — kept as a pure function (no * Restyle import) so tests can build the theme without pulling Restyle's * react-native Flow source into the node env. * * The design deliberately DOESN'T use Restyle's `colors` prop system: `colors` * is empty and components read colors straight from the Figma-shaped groups * (`theme.background.button.primary.default`, `theme.content.elements.primary`, * …) via `useTheme()`, so the theme stays a faithful mirror of Figma. Only the * non-color numeric buckets Restyle genuinely needs (`spacing`, `borderRadii`, * `borderWidths`, `sizes`, `breakpoints`) are projected onto its reserved keys. */ export declare function buildFunkitTheme(tokens: FunkitTokens): { colors: {}; background: { modal: string; secondary: string; button: { primary: import("./tokens").ButtonSurface; secondary: import("./tokens").ButtonSurface; tertiary: import("./tokens").ButtonSurface; icon: import("./tokens").ButtonSurface; destructive: import("./tokens").ButtonSurface & { disabled: string; }; }; pill: { default: string; pressed: string; disabled: string; }; overlay: string; }; content: { elements: { primary: string; secondary: string; success: string; error: string; hyperlink: string; warning: string; watermark: string; tertiary: string; ghosted: string; }; button: { primary: { default: string; loadingAlpha: string; }; secondary: { default: string; loadingAlpha: string; }; tertiary: { default: string; }; icon: { default: string; }; destructive: { default: string; loadingAlpha: string; }; }; }; border: { radius: { modal: number; element: number; elementInner: number; button: number; }; modal: { default: string; weight: number; }; elements: { default: { color: string; weight: number; }; selected: { color: string; weight: number; }; }; button: { primary: string; secondary: string; weight: number; }; }; brand: { primary: string; }; opacity: { disabled: number; }; font: import("./tokens").FunkitFontTokens; form: { field: string; fieldNext: string; divider: string; fieldInvalid: { fill: string; content: string; placeholder: string; }; errorNotice: { fill: string; content: string; }; }; spacing: { none: number; elementsHorizontal: number; modalHorizontal: number; }; borderRadii: { modal: number; element: number; elementInner: number; button: number; rounded: number; }; borderWidths: { modal: number; elementsDefault: number; elementsSelected: number; button: number; }; sizes: { topBar: number; buttonHeight: number; buttonXs: number; buttonSm: number; buttonMd: number; buttonLg: number; iconXs: number; iconSm: number; iconMd: number; iconLg: number; }; breakpoints: { phone: number; tablet: number; }; textVariants: { defaults: { fontSize: number; lineHeight: number; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; body: { fontSize: number; lineHeight: number; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; bodyMedium: { fontSize: number; lineHeight: number; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; detail: { fontSize: number; lineHeight: number; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; headerTitle: { fontSize: number; textAlign: "auto" | "left" | "right" | "center" | "justify" | undefined; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; headerSubtitle: { fontSize: number; textAlign: "auto" | "left" | "right" | "center" | "justify" | undefined; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; drawerTitle: { fontSize: number; lineHeight: number; letterSpacing: number; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; amountInput: { fontSize: number; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; amountSummary: { fontSize: number; fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; }; textWeights: { base: { fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; medium: { fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; semibold: { fontFamily: string; fontWeight: "medium" | "semibold" | "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | "ultralight" | "thin" | "light" | "regular" | "condensedBold" | "condensed" | "heavy" | "black" | undefined; }; }; }; //# sourceMappingURL=buildFunkitTheme.d.ts.map