/**
 * YiRTC SDK 入口文件
 */
import { Client } from './client';
import { Stream } from './stream';
import { ClientConfig, DeviceInfo, StreamConfig } from './types';
/**
 * YiRTC SDK 主类
 */
export declare class YiRTC {
    private static logger;
    private static platform;
    /**
     * 创建客户端实例
     * @param config 客户端配置
     * @returns Client 客户端实例
     */
    static createClient(config: ClientConfig): Client;
    /**
     * 创建音视频流实例
     * @param config 流配置
     * @returns Stream 流实例
     */
    static createStream(config: StreamConfig): Stream;
    /**
     * 获取所有设备
     * @returns Promise<{cameras: DeviceInfo[], microphones: DeviceInfo[], speakers: DeviceInfo[]}>
     */
    static getDevices(): Promise<{
        cameras: DeviceInfo[];
        microphones: DeviceInfo[];
        speakers: DeviceInfo[];
    }>;
    /**
     * 获取摄像头列表
     * @returns Promise<DeviceInfo[]>
     */
    static getCameras(): Promise<DeviceInfo[]>;
    /**
     * 获取麦克风列表
     * @returns Promise<DeviceInfo[]>
     */
    static getMicrophones(): Promise<DeviceInfo[]>;
    /**
     * 获取扬声器列表
     * @returns Promise<DeviceInfo[]>
     */
    static getSpeakers(): Promise<DeviceInfo[]>;
    /**
     * 检查系统要求
     * @returns Promise<boolean>
     */
    static checkSystemRequirements(): Promise<boolean>;
    /**
     * 检查浏览器兼容性
     * @returns boolean
     */
    static checkBrowserCompatibility(): boolean;
    /**
     * 设置区域
     * @param area 区域代码
     */
    static setArea(area: string): void;
    /**
     * 日志相关功能
     */
    static Logger: {
        /**
         * 启用日志上传
         * @param appKey 应用密钥
         */
        enableLogUpload(appKey: string): void;
        /**
         * 禁用日志上传
         */
        disableLogUpload(): void;
    };
    /**
     * 设备相关功能
     */
    static Device: {
        /**
         * 启用兼容模式
         */
        enableCompatMode(): void;
        /**
         * 禁用兼容模式
         */
        disableCompatMode(): void;
    };
}
export * from './types';
export { Client } from './client';
export { Stream } from './stream';
