import { XRSessionMode } from "./XRSessionMode"; import { XRSessionState } from "./XRSessionState"; /** * XRSessionManager manages the life cycle of XR sessions. */ export declare class XRSessionManager { private _xrManager; private _engine; private _mode; private _state; private _rhi; private _raf; private _caf; private _listeners; /** * The current session mode( AR or VR ). */ get mode(): XRSessionMode; /** * Return the current session state. */ get state(): XRSessionState; /** * Return a list of supported frame rates.(only available in-session) */ get supportedFrameRate(): Float32Array; /** * Return the current frame rate as reported by the device. */ get frameRate(): number; /** * Check if the specified mode is supported. * @param mode - The mode to check * @returns A promise that resolves if the mode is supported, otherwise rejects */ isSupportedMode(mode: XRSessionMode): Promise; /** * Run the session. */ run(): void; /** * Stop the session. */ stop(): void; /** * Add a listening function for session state changes. * @param listener - The listening function */ addStateChangedListener(listener: (state: XRSessionState) => void): void; /** * Remove a listening function of session state changes. * @param listener - The listening function */ removeStateChangedListener(listener: (state: XRSessionState) => void): void; private _onSessionExit; }