import { P as PositionType, D as DirectionType } from '../commonTypes-C-g8nFFC.js';
export { O as OrientationType, a as RadioOptionType, R as RadiusType, S as SeverityType } from '../commonTypes-C-g8nFFC.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 PricingPlanTexts = {
    title?: string;
    subtitle?: string;
    buttonText?: string;
    cycleText?: string;
    currencyText?: string;
    soon?: string;
    recommended?: string;
    priceless?: string;
};
type ThirdPartyAuthTextsTypes = {
    continueWithGoogle?: string;
    continueWithTwitter?: string;
    continueWithApple?: string;
    continueWithMicrosoft?: string;
    continueWithGithub?: string;
    continueWithEmail?: string;
    continueWithPhone?: string;
    continueWithNafath?: string;
    continueWithMetamask?: string;
};
type BaseInputType = {
    label?: string;
    placeholder?: string;
};
type ValidationTexts = {
    required?: string;
    invalid?: string;
};
type TextInputType = ValidationTexts & {
    label?: string;
    placeholder?: string;
};
type PasswordInputType = BaseInputType & {
    required?: string;
    tooShort?: string;
};
type UsernameInputType = TextInputType & {
    tooShort?: string;
    tooLong?: string;
};
type ConfirmInputType = BaseInputType & {
    required?: string;
    dontMatch?: string;
};
type LoginFormTextsTypes = ThirdPartyAuthTextsTypes & {
    email?: TextInputType;
    username?: UsernameInputType;
    phone?: TextInputType;
    password?: PasswordInputType;
    forgotPassword?: string;
    newUserText?: string;
    createAccount?: string;
    loginText?: string;
};
type RegisterFormTextsTypes = ThirdPartyAuthTextsTypes & {
    fullName?: BaseInputType;
    email?: TextInputType;
    username?: UsernameInputType;
    password?: PasswordInputType;
    confirm?: ConfirmInputType;
    userReference?: BaseInputType;
    subscribeToNewsletter?: string;
    termsRequired?: string;
    refCode?: string;
    refCodePlaceholder?: string;
    existingUserText?: string;
    termsText?: string;
    iAcceptText?: string;
    registerText?: string;
    loginText?: string;
};
type ResetPasswordTextsTypes = {
    email?: TextInputType;
    emailSentText?: string;
    registerText?: string;
    resetPassword?: string;
    dontHaveAccount?: string;
    headTitle?: string;
    headDescription?: string;
};
type NewPasswordTextsTypes = {
    password?: PasswordInputType;
    confirm?: ConfirmInputType;
    updatePassword?: string;
    passwordChanged?: string;
    dontHaveAccount?: string;
    registerText?: string;
};

export { type BaseInputType, DirectionType, type LoginFormTextsTypes, type NewPasswordTextsTypes, type PlanFeature, PositionType, type PricingCardProps, type PricingPlanTexts, type RegisterFormTextsTypes, type ResetPasswordTextsTypes, type TextInputType, type ThirdPartyAuthTextsTypes };
