UNPKG

native-fn

Version:
45 lines (44 loc) 1.57 kB
import { OS } from "../constants/platform"; import { AppOpenState, Messengers } from "../constants/app"; export declare interface AppInfo { scheme?: string; fallback?: string; timeout?: number; allowWebStore?: boolean; } export declare interface AndroidAppInfo extends AppInfo { packageName?: string; intent?: string; } export declare interface IOSAppInfo extends AppInfo { packageName?: string; trackId?: string; universal?: string; } export declare interface WindowsAppInfo extends AppInfo { productId?: string; } export declare interface MacOSAppInfo extends AppInfo { packageName?: string; trackId?: string; } export declare interface AppOpenOptions { [OS.Android]?: AndroidAppInfo; [OS.iOS]?: IOSAppInfo; [OS.Windows]?: WindowsAppInfo; [OS.MacOS]?: MacOSAppInfo; } export declare type Stringifiable = string | number | boolean | HTMLElement | null | undefined; export declare type StringifiableList = Stringifiable[] | NodeList | NodeListOf<Node> | HTMLCollectionBase; export declare type MessengerOpenOptions = { to?: Stringifiable | StringifiableList; cc?: Stringifiable | StringifiableList; bcc?: Stringifiable | StringifiableList; subject?: Stringifiable; body?: Stringifiable; } | HTMLFormElement | FormData; export declare type Messenger = Record<Messengers, (options: MessengerOpenOptions, self?: WindowProxy) => Promise<void>>; export declare interface App { open: (options: AppOpenOptions, target?: WindowProxy) => Promise<AppOpenState>; messenger: Messenger; }