import { echarts, ECOption } from '@/components/base/echarts/core'

/**
 * 图表数据集
 */
export interface EchartsDataset {
    invalid: number[]; // 行情历史数据中所有补充数据的索引位置(用于指标计算)
    rawDate: string[]; // 原始日期
    yestclose: number; // 昨日收盘价
    decimal: number; // 小数位
    maxMark: number; // Y轴最大刻度
    minMark: number; // Y轴最小刻度
    interval: number, // Y轴间隔高度
    timeline: {
        dimensions: (keyof Timeline)[];
        source: Timeline;
    }
}

/** 
 * 分时线
 */
export type Timeline = {
    date: string[], // xAxis数据，必须是第一个属性
    close: number[],
    ma5: string[],
}

/**
 * 图表配置项
 */
export interface EchartsOptions {
    colors: Colors;
    timeline: ECOption;
}

/**
 * 图表颜色
 */
export interface Colors {
    upColor: string,
    downColor: string,
    xAxisLineColor: string,
    yAxisLineColor: string,
    seriesLineColor: string,
    seriesMarkLabelColor: string,
    seriesMarkLineColor: string,
    seriesAreaGradients: echarts.LinearGradientObject,
}