import { PluginBase } from './base/PluginBase'; import { Viewer } from './Viewer'; import { IDict, IList, SectionBody, SectionBodyStyle, ClippingType, EditMode } from './Types'; import * as BABYLON from '@babylonjs/core'; declare class ShowEdgeClipPlanePluginMaterial extends BABYLON.MaterialPluginBase { thickness: number; color: BABYLON.Color3; isBoxClip: boolean; reverse: boolean; clippingLow: BABYLON.Nullable; clippingHigh: BABYLON.Nullable; get isEnabled(): boolean; set isEnabled(enabled: boolean); _isEnabled: boolean; constructor(material: BABYLON.Material); prepareDefines(defines: any, scene: BABYLON.Scene, mesh: BABYLON.AbstractMesh): void; getUniforms(): { ubo: { name: string; size: number; type: string; }[]; fragment: string; }; bindForSubMesh(uniformBuffer: BABYLON.UniformBuffer): void; getClassName(): string; getCustomCode(shaderType: string): { CUSTOM_FRAGMENT_MAIN_END: string; }; } declare class ClippingMgr extends PluginBase { static NODE_NAME: string; static CLIP_PLANE_MATERIAL: string; private _enable; get Enable(): boolean; set Enable(val: boolean); private _defaultStyle; get DefaultStyle(): SectionBodyStyle; set DefaultStyle(val: SectionBodyStyle); ClipNode: BABYLON.Nullable; MeshGrouping: IDict>; PlaneMaterial: BABYLON.Nullable; private _sectionBounding; get SectionBounding(): BABYLON.BoundingBox; private _clippingMgrs; private _currClippingMgr; OnDragEnded: BABYLON.Observable; private _editSectionBody; private _editMode; getClassName(): string; toJson(): Object; parseJson(json: Object): void; constructor(viewer: Viewer); init(): void; private findClippedComponents; attachClipPlugin(mesh: BABYLON.AbstractMesh): void; switchClipType(type: ClippingType): void; execClip(section: SectionBody): void; removeSectionBody(section: SectionBody): void; changeAppearance(_mesh?: BABYLON.Nullable): void; getSectionBody(): IList; getClippedComponents(clippingObjects: string[]): IList; getSectionMeshName(section: SectionBody): string; setSectionBodyGizmos(section: BABYLON.Nullable, mode: EditMode): void; private attachGizmoEvents; } export { ClippingMgr, ShowEdgeClipPlanePluginMaterial };