import { Transform } from "@pixi/math";
import { Matrix4x4 } from "./matrix";
import { Point3D } from "./point";
import { Quaternion } from "./quaternion";
/**
 * Handles position, scaling and rotation in 3D.
 */
export declare class Transform3D extends Transform {
    /** The position in local space. */
    position: Point3D;
    /** The scale in local space. */
    scale: Point3D;
    /** The rotation in local space. */
    rotationQuaternion: Quaternion;
    /** The transformation matrix in world space. */
    worldTransform: Matrix4x4;
    /** The transformation matrix in local space. */
    localTransform: Matrix4x4;
    /** The inverse transformation matrix in world space. */
    inverseWorldTransform: Matrix4x4;
    /** The normal transformation matrix. */
    normalTransform: Matrix4x4;
    /**
     * Updates the local transformation matrix.
     */
    updateLocalTransform(): void;
    /**
     * Sets position, rotation and scale from a matrix array.
     * @param matrix The matrix to set.
     */
    setFromMatrix(matrix: Matrix4x4): void;
    /**
     * Updates the world transformation matrix.
     * @param parentTransform The parent transform.
     */
    updateTransform(parentTransform?: Transform): void;
    /**
     * Rotates the transform so the forward vector points at specified point.
     * @param point The point to look at.
     * @param up The upward direction.
     */
    lookAt(point: Point3D, up?: Float32Array): void;
}
