import { Vector3D } from "./Vector3D"; import { ASObject } from "../../avm2/nat/ASObject"; import { Float64Vector } from "../../avm2/natives/float64Vector"; import { DisplayObject } from '../display/DisplayObject'; export declare class Matrix3D extends ASObject { static classInitializer: any; static axClass: typeof Matrix3D; static FromArray(matrix: any): any; private _matrix; private _displayObject; constructor(v?: any); static interpolate(thisMat: Matrix3D, toMat: Matrix3D, percent: number): Matrix3D; setTargetDisplayObject(object: DisplayObject): void; resetTargetDisplayObject(): void; get rawData(): any; set rawData(v: any); get position(): Vector3D; set position(pos: Vector3D); get determinant(): number; clone(): Matrix3D; copyToMatrix3D(dest: Matrix3D): void; append(lhs: Matrix3D): void; prepend(rhs: Matrix3D): void; invert(): boolean; identity(): void; decompose(orientationStyle?: string): Float64Vector; recompose(components: Float64Vector, orientationStyle?: string): boolean; appendTranslation(x: number, y: number, z: number): void; appendRotation(degrees: number, axis: Vector3D, pivotPoint?: Vector3D): void; appendScale(xScale: number, yScale: number, zScale: number): void; prependTranslation(x: number, y: number, z: number): void; prependRotation(degrees: number, axis: Vector3D, pivotPoint?: Vector3D): void; prependScale(xScale: number, yScale: number, zScale: number): void; transformVector(v: Vector3D): Vector3D; deltaTransformVector(v: Vector3D): Vector3D; transformVectors(vin: any, vout: any): void; transpose(): void; pointAt(pos: Vector3D, at?: Vector3D, up?: Vector3D): void; interpolateTo(toMat: Matrix3D, percent: number): void; copyFrom(sourceMatrix3D: Matrix3D): void; copyRawDataTo(vector: any, index?: number, transpose?: boolean): void; copyRawDataFrom(vector: Float64Vector, index?: number, transpose?: boolean): void; copyRowTo(row: number, vector3D: Vector3D): void; copyColumnTo(column: number, vector3D: Vector3D): void; copyRowFrom(row: number, vector3D: Vector3D): void; copyColumnFrom(column: number, vector3D: Vector3D): void; }