import { FC, InputHTMLAttributes } from 'react';
import { P as PositionType, D as DirectionType, d as PricingPlanTexts, R as RadioOptionType } from '../../textTypes-DXLtO2fL.js';

type PlanFeature = {
    soon?: boolean;
    included?: boolean;
    text: string;
    hint?: string;
    hintSide?: PositionType;
};
type PricingCardProps = {
    direction?: DirectionType;
    features: PlanFeature[];
    endButton?: boolean;
    price: number;
    oldPrice?: number;
    noPrice?: boolean;
    id?: string;
    discount?: string;
    onPlanClicked?: () => void;
    currentPlan?: boolean;
    recommended?: boolean;
    size?: "small" | "medium" | "large";
    isLoadingPrice?: boolean;
    isLoadingCard?: boolean;
    texts: PricingPlanTexts;
};

type PricingPlansTypes = {
    loadingCards?: boolean;
    plans: PricingCardProps[];
    currencies: RadioOptionType[];
    billingCycles: RadioOptionType[];
    currentCycle: RadioOptionType;
    currentCurrency: RadioOptionType;
    onPlanClicked?: (e: any) => void;
    onCycleChange?: (e: any) => void;
    onCurrencyChange?: (e: any) => void;
    direction?: DirectionType;
    mainContainerProps?: InputHTMLAttributes<HTMLDivElement>;
    cardsContainerProps?: InputHTMLAttributes<HTMLDivElement>;
};
declare const PricingPlans: FC<PricingPlansTypes>;

type ComparingPlansTypes = {
    plans: {
        direction?: DirectionType;
        features: PlanFeature[];
        price?: number;
        texts?: PricingPlanTexts;
        size?: "small" | "medium" | "large";
    }[];
    currencies: RadioOptionType[];
    billingCycles: RadioOptionType[];
    currentCycle: RadioOptionType;
    currentCurrency: RadioOptionType;
    onCycleChange?: (e: any) => void;
    onCurrencyChange?: (e: any) => void;
    onPlanClicked?: (e: any) => void;
    direction?: DirectionType;
    showButtons?: boolean;
    topPosition?: number;
};
declare const ComparingPlans: FC<ComparingPlansTypes>;

type HorizontalPricingTypes = {
    plans: {
        currentPlan?: boolean;
        direction?: DirectionType;
        currency?: string;
        cycleText?: string;
        features?: PlanFeature[];
        price?: number;
        texts?: PricingPlanTexts;
        size?: "small" | "medium" | "large";
    }[];
    currencies: {
        label: string;
        value: string;
    }[];
    billingCycles: {
        label: string;
        value: string;
    }[];
    currentCycle?: RadioOptionType;
    currentCurrency?: RadioOptionType;
    onPlanClicked?: (e: any) => void;
    onCycleChange?: (e: any) => void;
    onCurrencyChange?: (e: any) => void;
    direction?: DirectionType;
};
declare const HorizontalPricing: FC<HorizontalPricingTypes>;

export { ComparingPlans, HorizontalPricing, PricingPlans };
