/**
 * keepworkSDK.ts — KeepworkSDK 主类（TypeScript 版，组合层）
 *
 * 本文件只保留：
 * 1. 依赖服务的 import
 * 2. 类骨架：静态 getSharedAudioEngine + constructor
 * 3. aiChat / speechRTC 懒加载 getter/setter
 * 4. 三个 mixin 注入（applyCoreMixin / applyPagesMixin / applyUtilsMixin）
 * 5. 静态属性（API_KEYS / source / sourceIsModule / _API_BASE_URL）
 * 6. 浏览器环境自动初始化 + export
 *
 * 具体方法全部由 mixin 文件注入，避免单文件过大。
 */
import PersonalPageStore from '../store/PersonalPageStore';
import SDKLogger from '../utils/SDKLogger';
import RemoteLog from './RemoteLog';
import Speech from '../audio/Speech';
import CopilotTools from '../ai-chat/CopilotTools';
import WxLaunchApp from '../wechat/WxLaunchApp';
import WxAuth from '../wechat/WxAuth';
import LoginWindow from '../ui/LoginWindow';
import ProfileWindow from '../ui/ProfileWindow';
import CloudDrive from '../store/CloudDrive';
import LocalAPIKeySettings from '../ui/LocalAPIKeySettings';
import AIGenerators from '../ai-chat/AIGenerators';
import UserWorks from '../user/UserWorks';
import SocialFriends from '../user/SocialFriends';
import { type KeepworkSDKOptions } from './keepworkSDK.core';
declare class KeepworkSDK {
    /**
     * 内置 API key 常量。
     *
     * 真实 key 不在源码中硬编码，而是由 Vite `define` 在构建期注入 `__MAISI_API_KEY__`：
     * - CDN/IIFE 构建：从本地 `.env` 的 `MAISI_API_KEY` 注入真实值（自用，不进 npm 包）。
     * - npm 构建：注入空字符串 `''`，确保发布产物不含 key。
     *
     * 因此 npm 包中 `API_KEYS.maisi` 为 `''`；如需鉴权请通过 `setUserApiKey()` 自行提供。
     */
    static API_KEYS: Record<string, string>;
    /** bundle 自身 URL（由 index.ts 在加载时写入，供 DigitalHumanFrame 等推导 CDN 路径）。 */
    static source: string;
    static sourceIsModule: boolean;
    /** 调试用 API 基地址（供 core mixin 的 _initCore 读取）。 */
    static _API_BASE_URL: string;
    baseURL: string;
    token: string | null;
    timeout: number;
    retryCount: number;
    retryDelay: number;
    userApiKey: string | null;
    user: unknown;
    userCacheTimestamp: number | null;
    userCacheTimeout: number;
    logger: typeof SDKLogger;
    personalPageStore: InstanceType<typeof PersonalPageStore>;
    remoteLog: InstanceType<typeof RemoteLog>;
    speech: InstanceType<typeof Speech>;
    copilotTools: InstanceType<typeof CopilotTools>;
    wxLaunchApp: InstanceType<typeof WxLaunchApp>;
    wxAuth: InstanceType<typeof WxAuth>;
    loginWindow: InstanceType<typeof LoginWindow>;
    profileWindow: InstanceType<typeof ProfileWindow>;
    cloudDrive: InstanceType<typeof CloudDrive>;
    localAPIKeySettings: InstanceType<typeof LocalAPIKeySettings>;
    aiGenerators: InstanceType<typeof AIGenerators>;
    userWorks: InstanceType<typeof UserWorks>;
    socialFriends: InstanceType<typeof SocialFriends>;
    /** @deprecated 向后兼容大写别名，请使用 socialFriends */
    SocialFriends: InstanceType<typeof SocialFriends>;
    audioEngine: unknown;
    minigame: {
        openSkill: (opts?: unknown) => boolean;
        close: (opts?: unknown) => boolean;
    };
    /** 私有字段（由 _initCore / _patchAIChat 注入） */
    _aiChat: unknown;
    _speechRTC: unknown;
    _authStateChangeListeners: Set<unknown>;
    _userProfilePromise: unknown;
    _lastKnownUserKey: string | null;
    _loadAIChatPromise: Promise<void> | null;
    _siteTreeCache: Record<string, {
        data: unknown;
        time: number;
    }>;
    /** 全局识别微信网页授权回调（wxauth=1&code=...）并自动完成登录。 */
    handleWechatRedirectLogin: () => Promise<boolean>;
    /** 设置认证 token，同步写入 cookie 并触发 authStateChange。 */
    setToken: (token: string | null) => void;
    /** 设置 token 并立即刷新用户档案缓存。 */
    setTokenAndRefresh: (token: string | null) => Promise<import('./keepworkSDK.core').KwUserProfile | null>;
    /** 设置 LLM user-api-key。 */
    setUserApiKey: (key: string | null) => this;
    /** 清除 user-api-key（内存 + localStorage）。 */
    clearUserApiKey: () => this;
    /** 获取当前 HTTP 请求头。 */
    getAuthHeaders: () => Record<string, string>;
    /** 清除用户档案内存缓存。 */
    clearUserCache: (options?: {
        clearIdentity?: boolean;
    }) => void;
    /** 手动写入用户档案缓存。 */
    setCachedUser: (profile: import('./keepworkSDK.core').KwUserProfile) => void;
    /** 注册认证状态变更监听器，返回取消订阅函数。 */
    onAuthStateChange: (handler: (change: import('./keepworkSDK.core').AuthStateChange) => void) => () => void;
    /** 取消注册认证状态变更监听器。 */
    offAuthStateChange: (handler: (change: import('./keepworkSDK.core').AuthStateChange) => void) => void;
    /** 通用 HTTP 请求（含指数退避重试）。 */
    request: (url: string, options?: import('./keepworkSDK.core').RequestOptions) => Promise<unknown>;
    /** GET 请求便捷方法。 */
    get: (url: string, params?: Record<string, string | number | boolean>, options?: import('./keepworkSDK.core').RequestOptions) => Promise<unknown>;
    /** POST 请求便捷方法。 */
    post: (url: string, data?: unknown, options?: import('./keepworkSDK.core').RequestOptions) => Promise<unknown>;
    /** PUT 请求便捷方法。 */
    put: (url: string, data?: unknown, options?: import('./keepworkSDK.core').RequestOptions) => Promise<unknown>;
    /** DELETE 请求便捷方法。 */
    delete: (url: string, data?: unknown, options?: import('./keepworkSDK.core').RequestOptions) => Promise<unknown>;
    /** 用户名/密码登录。 */
    login: (credentials: {
        username: string;
        password: string;
        captcha?: string;
        captchaKey?: string;
    }) => Promise<unknown>;
    /** 弹出登录窗口 UI。 */
    showLoginWindow: (options?: Record<string, unknown>) => Promise<unknown>;
    /** 弹出用户档案编辑窗口 UI。 */
    showProfileWindow: (options?: Record<string, unknown>) => Promise<void>;
    /** 退出登录。 */
    logout: () => Promise<unknown>;
    /**
     * 获取当前用户档案（内置内存缓存）。
     * @param options - useCache（默认 true）/ forceRefresh（默认 false）
     */
    getUserProfile: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<import('./keepworkSDK.core').KwUserProfile>;
    /** 绑定第三方服务账号。 */
    bindThirdPartyService: (serviceName: string, authData: Record<string, unknown>) => Promise<unknown>;
    /** 通过 Maisi token 进行 OAuth 登录。 */
    loginWithMaisi: (maisiToken: string, callback?: (result: unknown) => void, from?: string) => Promise<unknown>;
    /** 检查用户是否为 VIP。 */
    isUserVip: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<boolean>;
    /** 检查用户是否为 SVIP。 */
    isUserSvip: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<boolean>;
    /** 获取普通 VIP 到期日期。 */
    getUserVipExpiration: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<Date | null>;
    /** 获取 SVIP 到期日期。 */
    getUserSvipExpiration: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<Date | null>;
    /** 检查用户是否已实名认证。 */
    isUserRealNameVerified: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<boolean>;
    /** 获取用户 ID。 */
    getUserId: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<number | null>;
    /** 获取用户名。 */
    getUsername: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<string | null>;
    /** 获取用户邮箱。 */
    getUserEmail: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<string | null>;
    /** 获取用户显示名（优先 nickname，回退 username）。 */
    getUserDisplayName: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<string | null>;
    /** 获取用户头像 URL。 */
    getUserPortrait: (options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<string | null>;
    /** 检查用户档案中是否存在指定字段（dot notation）。 */
    hasUserField: (fieldPath: string, options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<boolean>;
    /** 获取用户档案中的指定字段值（dot notation）。 */
    getUserField: (fieldPath: string, defaultValue?: unknown, options?: import('./keepworkSDK.core').GetProfileOptions) => Promise<unknown>;
    /** 动态加载 AIChat chunk。 */
    loadAIChat: () => Promise<void>;
    static initializeGlobals: () => void;
    static getSystem: () => string;
    static getQueryString: (name: string) => string;
    static isWeChatBrowser: () => unknown;
    static getWeChatInfo: () => unknown;
    static isMobileDevice: () => boolean;
    static isMobilePortrait: () => boolean;
    static checkFullscreen: () => boolean;
    /**
     * 获取（或创建）全局共享的 AudioEngine 实例。
     * 多个 SDK 实例共用同一音频引擎，避免重复初始化开销。
     *
     * @param options - AudioEngine 初始化选项
     */
    static getSharedAudioEngine(options?: Record<string, unknown>): unknown;
    /**
     * 创建 KeepworkSDK 实例，初始化所有子服务。
     *
     * 构造顺序：
     * 1. `_initCore(options)` — 初始化 token / baseURL / 缓存等基础字段（由 core mixin 注入）
     * 2. 按依赖顺序实例化各子服务
     * 3. `_patchAIChat()` — 若 AIChat chunk 已加载则立即绑定（由 core mixin 注入）
     *
     * @param options - 初始化选项
     */
    constructor(options?: KeepworkSDKOptions);
    /**
     * AIChat 实例（来自 AIChat chunk）。
     * 首次访问时自动触发懒加载（调用 `_patchAIChat()`）。
     */
    get aiChat(): unknown;
    set aiChat(v: unknown);
    /**
     * SpeechRTC 实例（来自 AIChat chunk）。
     * 首次访问时自动触发懒加载（调用 `_patchAIChat()`）。
     */
    get speechRTC(): unknown;
    set speechRTC(v: unknown);
}
export default KeepworkSDK;
export type { KeepworkSDKOptions } from './keepworkSDK.core';
export type { SavePageData, LoadPageInfo, DeletePageInfo, PageResult, PageMetadata, CreateSiteData } from './keepworkSDK.pages';
export type { ParsedPagePath, WeChatInfo } from './keepworkSDK.utils';
//# sourceMappingURL=keepworkSDK.d.ts.map