'use client';

import { default as React } from 'react';
export interface PhoneVerificationProps {
    phoneNumber?: string;
    userId?: string;
    organizationId?: string;
    autoSubmit?: boolean;
    codeLength?: number;
    resendDelay?: number;
    maxResendAttempts?: number;
    expirationTime?: number;
    onVerificationSuccess?: (result: {
        phoneNumber: string;
        verified: boolean;
    }) => void;
    onVerificationError?: (error: Error) => void;
    onCodeSent?: () => void;
    onCodeResent?: (attempt: number) => void;
    className?: string;
    style?: React.CSSProperties;
    disabled?: boolean;
}
export interface PhoneVerificationFormProps extends PhoneVerificationProps {
    showHeader?: boolean;
    showInstructions?: boolean;
}
export interface PhoneVerificationModalProps extends PhoneVerificationProps {
    isOpen: boolean;
    onClose: () => void;
    isDismissable?: boolean;
}
export interface PhoneVerificationCardProps extends PhoneVerificationProps {
    variant?: "flat" | "bordered" | "shadow";
    radius?: "none" | "sm" | "md" | "lg";
}
export interface PhoneVerificationStatusProps {
    status: "sent" | "verified" | "error" | "expired";
    phoneNumber: string;
    onRetry?: () => void;
    className?: string;
}
export interface ResendSMSButtonProps {
    onResend: () => void;
    disabled?: boolean;
    remainingTime?: number;
    attempt?: number;
    maxAttempts?: number;
    className?: string;
}
export declare const PhoneVerification: {
    (props: PhoneVerificationProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
export declare const PhoneVerificationForm: {
    (props: PhoneVerificationFormProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
export declare const PhoneVerificationModal: {
    (props: PhoneVerificationModalProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
export declare const PhoneVerificationCard: {
    (props: PhoneVerificationCardProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
export declare const PhoneVerificationStatus: {
    (props: PhoneVerificationStatusProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
export declare const ResendSMSButton: {
    (props: ResendSMSButtonProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
};
//# sourceMappingURL=phone-verification.d.ts.map