/**
 * Utilitaires de formatage de dates pour les composants DatePicker
 * Extrait et centralisé à partir des différents composables
 */
/**
 * Résultat du formatage d'une date
 */
export interface FormatDateInputResult {
    /**
   * Valeur formatée
   */
    formatted: string;
    /**
   * Position du curseur après formatage
   */
    cursorPos: number;
}
/**
 * Options pour le formatage d'une date
 */
export interface FormatDateOptions {
    /**
   * Position actuelle du curseur
   */
    cursorPosition?: number;
    /**
   * Caractère à utiliser pour les positions non remplies
   */
    placeholderChar?: string;
}
/**
 * Formate une entrée de date en ajoutant les séparateurs appropriés
 *
 * @param input - Chaîne de caractères saisie
 * @param format - Format de date (ex: 'DD/MM/YYYY')
 * @param options - Options de formatage
 * @returns Objet contenant la chaîne formatée et la nouvelle position du curseur
 */
export declare const formatDateInput: (input: string, format: string, options?: FormatDateOptions) => FormatDateInputResult;
/**
 * Crée une description accessible de la date pour les lecteurs d'écran
 *
 * @param dateStr - La chaîne de date à décrire
 * @param format - Le format de la date
 * @param placeholderChar - Caractère utilisé pour les positions vides
 * @returns Une description de la date adaptée aux lecteurs d'écran
 */
export declare const getDateDescription: (dateStr: string, format: string, placeholderChar?: string) => string;
/**
 * Extrait les deux parties d'une plage de dates
 *
 * @param value - Chaîne de caractères contenant une plage de dates
 * @param separator - Séparateur de plage (par défaut: ' - ')
 * @returns Tableau contenant les deux parties de la plage
 */
export declare const extractRangeParts: (value: string, separator?: string) => [string, string];
/**
 * Vérifie si une chaîne de caractères contient un séparateur de plage
 *
 * @param value - Chaîne de caractères à vérifier
 * @param separator - Séparateur de plage (par défaut: ' - ')
 * @returns Booléen indiquant si la chaîne contient le séparateur
 */
export declare const hasRangeSeparator: (value: string, separator?: string) => boolean;
/**
 * Vérifie si une plage de dates est valide (la date de début est antérieure à la date de fin)
 *
 * @param startDate - Date de début
 * @param endDate - Date de fin
 * @returns Booléen indiquant si la plage est valide
 */
export declare const isValidDateRange: (startDate: Date | null, endDate: Date | null) => boolean;
