UNPKG

@speedup/string-to

Version:

Convert all the string variables into their actual data type using different parsers

50 lines (49 loc) 1.97 kB
/** * JSON parser */ import { Parser as IParser } from '../type/parser'; export declare type JSONParseReviver = (this: any, key: string, value: any) => any; export declare class Parser<T> implements IParser<T> { /** * Validate string and check whether its possible to parse as JSON (object/array/null/string) * @param val String value to parse * @param options No option is accepted */ validateSync(val?: string, options?: void): boolean; /** * Validate string and check whether its possible to parse as JSON (object/array/null/string) * @param val String value to parse * @param options No option is accepted */ validate(val?: string, options?: void): Promise<boolean>; /** * Parse a string into either a JSON (object/array/null/string) * @param val String value to parse * @param options reviver option of JSON.parse */ parseSync(val?: string, options?: JSONParseReviver): T; /** * Parse a string into either a JSON (object/array/null/string) * @param val String value to parse * @param options reviver option of JSON.parse */ parse(val?: string, options?: JSONParseReviver): Promise<T>; /** * Validate and parse the value * @param val String value to parse * @param defaultValue Default value if the provided string is not a valid number * @param options Contains both validator and parser options */ validateAndParseSync(val?: string, defaultValue?: T, options?: { parserOptions?: JSONParseReviver; }): T | undefined; /** * Validate and parse the value * @param val String value to parse * @param defaultValue Default value if the provided string is not a valid number * @param options Contains both validator and parser options */ validateAndParse(val?: string, defaultValue?: T, options?: { parserOptions?: JSONParseReviver; }): Promise<T | undefined>; }