UNPKG

1.63 kBTypeScriptView Raw
1/**
2 * Converts arbitrary values into double using extended conversion rules:
3 * - Strings are converted to double values
4 * - DateTime: total number of milliseconds since unix epoсh
5 * - Boolean: 1 for true and 0 for false
6 *
7 * ### Example ###
8 *
9 * let value1 = DoubleConverter.toNullableDouble("ABC"); // Result: null
10 * let value2 = DoubleConverter.toNullableDouble("123.456"); // Result: 123.456
11 * let value3 = DoubleConverter.toNullableDouble(true); // Result: 1
12 * let value4 = DoubleConverter.toNullableDouble(new Date()); // Result: current milliseconds
13 */
14export declare class DoubleConverter {
15 /**
16 * Converts value into doubles or returns null when conversion is not possible.
17 *
18 * @param value the value to convert.
19 * @returns double value or null when conversion is not supported.
20 */
21 static toNullableDouble(value: any): number;
22 /**
23 * Converts value into doubles or returns 0 when conversion is not possible.
24 *
25 * @param value the value to convert.
26 * @returns double value or 0 when conversion is not supported.
27 *
28 * @see [[toDoubleWithDefault]]
29 */
30 static toDouble(value: any): number;
31 /**
32 * Converts value into integer 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 double value or default when conversion is not supported.
37 *
38 * @see [[toNullableDouble]]
39 */
40 static toDoubleWithDefault(value: any, defaultValue?: number): number;
41}