import type { Shape } from "../../../../box2d.ts/build/index";
import type { ReadonlyVector2 } from "../../../math/ReadonlyVector2";
import { Collider2D } from "./Collider2D";
/**
 * Collider for 2D physics representing an arbitrary polygon defined by its vertices.
 */
export declare class PolygonCollider2D extends Collider2D {
    private readonly _points;
    private _debugDraw;
    private _debugObject;
    private _debugRenderer;
    private updateDebugDraw;
    onEnable(): void;
    onDisable(): void;
    private readonly _shapeArray;
    protected createShapes(): Shape[];
    /**
     * Corner points that define the collider's shape in local space. (default: [(-2, -2), (2, -2), (2, 2), (-2, 2)])
     */
    get points(): readonly ReadonlyVector2[];
    /**
     * Corner points that define the collider's shape in local space. (default: [(-2, -2), (2, -2), (2, 2), (-2, 2)])
     */
    set points(value: readonly ReadonlyVector2[]);
    /**
     * set shape to regular polygon with given number of sides and radius
     * @param sides number of sides
     * @param radius radius
     */
    setShapeToRegularPolygon(sides: number, radius: number): void;
    /**
     * if true, the collider will be rendered (default: false)
     */
    get debugDraw(): boolean;
    /**
     * if true, the collider will be rendered (default: false)
     */
    set debugDraw(value: boolean);
}
