import { BuilderToolBase, ToolOptionsData } from "../BuilderToolBase"; import { VoxelBoundsSelection } from "../../../Templates/Selection/VoxelBoundsSelection"; import { FreeBoxSelection } from "../../Util/FreeBoxSelection"; import { FullVoxelTemplate } from "../../../Templates/Full/FullVoxelTemplate"; import { VoxelPointSelection } from "../../../Templates/Selection/VoxelPointSelection"; import { FreePointSelection } from "../../Util/FreePointSelection"; export declare enum TemplateToolModes { Select = "Select", Place = "Place", Remove = "Remove" } interface TemplateToolEvents { "selection-created": VoxelBoundsSelection; } export declare class TemplateTool extends BuilderToolBase { static ToolId: string; static ModeArray: TemplateToolModes[]; mode: TemplateToolModes; selection: VoxelPointSelection; pointSelection: FreePointSelection; boxSelection: FreeBoxSelection | null; usePlacingStrategy: boolean; get distance(): number; set distance(distance: number); private _started; selectionToTemplate(selection: VoxelBoundsSelection): Promise; isSelectionStarted(): boolean; update(placerMode?: "start" | "end" | null): Promise; cancel(): void; use(): Promise; getOptionValue(id: string): null; getCurrentOptions(): ToolOptionsData; updateOption(property: string, value: any): void; } export {};