import { SimpleJSONLoader } from './SimpleJSONLoader';
import { ThreeViewer } from '../../viewer';
import { SerializationMetaType } from '../../utils/serialization';
import { IMaterial } from '../../core';
export declare class JSONMaterialLoader extends SimpleJSONLoader {
    static SupportedJSONTypes: () => string[];
    static SupportedJSONExtensions: () => string[];
    viewer?: ThreeViewer;
    /**
     * Find any existing material with the same uuid and update it instead of creating a new one
     * This is a global flag to toggle this behavior on or off
     * @default false
     */
    static FindExistingMaterial: boolean;
    parseAsync(json: Record<string, any>): Promise<any>;
    static DeserializeMaterialJSON(json: any, viewer: ThreeViewer, meta?: SerializationMetaType, obj?: IMaterial | IMaterial[]): Promise<any>;
}
//# sourceMappingURL=../../src/assetmanager/import/JSONMaterialLoader.d.ts.map