| import * as zrUtil from 'zrender/lib/core/util.js'; | 
| import { DataHost, DimensionName, SeriesOption, ZRColor, ScaleDataValue, SeriesDataType, OptionEncodeValue, ColorBy } from '../util/types.js'; | 
| import ComponentModel from './Component.js'; | 
| import { PaletteMixin } from './mixin/palette.js'; | 
| import { DataFormatMixin } from '../model/mixin/dataFormat.js'; | 
| import Model from '../model/Model.js'; | 
| import GlobalModel from './Global.js'; | 
| import { CoordinateSystem } from '../coord/CoordinateSystem.js'; | 
| import { ExtendableConstructor, Constructor } from '../util/clazz.js'; | 
| import { PipelineContext, SeriesTask } from '../core/Scheduler.js'; | 
| import LegendVisualProvider from '../visual/LegendVisualProvider.js'; | 
| import SeriesData from '../data/SeriesData.js'; | 
| import Axis from '../coord/Axis.js'; | 
| import type { BrushCommonSelectorsForSeries, BrushSelectableArea } from '../component/brush/selector.js'; | 
| import makeStyleMapper from './mixin/makeStyleMapper.js'; | 
| import { SourceManager } from '../data/helper/sourceManager.js'; | 
| import { Source } from '../data/Source.js'; | 
| import { ECSymbol } from '../util/symbol.js'; | 
| import { Group } from '../util/graphic.js'; | 
| import { LegendIconParams } from '../component/legend/LegendModel.js'; | 
| export declare const SERIES_UNIVERSAL_TRANSITION_PROP = "__universalTransitionEnabled"; | 
| interface SeriesModel { | 
|     /** | 
|      * Convinient for override in extended class. | 
|      * Implement it if needed. | 
|      */ | 
|     preventIncremental(): boolean; | 
|     /** | 
|      * See tooltip. | 
|      * Implement it if needed. | 
|      * @return Point of tooltip. null/undefined can be returned. | 
|      */ | 
|     getTooltipPosition(dataIndex: number): number[]; | 
|     /** | 
|      * Get data indices for show tooltip content. See tooltip. | 
|      * Implement it if needed. | 
|      */ | 
|     getAxisTooltipData(dim: DimensionName[], value: ScaleDataValue, baseAxis: Axis): { | 
|         dataIndices: number[]; | 
|         nestestValue: any; | 
|     }; | 
|     /** | 
|      * Get position for marker | 
|      */ | 
|     getMarkerPosition(value: ScaleDataValue[]): number[]; | 
|     /** | 
|      * Get legend icon symbol according to each series type | 
|      */ | 
|     getLegendIcon(opt: LegendIconParams): ECSymbol | Group; | 
|     /** | 
|      * See `component/brush/selector.js` | 
|      * Defined the brush selector for this series. | 
|      */ | 
|     brushSelector(dataIndex: number, data: SeriesData, selectors: BrushCommonSelectorsForSeries, area: BrushSelectableArea): boolean; | 
|     enableAriaDecal(): void; | 
| } | 
| declare class SeriesModel<Opt extends SeriesOption = SeriesOption> extends ComponentModel<Opt> { | 
|     type: string; | 
|     defaultOption: SeriesOption; | 
|     seriesIndex: number; | 
|     coordinateSystem: CoordinateSystem; | 
|     dataTask: SeriesTask; | 
|     pipelineContext: PipelineContext; | 
|     legendVisualProvider: LegendVisualProvider; | 
|     visualStyleAccessPath: string; | 
|     visualDrawType: 'fill' | 'stroke'; | 
|     visualStyleMapper: ReturnType<typeof makeStyleMapper>; | 
|     ignoreStyleOnData: boolean; | 
|     hasSymbolVisual: boolean; | 
|     defaultSymbol: string; | 
|     legendIcon: string; | 
|     [SERIES_UNIVERSAL_TRANSITION_PROP]: boolean; | 
|     private _selectedDataIndicesMap; | 
|     readonly preventUsingHoverLayer: boolean; | 
|     static protoInitialize: void; | 
|     init(option: Opt, parentModel: Model, ecModel: GlobalModel): void; | 
|     /** | 
|      * Util for merge default and theme to option | 
|      */ | 
|     mergeDefaultAndTheme(option: Opt, ecModel: GlobalModel): void; | 
|     mergeOption(newSeriesOption: Opt, ecModel: GlobalModel): void; | 
|     fillDataTextStyle(data: ArrayLike<any>): void; | 
|     /** | 
|      * Init a data structure from data related option in series | 
|      * Must be overriden. | 
|      */ | 
|     getInitialData(option: Opt, ecModel: GlobalModel): SeriesData; | 
|     /** | 
|      * Append data to list | 
|      */ | 
|     appendData(params: { | 
|         data: ArrayLike<any>; | 
|     }): void; | 
|     /** | 
|      * Consider some method like `filter`, `map` need make new data, | 
|      * We should make sure that `seriesModel.getData()` get correct | 
|      * data in the stream procedure. So we fetch data from upstream | 
|      * each time `task.perform` called. | 
|      */ | 
|     getData(dataType?: SeriesDataType): SeriesData<this>; | 
|     getAllData(): ({ | 
|         data: SeriesData; | 
|         type?: SeriesDataType; | 
|     })[]; | 
|     setData(data: SeriesData): void; | 
|     getEncode(): zrUtil.HashMap<OptionEncodeValue, string>; | 
|     getSourceManager(): SourceManager; | 
|     getSource(): Source; | 
|     /** | 
|      * Get data before processed | 
|      */ | 
|     getRawData(): SeriesData; | 
|     getColorBy(): ColorBy; | 
|     isColorBySeries(): boolean; | 
|     /** | 
|      * Get base axis if has coordinate system and has axis. | 
|      * By default use coordSys.getBaseAxis(); | 
|      * Can be overrided for some chart. | 
|      * @return {type} description | 
|      */ | 
|     getBaseAxis(): Axis; | 
|     /** | 
|      * Default tooltip formatter | 
|      * | 
|      * @param dataIndex | 
|      * @param multipleSeries | 
|      * @param dataType | 
|      * @param renderMode valid values: 'html'(by default) and 'richText'. | 
|      *        'html' is used for rendering tooltip in extra DOM form, and the result | 
|      *        string is used as DOM HTML content. | 
|      *        'richText' is used for rendering tooltip in rich text form, for those where | 
|      *        DOM operation is not supported. | 
|      * @return formatted tooltip with `html` and `markers` | 
|      *        Notice: The override method can also return string | 
|      */ | 
|     formatTooltip(dataIndex: number, multipleSeries?: boolean, dataType?: SeriesDataType): ReturnType<DataFormatMixin['formatTooltip']>; | 
|     isAnimationEnabled(): boolean; | 
|     restoreData(): void; | 
|     getColorFromPalette(name: string, scope: any, requestColorNum?: number): ZRColor; | 
|     /** | 
|      * Use `data.mapDimensionsAll(coordDim)` instead. | 
|      * @deprecated | 
|      */ | 
|     coordDimToDataDim(coordDim: DimensionName): DimensionName[]; | 
|     /** | 
|      * Get progressive rendering count each step | 
|      */ | 
|     getProgressive(): number | false; | 
|     /** | 
|      * Get progressive rendering count each step | 
|      */ | 
|     getProgressiveThreshold(): number; | 
|     select(innerDataIndices: number[], dataType?: SeriesDataType): void; | 
|     unselect(innerDataIndices: number[], dataType?: SeriesDataType): void; | 
|     toggleSelect(innerDataIndices: number[], dataType?: SeriesDataType): void; | 
|     getSelectedDataIndices(): number[]; | 
|     isSelected(dataIndex: number, dataType?: SeriesDataType): boolean; | 
|     isUniversalTransitionEnabled(): boolean; | 
|     private _innerSelect; | 
|     private _initSelectedMapFromData; | 
|     static registerClass(clz: Constructor): Constructor; | 
| } | 
| interface SeriesModel<Opt extends SeriesOption = SeriesOption> extends DataFormatMixin, PaletteMixin<Opt>, DataHost { | 
|     /** | 
|      * Get dimension to render shadow in dataZoom component | 
|      */ | 
|     getShadowDim?(): string; | 
| } | 
| export declare type SeriesModelConstructor = typeof SeriesModel & ExtendableConstructor; | 
| export default SeriesModel; |