import * as PIXI from "pixi.js-legacy";
import * as MedsurfDraw from "../../public-api";
import { BaseGenerator } from "../../bases/generators/BaseGenerator";
import { PositionPointGeneratorModel } from "../positionings/PositionPointGenerator";
export declare class EllipsePrimitiveGeneratorModel extends PositionPointGeneratorModel {
    startElement?: MedsurfDraw.PositionPoint;
    rotateWithLine: boolean;
    withScaling: boolean;
    triggerImmediateEndDraw: boolean;
}
export declare class EllipsePrimitiveGenerator extends BaseGenerator<MedsurfDraw.Image, EllipsePrimitiveGeneratorModel> {
    protected _positionPointGenerator: MedsurfDraw.PositionPointGenerator;
    protected _drawInteraction: MedsurfDraw.DrawInteraction<MedsurfDraw.EllipsePrimitive>;
    protected _ellipsePrimitiveElement: MedsurfDraw.EllipsePrimitive;
    constructor(model: EllipsePrimitiveGeneratorModel);
    start(event: PIXI.InteractionEvent): void;
    end(): void;
    destroy(options?: {
        children?: boolean;
        texture?: boolean;
        baseTexture?: boolean;
    }): void;
    endGenerator(): void;
    abortGenerator(): void;
    startPositionPointGenerator(): void;
    updatePositionPointGenerator(): void;
    endPositionPointGeneratorScale(): void;
    endPositionPointGenerator(): void;
    startScale(): void;
    abortPositionPointGenerator(): void;
    endEllipsePrimitiveDraw(): void;
    abortEllipsePrimitiveDraw(): void;
    get drawInteraction(): MedsurfDraw.DrawInteraction<MedsurfDraw.EllipsePrimitive>;
    get positionPointElement(): MedsurfDraw.PositionPoint;
    get ellipsePrimitiveElement(): MedsurfDraw.EllipsePrimitive;
    get stickMode(): MedsurfDraw.StickMode;
    set stickMode(value: MedsurfDraw.StickMode);
    get startElement(): MedsurfDraw.PositionPoint | undefined;
    set startElement(value: MedsurfDraw.PositionPoint | undefined);
    get rotateWithLine(): boolean;
    set rotateWithLine(value: boolean);
    get withScaling(): boolean;
    set withScaling(value: boolean);
    get triggerImmediateEndDraw(): boolean;
    set triggerImmediateEndDraw(value: boolean);
}
