UNPKG

@revenuecat/purchases-ui-js

Version:

Web components for Paywalls. Powered by RevenueCat

34 lines (33 loc) 2.17 kB
import type { Component } from "../types/component.js"; import type { Overrides } from "../types/overrides.js"; import type { RootPaywall } from "../types/paywall.js"; import type { PackageInfo, VariableDictionary } from "../types/variables.js"; /** * Given an instance of PaywallData, returns the id of the first package marked as `is_selected_by_default` if any. * If none are marked, returns the first package encountered in traversal order (root stack, then sticky footer). * @param paywallData * @returns the id of the first package marked as `is_selected_by_default`, otherwise the first package id, or undefined */ export declare function findSelectedPackageId({ stack, sticky_footer, }: RootPaywall): string | undefined; export declare const getActiveStateProps: <T extends Component>(selectedState: boolean, overrides?: Overrides<T>) => Partial<T>; export declare const getHoverStateProps: <T extends Component>(hoverState: boolean, overrides?: Overrides<T>) => Partial<T>; export declare const getFocusStateProps: <T extends Component>(focusState: boolean, overrides?: Overrides<T>) => Partial<T>; export declare const getErrorStateProps: <T extends Component>(errorState: boolean, overrides?: Overrides<T>) => Partial<T>; export declare const getIntroOfferStateProps: <T extends Component>(hasIntroOffer: boolean, overrides?: Overrides<T>) => Partial<T>; export declare const getPromoOfferStateProps: <T extends Component>(hasPromoOffer: boolean, overrides?: Overrides<T>) => Partial<T>; export type VisibilityContext = { selectedPackageId: string | undefined; packageInfo: PackageInfo | undefined; variables: VariableDictionary; }; /** * Evaluates visibility for an element. * * A component is considered visible unless: * - baseVisible is explicitly false, or * - an override sets `visible: false` in its properties and all of its * conditions are satisfied by the current context. * * If baseVisible is undefined or null, the component defaults to visible. */ export declare const evaluateVisibilityConditions: <T extends Component>(context: VisibilityContext, overrides?: Overrides<T>, baseVisible?: boolean | null) => boolean;