export function useNewsletterSignup() { const { t } = useI18n() const isLoading = ref(false) const isSuccess = ref(false) const error = ref(null) const submitEmail = async (_email: string) => { isLoading.value = true error.value = null try { // Simulate API call - replace with actual newsletter service integration await new Promise((resolve) => setTimeout(resolve, 1500)) // TODO: Integrate with external newsletter service (e.g., Mailchimp, ConvertKit, etc.) // Example: // await $fetch('/api/newsletter/subscribe', { // method: 'POST', // body: { email } // }) isSuccess.value = true } catch (e: unknown) { error.value = e instanceof Error ? e.message : t('errors.generic') throw e } finally { isLoading.value = false } } const reset = () => { isLoading.value = false isSuccess.value = false error.value = null } return { isLoading, isSuccess, error, submitEmail, reset } }