import { NewsletterSubscriptionForm } from "../../../../storefront-models/src"; /** * Initializes the newsletter subscription form with default field values and resets submission state. * * @ai-category Validation, Newsletter, Form * @ai-related setNewsletterSubscriptionFormEmail, setNewsletterSubscriptionFormIsMarketingAccepted, submitNewsletterSubscriptionForm * * @param newsletterSubscriptionForm - The newsletter subscription form object to initialize * @returns void * * @example * ```typescript * import { initNewsletterSubscriptionForm } from "@ikas/bp-storefront"; * initNewsletterSubscriptionForm(newsletterSubscriptionForm); * ``` */ export declare function initNewsletterSubscriptionForm(newsletterSubscriptionForm: NewsletterSubscriptionForm): void; /** * Sets the email field value on the newsletter subscription form and re-validates if the form has been submitted. * * @ai-category Validation, Newsletter, Form * @ai-related initNewsletterSubscriptionForm, setNewsletterSubscriptionFormIsMarketingAccepted, submitNewsletterSubscriptionForm * * @param newsletterSubscriptionForm - The newsletter subscription form object to update * @param value - The email address string to set * @returns void * * @example * ```typescript * import { setNewsletterSubscriptionFormEmail } from "@ikas/bp-storefront"; * setNewsletterSubscriptionFormEmail(newsletterSubscriptionForm, "user@example.com"); * ``` */ export declare function setNewsletterSubscriptionFormEmail(newsletterSubscriptionForm: NewsletterSubscriptionForm, value: string): void; /** * Sets the marketing acceptance checkbox value on the newsletter subscription form and re-validates if the form has been submitted. * * @ai-category Validation, Newsletter, Form * @ai-related initNewsletterSubscriptionForm, setNewsletterSubscriptionFormEmail, submitNewsletterSubscriptionForm * * @param newsletterSubscriptionForm - The newsletter subscription form object to update * @param value - Whether the user has accepted marketing communications * @returns void * * @example * ```typescript * import { setNewsletterSubscriptionFormIsMarketingAccepted } from "@ikas/bp-storefront"; * setNewsletterSubscriptionFormIsMarketingAccepted(newsletterSubscriptionForm, true); * ``` */ export declare function setNewsletterSubscriptionFormIsMarketingAccepted(newsletterSubscriptionForm: NewsletterSubscriptionForm, value: boolean): void; /** * Validates and submits the newsletter subscription form, creating an email subscription via the API. * * @ai-category Validation, Newsletter, Form * @ai-related initNewsletterSubscriptionForm, setNewsletterSubscriptionFormEmail, setNewsletterSubscriptionFormIsMarketingAccepted * * @param newsletterSubscriptionForm - The newsletter subscription form object to validate and submit * @returns A promise that resolves to true if the subscription was successful, or false if validation failed or the API returned an error * * @example * ```typescript * import { submitNewsletterSubscriptionForm } from "@ikas/bp-storefront"; * const success = await submitNewsletterSubscriptionForm(newsletterSubscriptionForm); * if (success) { * console.log("Subscribed successfully"); * } * ``` */ export declare function submitNewsletterSubscriptionForm(newsletterSubscriptionForm: NewsletterSubscriptionForm): Promise;