UNPKG

@syncfusion/ej2-charts

Version:

Feature-rich chart control with built-in support for over 25 chart types, technical indictors, trendline, zooming, tooltip, selection, crosshair and trackball.

170 lines (169 loc) 4.07 kB
import { Rect } from '@syncfusion/ej2-svg-base'; import { RangeNavigator, RangeSlider, PeriodsModel } from '../../range-navigator'; import { ExcelRowAndColumn } from '../../accumulation-chart'; import { IChartEventArgs } from '../../chart/model/chart-interface'; /** @private */ export interface IFontMapping { size?: string; color?: string; fontWeight?: string; fontStyle?: string; fontFamily?: string; opacity?: number; } /** @private */ export interface IShapes { renderOption?: Object; functionName?: string; } /** @private */ /** * Specifies the Theme style for scrollbar. */ export interface IScrollbarThemeStyle { backRect: string; thumb: string; circle: string; circleHover: string; arrow: string; grip: string; arrowHover?: string; backRectBorder?: string; } export interface ILegendRegions { rect: Rect; index: number; } /** * Period selector component interface * * @private */ export interface IPeriodSelectorControl { /** * Element for the control */ element: HTMLElement; /** * Series min value. */ seriesXMin: number; /** * Series max value. */ seriesXMax: number; /** * Start value for the axis. */ startValue: number; /** * End value for the axis. */ endValue: number; /** * Range slider instance. */ rangeSlider: RangeSlider; /** * To disable the range selector. */ disableRangeSelector: boolean; /** * To config period selector settings. */ periods: PeriodsModel[]; /** * Range navigator */ rangeNavigatorControl: RangeNavigator; } /** * Header Footer Content. * * @private */ export interface IPDFArgs { /** * Content of the header */ content: string; /** * FontSize of the content */ fontSize?: number; /** * x position for the content */ x?: number; /** * y position for the content */ y?: number; } /** * Interface representing the arguments passed to an event that occurs after exporting data. * * @interface * @private */ export interface IAfterExportEventArgs { /** Specifies the name of the event. */ name: string; /** Defines the event's cancellation status. */ cancel: boolean; /** Provides the data URL generated after exporting. */ dataUrl: string; } /** * Provides the event arguments for the chart export functionality. * */ export interface IExportEventArgs extends IChartEventArgs { /** * Specifies the width of the exported chart in pixels. * This value determines the width of the output file when exporting the chart as an image, PDF, or Excel file. * */ width: number; /** * Specifies the height of the exported chart in pixels. * This value determines the height of the output file when exporting the chart as an image, PDF, or Excel file. * */ height: number; /** * Defines additional properties related to the Excel export functionality. * This includes settings such as sheet name, cell formatting, and customization options for exported data. * * If not specified, the default Excel export settings will be applied. */ excelProperties?: ExcelProperties; } /** * Axis visible range. * * @public */ export interface VisibleRangeModel { /** Axis minimum value. */ min?: number; /** Axis maximum value. */ max?: number; /** Axis interval value. */ interval?: number; /** Axis delta value. */ delta?: number; } /** * Defines the properties related to Excel export for the chart. * These properties are applicable only when exporting the chart to an Excel file. * * @interface * @private */ export interface ExcelProperties { /** Specifies the collection of rows to be exported to the Excel sheet. */ rows: ExcelRowAndColumn[]; /** Specifies the collection of columns to be exported to the Excel sheet. */ columns: ExcelRowAndColumn[]; }