import { TreeItem, Ray, ColorParameter, Parameter, Vec3, ZeaWheelEvent, ZeaPointerEvent, XRControllerEvent, XRPoseEvent } from '@zeainc/zea-engine'; /** * A Handle is an UI widget that lives in the scene, it translates a series of pointer events into a higher level interaction. * * **Parameters** * * **Color(`ColorParameter`):** Specifies the color of the handle. * * **HighlightColor(`ColorParameter`):** Specifies the highlight color of the handle. * * @extends TreeItem */ declare class Handle extends TreeItem { gizmoRay: Ray; activeController: any; captured: boolean; colorParam: ColorParameter; highlightColorParam: ColorParameter; grabPos: Vec3; holdPos: Vec3; holdDist: number; value: number | Vec3 | number[]; delta: number | Vec3 | number[]; releasePos: Vec3; /** * Creates an instance of Handle. * * @param name - The name value. */ constructor(name?: string); /** * highlight the handle to indicate it is under the mouse. */ highlight(): void; /** * Removes the highlight from the handle once the mouse moves away. */ unhighlight(): void; /** * Returns the manipulation plane of the handle, denoting a start and a direction. * * @return {Ray} The return value. */ getManipulationPlane(): Ray; /** * Event fired when a pointing device is initially moved within the space of the handle. * * @param event - The event param. */ onPointerEnter(event: ZeaPointerEvent): void; /** * Event fired when a pointing device moves outside of the space of the handle. * * @param event - The event param. */ onPointerLeave(event: ZeaPointerEvent): void; /** * Event fired when a pointing device button is pressed while the pointer is over the handle element. * * @param event - The event param. */ onPointerDown(event: ZeaPointerEvent): void; /** * Event fired when a pointing device is moved while the cursor's hotspot is over the handle. * * @param event - The event param. */ onPointerMove(event: ZeaPointerEvent): void; /** * Event fired when a pointing device button is released while the pointer is over the handle. * * @param event - The event param. */ onPointerUp(event: ZeaPointerEvent): void; onPointerClick(event: ZeaPointerEvent): void; onPointerDoubleClick(event: ZeaPointerEvent): void; /** * Event fired when the user rotates the pointing device wheel over the handle. * * @param event - The event param. */ onWheel(event: ZeaWheelEvent): void; /** * Handles mouse down interaction with the handle. * * @param event - The event param. */ handlePointerDown(event: ZeaPointerEvent): void; /** * Handles mouse move interaction with the handle. * * @param event - The event param */ handlePointerMove(event: ZeaPointerEvent): void; /** * Handles mouse up interaction with the handle. * * @param event - The event param. */ handlePointerUp(event: ZeaPointerEvent): void; /** * Event fired when a VR controller button is pressed over the handle. * * @param event - The event param. */ onXRControllerButtonDown(event: XRControllerEvent): void; /** * The onXRPoseChanged method. * * @param event - The event param. */ onXRPoseChanged(event: XRPoseEvent): void; /** * Event fired when a VR controller button is released over the handle. * * @param event - The event param. */ onVRControllerButtonUp(event: XRControllerEvent): void; /** * Handles the initially drag of the handle. * * @param event - The event param. */ onDragStart(event: ZeaPointerEvent): void; /** * Handles drag action of the handle. * * @param event - The event param. */ onDrag(event: ZeaPointerEvent): void; /** * Handles the end of dragging the handle. * * @param event - The event param. */ onDragEnd(event?: ZeaPointerEvent): void; /** * Sets the target parameter for manipulation * * @param param - The parameter that will be modified during manipulation */ setTargetParam(param: Parameter): void; } export default Handle; export { Handle }; //# sourceMappingURL=Handle.d.ts.map