import { AlertProps } from '../Alerts/Alert'; import { CalloutType, ComparisonDateRangeProps, CustomAggregationsProps, DisabledTimeframeOptionsProps, TimeframeProps } from './TimeframesType'; import { SideDrawerBase } from '../SideDrawer/SideDrawer'; type AlertCalloutType = { startDate: string; endDate: string; comparisonStartDate: string; comparisonEndDate: string; }; export type AlertPropsWithDates = AlertProps & { selectedDatesCallout?: ({ startDate, endDate, comparisonStartDate, comparisonEndDate, }: AlertCalloutType) => void; }; export type TimeframeFilterBodyProps = { /** Callout for each user action */ callout: (calloutType: CalloutType, startDate: moment.Moment, endDate: moment.Moment, timeframe: TimeframeProps) => void; timeframe: TimeframeProps; historicalTimeframes?: Array; /** Boolean: show the current timeframe options */ currentTimeframe?: boolean; /** Boolean: show the previous timeframe options */ previousTimeframe?: boolean; /** Boolean: show the quarterly timeframe options */ quarterlyTimeframe?: boolean; /** Boolean: show the custom date calendar options */ hideCustomDateSearch?: boolean; closeMenu?: () => void; useTimeframeAggregations?: boolean; customAggregations?: CustomAggregationsProps; startDate?: string; endDate?: string; disableTimeFrameFilter?: boolean; showHistoricTimeFrameDateRange?: boolean; showHistoricTimeFrameDateRangeOnMobile?: boolean; comparisonDateRange?: ComparisonDateRangeProps; getComparisonDateRange?: boolean; disabledTimeframeOptions?: DisabledTimeframeOptionsProps; updateToValidFilterState?: (calloutType: CalloutType, validOptions: unknown) => void; /** Passes any optional SideDrawer props to the ComparisonDatePicker SideDrawer */ cdpSideDrawerProps?: Omit; /** Boolean: Show the new trailing timeframe options */ trailingTimeframe?: boolean; alertProps?: AlertPropsWithDates; /** Current path from the router */ currentPath?: string; /** Optional prop to add a test id to the Timeframe for QA testing */ qaTestId?: string; firstRangeLabel?: string; secondRangeLabel?: string; }; declare const Timeframe: ({ callout, historicalTimeframes, timeframe, trailingTimeframe, currentTimeframe, previousTimeframe, quarterlyTimeframe, closeMenu, useTimeframeAggregations, customAggregations, startDate, endDate, disableTimeFrameFilter, showHistoricTimeFrameDateRange, showHistoricTimeFrameDateRangeOnMobile, comparisonDateRange, getComparisonDateRange, disabledTimeframeOptions, updateToValidFilterState, cdpSideDrawerProps, alertProps, currentPath, qaTestId, firstRangeLabel, secondRangeLabel, }: TimeframeFilterBodyProps) => import("react/jsx-runtime").JSX.Element; export default Timeframe;