import { ComponentPropsWithoutRef } from 'react'; export declare type TimerColorVariant = 'general' | 'main' | 'informative' | 'alternate' | 'informativeAlternate'; export declare type TimerHighlightColor = 'light' | 'dark' | 'alternate'; export declare type TimerHighlightSize = 'small' | 'medium'; export declare type TimerTimeFormat = 'auto' | 'HH:MM:SS' | 'MM:SS' | 'days' | 'minutes' | 'seconds'; export declare type TimerType = 'single' | 'full' | 'sticky' | 'highlight' | undefined; export declare type TimerStickyProps = { placement: string; distance: string; zIndex: string; }; declare type TimerAttributes = ComponentPropsWithoutRef<'div'>; export interface TimerProps extends Omit { /** * To set color theme of timer (except for type highlight) * @default 'general' */ colorVariant?: TimerColorVariant; /** * To set description of this timer * @default '' */ description?: string; /** * To set color theme of timer (for type highlight) * @default 'light' */ highlightColor?: TimerHighlightColor; /** * To display/hide timer labels (for type highlight) * @default true */ highlightLabel?: boolean; /** * To set size of timer (for tytpe highlight) * @default 'small' */ highlightSize?: TimerHighlightSize; /** * To set id for this timer. Used for accessibility. REQUIRED when you have multiple timers on the same page. * @default 'default' */ id?: string; /** * To specify language of timer * @default 'id' */ lang?: string; /** * To display/hide timer icon * @default true */ showIcon?: boolean; /** * To set the location of sticky timer by passing css properties (for type 'sticky') * @default { placement: 'top', distance: '0px', zIndex: '10' } */ stickyProps?: TimerStickyProps; /** * To set the target time. Accepts Date object. * @default new Date() */ targetTime: Date; /** * To set time representation format (does not work for type highlight). 'auto' is adaptive depending on time difference. `HH:MM:SS` forces this time specific format at all time, not to be used when difference to targetTime is >= 100 hours. * @default 'auto' */ timeFormat?: TimerTimeFormat; /** * To set the type of timer * @default 'single' */ type?: TimerType; /** * To pass callback when target time is reached * @default () => {} */ onFinish?: () => void; } export interface AuxilliaryTimerProps { finished: boolean; day: number; showIcon: boolean; } export {};