/**
 * Email Domain Validation Utilities
 *
 * Validates email domain formats (the part after @ in email addresses)
 * Used for SSO domain allowlist feature to restrict auto-provisioning to specific domains.
 */
/**
 * Validates an email domain format (the part after @ in email addresses)
 * Valid: example.com, sub.domain.org, my-company.co.uk
 * Invalid: http://example.com, @example.com, example, .com
 *
 * @param domain - The domain string to validate
 * @returns true if the domain is a valid email domain format
 */
export declare function isValidEmailDomain(domain: string): boolean;
/**
 * Validation result type
 */
export interface EmailDomainValidationResult {
    valid: boolean;
    error?: string;
    cleanedDomain?: string;
}
/**
 * Validates an email domain with detailed error messages
 * Also cleans the input (removes leading @, trims whitespace)
 *
 * @param domain - The domain string to validate
 * @returns Validation result with error message if invalid
 */
export declare function validateEmailDomain(domain: string): EmailDomainValidationResult;
/**
 * Validates a list of email domains
 * Returns the first error encountered or success if all domains are valid
 *
 * @param domains - Array of domain strings to validate
 * @returns Validation result with array of cleaned domains if valid
 */
export declare function validateEmailDomainList(domains: string[]): {
    valid: boolean;
    error?: string;
    cleanedDomains?: string[];
};
/**
 * Cleans a domain string by removing common user input mistakes
 * Does NOT validate - use validateEmailDomain for validation
 *
 * @param domain - The domain string to clean
 * @returns Cleaned domain string
 */
export declare function cleanEmailDomain(domain: string): string;
//# sourceMappingURL=validation-utils.d.ts.map