import type * as React from 'react'; import type { AuthSsoProvider } from './sso-providers'; export interface LoginFormProps { /** Controlled email value */ email: string; onEmailChange: (value: string) => void; /** Enter-key handler on the email field (optional). */ onSubmit?: () => void; emailPlaceholder?: string; loading?: boolean; disabled?: boolean; errors?: { email?: string; }; /** Informational status under the email field (e.g. live tenant discovery). `errors.email` wins. */ emailStatus?: { message: string; variant: 'error' | 'warning' | 'success' | 'muted'; }; /** * SSO providers rendered below the email field. Always visible; gate * clickability with `ssoDisabled` / `ssoEnabledProviders`. */ ssoProviders: AuthSsoProvider[]; onSsoClick?: (provider: AuthSsoProvider) => void; /** Disables every provider button (e.g. until the email passes discovery). */ ssoDisabled?: boolean; /** When set, only these providers are clickable; the rest stay disabled. */ ssoEnabledProviders?: AuthSsoProvider[]; /** Verb prefix for provider buttons, e.g. "Continue with". Ignored for "openframe". */ ssoActionLabel?: string; className?: string; } /** * Login form (Login tab). Presentational + controlled — the consumer owns * state, validation and discovery. Single-screen design: the email field and * the SSO provider buttons are always visible; the buttons unlock once the * consumer validates the email (real-time tenant discovery). */ export declare function LoginForm({ email, onEmailChange, onSubmit, emailPlaceholder, loading, disabled, errors, emailStatus, ssoProviders, onSsoClick, ssoDisabled, ssoEnabledProviders, ssoActionLabel, className, }: LoginFormProps): React.JSX.Element; //# sourceMappingURL=login-form.d.ts.map