import { DataBase, DataTableList } from '../../data'; import { ChartContext, DataType, LayerScale, LayerStyle } from '../../types'; /** * Integrate scales from different sources into the final scale. * @param defaultScale * Default scale means "new scale", has medium priority. * @param currentScale * Current scale means "old scale", has lowest priority. * @param incomingScale * Incoming scale means "new scale", has highest priority. * @returns * The final merged scale. */ export declare function createScale>(defaultScale: Scale, currentScale: Scale, incomingScale?: Scale): Scale & { nice: Partial<{ count: number; zero: boolean; fixedStep: number; fixedStart: number; }> & Partial<{ paddingInner: number; fixedPaddingInner: number; fixedBandwidth: number; fixedBoundary: "start" | "end"; }> & Partial<{ paddingInner: number; }>; }; /** * Check if the data type meets the layer requirements. * @param dataType * Only subclasses that inherit from the `DataBase` class are valid data sources. * @param currentData * Current data means "old data", has lowest priority. * @param incomingData * Incoming data means "new data", has highest priority. * @param filter * Just a callback method. * @returns */ export declare function createData>>(dataType: DataType, currentData: Data, incomingData: Data, filter?: (data: Data) => Data | void): Data; /** * Integrate styles from different sources into the final style. * @param context * Theme from chart context will be used to generate style. * @param defaultStyle * Default style means "new style", has medium priority. * @param currentStyle * Current style means "old style", has lowest priority. * @param incomingStyle * Incoming style means "new style", has highest priority. * @returns * The final merged style. */ export declare function createStyle