export declare class Vector3 {
    x: number;
    y: number;
    z: number;
    constructor(...args: ([(number | [number, number, number] | {
        x: number;
        y: number;
        z: number;
    })?, number?, number?]));
    static clone(vector: Vector2 | Vector3): Vector3 | Vector2;
    static cloneAsVector2(vector: Vector3): Vector2;
    set(x: number, y?: number, z?: number): this;
    copy(vector: Vector2 | Vector3): this;
    clone(): Vector3;
    cloneAsVector2(): Vector2;
    add(value: number): this;
    addX(value: number): this;
    addY(value: number): this;
    addZ(value: number): this;
    sub(vector: Vector2 | Vector3): this;
    subX(value: number): this;
    subY(value: number): this;
    subZ(value: number): this;
    mul(value: number): this;
    mulX(value: number): this;
    mulY(value: number): this;
    mulZ(value: number): this;
    div(value: number): this;
    divX(value: number): this;
    divY(value: number): this;
    divZ(value: number): this;
    lengthSq(): number;
    length(): number;
    distanceTo(vector: Vector2 | Vector3): number;
    distanceToSquared(vector: Vector2 | Vector3): number;
}
export declare class Vector2 {
    x: number;
    y: number;
    constructor(...args: ([(number | [number, number] | {
        x: number;
        y: number;
    })?, number?]));
    static clone(vector: Vector2 | Vector3): Vector3 | Vector2;
    static cloneAsVector3(vector: Vector2): Vector3;
    set(x: number, y?: number): this;
    copy(vector: Vector2 | Vector3): this;
    clone(): Vector2;
    cloneAsVector3(): Vector3;
    add(value: number): this;
    addX(value: number): this;
    addY(value: number): this;
    sub(vector: Vector2 | Vector3): this;
    subX(value: number): this;
    subY(value: number): this;
    mul(value: number): this;
    mulX(value: number): this;
    mulY(value: number): this;
    div(value: number): this;
    divX(value: number): this;
    divY(value: number): this;
    lengthSq(): number;
    length(): number;
    distanceTo(vector: Vector2 | Vector3): number;
    distanceToSquared(vector: Vector2 | Vector3): number;
}
