import { AbstractMesh, Camera, Scene } from "@babylonjs/core"; declare type iPredicate = (mesh: AbstractMesh) => boolean; export declare const PI = 3.14159265359; export declare const TWO_PI = 6.28318530718; export declare const HALF_PI = 1.57079632679; export declare const QUARTER_PI = 0.78539816339; export declare const ONEANDHALF_PI = 4.71238898038; export declare const THREEQUARTER_PI = 2.35619449019; export declare const clamp: (a: number, min: number, max: number) => number; export declare const randomBool: () => boolean; export declare const roundToNearest: (val: number, interval: number) => number; export declare const isValid: (val: number) => boolean; export declare const signedToUnsignedTheta: (theta: number) => number; export declare const angleBetween: (a: number, b: number) => number; export declare const screenRay: (scene: Scene, camera: Camera) => import("@babylonjs/core").Ray; export declare const raycastMouse: (scene: Scene, camera: Camera, predicate?: iPredicate) => { pickedMesh?: AbstractMesh; }; export {};