/**
 * Validation utility functions
 */
import { AutomationWebConfig, ThreadType, Urgency } from '../types/common.types';
/**
 * Validation error class
 */
export declare class ValidationError extends Error {
    field?: string;
    constructor(message: string, field?: string);
}
/**
 * Validation utility class
 */
export declare class ValidationUtils {
    /**
     * Validate session ID format
     */
    static validateSessionId(sessionId: string): void;
    /**
     * Validate user UUID format
     */
    static validateUserUuid(userUuid: string): void;
    /**
     * Validate thread ID
     */
    static validateThreadId(threadId: string): void;
    /**
     * Validate thread type
     */
    static validateThreadType(threadType: ThreadType): void;
    /**
     * Validate message content
     */
    static validateMessageContent(content: string): void;
    /**
     * Validate URL format
     */
    static validateUrl(url: string, fieldName?: string): void;
    /**
     * Validate urgency level
     */
    static validateUrgency(urgency: Urgency): void;
    /**
     * Validate phone number format (Vietnamese)
     */
    static validatePhoneNumber(phoneNumber: string): void;
    /**
     * Validate email format
     */
    static validateEmail(email: string): void;
    /**
     * Validate array of IDs
     */
    static validateIdArray(ids: string[], fieldName: string, minLength?: number): void;
    /**
     * Validate pagination parameters
     */
    static validatePagination(page?: number, limit?: number): void;
    /**
     * Validate file size
     */
    static validateFileSize(size: number, maxSize?: number): void;
    /**
     * Validate timeout value
     */
    static validateTimeout(timeout: number): void;
    /**
     * Validate delay value
     */
    static validateDelay(delay: number): void;
    /**
     * Validate batch size
     */
    static validateBatchSize(batchSize: number): void;
    /**
     * Validate retry count
     */
    static validateRetryCount(retryCount: number): void;
    /**
     * Validate SDK configuration
     */
    static validateConfig(config: AutomationWebConfig): void;
    /**
     * Validate date string format
     */
    static validateDateString(dateString: string, fieldName?: string): void;
    /**
     * Validate date range
     */
    static validateDateRange(startDate: string, endDate: string): void;
    /**
     * Format file size for error messages
     */
    private static formatFileSize;
    /**
     * Sanitize string input
     */
    static sanitizeString(input: string): string;
    /**
     * Validate and sanitize message content
     */
    static sanitizeMessageContent(content: string): string;
    /**
     * Check if value is empty
     */
    static isEmpty(value: any): boolean;
    /**
     * Validate required field
     */
    static validateRequired(value: any, fieldName: string): void;
}
//# sourceMappingURL=validation.utils.d.ts.map