import { BaseObject } from "../core/BaseObject";
import { Matrix } from "../geom/Matrix";
import { Point } from "../geom/Point";
import { Transform } from "../geom/Transform";
import { Armature } from "./Armature";
/**
 * - The base class of the transform object.
 * @see dragonBones.Transform
 * @version DragonBones 4.5
 * @language en_US
 */
export declare abstract class TransformObject extends BaseObject {
    protected static readonly _helpMatrix: Matrix;
    protected static readonly _helpTransform: Transform;
    protected static readonly _helpPoint: Point;
    /**
     * - A matrix relative to the armature coordinate system.
     * @version DragonBones 3.0
     * @language en_US
     */
    readonly globalTransformMatrix: Matrix;
    /**
     * - A transform relative to the armature coordinate system.
     * @see #updateGlobalTransform()
     * @version DragonBones 3.0
     * @language en_US
     */
    readonly global: Transform;
    /**
     * - The offset transform relative to the armature or the parent bone coordinate system.
     * @see #dragonBones.Bone#invalidUpdate()
     * @version DragonBones 3.0
     * @language en_US
     */
    readonly offset: Transform;
    /**
     * @private
     */
    origin: Transform | null;
    /**
     * @private
     */
    userData: any;
    protected _globalDirty: boolean;
    /**
     * @internal
     */
    _alpha: number;
    /**
     * @internal
     */
    _globalAlpha: number;
    /**
     * @internal
     */
    _armature: Armature;
    /**
     */
    protected _onClear(): void;
    /**
     * - For performance considerations, rotation or scale in the {@link #global} attribute of the bone or slot is not always properly accessible,
     * some engines do not rely on these attributes to update rendering, such as Egret.
     * The use of this method ensures that the access to the {@link #global} property is correctly rotation or scale.
     * @example
     * <pre>
     *     bone.updateGlobalTransform();
     *     let rotation = bone.global.rotation;
     * </pre>
     * @version DragonBones 3.0
     * @language en_US
     */
    updateGlobalTransform(): void;
    /**
     * - The armature to which it belongs.
     * @version DragonBones 3.0
     * @language en_US
     */
    get armature(): Armature;
}
