import { Property } from 'csstype'; import { SizePropertyTheme, TLength } from '../../styles/typings'; import { TimerService } from './TimerService'; export type TimerOptions = { timeMs: number; ttlMs?: number; }; export type TimerProps = Partial & { autoStart?: boolean; className?: string; controller?: TimerService; format?: (ttlMs: number, timeMs: number) => string | number; height?: SizePropertyTheme | Property.Height; thickness?: Property.StrokeWidth; width?: SizePropertyTheme | Property.Width; }; export type TimerState = { status?: 'started' | 'stopped'; timeMs: number; ttlMs: number; }; export type UseTimerController = (props: TimerOptions) => TimerService;