import { default as moment } from 'moment'; export interface Timeframe { id?: number; display: string; value?: number | 'custom' | 'All' | undefined; timeValue: string | moment.unitOfTime.StartOf; type: 'historical' | 'trailing' | 'current' | 'quarterly' | 'previous' | string; quarter?: number; year?: string; compareDisplay?: string; disabled?: boolean; customClass?: string; custom?: string; aggregation?: string; } export interface TimeframeOption { timeframes: Timeframe[]; type: Timeframe['type']; disabledTimeframeOptions?: string[]; year?: string; callout: (type: string, startDate: string, endDate: string, options: any) => void; useTimeframeAggregations?: boolean; customAggregations?: any; getAggregation?: (options: any) => any; isTimePeriodExtensionEnabled?: boolean; } export declare const newHistoricalTimeframes: Timeframe[]; export declare const historicalTimeframes: Timeframe[]; export declare const initialTimeframe: Timeframe; export declare function getTimeframeDates(timeframe: Timeframe | undefined, date: 'startDate' | 'endDate' | 'compareStartDate' | 'compareEndDate'): string; export declare function checkForCorrectTimeframe(timeframe: Timeframe | undefined): boolean; export declare const getNextAvailableTimeframeOption: ({ timeframes, type, disabledTimeframeOptions, year, callout, useTimeframeAggregations, customAggregations, getAggregation, isTimePeriodExtensionEnabled, }: TimeframeOption) => void;