import { FocusEvent, KeyboardEvent } from 'react';
import { NumericInputProps } from './NumericInput';
import { GenericComponent } from '../../@types/types';
import { BoxProps } from '../box/Box';
import { SIZES } from '../../constants';
interface DurationInputProps extends Omit<NumericInputProps, 'className' | 'id' | 'max' | 'onBlur' | 'onChange' | 'onKeyDown' | 'size' | 'value'>, Omit<BoxProps, 'size' | 'ref'> {
    /** Sets a class name for the wrapper to give custom styles. */
    className?: string;
    /** The id of the container containing the input field. */
    id?: string | undefined;
    /** The maximum value that can be inputted. */
    max?: number;
    /** Callback function that is fired when blurring the input field. */
    onBlur?: (event: FocusEvent<HTMLElement>) => void;
    /** Callback function that is fired when the component's value changes. */
    onChange?: (value?: {
        hours?: number;
        minutes?: number;
    }) => void;
    /** Callback function that is fired when the keyboard is touched. */
    onKeyDown?: (event: KeyboardEvent<HTMLElement>) => void;
    /** Size of the input element. */
    size?: Exclude<typeof SIZES[number], 'tiny' | 'fullscreen' | 'smallest' | 'hero'>;
    /** Current value of the input element. */
    value?: {
        hours?: number;
        minutes?: number;
    };
}
declare const DurationInput: GenericComponent<DurationInputProps>;
export default DurationInput;
