export class MarkerNode {
    /**
     * Processing order, higher priority nodes are processed first
     * @type {number}
     */
    priority: number;
    /**
     *
     * @type {String}
     */
    type: string;
    /**
     *
     * @type {String[]}
     */
    tags: string[];
    /**
     * Grid position
     * @type {Vector2}
     */
    position: Vector2;
    /**
     * World transform, this can differ from the grid position
     * @type {Transform}
     */
    transform: Transform;
    /**
     * Treated as a radius
     * Used for spatial resolution, to allow spacing markers
     * @type {number}
     */
    size: number;
    /**
     *
     * @type {Object}
     */
    properties: any;
    /**
     *
     * @param {string} tag
     * @returns {boolean}
     */
    hasTag(tag: string): boolean;
    /**
     *
     * @param {string[]} tags
     * @returns {boolean}
     */
    hasAllTags(tags: string[]): boolean;
    /**
     *
     * @returns {MarkerNode}
     */
    clone(): MarkerNode;
    /**
     *
     * @param {MarkerNode} other
     */
    copy(other: MarkerNode): void;
    /**
     *
     * @param {MarkerNode} other
     * @returns {boolean}
     */
    overlaps(other: MarkerNode): boolean;
    /**
     * @readonly
     * @type {boolean}
     */
    readonly isMarkerNode: boolean;
}
import Vector2 from "../../core/geom/Vector2.js";
import { Transform } from "../../engine/ecs/transform/Transform.js";
//# sourceMappingURL=MarkerNode.d.ts.map