import { type AgAxisContinuousIntervalOptions, type AgChartLegendPosition, type AgGradientLegendLabelOptions, type AgGradientLegendOptions, type AgGradientLegendScaleOptions, type Padding, _ModuleSupport } from 'ag-charts-community';
import { BaseProperties, Border, type DynamicContext, type NormalisedGradientLegendIntervalOptions, type NormalisedGradientLegendLabelOptions } from 'ag-charts-core';
declare class GradientBar extends BaseProperties {
    thickness: number;
    preferredLength: number;
}
declare class GradientLegendScale extends BaseProperties<AgGradientLegendScaleOptions> implements Omit<AgGradientLegendScaleOptions, 'label'> {
    protected config: {
        label: NormalisedGradientLegendLabelOptions | undefined;
        interval: NormalisedGradientLegendIntervalOptions | undefined;
        padding: number;
    };
    constructor(config: {
        label: NormalisedGradientLegendLabelOptions | undefined;
        interval: NormalisedGradientLegendIntervalOptions | undefined;
        padding: number;
    });
    label?: AgGradientLegendLabelOptions;
    interval?: AgAxisContinuousIntervalOptions<number>;
    padding?: number;
}
export declare class GradientLegend extends BaseProperties<AgGradientLegendOptions> {
    readonly ctx: DynamicContext<_ModuleSupport.ChartRegistry>;
    static readonly className = "GradientLegend";
    readonly id: string;
    private readonly legendGroup;
    private readonly containerNode;
    private readonly gradientRectSelection;
    private readonly arrowSelection;
    private readonly ticksGroupSelection;
    private readonly scaleConfig;
    private readonly axisTicks;
    private enabledData;
    private readonly cleanup;
    enabled: boolean;
    position: AgChartLegendPosition;
    reverseOrder: boolean;
    readonly gradient: GradientBar;
    private isVertical;
    /**
     * Spacing between the legend and the edge of the chart's element.
     */
    spacing: number;
    border: Border;
    cornerRadius: number;
    fill?: string;
    fillOpacity: number;
    padding: Padding;
    scale: GradientLegendScale;
    data: _ModuleSupport.GradientLegendDatum[];
    constructor(ctx: DynamicContext<_ModuleSupport.ChartRegistry>);
    destroy(): void;
    attachLegend(scene: _ModuleSupport.Scene): void;
    private onStartLayout;
    private updateGradientRect;
    private updateAxis;
    private updateContainer;
    private updateArrows;
    private getMeasurements;
    private getContainerStyles;
}
export {};
