UNPKG

1.82 kBTypeScriptView Raw
1/**
2 * Converts arbitrary values into integers using extended conversion rules:
3 * - Strings are converted to floats, then to integers
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 = IntegerConverter.toNullableInteger("ABC"); // Result: null
10 * let value2 = IntegerConverter.toNullableInteger("123.456"); // Result: 123
11 * let value3 = IntegerConverter.toNullableInteger(true); // Result: 1
12 * let value4 = IntegerConverter.toNullableInteger(new Date()); // Result: current milliseconds
13 */
14export declare class IntegerConverter {
15 /**
16 * Converts value into integer or returns null when conversion is not possible.
17 *
18 * @param value the value to convert.
19 * @returns integer value or null when conversion is not supported.
20 *
21 * @see [[LongConverter.toNullableLong]]
22 */
23 static toNullableInteger(value: any): number;
24 /**
25 * Converts value into integer or returns 0 when conversion is not possible.
26 *
27 * @param value the value to convert.
28 * @returns integer value or 0 when conversion is not supported.
29 *
30 * @see [[LongConverter.toLong]]
31 * @see [[LongConverter.toLongWithDefault]]
32 */
33 static toInteger(value: any): number;
34 /**
35 * Converts value into integer or returns default value when conversion is not possible.
36 *
37 * @param value the value to convert.
38 * @param defaultValue the default value.
39 * @returns integer value or default when conversion is not supported.
40 *
41 * @see [[LongConverter.toLongWithDefault]]
42 * @see [[LongConverter.toNullableLong]]
43 */
44 static toIntegerWithDefault(value: any, defaultValue: number): number;
45}