import { SmsLoginForm } from "../../../../storefront-models/src"; /** * Initializes the SMS login form with default field values, labels, placeholders, and resets all state. * * @ai-category SMSLogin, Authentication, Validation * @ai-related setSmsLoginFormPhone, setSmsLoginFormCode, submitSmsLoginForm * * @param smsLoginForm - The SMS login form instance to initialize. * @returns void * * @example * ```typescript * import { initSmsLoginForm } from "@ikas/bp-storefront"; * initSmsLoginForm(smsLoginForm); * ``` */ export declare function initSmsLoginForm(smsLoginForm: SmsLoginForm): void; /** * Sets the phone number value on the SMS login form and re-validates if the form has been submitted during the phone entry step. * * @ai-category SMSLogin, PhoneVerification, Validation * @ai-related setSmsLoginFormCode, initSmsLoginForm, submitSmsLoginForm * * @param smsLoginForm - The SMS login form instance to update. * @param value - The phone number string to set. * @returns void * * @example * ```typescript * import { setSmsLoginFormPhone } from "@ikas/bp-storefront"; * setSmsLoginFormPhone(smsLoginForm, "+905551234567"); * ``` */ export declare function setSmsLoginFormPhone(smsLoginForm: SmsLoginForm, value: string): void; /** * Sets the OTP verification code value on the SMS login form and re-validates if the form has been submitted during the code verification step. * * @ai-category SMSLogin, PhoneVerification, Validation * @ai-related setSmsLoginFormPhone, submitSmsLoginForm, resendSmsLoginFormCode * * @param smsLoginForm - The SMS login form instance to update. * @param value - The OTP code string to set. * @returns void * * @example * ```typescript * import { setSmsLoginFormCode } from "@ikas/bp-storefront"; * setSmsLoginFormCode(smsLoginForm, "123456"); * ``` */ export declare function setSmsLoginFormCode(smsLoginForm: SmsLoginForm, value: string): void; /** * Sets the first name value on the SMS login form and re-validates if the form has been submitted during the profile completion step. * * @ai-category SMSLogin, Authentication, Validation * @ai-related setSmsLoginFormLastName, setSmsLoginFormEmail, submitSmsLoginForm * * @param smsLoginForm - The SMS login form instance to update. * @param value - The first name string to set. * @returns void * * @example * ```typescript * import { setSmsLoginFormFirstName } from "@ikas/bp-storefront"; * setSmsLoginFormFirstName(smsLoginForm, "John"); * ``` */ export declare function setSmsLoginFormFirstName(smsLoginForm: SmsLoginForm, value: string): void; /** * Sets the last name value on the SMS login form and re-validates if the form has been submitted during the profile completion step. * * @ai-category SMSLogin, Authentication, Validation * @ai-related setSmsLoginFormFirstName, setSmsLoginFormEmail, submitSmsLoginForm * * @param smsLoginForm - The SMS login form instance to update. * @param value - The last name string to set. * @returns void * * @example * ```typescript * import { setSmsLoginFormLastName } from "@ikas/bp-storefront"; * setSmsLoginFormLastName(smsLoginForm, "Doe"); * ``` */ export declare function setSmsLoginFormLastName(smsLoginForm: SmsLoginForm, value: string): void; /** * Sets the email value on the SMS login form and re-validates if the form has been submitted during the profile completion step. * * @ai-category SMSLogin, Authentication, Validation * @ai-related setSmsLoginFormFirstName, setSmsLoginFormLastName, submitSmsLoginForm * * @param smsLoginForm - The SMS login form instance to update. * @param value - The email address string to set. * @returns void * * @example * ```typescript * import { setSmsLoginFormEmail } from "@ikas/bp-storefront"; * setSmsLoginFormEmail(smsLoginForm, "john@example.com"); * ``` */ export declare function setSmsLoginFormEmail(smsLoginForm: SmsLoginForm, value: string): void; /** * Sets the marketing consent acceptance value on the SMS login form and re-validates if the form has been submitted. * * @ai-category SMSLogin, Authentication, Validation * @ai-related setSmsLoginFormIsMembershipAgreementAccepted, submitSmsLoginForm * * @param smsLoginForm - The SMS login form instance to update. * @param value - Whether the user has accepted marketing communications. * @returns void * * @example * ```typescript * import { setSmsLoginFormIsMarketingAccepted } from "@ikas/bp-storefront"; * setSmsLoginFormIsMarketingAccepted(smsLoginForm, true); * ``` */ export declare function setSmsLoginFormIsMarketingAccepted(smsLoginForm: SmsLoginForm, value: boolean): void; /** * Sets the membership agreement acceptance value on the SMS login form and re-validates if the form has been submitted. * * @ai-category SMSLogin, Authentication, Validation * @ai-related setSmsLoginFormIsMarketingAccepted, submitSmsLoginForm * * @param smsLoginForm - The SMS login form instance to update. * @param value - Whether the user has accepted the membership agreement. * @returns void * * @example * ```typescript * import { setSmsLoginFormIsMembershipAgreementAccepted } from "@ikas/bp-storefront"; * setSmsLoginFormIsMembershipAgreementAccepted(smsLoginForm, true); * ``` */ export declare function setSmsLoginFormIsMembershipAgreementAccepted(smsLoginForm: SmsLoginForm, value: boolean): void; /** * Submits the SMS login form, advancing through the multi-step flow: sends an OTP code for the phone number, verifies the OTP code, or completes profile registration depending on the current step. * * @ai-category SMSLogin, Authentication, PhoneVerification, Validation * @ai-related initSmsLoginForm, setSmsLoginFormPhone, setSmsLoginFormCode, resendSmsLoginFormCode * * @param smsLoginForm - The SMS login form instance to submit. * @returns A promise that resolves to `true` if the current step succeeded, or `false` if validation or the request failed. * * @example * ```typescript * import { submitSmsLoginForm } from "@ikas/bp-storefront"; * const success = await submitSmsLoginForm(smsLoginForm); * if (success) { * // Proceed to the next step or handle successful login * } * ``` */ export declare function submitSmsLoginForm(smsLoginForm: SmsLoginForm): Promise; /** * Resends the OTP verification code to the phone number on the SMS login form. Only operates when the form is on the "Verify Code" step. * * @ai-category SMSLogin, PhoneVerification, Authentication * @ai-related setSmsLoginFormCode, submitSmsLoginForm, setSmsLoginFormPhone * * @param smsLoginForm - The SMS login form instance for which to resend the code. * @returns A promise that resolves when the resend operation completes. Returns early if the form is not on the verification step. * * @example * ```typescript * import { resendSmsLoginFormCode } from "@ikas/bp-storefront"; * await resendSmsLoginFormCode(smsLoginForm); * ``` */ export declare function resendSmsLoginFormCode(smsLoginForm: SmsLoginForm): Promise;