/** * Domain Validators * Shared validation logic for domain entities * Provides reusable validation patterns across the domain layer */ import { Result } from '@garrick0/c2-shared'; /** * Validation error type */ export declare class ValidationError extends Error { readonly field?: string | undefined; constructor(message: string, field?: string | undefined); } /** * Domain validators utility class */ export declare class DomainValidators { /** * Validate that a string is not empty */ static validateNonEmpty(value: string, field: string): Result; /** * Validate an identifier (alphanumeric with hyphens, underscores) */ static validateId(id: string): Result; /** * Validate that a value is a positive number */ static validatePositiveNumber(value: number, field: string): Result; /** * Validate that a value is a non-negative number */ static validateNonNegativeNumber(value: number, field: string): Result; /** * Validate an array is not empty */ static validateNonEmptyArray(array: T[], field: string): Result; /** * Validate a configuration object has required fields */ static validateRequiredFields>(obj: T, requiredFields: (keyof T)[]): Result; /** * Validate a message template has required placeholders */ static validateMessageTemplate(template: string, requiredPlaceholders: string[]): Result; /** * Combine multiple validation results */ static combine(results: Result[]): Result; } //# sourceMappingURL=validators.d.ts.map