import { Point3d } from "@lincode/math";
import { Object3D } from "three";
import IPositioned from "../../interface/IPositioned";
import EventLoopItem from "./EventLoopItem";
export default abstract class PositionedItem<T extends Object3D = Object3D> extends EventLoopItem<T> implements IPositioned {
    get x(): number;
    set x(val: number);
    get y(): number;
    set y(val: number);
    get z(): number;
    set z(val: number);
    getWorldPosition(): Point3d;
}
export declare const isPositionedItem: (item: any) => item is PositionedItem<Object3D<import("three").Event>>;
