import { Exception } from '../../Exception'; import { Validator, ValidatorOptions } from './Validator'; export declare class StringValidationFailedException extends Exception { } export interface StringValidatorOptions extends ValidatorOptions { matches?: string | RegExp; partial?: string; startsWith?: string; endsWith?: string; minLength?: number; maxLength?: number; } export declare class StringValidator extends Validator { static isString(options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static isEmpty(options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static isNotEmpty(options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static isNumberAsString(options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static isBooleanAsString(options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static isDateAsString(options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static isJSON(options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static matches(matches: RegExp, options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static equals(matches: string, options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static contains(partial: string, options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static startsWith(startsWith: string, options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static endsWith(endsWith: string, options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static minLength(minLength: number, options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; static maxLength(maxLength: number, options?: ValidatorOptions): {}>(constructor: U) => { new (value: string): {}; } & U; private static validateIsString; private static validateIsEmpty; private static validateIsNotEmpty; private static validateIsNumberAsString; private static validateIsBooleanAsString; private static validateIsDateAsString; private static validateIsJSON; private static validateRegex; private static validatePartial; private static validateLength; }