import { DimensionDefinitionLoose, OptionEncode, OptionEncodeValue, EncodeDefaulter, OptionSourceData, DimensionName, DimensionDefinition, DataVisualDimensions, DimensionIndex } from '../../util/types.js';
|
import SeriesDimensionDefine from '../SeriesDimensionDefine.js';
|
import { HashMap } from 'zrender/lib/core/util.js';
|
import OrdinalMeta from '../OrdinalMeta.js';
|
import { Source } from '../Source.js';
|
import { SeriesDataSchema } from './SeriesDataSchema.js';
|
export interface CoordDimensionDefinition extends DimensionDefinition {
|
dimsDef?: (DimensionName | {
|
name: DimensionName;
|
defaultTooltip?: boolean;
|
})[];
|
otherDims?: DataVisualDimensions;
|
ordinalMeta?: OrdinalMeta;
|
coordDim?: DimensionName;
|
coordDimIndex?: DimensionIndex;
|
}
|
export declare type CoordDimensionDefinitionLoose = CoordDimensionDefinition['name'] | CoordDimensionDefinition;
|
export declare type PrepareSeriesDataSchemaParams = {
|
coordDimensions?: CoordDimensionDefinitionLoose[];
|
/**
|
* Will use `source.dimensionsDefine` if not given.
|
*/
|
dimensionsDefine?: DimensionDefinitionLoose[];
|
/**
|
* Will use `source.encodeDefine` if not given.
|
*/
|
encodeDefine?: HashMap<OptionEncodeValue, DimensionName> | OptionEncode;
|
dimensionsCount?: number;
|
/**
|
* Make default encode if user not specified.
|
*/
|
encodeDefaulter?: EncodeDefaulter;
|
generateCoord?: string;
|
generateCoordCount?: number;
|
/**
|
* If be able to omit unused dimension
|
* Used to improve the performance on high dimension data.
|
*/
|
canOmitUnusedDimensions?: boolean;
|
};
|
/**
|
* For outside usage compat (like echarts-gl are using it).
|
*/
|
export declare function createDimensions(source: Source | OptionSourceData, opt?: PrepareSeriesDataSchemaParams): SeriesDimensionDefine[];
|
/**
|
* This method builds the relationship between:
|
* + "what the coord sys or series requires (see `coordDimensions`)",
|
* + "what the user defines (in `encode` and `dimensions`, see `opt.dimensionsDefine` and `opt.encodeDefine`)"
|
* + "what the data source provids (see `source`)".
|
*
|
* Some guess strategy will be adapted if user does not define something.
|
* If no 'value' dimension specified, the first no-named dimension will be
|
* named as 'value'.
|
*
|
* @return The results are always sorted by `storeDimIndex` asc.
|
*/
|
export default function prepareSeriesDataSchema(source: Source | OptionSourceData, opt?: PrepareSeriesDataSchemaParams): SeriesDataSchema;
|