import type { SwappedTheme } from '@funkit/connect-core'; import type { FunkitTheme } from '../theme/toRestyleTheme'; /** * Loading-state theme for the Swapped embed: the query params sent to `/fops` * (`thirdPartyPaymentConfigs.swapped.themeConfig`) that the API bakes into the * returned `embeddedFlowUrl` (e.g. `…&iframeBackground=fbf9f4&textColor=282828`) * — the widget themes its boot spinner / skeleton straight from the URL, before * its message listener is up and any `SWAPPED_THEME` postMessage can land. * Mirrors web's `buildSwappedThemeQueryParams(resolvedTheme)`; colors are raw * hex (no `#`, they travel in a URL). * * Web also pins `height`/`width` to its dialog constants; omitted here — the * widget sizes to the WebView's real viewport. */ export declare function buildSwappedThemeQueryParamsRN(theme: FunkitTheme): Record; /** * Builds the {@link SwappedTheme} payload for the embedded Swapped flow from * the active Restyle theme — the React Native counterpart of web's * `buildSwappedTheme(ThemeVars)`. RN tokens are concrete hex / numbers (no * CSS-var indirection), so unlike web no `resolveObjectCssVars` pass is needed. * * The Swapped widget's vocabulary is richer than the Fun Variables export: it * has hover / focused / disabled slots the mobile design doesn't define. Since * connect-rn's tokens are a strict mirror of Figma (only default / pressed / * some disabled states exist), those extra slots are adapted here at the * boundary: hover ← pressed, primary/tertiary disabled ← the default fill (the * widget dims via opacity), and the widget's neutral "focused" strokes map onto * the `border/elements/{default,selected}` variables. * * Fonts are intentionally omitted: Swapped expects a slug from its hosted * webfont set, and RN font families (system/native names) don't map onto it. */ export declare function buildSwappedThemeRN(theme: FunkitTheme, isDarkMode: boolean): SwappedTheme; //# sourceMappingURL=buildSwappedTheme.d.ts.map