import { type PixelSize, _ModuleSupport } from 'ag-charts-community';
import { LineTextProperties } from '../annotationProperties';
import { type AnnotationOptionsColorPickerType, AnnotationType, type Point } from '../annotationTypes';
import { StartEndProperties } from '../properties/startEndProperties';
declare const MeasurerStatisticsDivider_base: {
    new (...args: any[]): {
        stroke?: string;
        strokeOpacity?: number;
        strokeWidth?: number;
    };
} & typeof _ModuleSupport.BaseProperties;
declare class MeasurerStatisticsDivider extends MeasurerStatisticsDivider_base {
}
declare const MeasurerStatistics_base: {
    new (...args: any[]): {
        fontStyle?: import("ag-charts-community").FontStyle;
        fontWeight?: import("ag-charts-community").FontWeight;
        fontSize: number;
        fontFamily: string;
        color?: string;
    };
} & {
    new (...args: any[]): {
        fill?: string;
        fillOpacity?: number;
    };
} & {
    new (...args: any[]): {
        stroke?: string;
        strokeOpacity?: number;
        strokeWidth?: number;
    };
} & typeof _ModuleSupport.BaseProperties;
declare class MeasurerStatistics extends MeasurerStatistics_base {
    divider: MeasurerStatisticsDivider;
}
declare const MeasurerDirectionProperties_base: {
    new (...args: any[]): {
        fill?: string;
        fillOpacity?: number;
    };
} & {
    new (...args: any[]): {
        stroke?: string;
        strokeOpacity?: number;
        strokeWidth?: number;
    };
} & {
    new (...args: any[]): {
        handle: {
            stroke?: string;
            strokeOpacity?: number;
            strokeWidth?: number;
            lineCap?: _ModuleSupport.ShapeLineCap;
            computedLineDash?: PixelSize[];
            lineDash?: number[];
            lineDashOffset?: number;
            lineStyle?: import("ag-charts-community").AgAnnotationLineStyleType;
            fill?: string;
            fillOpacity?: number;
            handleUnknownProperties(_unknownKeys: Set<string>, _properties: object): void;
            set(properties: object): /*elided*/ any;
            isValid<TContext = Omit<object, "type">>(this: TContext, warningPrefix?: string): boolean;
            toJson<J>(this: J): object;
        };
    };
} & typeof _ModuleSupport.BaseProperties;
declare class MeasurerDirectionProperties extends MeasurerDirectionProperties_base {
    statistics: MeasurerStatistics;
}
declare const MeasurerTypeProperties_base: {
    new (...args: any[]): {
        localeManager?: _ModuleSupport.ModuleContext["localeManager"];
        setLocaleManager(localeManager: _ModuleSupport.ModuleContext["localeManager"]): void;
    };
} & {
    new (...args: any[]): {
        background: {
            fill?: string;
            fillOpacity?: number;
            handleUnknownProperties(_unknownKeys: Set<string>, _properties: object): void;
            set(properties: object): /*elided*/ any;
            isValid<TContext = Omit<object, "type">>(this: TContext, warningPrefix?: string): boolean;
            toJson<J>(this: J): object;
        };
    };
} & {
    new (...args: any[]): {
        stroke?: string;
        strokeOpacity?: number;
        strokeWidth?: number;
    };
} & {
    new (...args: any[]): {
        lineCap?: _ModuleSupport.ShapeLineCap;
        computedLineDash?: PixelSize[];
        lineDash?: number[];
        lineDashOffset?: number;
        lineStyle?: import("ag-charts-community").AgAnnotationLineStyleType;
    };
} & typeof StartEndProperties;
export declare class MeasurerTypeProperties extends MeasurerTypeProperties_base {
    direction: 'both' | 'horizontal' | 'vertical';
    hasDateRange: boolean;
    hasPriceRange: boolean;
    statistics: MeasurerStatistics;
    getVolume: (from: Point['x'], to: Point['x']) => number | undefined;
    text: LineTextProperties;
    getDefaultColor(colorPickerType: AnnotationOptionsColorPickerType): string | undefined;
    getDefaultOpacity(colorPickerType: AnnotationOptionsColorPickerType): number | undefined;
    getLineDash(): PixelSize[] | undefined;
    getLineCap(): _ModuleSupport.ShapeLineCap | undefined;
}
declare const DateRangeProperties_base: {
    new (...args: any[]): {
        hasDateRange: boolean;
    };
} & typeof MeasurerTypeProperties;
export declare class DateRangeProperties extends DateRangeProperties_base {
    static is(this: void, value: unknown): value is DateRangeProperties;
    type: AnnotationType.DateRange;
    extendAbove?: boolean;
    extendBelow?: boolean;
    direction: "horizontal";
}
declare const PriceRangeProperties_base: {
    new (...args: any[]): {
        hasPriceRange: boolean;
    };
} & typeof MeasurerTypeProperties;
export declare class PriceRangeProperties extends PriceRangeProperties_base {
    static is(this: void, value: unknown): value is PriceRangeProperties;
    type: AnnotationType.PriceRange;
    extendLeft?: boolean;
    extendRight?: boolean;
    direction: "vertical";
}
declare const DatePriceRangeProperties_base: {
    new (...args: any[]): {
        hasDateRange: boolean;
    };
} & {
    new (...args: any[]): {
        hasPriceRange: boolean;
    };
} & typeof MeasurerTypeProperties;
export declare class DatePriceRangeProperties extends DatePriceRangeProperties_base {
    static is(this: void, value: unknown): value is DatePriceRangeProperties;
    type: AnnotationType.DatePriceRange;
    direction: "both";
}
declare const QuickDatePriceRangeProperties_base: {
    new (...args: any[]): {
        hasDateRange: boolean;
    };
} & {
    new (...args: any[]): {
        hasPriceRange: boolean;
    };
} & typeof MeasurerTypeProperties;
export declare class QuickDatePriceRangeProperties extends QuickDatePriceRangeProperties_base {
    static is(this: void, value: unknown): value is QuickDatePriceRangeProperties;
    type: AnnotationType.QuickDatePriceRange;
    up: MeasurerDirectionProperties;
    down: MeasurerDirectionProperties;
    direction: "both";
}
export {};
