import { Control, FieldValues, Path } from 'react-hook-form';
/**
 * Valor do intervalo de datas armazenado no formulário.
 * Ambos os campos são strings ISO YYYY-MM-DD ou null.
 */
export interface DateRangeValue {
    from: string | null;
    to: string | null;
}
/**
 * Props do componente FormDateRangePicker
 *
 * @template TFieldValues - Tipo do formulário (inferido do schema Zod)
 */
export interface FormDateRangePickerProps<TFieldValues extends FieldValues> {
    /**
     * Instância do control do React Hook Form
     */
    control: Control<TFieldValues>;
    /**
     * Nome do campo no formulário (tipado com Path para autocomplete)
     */
    name: Path<TFieldValues>;
    /**
     * Label do campo
     */
    label: string;
    /**
     * Texto de ajuda exibido abaixo do input (não sobrescreve erros)
     */
    helperText?: string;
    /**
     * Marca o campo como obrigatório visualmente (asterisco no label)
     */
    required?: boolean;
    /**
     * Ocupar largura total do container
     * @default true
     */
    fullWidth?: boolean;
    /**
     * Desabilita o campo
     */
    disabled?: boolean;
    /**
     * Classe CSS adicional
     */
    className?: string;
    /**
     * Desabilita datas futuras
     */
    disableFuture?: boolean;
    /**
     * Desabilita datas passadas
     */
    disablePast?: boolean;
}
