@namiml/web-sdk
Version:
Nami Web SDK makes subscriptions & in-app purchases easy, with powerful built-in paywalls and A/B testing
23 lines (22 loc) • 1.78 kB
TypeScript
import { TBaseComponent, TComponent } from "../../types/components";
import { TButtonContainer, TProductContainer, TResponsiveGrid } from "../../types/components/containers";
import { TConditionalComponent } from "../../types/components/elements";
import { TPaywallMedia } from "../../types/paywall";
import { PaywallSKU } from "../../types/sku";
import { PaywallContextProvider } from "../ContextProvider";
type ReplacementsType = {
[type: string]: any extends Array<any> ? never : any;
};
export declare function interpolate<T>(value: T, replacements: ReplacementsType): T;
export declare function getInterpolatedButtonComponents(contextProvider: PaywallContextProvider, component: TButtonContainer): TComponent[];
export declare function getSkuButtonComponents(contextProvider: PaywallContextProvider, items: PaywallSKU[], component: TProductContainer, mediaList?: {
[mediaName: string]: Pick<TPaywallMedia, 'content'>;
}): [boolean, TComponent[]][];
export declare function getRepeatingListBlocks(contextProvider: PaywallContextProvider, component: TResponsiveGrid): TComponent[][];
export declare function conditionComponentMatches(contextProvider: PaywallContextProvider, condition: TConditionalComponent): boolean;
export declare function withOverrides<T extends TBaseComponent>(contextProvider: PaywallContextProvider, { conditionAttributes, ...component }: T): T;
export declare function valueFromSmartText<T>(contextProvider: PaywallContextProvider, value: T, sku?: PaywallSKU, block?: any): T;
export declare const totalTimeSpentOnPaywall: (contextProvider: PaywallContextProvider) => number | undefined;
export declare const rgbaToHex: (rgba?: string) => string | null;
export declare const sameColors: (color1?: string, color2?: string) => boolean;
export {};