import { DataSet as DataSetType } from '../../../shared-logic/src/DataSet/types';
import { Component as ActualComponent, ComponentType, FormatType } from '../../../shared-logic/src/Component/types';
import { QueryAttributes as QueryAttributesType } from '../../../shared-logic/src/QueryAttributes/types';
import { Result as ResultType } from '../../../shared-logic/src/Result/types';
import { DashboardBehaviour, LabelFormat } from '../contexts/DashboardBehaviour/types';
import { ConditionalFormattingOption } from '../../../charts/src/Legend/Legend';
import { ConditionalFormattingBoundary } from './DataTable/buildConditionalFormattingBoundaries';
import { TextOverride } from '../../../shared-logic/src/Translations/types';
import * as ConditionalFormatting from '../../../shared-logic/src/ConditionalFormatting/utils';
export declare type AxisLabelConfig = {
    prefix?: string;
    postfix?: string;
    format: FormatType;
    numberFormatOptions: DashboardBehaviour['numberFormatOptions'];
    dateTimeFormatOptions: DashboardBehaviour['dateTimeFormatOptions'];
    defaultFormats: DashboardBehaviour['defaultFormats'];
};
export declare const mergeProps: (explicitProps: any, remoteProps: any, defaultProps: any) => any;
export declare const shouldUpdate: (previousProps: any, nextProps: any) => boolean;
declare type Datum = {
    [key: string]: any;
};
export declare const getExplanationsOfConditionFormattingRulesThatApplyToSeries: (dimensions: QueryAttributesType.Dimension[], conditionalFormattingRules: ActualComponent.ConditionalFormatting.Rule[], seriesKey: string, supportedAggregates: DashboardBehaviour['queryEngineConfig']['supportedAggregates'], dataSet: DataSetType) => Array<ConditionalFormattingOption>;
export declare const applyConditionFormattingRules: (dimensions: QueryAttributesType.Dimension[], conditionalFormattingRules: ConditionalFormattingBoundary[], datum: Datum | undefined, key: string, dataSet: DataSetType) => ActualComponent.ConditionalFormatting.DisplayRule | undefined;
export declare function formattedFallbackDateTime(value: string | number | Date): string;
/** @deprecated - for new charts, formatting is done in the `formatResult` function. */
export declare const formatXAxisLabel: (timeDimension: QueryAttributesType.TimeDimension | null, axisLabelConfig: AxisLabelConfig, valueAlias?: DashboardBehaviour['valueAlias']) => (value: any, fieldId?: string | null | undefined) => string;
/** @deprecated - for new charts, formatting is done in the `formatResult` function. */
export declare const formatYAxisLabel: (textOverride: TextOverride, axisLabelConfig?: AxisLabelConfig | undefined) => (value: any) => string;
/** @deprecated - for new charts, build series using formattedResultToSeries. */
export declare const formatSeriesName: (result: ResultType | null | undefined, textOverride: TextOverride, type: ComponentType, id: string, labelFormat: LabelFormat) => (key: string) => string | undefined;
export declare const convertValueToFormat: (value: any, numberFormatOptions?: {
    [id: string]: import("../contexts/DashboardBehaviour/types").NumberFormatter;
} | undefined, format?: string | null | undefined, total?: number | undefined) => any;
export declare function getGradientAdjustedColor(rule: ConditionalFormattingBoundary, matchedHexValue: string, actualValue: number): string;
export {};
