import { Point } from "./Point";
export declare class Vector2 {
    x: number;
    y: number;
    readonly isVector2: boolean;
    constructor(x?: number, y?: number);
    get width(): number;
    set width(value: number);
    get height(): number;
    set height(value: number);
    set(x: number, y: number): Vector2;
    setScalar(scalar: number): Vector2;
    setX(x: number): Vector2;
    setY(y: number): Vector2;
    setComponent(index: number, value: number): Vector2;
    getComponent(index: number): number;
    clone(): Vector2;
    copy(v: Vector2): Vector2;
    add(v: Point): Vector2;
    addScalar(s: number): Vector2;
    addVectors(a: Vector2, b: Vector2): Vector2;
    addScaledVector(v: Vector2, s: number): Vector2;
    sub(v: Vector2): Vector2;
    subScalar(s: number): Vector2;
    subVectors(a: Vector2, b: Vector2): Vector2;
    multiply(v: Vector2): Vector2;
    multiplyScalar(scalar: number): Vector2;
    divide(v: Vector2): Vector2;
    divideScalar(scalar: number): Vector2;
    min(v: Point): Vector2;
    max(v: Point): Vector2;
    clamp(min: Vector2, max: Vector2): Vector2;
    private static clampScalar_min;
    private static clampScalar_max;
    clampScalar(minVal: number, maxVal: number): Vector2;
    clampLength(min: number, max: number): Vector2;
    floor(): Vector2;
    ceil(): Vector2;
    round(): Vector2;
    roundToZero(): Vector2;
    negate(): Vector2;
    dot(v: Vector2): number;
    lengthSq(): number;
    length(): number;
    lengthManhattan(): number;
    normalize(): Vector2;
    angle(): number;
    distanceTo(v: Vector2): number;
    distanceToSquared(v: Vector2): number;
    distanceToManhattan(v: Vector2): number;
    setLength(length: number): Vector2;
    lerp(v: Vector2, alpha: number): Vector2;
    lerpVectors(v1: Vector2, v2: Vector2, alpha: number): Vector2;
    equals(v: Vector2): boolean;
    fromArray(array: Float32Array | number[], offset?: number): Vector2;
    toArray(array?: Float32Array | number[], offset?: number): Float32Array | number[];
    fromAttribute(attribute: any, index: number, offset?: number): Vector2;
    rotateAround(center: Vector2, angle: number): Vector2;
}
//# sourceMappingURL=Vector2.d.ts.map