package js.html; import js.lib.Promise; /** The `BeforeInstallPromptEvent` is fired at the `Window.onbeforeinstallprompt` handler, before a user is prompted to install a web site to a home screen. @see https://developer.mozilla.org/en-US/docs/Web/API/BeforeInstallPromptEvent **/ @:native("BeforeInstallPromptEvent") extern class BeforeInstallPromptEvent extends Event { /** The platforms on which this event was dispatched. **/ final platforms: Array; /** The user's choice to the install prompt. **/ final userChoice: Promise; /** Creates a new `BeforeInstallPromptEvent`. **/ function new(); /** Shows the install prompt. **/ function prompt(): Promise; } typedef BeforeInstallPromptUserChoice = { final outcome: BeforeInstallPromptUserChoiceOutcome; } enum abstract BeforeInstallPromptUserChoiceOutcome(String) { var Accepted = "accepted"; var Dismissed = "dismissed"; }