import { OutlinerNode } from './outliner_node'; import { Project } from '../project/project'; export interface OutlinerElementData { uuid?: string; name?: string; origin?: [number, number, number] | number[]; rotation?: [number, number, number] | number[]; export?: boolean; visibility?: boolean; locked?: boolean; [key: string]: any; } export declare class OutlinerElement extends OutlinerNode { selected: boolean; type: string; origin: [number, number, number]; rotation: [number, number, number]; visibility: boolean; export: boolean; locked: boolean; constructor(data?: OutlinerElementData, uuid?: string); /** * Initialize element (add to project) */ init(project?: Project, rootArray?: OutlinerNode[]): this; extend(data: OutlinerElementData): this; /** * Unselect element */ unselect(recursive?: boolean): this; /** * Select element */ select(): this; /** * Mark as selected (with optional children selection) */ markAsSelected(selectChildren?: boolean): this; /** * Execute function for selected elements */ forSelected(callback: (element: OutlinerElement) => void, undoTag?: string, selectionMethod?: string): OutlinerElement[]; /** * Duplicate element */ duplicate(project?: Project, rootArray?: OutlinerNode[]): OutlinerElement; /** * Remove element from project */ remove(project?: Project, rootArray?: OutlinerNode[]): this; /** * Get save copy */ getSaveCopy(): any; /** * Get undo copy */ getUndoCopy(): any; } //# sourceMappingURL=outliner_element.d.ts.map