/** * WebXR Manager * * Handles VR session management, reference spaces, and the main XR loop. */ import { type WebXRFrameEvidence } from './WebXRFrameEvidence'; export type WebXRFrameCallback = (time: number, frame: XRFrame, evidence: WebXRFrameEvidence) => void; export declare class WebXRManager { private session; private referenceSpace; private localReferenceSpace; private viewerReferenceSpace; private hitTestSource; private glContext; private onFrameCallback; onSessionStart: ((session: XRSession) => void) | null; onSessionEnd: (() => void) | null; constructor(context?: any); /** * Check if VR is supported */ isSessionSupported(): Promise; /** * Request an immersive VR session */ requestSession(): Promise; /** * End the current session */ endSession(): Promise; private onSessionEnded; /** * Start the XR render loop */ setAnimationLoop(callback: WebXRFrameCallback): void; private onXRFrame; /** * Collect passive WebXR hit-test and anchor evidence for XRFrameData fields. */ collectFrameEvidence(time: number, frame: XRFrame): WebXRFrameEvidence; /** * Get the current reference space (prefer local-floor) */ getReferenceSpace(): XRReferenceSpace | null; getSession(): XRSession | null; private initializeHitTestSource; } //# sourceMappingURL=WebXRManager.d.ts.map