/// <reference types="react" />
export declare type AuthenticationMethod = 'email' | 'phoneNumber' | 'facebook' | 'apple' | 'guest';
export interface GlobalAuthMethod {
    method: AuthenticationMethod;
    enabled: boolean;
    label: {
        en: string;
        'zh-CN': string;
        'zh-HK': string;
        ja: string;
        pt: string;
    };
}
export declare type AuthenticationSettingsMode = 'default' | 'custom';
export interface AuthMethodConfig {
    enabled: boolean;
    sort: number;
}
export interface AuthenticationMethodsValue {
    mode: AuthenticationSettingsMode;
    customMethods?: AuthenticationMethod[];
    methods?: {
        email?: AuthMethodConfig;
        phoneNumber?: AuthMethodConfig;
        facebook?: AuthMethodConfig;
        apple?: AuthMethodConfig;
        guest?: AuthMethodConfig;
    };
}
export interface AuthenticationMethodsProps {
    className?: string;
    style?: React.CSSProperties;
    value?: AuthenticationMethodsValue;
    onChange?: (value: AuthenticationMethodsValue) => void;
    /**
     * 从全局设置中获取的认证方法配置
     */
    globalMethods?: GlobalAuthMethod[];
    /**
     * 配置全局设置的链接
     */
    onConfigureGlobal?: () => void;
}
