| import SeriesData from '../SeriesData.js'; | 
| import { DimensionName, DimensionIndex } from '../../util/types.js'; | 
| import { DataStoreDimensionType } from '../DataStore.js'; | 
| import { SeriesDataSchema } from './SeriesDataSchema.js'; | 
| export declare type DimensionSummaryEncode = { | 
|     defaultedLabel: DimensionName[]; | 
|     defaultedTooltip: DimensionName[]; | 
|     [coordOrVisualDimName: string]: DimensionName[]; | 
| }; | 
| export declare type DimensionSummary = { | 
|     encode: DimensionSummaryEncode; | 
|     userOutput: DimensionUserOuput; | 
|     dataDimsOnCoord: DimensionName[]; | 
|     dataDimIndicesOnCoord: DimensionIndex[]; | 
|     encodeFirstDimNotExtra: { | 
|         [coordDim: string]: DimensionName; | 
|     }; | 
| }; | 
| export declare type DimensionUserOuputEncode = { | 
|     [coordOrVisualDimName: string]: DimensionIndex[]; | 
| }; | 
| declare class DimensionUserOuput { | 
|     private _encode; | 
|     private _cachedDimNames; | 
|     private _schema?; | 
|     constructor(encode: DimensionUserOuputEncode, dimRequest?: SeriesDataSchema); | 
|     get(): { | 
|         fullDimensions: DimensionName[]; | 
|         encode: DimensionUserOuputEncode; | 
|     }; | 
|     /** | 
|      * Get all data store dimension names. | 
|      * Theoretically a series data store is defined both by series and used dataset (if any). | 
|      * If some dimensions are omitted for performance reason in `this.dimensions`, | 
|      * the dimension name may not be auto-generated if user does not specify a dimension name. | 
|      * In this case, the dimension name is `null`/`undefined`. | 
|      */ | 
|     private _getFullDimensionNames; | 
| } | 
| export declare function summarizeDimensions(data: SeriesData, schema?: SeriesDataSchema): DimensionSummary; | 
| export declare function getDimensionTypeByAxis(axisType: string): DataStoreDimensionType; | 
| export {}; |