import { IXRController } from "@galacean/engine-design"; import { XRPose } from "../XRPose"; import { XRInput } from "./XRInput"; import { XRInputButton } from "./XRInputButton"; /** * The XR controller. */ export declare class XRController extends XRInput implements IXRController { /** The grip space pose of the controller in XR space. */ gripPose: XRPose; /** The target ray space pose of the controller in XR space. */ targetRayPose: XRPose; /** The currently pressed buttons of this controller. */ pressedButtons: XRInputButton; /** Record button lifted. */ down: XRInputButton; /** Record button pressed. */ up: XRInputButton; /** * * Returns whether the button is pressed. * @param button - The button to check * @returns Whether the button is pressed */ isButtonDown(button: XRInputButton): boolean; /** * Returns whether the button is lifted. * @param button - The button to check * @returns Whether the button is lifted */ isButtonUp(button: XRInputButton): boolean; /** * Returns whether the button is held down. * @param button - The button to check * @returns Whether the button is held down */ isButtonHeldDown(button: XRInputButton): boolean; }