UNPKG

gather-ts

Version:

A powerful code analysis and packaging tool designed for creating AI-friendly code representations for javascript and typescript projects.

30 lines (29 loc) 1.52 kB
import { IValidator, IValidatorDeps, IValidationOptions, IValidationResult, ITypeValidator, IValidatorOptions } from "./interfaces/IValidator"; import { BaseService } from "@/types/services"; export declare class Validator extends BaseService implements IValidator, ITypeValidator { private readonly deps; private readonly debug; constructor(deps: IValidatorDeps, options?: IValidatorOptions); initialize(): Promise<void>; cleanup(): void; private logDebug; private handleValidationError; validate<T>(value: unknown, fieldName: string, options?: IValidationOptions): IValidationResult; private validateString; private validateNumber; private validateArray; private validateObject; validatePath(path: string, context: string): void; private runCustomValidator; isString(value: unknown): value is string; isNumber(value: unknown): value is number; isBoolean(value: unknown): value is boolean; isObject(value: unknown): value is object; isArray(value: unknown): value is unknown[]; isDate(value: unknown): value is Date; validateNotEmpty<T>(value: T | null | undefined, fieldName: string): T; validateType(value: unknown, expectedType: string, fieldName: string): void; validateRange(value: number, min: number, max: number, fieldName: string): void; validateEnum<T extends string>(value: string, enumValues: readonly T[], fieldName: string): T; validatePattern(value: string, pattern: RegExp, fieldName: string): void; }