import { Nullable } from "../../types"; type VariableMaterialSelection = { id: string; name: string; selected: boolean; }; type SelectedAttributeOption = { attributeID: Nullable; attributeGuid: Nullable; optionID: Nullable; optionGuid: Nullable; }; export declare class Preview3DConfigurationManager { private _zkModel; private _zkScene; private _scene; private _sceneHelper; constructor(zkModel: MPlaza.Model, zkScene: Zakeke.Scene, scene: BABYLON.Scene); getPossibleVariableMaterials(): BABYLON.Material[]; getVariableMaterials(): BABYLON.Material[]; getVariableMaterialsSelection(): VariableMaterialSelection[]; getVariantMaterialsWithOriginal(modelColor: any): { material: BABYLON.Material; variableMaterial: BABYLON.Material; }[]; updateVariableMaterials(): void; unsetVariableMaterialID(materialID: string): void; setVariableMaterialID(materialID: string): void; private checkVariantOption; private createVariantOption; private removeVariantOption; private getOrCreateVariantAttribute; private getOrCreateVariantAttributeOption; private getVariantID; private checkVariantOptionMaterial; private setupSceneMaterialForVariant; private getSceneMaterialForVariant; private isSceneMaterialForVariant; private canDeleteSceneMaterialForVariant; private getSceneMaterialMetadata; private getOrCreateSceneMaterialMetadata; private removeSceneMaterialMetadata; private cloneSceneMaterial; private deleteSceneMaterial; private checkVariantOptionActions; getVariantMaterials(modelColor: MPlaza.Color): BABYLON.Material[]; getSelectedAttributeOption(selectedModelColor: MPlaza.Color): SelectedAttributeOption; resetOriginaMaterialsOnMeshes(): void; getMeshesUsingMaterial(materialID: string): BABYLON.AbstractMesh[]; } export {};