import type { ReadonlyVector2 } from "../../math/ReadonlyVector2";
import type { ReadonlyColor } from "../../render/ReadonlyColor";
import { CssRenderer } from "./CssRenderer";
/**
 * css2d polygon renderer
 *
 * this renderer use svg tag to render polygon
 */
export declare class CssPolygonRenderer2D extends CssRenderer<HTMLDivElement> {
    private _svgElement;
    private readonly _points;
    private _width;
    private _height;
    private readonly _color;
    private readonly _borderColor;
    private _borderWidth;
    protected renderInitialize(): void;
    protected updateCenterOffset(updateTransform: boolean): void;
    protected updateViewScale(updateTransform: boolean): void;
    private updateCssSize;
    private createPolygonPoints;
    /**
     * polygon points (default: [(-2, -2), (2, -2), (2, 2), (-2, 2)])
     */
    get points(): readonly ReadonlyVector2[];
    /**
     * polygon points (default: [(-2, -2), (2, -2), (2, 2), (-2, 2)])
     */
    set points(value: readonly ReadonlyVector2[]);
    /**
     * set polygon points to regular polygon
     * @param sides number of sides
     * @param radius radius of polygon
     */
    setShapeToRegularPolygon(sides: number, radius: number): void;
    /**
     * color (default: "#39C5BB")
     */
    get color(): ReadonlyColor;
    /**
     * color (default: "#39C5BB")
     */
    set color(value: ReadonlyColor);
    /**
     * border color (default: "#00FF00")
     */
    get borderColor(): ReadonlyColor;
    /**
     * border color (default: "#00FF00")
     */
    set borderColor(value: ReadonlyColor);
    /**
     * border width (default: 0)
     */
    get borderWidth(): number;
    /**
     * border width (default: 0)
     */
    set borderWidth(value: number);
}
