import { AuthNavigationPort } from '../../core/navigation.js'; import { AuthNotificationPort } from '../../core/notifications.js'; export type SignUpEmailInput = { confirmPassword?: string; email: string; name?: string; password: string; }; export type SignUpOperationResult = { ok: true; requiresEmailCheck?: boolean; } | { ok: false; message: string; }; export type SignUpControllerPorts = { navigate: AuthNavigationPort; notify?: AuthNotificationPort; signUpEmail: (input: SignUpEmailInput) => Promise; }; export type SignUpControllerOptions = { afterSignUp?: string; checkEmail?: string; }; export type SignUpController = { confirmPassword: string; email: string; name: string; password: string; pending: boolean; setConfirmPassword: (value: string) => void; setEmail: (value: string) => void; setName: (value: string) => void; setPassword: (value: string) => void; submit: (input?: Partial) => Promise; }; export declare function createSignUpController(ports: SignUpControllerPorts, options?: SignUpControllerOptions): SignUpController;