UNPKG

1.65 kBTypeScriptView Raw
1/**
2 * Converts arbitrary values to boolean values using extended conversion rules:
3 * - Numbers: <>0 are true, =0 are false
4 * - Strings: "true", "yes", "T", "Y", "1" are true; "false", "no", "F", "N" are false
5 * - DateTime: <>0 total milliseconds are true, =0 are false
6 *
7 * ### Example ###
8 *
9 * let value1 = BooleanConverter.toNullableBoolean(true); // true
10 * let value2 = BooleanConverter.toNullableBoolean("yes"); // true
11 * let value3 = BooleanConverter.toNullableBoolean(123); // true
12 * let value4 = BooleanConverter.toNullableBoolean({}); // null
13 */
14export declare class BooleanConverter {
15 /**
16 * Converts value into boolean or returns null when conversion is not possible.
17 *
18 * @param value the value to convert.
19 * @returns boolean value or null when convertion is not supported.
20 */
21 static toNullableBoolean(value: any): boolean;
22 /**
23 * Converts value into boolean or returns false when conversion is not possible.
24 *
25 * @param value the value to convert.
26 * @returns boolean value or false when conversion is not supported.
27 *
28 * @see [[toBooleanWithDefault]]
29 */
30 static toBoolean(value: any): boolean;
31 /**
32 * Converts value into boolean or returns default value when conversion is not possible
33 *
34 * @param value the value to convert.
35 * @param defaultValue the default value
36 * @returns boolean value or default when conversion is not supported.
37 *
38 * @see [[toNullableBoolean]]
39 */
40 static toBooleanWithDefault(value: any, defaultValue?: boolean): boolean;
41}