UNPKG

hybrid_plus

Version:

Hybrid Flutter Javascript SDK

92 lines (91 loc) 2.81 kB
import Logger from "./logger.ts"; import { CoreOptions } from "../types/core.ts"; /** * Flutter-JS-SDK 核心实体 */ declare class Core { _deviceReady: boolean; _inject: boolean; _logger: Logger; _timeout: number; _errorCallback?: any; /** * Core 构造方法 * @param {Logger} logger 日志打印工具 * @param {number} timeout 通信超时时间 */ constructor(logger?: Logger, timeout?: number); /** * 设备是否准备就绪 * @returns boolean * @memberof Core */ get isDeviceReady(): boolean; /** * 日志打印工具 * @returns Logger * @memberof Core */ get logger(): Logger; /** * 通信超时事件 * @returns number * @memberof Core */ get timeout(): number; /** * 初始化配置项 * @param {CoreOptions} [options] * @returns {boolean} * @memberof Core */ init(options: CoreOptions): void; /** * 在 Flutter 准备就绪时触发,api的调用需要保证在该回调函数触发后调用 * @param {Function} [fn] 回调函数 * @memberof Core */ onDeviceReady(fn: () => void): Promise<void>; /** * 注册error函数, 在SDK发生错误/异常时执行 * @param {Function} [fn] 回调函数 * @memberof Core */ error(fn: () => void): void; /** * 执行error回调函数 * @param {unknown} error 错误对象 * @memberof Core */ onError(error: unknown): void; } export declare const core: Core; export declare const init: (options: CoreOptions) => void; export declare const isDeviceReady: boolean; export declare const error: (fn: () => void) => void; export declare const logger: Logger; /** * 以异步的方式执行 Flutter 的事件,用于获取数据类型的 API * @template A 参数类型 * @template S 成功回调的返回类型 * @template F 失败回调的返回类型 * @param {string} service 调用的服务类名 * @param {string} action 调用的方法名 * @param {Array<A>} args 调用的参数 * @param {(data: S) => void} [onSuccess] 成功回调 * @param {(err: F) => void} [onError] 失败回调 * @param {boolean} enableTimer 是否启用超时 * @returns {Promise<S>} */ export declare function exec(service: string, action: string, args?: any, onSuccess?: (data: any) => void, onError?: (err: any) => void, enableTimer?: boolean): Promise<unknown>; /** * 以同步的方式执行 Flutter 的事件, 用于没有回调的API * @export * @template A * @param {string} service 调用的服务类名 * @param {string} action 调用的方法名 * @param {Array<A>} args 调用的参数 * @returns {void} */ export declare function execSync(service: string, action: string, args?: any): void; export {};