import { HashMap } from 'zrender/esm/core/util';
import { SourceFormat, SeriesLayoutBy, DimensionDefinition, OptionEncodeValue, OptionSourceData, DimensionName, OptionSourceHeader, DimensionDefinitionLoose } from '../util/types';
export interface SourceMetaRawOption {
    seriesLayoutBy: SeriesLayoutBy;
    sourceHeader: OptionSourceHeader;
    dimensions: DimensionDefinitionLoose[];
}
declare class Source {
    readonly data: OptionSourceData;
    readonly sourceFormat: SourceFormat;
    readonly seriesLayoutBy: SeriesLayoutBy;
    readonly dimensionsDefine: DimensionDefinition[];
    readonly encodeDefine: HashMap<OptionEncodeValue, DimensionName>;
    readonly startIndex: number;
    readonly dimensionsDetectCount: number;
    readonly metaRawOption: SourceMetaRawOption;
    constructor(fields: {
        data: OptionSourceData;
        sourceFormat: SourceFormat;
        seriesLayoutBy?: SeriesLayoutBy;
        dimensionsDefine?: DimensionDefinition[];
        startIndex?: number;
        dimensionsDetectCount?: number;
        metaRawOption?: SourceMetaRawOption;
        encodeDefine?: HashMap<OptionEncodeValue, DimensionName>;
    });
    static seriesDataToSource(data: OptionSourceData): Source;
}
export default Source;
