/**
 * 统一公开类型 & 接口
 */
export declare enum Environment {
    cn = "cn",
    us = "us",
    test = "test"
}
export interface Configuration {
    readonly environment: Environment;
}
export interface SdkConfigResponse {
    endpoints: {
        cn?: string;
        us?: string;
        test?: string;
    };
}
export declare enum LoadProgress {
    downloading = "downloading",
    completed = "completed",
    failed = "failed"
}
export interface LoadProgressInfo {
    type: LoadProgress;
    progress?: number;
    error?: Error;
}
export declare enum ConnectionState {
    disconnected = "disconnected",
    connecting = "connecting",
    connected = "connected",
    failed = "failed"
}
export declare enum AvatarState {
    idle = "idle",// 空闲状态，呈现呼吸态
    active = "active",// 活跃中，等待可播放内容
    playing = "playing"
}
export declare class SPAvatarError extends Error {
    code?: string | undefined;
    constructor(message: string, code?: string | undefined);
}
export interface FlatSplatData {
    positions: Float32Array;
    scales: Float32Array;
    rotations: Float32Array;
    colors: Float32Array;
    opacities: Float32Array;
    pointCount: number;
}
export interface CameraConfig {
    position: [number, number, number];
    target: [number, number, number];
    fov: number;
    near: number;
    far: number;
    up?: [number, number, number];
    aspect?: number;
}
export interface RenderPerformanceStats {
    renderTime: number;
    sortTime: number;
    backend: 'webgpu' | 'webgl' | null;
    pointCount?: number;
}
/**
 * 播放模式
 */
export declare enum AvatarPlaybackMode {
    /** 网络模式：通过 WebSocket 发送音频，接收动画数据 */
    network = "network",
    /** 外部数据模式：外部提供音频和动画数据, SDK 负责同步播放 */
    external = "external"
}
/**
 * AvatarView 配置选项
 */
export interface AvatarViewOptions {
    /** 播放模式 */
    playbackMode?: AvatarPlaybackMode;
    /** Canvas 容器 */
    container?: HTMLElement;
}
export * from './character';
//# sourceMappingURL=index.d.ts.map