import { ArgumentObject } from '.';
interface Relativity {
    absolute?: boolean;
    relative?: boolean;
    directional?: boolean;
}
interface Coords {
    x: number;
    y: number;
    z: number;
}
export declare class Position extends ArgumentObject {
    x: number;
    y: number;
    z: number;
    readonly xRel: Relativity;
    readonly yRel: Relativity;
    readonly zRel: Relativity;
    constructor(coords?: Partial<Coords>, relativity?: keyof Relativity);
    constructor(coords?: Partial<Coords>, relativity?: Relativity & {
        x?: Relativity;
        y?: Relativity;
        z?: Relativity;
    });
    toString(): string;
    static absolute(coords?: Partial<Coords>): Position;
    static relative(coords?: Partial<Coords>): Position;
    static directional(coords?: Partial<Coords>): Position;
    static relativity: {
        [rel in keyof Relativity]-?: Relativity & {
            [r in rel]: true;
        };
    };
}
export {};
