@speedup/string-to
Version:
Convert all the string variables into their actual data type using different parsers
50 lines (49 loc) • 1.97 kB
TypeScript
/**
* 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>;
}