import { EVENT } from './events'; import { Config } from './modules/config'; /** @hidden */ export { EVENT } from './events'; type Call = { resolve: (value: T) => void; reject: (reason?: unknown) => void; onData?: (data: T) => void; onComplete?: () => void; signal?: AbortSignal; }; declare global { interface Window { $mujian_lite: MujianSdkLite; } } /** * @class MujianSdkLite * @description Cheliz SDK 的轻量级客户端,用于在浏览器中获取 API 配置。 * @example * ```typescript * (window as any).$mujian_lite.init().then(() => { * console.log((window as any).$mujian_lite.openapi.baseURL); // API 的 URL * console.log((window as any).$mujian_lite.openapi.apiKey); // API 的 KEY (当前用户唯一) * }); * ``` */ declare class MujianSdkLite { /** @hidden */ private constructor(); /** * 事件 * @enum {string} */ /** @hidden */ static EVENT: typeof EVENT; /** @hidden */ static getInstance(): MujianSdkLite; /** @hidden */ private parent; /** @hidden */ private ready; /** * 是否初始化 */ /** @hidden */ get isReady(): boolean; /** @hidden */ private pendingRequests; /** @hidden */ private _config?; /** * 获取 API 配置 * @returns {{ baseURL: string, apiKey: string }} { baseURL: API 的 URL, apiKey: API 的 KEY } */ get openapi(): Config['openapi'] | undefined; /** @hidden */ private initPromise; /** * 初始化 */ init(): Promise; /** @hidden */ private ensureReady; /** @hidden */ emit(event: EVENT, data?: T): void; /** @hidden */ private nextCallId; /** @hidden */ private getCallId; /** @hidden */ call(event: EVENT, data?: Req, controller?: Pick, 'onData' | 'onComplete' | 'signal'>): Promise; } export default MujianSdkLite;