import { type SimplificationQueue } from "./meshSimplification.js"; import { type ISimplificationSettings, type SimplificationType } from "./meshSimplification.common.js"; declare module "../scene.pure.js" { /** @internal */ interface Scene { /** @internal (Backing field) */ _simplificationQueue: SimplificationQueue; /** * Gets or sets the simplification queue attached to the scene * @see https://doc.babylonjs.com/features/featuresDeepDive/mesh/simplifyingMeshes */ simplificationQueue: SimplificationQueue; } } declare module "../Meshes/mesh.pure.js" { /** @internal */ interface Mesh { /** * Simplify the mesh according to the given array of settings. * Function will return immediately and will simplify async * @param settings a collection of simplification settings * @param parallelProcessing should all levels calculate parallel or one after the other * @param simplificationType the type of simplification to run * @param successCallback optional success callback to be called after the simplification finished processing all settings * @returns the current mesh */ simplify(settings: Array, parallelProcessing?: boolean, simplificationType?: SimplificationType, successCallback?: (mesh?: Mesh, submeshIndex?: number) => void): Mesh; } }