import { MetricType } from '../../types/field';
export type PreAggregateSupportedMetricType = MetricType.SUM | MetricType.COUNT | MetricType.MIN | MetricType.MAX | MetricType.AVERAGE;
export declare enum PreAggregateMetricRepresentationKind {
    DIRECT = "direct",
    DECOMPOSED = "decomposed",
    UNSUPPORTED = "unsupported"
}
export type PreAggregateMetricRepresentation = {
    kind: PreAggregateMetricRepresentationKind.DIRECT;
    metricType: MetricType.SUM | MetricType.MIN | MetricType.MAX;
} | {
    kind: PreAggregateMetricRepresentationKind.DECOMPOSED;
    metricType: MetricType.AVERAGE;
    components: readonly ['sum', 'count'];
} | {
    kind: PreAggregateMetricRepresentationKind.UNSUPPORTED;
};
export declare const supportedMetricTypes: PreAggregateSupportedMetricType[];
export declare const getMetricRepresentation: (metricType: MetricType) => PreAggregateMetricRepresentation;
export declare const isSupportedMetricType: (metricType: MetricType) => metricType is PreAggregateSupportedMetricType;
//# sourceMappingURL=metricRepresentation.d.ts.map