import { Matrix4 } from '../mat4/Matrix4'; import type { Quaternion } from '../quat/Quaternion'; import type { RawMatrix3 } from './RawMatrix3'; /** * A Matrix3. */ export declare class Matrix3 { elements: RawMatrix3; constructor(v?: RawMatrix3); /** * Itself but transposed. */ get transpose(): Matrix3; /** * Its determinant. */ get determinant(): number; /** * Itself but inverted. */ get inverse(): Matrix3; /** * Itself but matrix4. */ get matrix4(): Matrix4; toString(): string; /** * Clone this. */ clone(): Matrix3; /** * Multiply this Matrix3 by one or more Matrix3s. */ multiply(...matrices: Matrix3[]): Matrix3; /** * Multiply this Matrix3 by a scalar. */ scaleScalar(scalar: number): Matrix3; /** * An identity Matrix4. */ static get identity(): Matrix3; /** * Multiply two or more matrices. * @param matrices Matrices */ static multiply(...matrices: Matrix3[]): Matrix3; /** * Create a normal matrix out of matrix4. * @param matrix4 A matrix4 */ static createNormalMatrix(matrix4: Matrix4): Matrix3; /** * Cast a {@link Matrix4} into a Matrix3. * @param matrix4 A matrix4 */ static fromMatrix4(matrix4: Matrix4): Matrix3; /** * Create a matrix out of a {@link Quaternion}. * @param quaternion A quaternion */ static fromQuaternion(quaternion: Quaternion): Matrix3; }