import { Subscription } from './base'; export type PriceKey = `${'monthly' | 'yearly'}_${string}`; export type Price = { amount: number; id: string; period: 'monthly' | 'yearly'; status: 'active' | 'inactive'; }; export type Product = { id: string; prices: Record; }; export type PlanTier = 'basic' | 'legacy_pro' | 'pro' | 'scale'; export type Plan = { eligiblePlanTiers: PlanTier[]; label: string; products: Record<'dev' | 'prod', Product[]>; tier: PlanTier; }; export type Configuration = { business_profile: { headline: string; privacy_policy_url: string; terms_of_service_url: string; }; default_return_url: string; features: { payment_method_update: { enabled: boolean; }; subscription_update: { default_allowed_updates: ('price' | 'promotion_code' | 'quantity')[]; enabled: boolean; products: { prices: string[]; product: string; }[]; }; }; metadata: { [name: string]: null | number | string; }; }; export declare enum PortalConfigKey { BuilderUpdateDev = "builder_update_dev", BuilderUpdateProd = "builder_update_prod", BuilderUpgradeDev = "builder_upgrade_dev", BuilderUpgradeProd = "builder_upgrade_prod", CLIUpdateDev = "cli_update_dev", CLIUpdateProd = "cli_update_prod", CLIUpgradeDev = "cli_upgrade_dev", CLIUpgradeProd = "cli_upgrade_prod" } export declare const products: { readonly dev: { readonly builder: { readonly essential: Product<"monthly_125" | "monthly_99" | "yearly_1200">; readonly professional: Product<"monthly_199" | "monthly_240" | "monthly_300" | "yearly_2880">; }; readonly cli: { readonly founder: Product<"monthly_125" | "yearly_1200" | "monthly_100">; readonly founder30: Product<"monthly_30">; readonly founder50: Product<"monthly_50" | "monthly_90">; readonly performance: Product<"monthly_300" | "monthly_375" | "yearly_3600">; readonly scale: Product<"monthly_1200" | "monthly_1500" | "yearly_14400">; }; readonly legacy: { readonly business: Product<"monthly_199">; readonly enterprise: Product<"monthly_700">; readonly essential: Product<"monthly_58">; readonly essentialNew: Product<"monthly_58" | "yearly_580">; readonly growth: Product<"monthly_199">; readonly professional: Product<"monthly_199" | "yearly_1990" | "yearly_2388">; readonly startup: Product<"monthly_49" | "yearly_200">; }; }; readonly prod: { readonly builder: { readonly essential: Product<"monthly_125" | "monthly_99" | "yearly_1200">; readonly professional: Product<"monthly_199" | "monthly_240" | "monthly_300" | "yearly_2880">; }; readonly cli: { readonly founder: Product<"monthly_125" | "yearly_1200" | "monthly_100">; readonly founder30: Product<"monthly_30">; readonly founder50: Product<"monthly_50" | "monthly_90">; readonly performance: Product<"monthly_300" | "monthly_375" | "yearly_3600">; readonly scale: Product<"monthly_1200" | "monthly_1500" | "yearly_14400">; }; readonly legacy: { readonly business: Product<"monthly_199">; readonly enterprise: Product<"monthly_700">; readonly essential: Product<"monthly_58">; readonly essentialNew: Product<"monthly_58" | "yearly_580">; readonly growth: Product<"monthly_199">; readonly professional: Product<"monthly_199" | "yearly_1990" | "yearly_2388">; readonly startup: Product<"monthly_49" | "yearly_200">; }; }; }; export declare const basicPlan: Plan; export declare const distributionPlan: Plan; export declare const legacyProPlan: Plan; export declare const proPlan: Plan; export declare const scalePlan: Plan; export declare const configurations: { dev: { builder: { update: Configuration; upgrade: Configuration; }; cli: { update: Configuration; upgrade: Configuration; }; }; prod: { builder: { update: Configuration; upgrade: Configuration; }; cli: { update: Configuration; upgrade: Configuration; }; }; }; export declare const hasActiveSub: (sub?: Subscription) => boolean; export declare const hasPlan: (plan: Plan, sub?: Subscription) => boolean; export declare const getPlan: (sub?: Pick) => null | Plan; export type LegacyProductKey = 'builder_essential' | 'builder_professional' | 'business' | 'cli_founder_30' | 'cli_founder_50' | 'cli_founder' | 'cli_performance' | 'cli_scale' | 'enterprise' | 'essential_new' | 'essential' | 'growth' | 'professional_annual_full_price' | 'professional_annual' | 'professional' | 'startup'; export declare const LegacyProductRecord: Record>;