export type ViewportPositionFlags = number;
export namespace ViewportPositionFlags {
    let StickToScreenEdge: number;
    let ResolveGUICollisions: number;
}
export default ViewportPosition;
declare class ViewportPosition {
    static fromJSON(opt: any): ViewportPosition;
    /**
     * Clip-scale position, on-screen values are in range of 0 to 1
     * @type {Vector2}
     */
    position: Vector2;
    /**
     * Fixed offset in pixels
     * @type {Vector2}
     */
    offset: Vector2;
    /**
     * ranges from 0..1 in both X and Y, controls anchor point of element positioning
     * @type {Vector2}
     */
    anchor: Vector2;
    /**
     * Makes display element avoid overlap with GUI elements
     * @see GUIElement
     * @type {boolean}
     */
    resolveGuiCollisions: boolean;
    /**
     * How far should the HUD stay away from the edge if it's sticky
     * @see stickToScreenEdge
     * @type {number}
     */
    screenEdgeWidth: number;
    /**
     * Controls whenever or not HUD should remain on the screen when it gets to the edge
     * @type {boolean}
     */
    stickToScreenEdge: boolean;
    /**
     * Can be used to enable and disable positioning
     * @type {ObservedBoolean}
     */
    enabled: ObservedBoolean;
    /**
     *
     * @param {ViewportPosition} other
     * @returns {boolean}
     */
    equals(other: ViewportPosition): boolean;
    hash(): number;
    fromJSON({ position, offset, anchor, screenEdgeWidth, stickToScreenEdge, enabled, }: {
        position?: Vector2;
        offset?: Vector2;
        anchor?: Vector2;
        screenEdgeWidth?: number;
        stickToScreenEdge?: boolean;
        enabled?: boolean;
    }): void;
    toJSON(): {
        position: {
            x: number;
            y: number;
        };
        offset: {
            x: number;
            y: number;
        };
        anchor: {
            x: number;
            y: number;
        };
        screenEdgeWidth: number;
        stickToScreenEdge: boolean;
        enabled: boolean;
    };
}
declare namespace ViewportPosition {
    let typeName: string;
    let serializable: boolean;
}
import Vector2 from "../../../../core/geom/Vector2.js";
import ObservedBoolean from "../../../../core/model/ObservedBoolean.js";
//# sourceMappingURL=ViewportPosition.d.ts.map