import { type PropsWithChildren, type ReactElement } from 'react'; import type { RequireAtLeastOne } from 'type-fest'; import { type DataTestId, type MaskingProps, type StylingProps } from '@dynatrace/strato-components/core'; import { type TimeframeSelectorCustomTriggerProps } from './CustomTrigger.js'; import { type TimeframeSelectorTriggerProps } from './Trigger.js'; import type { FormControlProps } from '../../core/types/form-control-props.js'; import type { TimeframeV2 } from '../../core/types/time.js'; import type { TimeRangePickerRef } from '../../forms/shared-types.js'; /** * Accepted properties for the TimeframeSelector. * @public */ export type TimeframeSelectorProps = FormControlProps | RequireAtLeastOne | null, (value: TimeframeV2 | null) => void> & StylingProps & DataTestId & PropsWithChildren & MaskingProps & { /** * Shows the "Clear selection" button if set to true. * @defaultValue false */ clearable?: boolean; /** * The ISODatetime string of the earliest datetime that can be configured. * @defaultValue '1677-09-21T00:12:43.145224192Z' */ min?: string; /** * The ISODatetime string of the latest datetime that can be configured. * @defaultValue '2262-04-11T23:47:16.854775807Z' */ max?: string; /** * The precision of the time shown in the display value. * @defaultValue 'minutes' */ precision?: 'minutes' | 'seconds' | 'milliseconds'; /** * Whether the TimeframeStepper is shown. * @defaultValue true */ stepper?: boolean; }; /** * Use the `TimeframeSelector` to let users select a timeframe * by choosing a from and to value or one of the presets for common timeframes. * @public */ export declare const TimeframeSelector: ((props: TimeframeSelectorProps & import("react").RefAttributes>) => React.ReactElement | null) & { Trigger: { (props: TimeframeSelectorTriggerProps): import("react/jsx-runtime.js").JSX.Element; displayName: string; }; DisplayValue: { (props: import("./DisplayValue.js").TimeframeSelectorDisplayValueProps): import("react/jsx-runtime.js").JSX.Element | null; displayName: string; }; CustomTrigger: { (props: TimeframeSelectorCustomTriggerProps): ReactElement> | null; displayName: string; }; Presets: { (props: import("./Presets.js").TimeframeSelectorPresetsProps): import("react/jsx-runtime.js").JSX.Element; displayName: string; }; PresetItem: { (props: import("./Item.js").TimeframeSelectorPresetItemProps & { _isSelected?: boolean; }): import("react/jsx-runtime.js").JSX.Element | null; displayName: string; }; };