/**
 * WxLaunchApp.ts — 微信"打开 App"开放标签集成（完整 TypeScript 实现）
 *
 * 在微信内置浏览器中通过 `wx-open-launch-app` 标签唤起原生 App，失败时回退到下载页。
 * 依赖 WxUtils 做环境检测、JS-SDK 加载和签名获取。
 */
/** configure() 选项 */
export interface WxLaunchConfigureOptions {
    appId?: string;
    signature?: string;
    debug?: boolean;
}
/** initialize() 选项 */
export interface WxLaunchInitializeOptions {
    appId?: string;
    url?: string;
    debug?: boolean;
}
/** initialize() 返回结果 */
export interface WxLaunchInitResult {
    success: boolean;
    isWechat?: boolean;
    isDevTools?: boolean;
    message: string;
}
/** createLaunchButton() 选项 */
export interface WxLaunchButtonOptions {
    /** 目标 App 包名（Android） */
    package?: string;
    /** 唤起路径 */
    path?: string;
    /** 唤起参数 */
    params?: string;
    /** 按钮文案 */
    buttonText?: string;
    /** 未配置时是否自动初始化 */
    autoInit?: boolean;
    /** 自动初始化用的 appId */
    appId?: string;
    /** 自动初始化用的 url */
    url?: string;
    /** 调试模式 */
    debug?: boolean;
    /** 标签 ready 回调 */
    onReady?: () => void;
    /** 唤起成功回调 */
    onLaunch?: (e: Event) => void;
    /** 唤起失败回调 */
    onError?: (e: Event) => void;
}
/** 环境信息 */
export interface WxLaunchEnvironmentInfo {
    isWechat: boolean;
    isDevTools: boolean;
    isSdkLoaded: boolean;
    isConfigured: boolean;
    appId: string;
    launchAppId: string;
}
export default class WxLaunchApp {
    sdk: unknown;
    wx: WxSDK.WxInstance | null;
    isSdkLoaded: boolean;
    isConfigured: boolean;
    appId: string;
    launchAppId: string;
    downloadUrl: string;
    isWechat: boolean;
    isDevTools: boolean;
    timestamp: number;
    nonceStr: string;
    constructor(sdk: unknown);
    /** 检测运行环境（是否微信 / 开发者工具）。 */
    detectEnvironment(): void;
    /** 加载微信 JS-SDK。 */
    loadSDK(): Promise<boolean>;
    /** 配置 JS-SDK（注入签名，启用 wx-open-launch-app 开放标签）。 */
    configure(options?: WxLaunchConfigureOptions): Promise<boolean>;
    /** 获取指定 URL 的 JS-SDK 签名。 */
    getSignature(url?: string): Promise<{
        signature: string;
    }>;
    /** 初始化（加载 SDK + 配置签名）。 */
    initialize(options?: WxLaunchInitializeOptions): Promise<WxLaunchInitResult>;
    /** 在容器中创建唤起按钮，返回按钮元素 id（失败返回 null）。 */
    createLaunchButton(container: HTMLElement, options?: WxLaunchButtonOptions): string | null;
    /** 唤起失败时跳转下载页。 */
    handleFallback(url?: string): void;
    /** 获取环境信息。 */
    getEnvironmentInfo(): WxLaunchEnvironmentInfo;
    /** 设置唤起 AppId。 */
    setLaunchAppId(appId: string): void;
    /** 设置下载 URL。 */
    setDownloadUrl(url: string): void;
}
//# sourceMappingURL=WxLaunchApp.d.ts.map