import { EventState } from '@babylonjs/core/Misc/observable.js'; import { Scene } from '@babylonjs/core/scene.js'; import { Camera } from '@babylonjs/core/Cameras/camera.js'; export type OnFrameRenderFn = (eventData: Scene, eventState: EventState) => void; export type OnCameraRenderFn = (eventData: Camera, eventState: EventState) => void; /** * Register a callback for before the scene renders. * * @param callback called using onBeforeRender functionality of scene * @param mask the mask used to filter observers * @param insertFirst if true will be inserted at first position, if false (default) will be last position. * @param callOnce only call the callback once */ export declare const useBeforeRender: (callback: OnFrameRenderFn, mask?: number, insertFirst?: boolean, callOnce?: boolean, deps?: React.DependencyList) => void; /** * Register a callback for after the scene renders. * * @param callback called using onAfterRender functionality of scene * @param mask the mask used to filter observers * @param insertFirst if true will be inserted at first position, if false (default) will be last position. * @param callOnce only call the callback once */ export declare const useAfterRender: (callback: OnFrameRenderFn, mask?: number, insertFirst?: boolean, callOnce?: boolean, deps?: React.DependencyList) => void; /** * Register a callback for before the camera renders. * * @param callback called using useBeforeCameraRender functionality of scene * @param mask the mask used to filter observers * @param insertFirst if true will be inserted at first position, if false (default) will be last position. * @param callOnce only call the callback once */ export declare const useBeforeCameraRender: (callback: OnCameraRenderFn, mask?: number, insertFirst?: boolean, callOnce?: boolean, deps?: React.DependencyList) => void; /** * Register a callback for after the scene renders. * * @param callback called using onAfterCameraRender functionality of scene * @param mask the mask used to filter observers * @param insertFirst if true will be inserted at first position, if false (default) will be last position. * @param callOnce only call the callback once */ export declare const useAfterCameraRender: (callback: OnCameraRenderFn, mask?: number, insertFirst?: boolean, callOnce?: boolean) => void;