import moment from 'moment';
import type EuiI18n from '../../../services/eui-i18n';
import type { RelativeParts, ShortDate } from '../types/global';
/**
 * Reusable format time string util
 */
export declare const ISO_FORMAT = "YYYY-MM-DDTHH:mm:ss.SSSZ";
export declare const INVALID_DATE = "invalid_date";
export declare const ROUND_DELIMETER = "/";
export declare const relativeUnitsFromLargestToSmallest: string[];
export type AbsoluteDateMode = 'absolute';
export type RelativeDateMode = 'relative';
export type NowDateMode = 'now';
export type DateMode = AbsoluteDateMode | RelativeDateMode | NowDateMode;
export declare const DATE_MODES: {
    ABSOLUTE: AbsoluteDateMode;
    RELATIVE: RelativeDateMode;
    NOW: NowDateMode;
};
export declare const useFormatTimeString: (timeString: string, dateFormat: string, roundUp: boolean | undefined, locale: moment.LocaleSpecifier | undefined, euiI18nService: EuiI18n) => string;
export declare function toAbsoluteString(value: string, roundUp?: boolean): string;
export declare function parseRelativeParts(value: string): {
    count: number;
    unit: string;
    round: boolean;
    roundUnit?: string;
};
export declare function toRelativeStringFromParts(relativeParts: RelativeParts): string;
export declare function isRangeInvalid(start: ShortDate, end: ShortDate): boolean;
export declare function getDateMode(value: ShortDate): "absolute" | "relative" | "now";
//# sourceMappingURL=index.d.ts.map