import dayjs, { ConfigType } from 'dayjs';
import { ChartDataItem } from '../view-chart/types';
import { ContextChartService } from './chart.service';
import { ContextItem } from './common';
import { ViewOptions } from './types';
export declare enum ScaleType {
    'TIME' = "time",
    'LINEAR' = "linear",
    'ORDINAL' = "ordinal"
}
export declare function getYDomain(data: unknown[]): [number, number];
export declare function getXDomain(data: unknown[], scaleType: ScaleType): unknown[];
export declare function getScaleType(values: Array<string | number | Date>): ScaleType;
export declare function reduceTicks(ticks: unknown[], maxTicks: number): unknown[];
/**
 * Generates a short id.
 * http://stackoverflow.com/questions/6248666/how-to-generate-short-uid-like-ax4j9z-in-js
 */
export declare function generateUID(): string;
export declare function handleDateFormat(date: ConfigType, format?: string): string | number | Date | dayjs.Dayjs;
export declare function calculateViewDimensions({ width, height, margin, showXLabel, showYLabel, }: ViewOptions): {
    width: number;
    height: number;
    xOffset: number;
    margin: import("./types").ChartMargin;
};
export declare function defaultXAccessor(d: unknown): number;
export declare function defaultYAccessor(d: unknown): number;
export declare function findClosestPointIndex(xPos: number, context: ContextChartService): number;
export declare function getXPos(e: MouseEvent, context: ContextChartService, rectDom?: HTMLElement): number;
export declare function getMouseXPoint(e: MouseEvent, contextService: ContextChartService): {
    xValue: never;
    xPoint: number;
};
export declare function minimumFormat(value: number): number | "<0.01";
export declare function tooltipSuffixFormat(value: string): string;
export declare function defined(d: ChartDataItem): boolean;
export declare function integerTooltipFormat({ y }: ContextItem): number;
