import type { Point3d } from "@itwin/core-geometry";
import { MeasurementToolModel } from "../api/MeasurementToolModel.js";
import { RadiusMeasurement } from "../measurements/RadiusMeasurement.js";
declare enum State {
    SetMeasurementViewport = 0,
    SetStartPoint = 1,
    SetMidPoint = 2,
    SetEndPoint = 3
}
/** Tool model for measuring radius using 3-points */
export declare class MeasureRadiusToolModel extends MeasurementToolModel<RadiusMeasurement> {
    static State: typeof State;
    private _currentMeasurement?;
    private _currentViewportType?;
    private _currentState;
    constructor();
    get currentState(): State;
    get dynamicMeasurement(): RadiusMeasurement | undefined;
    setMeasurementViewport(viewType: string): boolean;
    setStartPoint(viewType: string, point: Point3d, isDynamic: boolean): boolean;
    setMidPoint(viewType: string, point: Point3d, isDynamic: boolean): boolean;
    setEndPoint(viewType: string, point: Point3d, isDynamic: boolean): boolean;
    private _moveToNextState;
    reset(clearMeasurements: boolean): void;
}
export {};
//# sourceMappingURL=MeasureRadiusToolModel.d.ts.map