export interface EnquiryFormState { step: number; loading: boolean; error: string | null; patientName: string; patientEmail: string; countryCode: string; patientPhone: string; inquirySubject: string; inquiryMessage: string; preferredContactMethod: "PHONE" | "EMAIL" | "BOTH"; submitted: boolean; } export interface EnquirySubmission { patientName: string; patientEmail: string; countryCode: string; patientPhone: string; inquirySubject: string; inquiryMessage: string; preferredContactMethod: "PHONE" | "EMAIL" | "BOTH"; } export interface EnquiryFormProps { onSuccess?: (enquiry: EnquirySubmission) => void; onError?: (error: Error) => void; } export type EnquiryFormAction = { type: "SET_STEP"; payload: number; } | { type: "SET_LOADING"; payload: boolean; } | { type: "SET_ERROR"; payload: string | null; } | { type: "SET_PATIENT_NAME"; payload: string; } | { type: "SET_PATIENT_EMAIL"; payload: string; } | { type: "SET_COUNTRY_CODE"; payload: string; } | { type: "SET_PATIENT_PHONE"; payload: string; } | { type: "SET_INQUIRY_SUBJECT"; payload: string; } | { type: "SET_INQUIRY_MESSAGE"; payload: string; } | { type: "SET_PREFERRED_CONTACT_METHOD"; payload: "PHONE" | "EMAIL" | "BOTH"; } | { type: "RESET_FORM"; };