import { AbstractTreeNodeData } from "@shapediver/viewer.shared.node-tree"; import { vec3 } from "gl-matrix"; import { type IInteractionData, type IInteractionTypes } from "../interfaces/IInteractionData"; export interface IDragAnchor { /** The id of the anchor */ id?: string; position: vec3; rotation?: { axis: vec3; angle: number; }; } export declare class InteractionData extends AbstractTreeNodeData implements IInteractionData { #private; /** * Creates an interaction data item. * * @param interactionTypes the data as key-value pairs * @param groupId the group id to be able to interact with multiple nodes at once * @param id the id that is used internally (leave empty if in doubt) * @param version the version that is used internally (leave empty if in doubt) */ constructor(interactionTypes: IInteractionTypes, groupId?: string, restrictedManagers?: string[], id?: string, version?: string); get dragAnchors(): IDragAnchor[]; set dragAnchors(value: IDragAnchor[]); get dragOrigin(): vec3 | undefined; set dragOrigin(value: vec3 | undefined); get groupId(): string | undefined; set groupId(value: string | undefined); get interactionStates(): IInteractionTypes; set interactionStates(value: IInteractionTypes); get interactionTypes(): IInteractionTypes; set interactionTypes(value: IInteractionTypes); get restrictedManagers(): string[]; set restrictedManagers(value: string[]); /** * Clones the scene graph data. */ clone(): IInteractionData; } //# sourceMappingURL=InteractionData.d.ts.map