declare const dateRangeSelectType: readonly ["span", "range", "period", "around"];
export type DateRangeSelectType = typeof dateRangeSelectType[number];
export declare function isDateRangeSelectType(value: unknown): value is DateRangeSelectType;
type DateRangeValue<T extends DateRangeSelectType, U extends Record<string, unknown>> = U & {
    type: T;
};
export type DateRangeSelectSpanValue = DateRangeValue<'span', {
    seconds: number;
}>;
export declare function isDateRangeSelectSpanValue(value: unknown): value is DateRangeSelectSpanValue;
export type DateRangeSelectRangeValue = DateRangeValue<'range', {
    startDate: Date;
    endDate: Date;
}>;
export declare function isDateRangeSelectRangeValue(value: unknown): value is DateRangeSelectRangeValue;
declare const dateRangeSelectPeriod: readonly ["Today"];
export type DateRangeSelectPeriod = typeof dateRangeSelectPeriod[number];
export declare function isDateRangeSelectPeriod(value: unknown): value is DateRangeSelectPeriod;
export type DateRangeSelectPeriodValue = DateRangeValue<'period', {
    period: DateRangeSelectPeriod;
}>;
export declare function isDateRangeSelectPeriodValue(value: unknown): value is DateRangeSelectPeriodValue;
declare const dateRangeSelectAroundUnit: readonly ["second", "minute", "hour", "day"];
export type DateRangeSelectAroundUnit = typeof dateRangeSelectAroundUnit[number];
export declare function isDateRangeSelectAroundUnit(value: unknown): value is DateRangeSelectAroundUnit;
export type DateRangeSelectAroundValue = DateRangeValue<'around', {
    date: Date;
    quantity: number;
    unit: DateRangeSelectAroundUnit;
}>;
export declare function isDateRangeSelectAroundValue(value: unknown): value is DateRangeSelectAroundValue;
export type DateRangeSelectValue = DateRangeSelectSpanValue | DateRangeSelectRangeValue | DateRangeSelectAroundValue | DateRangeSelectPeriodValue | null | undefined;
export declare function isDateRangeSelectValue(value: unknown): value is DateRangeSelectValue;
export {};
