import { type ReactNode } from 'react'; import { type AlertAnnounce } from '../../components/alert'; import { type BrandMarkMotion } from './brand-mark'; export interface AuthTextLinkProps { href: string; /** Emitted as `data-action`. */ action: string; /** Default `center`. */ align?: 'center' | 'end'; children: ReactNode; } /** A quiet link in the card: "Forgot password?", "Back to sign in". */ export declare function AuthTextLink({ href, action, align, children, }: AuthTextLinkProps): import("react/jsx-runtime").JSX.Element; export interface AuthCardHeadingProps { /** The id the form is labelled by. */ id: string; title: string; description?: string; level: 1 | 2 | 3; showLogo: boolean; logoMotion: BrandMarkMotion; } /** The mark, the heading and the line under it. */ export declare function AuthCardHeading({ id, title, description, level, showLogo, logoMotion, }: AuthCardHeadingProps): import("react/jsx-runtime").JSX.Element; export interface AuthFormMessageProps { id?: string; /** Off while the error summary reads the message (see * useFormMessageAnnounce); the Alert's default otherwise. */ announce?: AlertAnnounce; children: ReactNode; } /** The server's message about the whole form, above the fields. */ export declare const AuthFormMessage: import("react").ForwardRefExoticComponent>; /** * The host's extra hidden inputs for a native post: a CSRF token, a * return address. The form's own fields keep their names, so an extra * one that asks for the same name is left out, and said so in * development. */ export declare function useExtraFields(component: string, native: boolean, fieldNames: Readonly> | undefined, hiddenFields: Readonly> | undefined): [string, string][]; /** * The address a native post may go to: a path, or an address on the * page's own origin. Anything else is refused, and the form then posts to * the current address. Wiring that cannot work as written is said so in * development, because nothing on the page shows it. */ export declare function useFormAction(component: string, native: boolean, action: string | undefined): string | undefined; /** The extra hidden inputs themselves. */ export declare function ExtraFields({ fields }: { fields: [string, string][]; }): import("react/jsx-runtime").JSX.Element; /** * Says "sending" in words while the form is busy: the button's spinner is * decorative and the button is disabled. Always mounted, because a live * region announces a change, not its first content. */ export declare function AuthFormStatus({ busy }: { busy: boolean; }): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=auth-form-parts.d.ts.map