import { ForwardAxis } from '../../Kinematic/Constants'; import { TDegrees, TMetersPerSecond, TRadians, TRadiansPerSecond } from '../Types'; import { TEulerLike } from '../../ThreeLib'; import { EulerOrder, QuaternionLike, Vector3Like, Euler, Quaternion, Vector3 } from 'three'; export declare function getHorizontalAzimuth(x: number, z: number, point: Vector3Like, forwardAxis: ForwardAxis): TRadians; export declare function getElevation(x: number, y: number, z: number, point: Vector3Like): TRadians; export declare function getAzimuthElevationFromQuaternion(q: Quaternion): { azimuth: TRadians; elevation: TRadians; }; export declare function getAzimuthElevationFromVector(v: Vector3Like, forwardAxis: ForwardAxis): { azimuth: TRadians; elevation: TRadians; }; export declare const getAzimuthFromDirection: (direction: Vector3Like) => TRadians; export declare const getAzimuthFromQuaternionDirection: (quaternion: QuaternionLike) => TRadians; export declare const getElevationFromDirection: (direction: Vector3Like) => TRadians; export declare const getElevationFromQuaternionDirection: (quaternion: QuaternionLike) => TRadians; export declare const getDirectionFromLinearVelocity: (linearVelocity: Vector3) => Vector3; export declare const getSpeedFromLinearVelocity: (linearVelocity: Vector3) => TMetersPerSecond; export declare const getLinearVelocityByDeg: (speed: TMetersPerSecond, azimuth: TDegrees, elevation: TDegrees) => Vector3; export declare const getLinearVelocity: (speed: TMetersPerSecond, azimuth: TRadians, elevation: TRadians) => Vector3; export declare const getSpeedFromAngularVelocity: (angularVelocity: Quaternion) => TRadiansPerSecond; export declare const getDirectionFromAngularVelocity: (angularVelocity: Quaternion) => Quaternion; export declare function get3DAzimuth(center: Vector3Like, point: Vector3Like): { azimuth: TRadians; elevation: TRadians; }; export declare function degreesToEuler(degrees: Vector3Like): Vector3; export declare function degreesToQuaternion(degrees: Vector3Like): Quaternion; export declare function quaternionToDegrees(quaternion: QuaternionLike): Vector3; export declare function applyRotationOffsetWithReorder(target: Euler, source: Euler, offset: Euler, order?: EulerOrder): void; export declare function toQuaternion(quaternionOrEuler: QuaternionLike | TEulerLike): Quaternion | never;