import { Entity } from "../entity";
import { Board } from "../board";
export declare class Oval extends Entity {
    private _strokeColor;
    private _fillColor;
    private _hoverStrokeColor;
    private _hoverFillColor;
    private _clickStrokeColor;
    private _clickFillColor;
    private _radiusX;
    private _radiusY;
    private _clicked;
    /**
     *
     * @param centerX Oval center X
     * @param centerY Oval center Y
     * @param radiusX Orizontal radius
     * @param radiusY Vertical radius
     * @param strokeColor
     * @param fillColor
     * @param hoverStrokeColor
     * @param hoverFillColor
     * @param clickStrokeColor
     * @param clickFillColor
     */
    constructor(centerX: number, centerY: number, radiusX: number, radiusY: number, strokeColor?: string | null, fillColor?: string | null, hoverStrokeColor?: string | null, hoverFillColor?: string | null, clickStrokeColor?: string | null, clickFillColor?: string | null);
    init(board: Board): void;
    private onMouseDown;
    private onMouseUp;
    private onMouseEnter;
    private onMouseLeave;
    get clicked(): boolean;
    set clicked(clicked: boolean);
    draw(ctx: CanvasRenderingContext2D): void;
    getPath2D(): Path2D;
    update(delta: number): void;
    /*********************
     * Getters & Setters *
     *********************/
    get hoverFillColor(): string;
    set hoverFillColor(value: string);
    get hoverStrokeColor(): string;
    set hoverStrokeColor(value: string);
    get fillColor(): string;
    set fillColor(value: string);
    get strokeColor(): string;
    set strokeColor(value: string);
    get clickFillColor(): string;
    set clickFillColor(value: string);
    get clickStrokeColor(): string;
    set clickStrokeColor(value: string);
    get radiusX(): number;
    set radiusX(value: number);
    get radiusY(): number;
    set radiusY(value: number);
}
