@revenuecat/purchases-ui-js
Version:
Web components for Paywalls. Powered by RevenueCat
28 lines (27 loc) • 1.72 kB
TypeScript
import type { BorderType, CircleShape, ColorMode, ConcaveShape, ConvexShape, PillShape, RectangleShape, ShadowType, Size, Spacing } from "../types";
import type { ColorGradientInfo, ColorGradientScheme, ColorScheme } from "../types/colors";
import type { FitMode } from "../types/media";
export type CSS = Record<string, string | number>;
export declare function css(props: CSS): string;
export declare function px(value: string | number): string;
export declare function mapColorMode<T>(colorMode: ColorMode, value: {
light: T;
dark?: T | null;
}): T;
export declare function mapSize(size: Size): string;
export declare function mapSpacing(spacing?: Spacing | null): string;
export declare function mapColorInfo(info: ColorGradientInfo): string;
export declare function mapColor(colorMode: ColorMode, scheme: ColorScheme | ColorGradientScheme | null | undefined): string;
export declare function mapOverlay(colorMode: ColorMode, colorOverlay: ColorGradientScheme | null | undefined): string;
/**
* Maps border props to inline CSS.
*
* For gradient borders, this returns CSS custom properties consumed by a
* global `::after` rule (defined in Paywall.svelte). Any element that
* receives these styles **must** also have the `rc-gradient-border` class
* for the pseudo-element to render.
*/
export declare function mapBorder(colorMode: ColorMode, border: BorderType | null | undefined): CSS;
export declare function mapBorderRadius(shape: RectangleShape | CircleShape | PillShape | ConcaveShape | ConvexShape | null | undefined): string;
export declare function mapShadow(colorMode: ColorMode, shadow: ShadowType | null | undefined): string;
export declare function mapFitMode(fit_mode: FitMode): string;