UNPKG

@bshg/validation

Version:

Validation Library for TypeScript projects

28 lines (27 loc) 1.38 kB
import { FnConfig, TypeValidator } from "./base"; import { KeysOfType } from "../utils"; export declare class Strings<T extends string | undefined = string> extends TypeValidator<T> { undefined(): Strings<T | undefined>; required(options?: FnConfig): Strings<T>; notEmpty(options?: FnConfig): Strings<T>; min(length: number, options?: FnConfig): Strings<T>; max(length: number, options?: FnConfig): Strings<T>; includes(substring: string, options?: FnConfig): Strings<T>; includesAll(substrings: string[], options?: FnConfig): Strings<T>; startsWith(prefix: string, options?: FnConfig): Strings<T>; endsWith(suffix: string, options?: FnConfig): Strings<T>; matches(pattern: RegExp, options?: FnConfig): Strings<T>; email(options?: FnConfig): Strings<T>; phone(options?: FnConfig): Strings<T>; url(options?: FnConfig): Strings<T>; date(options?: FnConfig): Strings<T>; time(options?: FnConfig): Strings<T>; hexColor(options?: FnConfig): Strings<T>; creditCard(options?: FnConfig): Strings<T>; htmlTag(options?: FnConfig): Strings<T>; base64(options?: FnConfig): Strings<T>; alphanumeric(options?: FnConfig): Strings<T>; numeric(options?: FnConfig): Strings<T>; alpha(options?: FnConfig): Strings<T>; as<TO extends Record<string, any>>(key: KeysOfType<TO, string>, options?: FnConfig): this; }