// Type definitions for echarts // Project: http://echarts.baidu.com/ // Definitions by: Xie Jingyang , AntiMoron // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 declare namespace echarts { function init(dom: HTMLDivElement | HTMLCanvasElement, theme?: Object | string, opts?: { devicePixelRatio?: number renderer?: string }): ECharts; const graphic: Graphic; interface Graphic { clipPointsByRect(points: number[][], rect: ERectangle): number[][]; clipRectByRect(targetRect: ERectangle, rect: ERectangle): ERectangle; LinearGradient: { new(x: number, y: number, x2: number, y2: number, colorStops: Array, globalCoord?: boolean): LinearGradient } } function connect(group: string | Array): void; function disConnect(group: string): void; function dispose(target: ECharts | HTMLDivElement | HTMLCanvasElement): void; function getInstanceByDom(target: HTMLDivElement | HTMLCanvasElement): void; function registerMap(mapName: string, geoJson: Object, specialAreas?: Object): void; function registerTheme(themeName: string, theme: Object): void; interface MapObj { /** geoJson data for map */ geoJson: object, /** special areas fro map */ specialAreas: object } function getMap(mapName: string): MapObj; interface LinearGradient { colorStops: Array; global: boolean; type: string; x: number x2: number y: number y2: number } interface ECharts { group: string setOption(option: EChartOption, notMerge?: boolean, notRefreshImmediately?: boolean): void getWidth(): number getHeight(): number getDom(): HTMLCanvasElement | HTMLDivElement getOption(): Object resize(): void dispatchAction(payload: Object): void on(eventName: string, handler: Function, context?: Object): void off(eventName: string, handler?: Function): void showLoading(type?: string, opts?: Object): void hideLoading(): void getDataURL(opts: { /** 导出的格式,可选 png, jpeg */ type?: string, /** 导出的图片分辨率比例,默认为 1。*/ pixelRatio?: number, /** 导出的图片背景色,默认使用 option 里的 backgroundColor */ backgroundColor?: string }): string getConnectedDataURL(opts: { /** 导出的格式,可选 png, jpeg */ type: string, /** 导出的图片分辨率比例,默认为 1。 */ pixelRatio: number, /** 导出的图片背景色,默认使用 option 里的 backgroundColor */ backgroundColor: string }): string clear(): void isDisposed(): boolean dispose(): void /** 转换逻辑点到像素 */ convertToPixel(finder: ConvertFinder | string, value: string | Array): string | Array convertFromPixel(finder: ConvertFinder | string, value: Array | string): Array | string containPixel(finder: ConvertFinder | string, /** 要被判断的点,为像素坐标值,以 echarts 实例的 dom 节点的左上角为坐标 [0, 0] 点。*/ value: any[]): boolean } interface ConvertFinder { seriesIndex?: number, seriesId?: string, seriesName?: string, geoIndex?: number, geoId?: string, geoName?: string, xAxisIndex?: number, xAxisId?: string, xAxisName?: string, yAxisIndex?: number, yAxisId?: string, yAxisName?: string, gridIndex?: number, gridId?: string gridName?: string } interface ERectangle { x: number, y: number, width: number, height: number } interface EChartOption { title?: EChartTitleOption legend?: Object, grid?: Object, xAxis?: Object, yAxis?: Object, polar?: Object, radiusAxis?: Object, angleAxis?: Object, radar?: Object, dataZoom?: Array, visualMap?: Array, tooltip?: Object, toolbox?: Object, geo?: Object, parallel?: Object, parallelAxis?: Object, timeline?: Object, series?: Array, color?: Array, backgroundColor?: string, textStyle?: Object, animation?: boolean, animationDuration?: number, animationEasing?: string, animationDurationUpdate?: number, animationEasingUpdate?: string } interface EChartTitleOption { show?: boolean; text?: string; link?: string, target?: string, textStyle?: Object, subtext?: string, sublink?: string, subtarget?: string, subtextStyle?: Object, padding?: number, itemGap?: number, zlevel?: number, z?: number, left?: string, top?: string, right?: string, bottom?: string, backgroundColor?: string, borderColor?: string, borderWidth?: number, shadowBlur?: number, shadowColor?: number, shadowOffsetX?: number, shadowOffsetY?: number, } } declare module 'echarts' { export = echarts; } declare module 'echarts/lib/echarts' { export = echarts; }