import { Nullable, Quaternion, Vector3 } from "@babylonjs/core"; import { AXIS } from "./quaternion"; export type Vector33 = [Vector3, Vector3, Vector3]; export declare class Basis { private readonly leftHanded; private eps; private static readonly ORIGINAL_CARTESIAN_BASIS_VECTORS; private readonly _data; get x(): Vector3; get y(): Vector3; get z(): Vector3; constructor(v33: Nullable, leftHanded?: boolean, eps?: number); get(): Vector33; private set; verifyBasis(): void; rotateByQuaternion(q: Quaternion): Basis; negateAxes(axis: AXIS): Basis; transpose(order: [number, number, number]): Basis; private static getOriginalCoordVectors; } export declare function quaternionBetweenBases(basis1: Basis, basis2: Basis, prevQuaternion?: Quaternion): Quaternion; export declare function getBasis(obj: Vector33): Basis; export declare function calcAvgPlane(pts: Vector3[], normal: Vector3): Vector3[];