/**
 * Returns true if the difference is greater than the epsilon for that key.
 * @param {array | number} a Previous viewerState key, i.e., position.
 * @param {array | number } b Next viewerState key, i.e., position.
 * @returns
 */
export function valueGreaterThanEpsilon(a: array | number, b: array | number, epsilon: any): boolean | undefined;
/**
 * Returns true if the two states are equal, or false if not.
 * @param {object} prevState Previous viewer state.
 * @param {object} nextState Next viewer state.
 * @returns {Boolean} True if any key has changed
 */
export function didCameraStateChange(prevState: object, nextState: object): boolean;
export function diffCameraState(prev: any, next: any): {
    changed: boolean | undefined;
    scale: boolean | undefined;
    pos: boolean | undefined;
    rot: boolean | undefined;
};
export function quaternionToEuler([x, y, z, w]: [any, any, any, any]): any[];
export function eulerToQuaternion(pitch: any, yaw: any, roll?: number): any[];
export function makeVitNgZoomCalibrator(initialNgProjectionScale: any, initialDeckZoom?: number): {
    base: number;
    vitToNgZoom(z: any): number;
    ngToVitZoom(sNg: any): number;
};
export namespace EPSILON_KEYS_MAPPING_NG {
    let projectionScale: number;
    let projectionOrientation: number;
    let position: number;
}
export const SOFT_POS_FACTOR: 0.15;
export const Q_Y_UP: number[];
export function multiplyQuat(a: any, b: any): number[];
export function conjQuat(q: any): any[];
export function quatdotAbs(a: any, b: any): number;
export function rad2deg(r: any): number;
export function deg2rad(d: any): number;
export function nearEq(a: any, b: any, epsilon: any): boolean;
//# sourceMappingURL=utils.d.ts.map