import Overlay from "../Overlay";
import { T_Position } from "../../common/type";
/**
 * 圆柱
 * @noInheritDoc
 * @example
 * ```ts
 * let position = new BC.Position(120, 20)
 * let cylinder = new BC.Cylinder(position, 20, 30, 40)
 * ```
 */
declare class Cylinder extends Overlay {
    private _position;
    private _length;
    private _topRadius;
    private _bottomRadius;
    /**
     *
     * @param position 位置
     * @param length 长度
     * @param topRadius 上半径
     * @param bottomRadius 下半径
     */
    constructor(position: T_Position, length: number, topRadius: number, bottomRadius: number);
    get type(): any;
    set position(position: T_Position);
    get position(): T_Position;
    set length(length: number);
    get length(): number;
    set topRadius(topRadius: number);
    get topRadius(): number;
    set bottomRadius(bottomRadius: number);
    get bottomRadius(): number;
    _mountedHook(): void;
    /**
     *
     * @param  text
     * @param  textStyle
     */
    setLabel(text: string, textStyle: any): this;
    /**
     * 设置风格
     * @param style
     * @returns {Cylinder}
     * @example
     * ```json
     * // 样式参数(可选)
     * {
     *   "heightReference": 0, //高度参照，0：位置无参照，位置是绝对的，1：位置固定在地形上 2：位置高度是指地形上方的高度。
     *   "fill": true, //是否用提供的材料填充多边形。
     *   "material": BC.Color.WHITE, //材质
     *   "outline": false, //是否显示边框
     *   "outlineColor": BC.Color.BLACK, //边框颜色
     *   "outlineWidth": 0, //边框宽度
     *   "shadows": 0, //阴影类型，0：禁用、1：启用 、2：投射、3：接受
     *   "distanceDisplayCondition": {
     *     "near": 0, //最近距离
     *     "far": Number.MAX_VALUE //最远距离
     *   } //根据距离设置可见
     * }
     * ```
     */
    setStyle(style: any): this;
}
export default Cylinder;
