import { UserInfo } from './UserInfo'; import { DeviceInfo } from './DeviceInfo'; import { ShareConfig } from './ShareConfig'; import { OpenWebViewEnum } from './OpenWebViewEnum'; import { WebViewTypeEnum } from './WebViewTypeEnum'; import { WebViewEventMap } from './WebViewEventMap'; import { Subscribe } from '../utils/Subscribe'; import { OrientationEnum, WebViewState } from './WebViewState'; import { StaticData } from './StaticData'; export type JSBridgeReturnType = [T | null, Error | null]; export interface JSBridgeProtocol extends Subscribe { webViewType: WebViewTypeEnum; ready(): Promise>; callAndBackfeed(schemeUrl: string): Promise>; callAndListen(schemeUrl: string, callback: (data: T) => void): Promise void)>>; loadProgress(progress: number): Promise>; closeLoading(): Promise>; getDeviceInfo(): Promise>; getStaticData(): Promise>; getWebViewState(): Promise>; setLeftTopBackButton(enable: boolean): Promise>; login(): Promise>; logout(): Promise>; getUserInfo(): Promise>; openWebView(url: string, way: OpenWebViewEnum): Promise>; closeWebView(): Promise>; getBangsHeight(): Promise>; setOrientation(orientation: OrientationEnum): Promise>; keepScreenLight(enable: boolean): Promise>; shock(duration?: number): Promise>; minimize(): Promise>; saveImage2Album(base64: string): Promise>; detectMicro(): Promise>; actionShare(shareConfig: Partial): Promise>; preload(urls: string[]): Promise>; createCacheProxyUrl(urls: string | string[]): string[]; invokeNativeApi?

(method: string, data?: P): R | Promise; }