import Overlay from "../Overlay";
import { T_Position } from "../../common/type";
/**
 * 攻击箭头
 * @noInheritDoc
 * @example
 * ```ts
 * let attackArrow = new BC.AttackArrow('-90.0,32.0;-94.0,36.0;-94.0,38.0')
 * ```
 */
declare class AttackArrow extends Overlay {
    /**
     * @hidden
     */
    private _positions;
    /**
     * @hidden
     */
    private headHeightFactor;
    /**
     * @hidden
     */
    private headWidthFactor;
    /**
     * @hidden
     */
    private neckHeightFactor;
    /**
     * @hidden
     */
    private neckWidthFactor;
    /**
     * @hidden
     */
    private tailWidthFactor;
    /**
     * @hidden
     */
    private headTailFactor;
    /**
     * @hidden
     */
    private _primitive;
    /**
     * @param {T_Position} positions
     * @return {*}
     */
    constructor(positions: T_Position[]);
    get type(): any;
    set positions(positions: T_Position[]);
    get positions(): T_Position[];
    protected _updatePrimitive(): void;
    _getArrowPoints(positions: any): any[];
    _getArrowHeadPoints(points: any, tailLeft: any, tailRight: any): any[];
    protected _getArrowBodyPoints(points: any, neckLeft: any, neckRight: any, tailWidthFactor: any): any[];
    protected _getHierarchy(): Cesium.PolygonHierarchy;
    _mountedHook(): void;
    setLabel(text: string, textStyle: any): this;
    /**
     * 设置箭头风格
     * 详情参考：@see {@link Polygon}
     * @param style
     * @returns {AttackArrow}
     */
    setStyle(style: any): this;
}
export default AttackArrow;
