import { BufferGeometry, Geometry, Mesh, Object3D, Texture } from 'three';
import { Singleton } from '../Common/Singleton';
import { PhysicalMaterialRecord } from '../DatabaseServices/PhysicalMaterialRecord';
import { Viewer } from '../GraphicsSystem/Viewer';
/**
 * 材质编辑器
 */
export declare class MaterialEditor extends Singleton {
    Geometrys: Map<string, Geometry | BufferGeometry>;
    CurGeometryName: import("mobx").IObservableValue<string>;
    Canvas: HTMLElement;
    ShowObject: Object3D;
    ShowMesh: Mesh;
    Viewer: Viewer;
    private _MeshMaterial;
    private constructor();
    initGeometrys(): void;
    initViewer(): void;
    SetViewer(canvas: HTMLElement): void;
    initScene(): void;
    metaTexture: Texture;
    metaPromise: Promise<Texture>;
    LoadMetalEnv(): Promise<Texture>;
    exrPromise: Promise<Texture>;
    exrTexture: Texture;
    LoadDefaultExr(): Promise<Texture>;
    private Material;
    setMaterial(mat: PhysicalMaterialRecord): void;
    dispose(): void;
    Update(): Promise<void>;
}
//# sourceMappingURL=MaterialEditor.d.ts.map