/// <reference types="react" resolution-mode="require"/>
/// <reference types="web" />
import * as d3 from 'd3';
import { Data, GaugeShapeOption } from '../../types/index.js';
import { PolarShape } from './index.js';
/**
 * Gauge
 */
export default class Gauge extends PolarShape<GaugeShapeOption> {
    type: string;
    pieGuide: d3.Selection<SVGTextElement, unknown, null, undefined>;
    pieDescription: d3.Selection<SVGTextElement, unknown, null, undefined>;
    svgEl: d3.Selection<SVGSVGElement, unknown, null, undefined>;
    data: Data;
    get nullData(): boolean;
    get colorVar(): Record<string, string>;
    get total(): number;
    get max(): number;
    startAngle: number;
    endAngle: number;
    init(): void;
    render(): void;
    renderText(): void;
    renderPie(): void;
    handlePieColor(value: number, colors: Array<[number, string]>): string;
    renderLabel(): void;
    /**
     * 截断文本并添加省略号
     * @param text 原始文本
     * @param fontSize 字体大小
     * @param maxWidth 最大宽度
     * @returns 处理后的文本
     */
    truncateText(text: string, fontSize: number, maxWidth: number): string;
    redraw(): void;
}
