import { Axis, type CreateXYAxisSeriesOptions, type IRenderContext, LineJoin, LineStyle, type OxyColor, type OxyRect, type PlotModelSerializeOptions, type ScreenPoint, TrackerHitResult, type TrackerStringFormatterArgs, XYAxisSeries } from '../..'; export interface HighLowItem { /** * The close value. */ close: number; /** * The high value. */ high: number; /** * The low value. */ low: number; /** * The open value. */ open: number; /** * The X value (time). */ x: number; } export declare function createHighLowItem(x: number, high: number, low: number, open?: number, close?: number): HighLowItem; export interface HighLowSeriesTrackerStringFormatterArgs extends TrackerStringFormatterArgs { readonly item?: HighLowItem; readonly close?: number; readonly high?: number; readonly low?: number; readonly open?: number; } export type HighLowSeriesTrackerStringFormatterType = (args: HighLowSeriesTrackerStringFormatterArgs) => string | undefined; export interface CreateHighLowSeriesOptions extends CreateXYAxisSeriesOptions { color?: OxyColor; dataFieldClose?: string; dataFieldHigh?: string; dataFieldLow?: string; dataFieldOpen?: string; dataFieldX?: string; lineJoin?: LineJoin; lineStyle?: LineStyle; strokeThickness?: number; tickLength?: number; trackerStringFormatter?: HighLowSeriesTrackerStringFormatterType; items?: HighLowItem[]; } export declare const DefaultHighLowSeriesOptions: CreateHighLowSeriesOptions; export declare const ExtendedDefaultHighLowSeriesOptions: { color?: string | undefined; dataFieldClose?: string | undefined; dataFieldHigh?: string | undefined; dataFieldLow?: string | undefined; dataFieldOpen?: string | undefined; dataFieldX?: string | undefined; lineJoin?: LineJoin | undefined; lineStyle?: LineStyle | undefined; strokeThickness?: number | undefined; tickLength?: number | undefined; trackerStringFormatter?: import('../..').TrackerStringFormatterType | HighLowSeriesTrackerStringFormatterType | undefined; items?: HighLowItem[] | undefined; xAxisKey?: string | undefined; yAxisKey?: string | undefined; itemsSource?: any[] | undefined; background?: string | undefined; isVisible?: boolean | undefined; title?: string | undefined; legendKey?: string | undefined; seriesGroupName?: string | undefined; renderInLegend?: boolean | undefined; trackerKey?: string | undefined; font?: string | undefined; fontSize?: number | undefined; fontWeight?: number | undefined; tag?: any; textColor?: string | undefined; edgeRenderingMode?: import('../..').EdgeRenderingMode | undefined; toolTip?: string | undefined; selectable?: boolean | undefined; selectionMode?: import('../..').SelectionMode | undefined; DefaultXYAxisSeriesOptions: CreateXYAxisSeriesOptions; }; /** * Represents a series for high-low plots. * See http://www.mathworks.com/help/toolbox/finance/highlowfts.html */ export declare class HighLowSeries extends XYAxisSeries { /** * The default tracker formatter */ static readonly DefaultTrackerStringFormatter: HighLowSeriesTrackerStringFormatterType; /** * High/low items */ private _items; /** * The default color. */ private _defaultColor; /** * Initializes a new instance of the HighLowSeries class. */ constructor(opt?: CreateHighLowSeriesOptions); getElementName(): string; /** * A format function used for the tracker. The default depends on the series. * The arguments for the formatter may be different for each type of series. See the documentation. */ trackerStringFormatter?: HighLowSeriesTrackerStringFormatterType; /** * Gets or sets the color of the item. */ color: OxyColor; /** * Gets the actual color of the item. */ get actualColor(): OxyColor; /** * Gets or sets the dashes array. * If this is not null it overrides the LineStyle property. */ dashes?: number[]; /** * Gets or sets the data field for the Close value. */ dataFieldClose?: string; /** * Gets or sets the data field for the High value. */ dataFieldHigh?: string; /** * Gets or sets the data field for the Low value. */ dataFieldLow?: string; /** * Gets or sets the data field for the Open value. */ dataFieldOpen?: string; /** * Gets or sets the x data field (time). */ dataFieldX?: string; /** * Gets the items of the series. */ get items(): HighLowItem[]; /** * Gets or sets the line join. */ lineJoin: LineJoin; /** * Gets or sets the line style. */ lineStyle: LineStyle; /** * Gets or sets the mapping delegate. * Example: series1.mapping = item => new HighLowItem(((MyType)item).Time,((MyType)item).Value); */ mapping?: (item: any) => HighLowItem; /** * Gets or sets the thickness of the curve. */ strokeThickness: number; /** * Gets or sets the length of the open/close ticks (screen coordinates). */ tickLength: number; /** * Gets the point on the series that is nearest the specified point. * @param point The point. * @param interpolate Interpolate the series if this flag is set to true. * @returns A TrackerHitResult for the current hit. */ getNearestPoint(point: ScreenPoint, interpolate: boolean): TrackerHitResult | undefined; protected formatHighLowItemTrackerString(item: HighLowItem): string; /** * Determines whether the point is valid. * @param pt The point. * @param xaxis The x-axis. * @param yaxis The y-axis. * @returns true if the specified point is valid; otherwise, false. */ isValidItem(pt: HighLowItem, xaxis: Axis, yaxis: Axis): boolean; /** * Renders the series on the specified render context. * @param rc The render context. */ render(rc: IRenderContext): Promise; /** * Renders the legend symbol for the series on the specified rendering context. * @param rc The rendering context. * @param legendBox The bounding rectangle of the legend box. */ renderLegend(rc: IRenderContext, legendBox: OxyRect): Promise; /** * Sets the default values. * @internal */ setDefaultValues(): void; /** * Updates the data. * @internal */ updateData(): void; /** * Updates the maximum and minimum values of the series. * @internal */ updateMaxMin(): void; protected getElementDefaultValues(): any; toJSON(opt?: PlotModelSerializeOptions): any; } //# sourceMappingURL=HighLowSeries.d.ts.map