redai-automation-web-sdk
Version:
TypeScript SDK for RedAI Automation Web API - Zalo Personal automation, messaging, advanced sticker search, and bulk operations. 100% compatible with automation-web backend. v1.8.0: Added SessionProxyService for managing proxy assignments to sessions with
113 lines • 2.95 kB
TypeScript
/**
* 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