"use client"; import { useEffect, useState } from "react"; import { Download } from "lucide-react"; import { Button } from "@/components/ui/button"; import { useI18n } from "@/lib/i18n"; interface BeforeInstallPromptEvent extends Event { prompt: () => Promise; userChoice: Promise<{ outcome: "accepted" | "dismissed" }>; } export function InstallPWAButton() { const [event, setEvent] = useState(null); const { t } = useI18n(); useEffect(() => { const handlePrompt = (promptEvent: Event) => { promptEvent.preventDefault(); setEvent(promptEvent as BeforeInstallPromptEvent); }; window.addEventListener("beforeinstallprompt", handlePrompt); return () => window.removeEventListener("beforeinstallprompt", handlePrompt); }, []); if (!event) return null; return ( ); }