import { Point } from './coordinateUtils';
import { CheckObstaclePointErrorType } from '../../../../types';
export interface CreateObstacleElementProps {
    points?: Point[];
    /** 是否启用创建模式 */
    enabled?: boolean;
    /** SVG元素引用 */
    svgElement?: SVGSVGElement | null;
    /** Google Maps实例 */
    mapInstance?: any;
    styles?: {
        fillColor?: string;
        strokeColor?: string;
    };
    /** 点数变化的回调 */
    onPointsChange?: (points: Point[]) => void;
}
export interface CreateObstacleElementRef {
    /** 在十字准心位置添加点 */
    addPoint: () => {
        isValid?: boolean;
        reason?: string;
        code?: CheckObstaclePointErrorType;
    };
    /** 撤销最后一个点 */
    undoLastPoint: () => void;
    /** 清除所有点 */
    clear: () => void;
    /** 获取当前所有点 */
    getPoints: () => Point[];
    /** 获取当前点数量 */
    getPointCount: () => number;
}
/**
 * 十字准心点管理器组件
 * 处理十字准心位置打点，并在SVG中渲染点、线和多边形
 */
declare const CreateObstacleElement: import("react").ForwardRefExoticComponent<CreateObstacleElementProps & import("react").RefAttributes<CreateObstacleElementRef>>;
export default CreateObstacleElement;
//# sourceMappingURL=index.d.ts.map