export type PlatformServiceMessages = { /** * Origin: Webview. * Requests that a deeplink be open by whichever platform the client is running in. */ openURL: (url: string) => Promise; /** * Origin: Webview. * Opens the URL in a secure browser window for authentication. * * Resolves with the URL used to deeplink back to this app. */ openAuthenticationWindow: (props: { url: string; redirectUrl?: string; }) => Promise; /** * Origin: Webview. * Open a OS popup to download a file. */ downloadFile: (props: { base64Content: string; fileName: string; mimeType: string; }) => Promise; /** * Origin: Client (React Native). * Notifies the webview of an incoming deep link URL. * Used for wallet redirect flows (e.g., Phantom) where the wallet app * redirects back to the app with connection data in the URL. */ incomingUrl: (url: string) => void; };