@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.54 kB
TypeScript
import { TBaseComponent, TComponent } from "../../types/components";
import { TButtonContainer, TCarouselContainer, TProductContainer, TResponsiveGrid } from "../../types/components/containers";
import { TConditionalComponent } from "../../types/components/elements";
import { TPaywallMedia } from "../../types/paywall";
import { PaywallSKU } from "../../types/sku";
type ReplacementsType = {
[type: string]: any extends Array<any> ? never : any;
};
export declare function interpolate<T>(value: T, replacements: ReplacementsType): T;
export declare function getInterpolatedButtonComponents(component: TButtonContainer): TComponent[];
export declare function getSkuButtonComponents(items: PaywallSKU[], component: TProductContainer, mediaList?: {
[mediaName: string]: Pick<TPaywallMedia, 'content'>;
}): [boolean, TComponent[]][];
export declare function getRepeatingListBlocks(component: TResponsiveGrid): TComponent[][];
export declare function getCarouselSlides(component: TCarouselContainer): TComponent[][];
export declare function conditionComponentMatches(condition: TConditionalComponent): boolean;
export declare function withOverrides<T extends TBaseComponent>({ conditionAttributes, ...component }: T): T;
export declare function valueFromSmartText<T>(value: T, sku?: PaywallSKU, block?: any): T;
export declare const totalTimeSpentOnPaywall: () => number | undefined;
export declare const rgbaToHex: (rgba?: string) => string | null;
export declare const sameColors: (color1?: string, color2?: string) => boolean;
export {};