import web_webview from '@ohos.web.webview';
export type UPWVJBResponseCallback = (data?: string) => void;
export type UPWVJBHandler = (data?: string, jsCallback?: UPWVJBResponseCallback) => void;
export declare const UPWebViewJavascriptBridge = "_WebViewJavascriptBridge";
export declare const UPWebViewJavascriptBridgeMethodList: string[];
export declare class UPWebViewJsBridge {
    private webviewController;
    private messageHandlers;
    private responseCallbacks;
    private uniqueId;
    private messageHandler;
    constructor(p20: web_webview.WebviewController, q20?: UPWVJBHandler);
    registerHandler(n20: string, o20: UPWVJBHandler): void;
    evaluateJavascript(m20: string): void;
    /**
     * web调用natvie核心函数
     * @param data
     * @param responseId
     * @param responseData
     * @param callbackId
     * @param handlerName
     */
    _handleMessageFromJs(h20?: string, i20?: string, j20?: string, k20?: string, l20?: string): void;
    callHandler(e20: string): any;
    callHandler(f20: string, g20: string): any;
    private _sendData;
    _handleMessageFromNative(d20: string): void;
    private _dispatchMessage;
    /**
     * 字符串转换：传给web网页时，数据中的反斜杠\会丢失，需要double转义
     * @param messageJSON
     * @returns
     */
    private doubleEscapeString;
    private _callbackJs;
}
