import * as React from 'react'; interface CountdownParts { days: number; hours: number; minutes: number; seconds: number; total: number; isComplete: boolean; } interface CountdownProps extends Omit, 'children'> { /** Absolute instant to count down to (a `Date`, epoch-ms, or date string). */ targetDate?: Date | number | string; /** Relative length in **seconds** from mount. Ignored when `targetDate` is set. */ duration?: number; /** * Tick interval in milliseconds. * @default 1000 */ interval?: number; /** Fired once when the countdown reaches zero. */ onComplete?: () => void; /** Segments and labels, or a render-prop receiving `{ days, hours, minutes, seconds, total, isComplete }`. */ children?: React.ReactNode | ((parts: CountdownParts) => React.ReactNode); } declare function Countdown({ targetDate, duration, interval, onComplete, className, children, ...props }: CountdownProps): React.JSX.Element; interface CountdownSegmentProps extends Omit, 'children'> { /** Which unit to read from the parent `Countdown`. */ unit?: 'days' | 'hours' | 'minutes' | 'seconds'; /** Render this number directly instead of reading context (standalone display). */ value?: number; /** * Minimum digit count; the value is zero-padded to this width. * @default 2 */ minDigits?: number; } declare function CountdownSegment({ unit, value, minDigits, className, ...props }: CountdownSegmentProps): React.JSX.Element; export { Countdown, CountdownSegment }; export type { CountdownProps, CountdownSegmentProps, CountdownParts }; //# sourceMappingURL=countdown.d.ts.map