import { ComputedRef, Ref } from 'vue';
import { FieldValidationProps, ValidationRule, VuetifyValidationRule } from '../../../../composables/unifyValidation/useValidation';
export interface SyRadioGroupValidationProps extends FieldValidationProps {
    modelValue?: PropertyKey | null;
    required?: boolean;
    readonly?: boolean;
    disabled?: boolean;
    customRules?: ValidationRule[];
    customWarningRules?: ValidationRule[];
    customSuccessRules?: ValidationRule[];
    isValidateOnBlur?: boolean;
    showSuccessMessages?: boolean;
    useVuetifyValidation?: boolean;
    rules?: VuetifyValidationRule[];
    errorMessages?: string[] | null;
    warningMessages?: string[] | null;
    successMessages?: string[] | null;
    hasError?: boolean;
    hasWarning?: boolean;
    hasSuccess?: boolean;
    maxErrors?: number;
    disableErrorHandling?: boolean;
    fieldIdentifier?: string;
}
export interface UseSyRadioGroupValidationReturn {
    validate: () => Promise<boolean>;
    validateOnSubmit: () => Promise<boolean>;
    errors: Ref<string[]>;
    warnings: Ref<string[]>;
    successes: Ref<string[]>;
    hasError: ComputedRef<boolean | undefined>;
    hasWarning: ComputedRef<boolean | undefined>;
    hasSuccess: ComputedRef<boolean | undefined>;
    defaultRules: ComputedRef<ValidationRule[]>;
    focused: Ref<boolean>;
}
/**
 * Composable pour gérer la validation du composant SyRadioGroup
 *
 * Ce composable encapsule toute la logique de validation spécifique aux groupes de radios :
 * - Validation required avec message personnalisé
 * - Validation immédiate à la sélection (isValidateOnBlur = false par défaut)
 * - Support des customRules, customWarningRules, customSuccessRules
 * - Désactivation automatique des messages de succès en mode Vuetify
 * - Intégration avec useValidation du design system
 *
 * @example
 * const { validate, errors, hasError, defaultRules } = useSyRadioGroupValidation(props, model)
 */
export declare function useSyRadioGroupValidation(props: SyRadioGroupValidationProps, model: Ref<PropertyKey | null>, focused?: Ref<boolean>): UseSyRadioGroupValidationReturn;
