UNPKG

alwz

Version:

Extendable library for typecasting

156 lines 4.95 kB
import Converter from './models/Converter.js'; /** * @namespace presets */ /** * @memberof presets * @example * boolean.convert('abc'); // true * boolean.convert(Symbol.for('')); // false * boolean.convert([]); // false * boolean.convert([0]); // false * boolean.convert([false, true]); // false * boolean.convert([123]); // true */ export declare const boolean: Converter<boolean>; /** * @memberof presets * @example * number.convert(Infinity); // Infinity * number.convert('42'); // 42 * number.convert('abc'); // NaN * number.convert(Symbol.for('42')); // 42 * number.convert(new Date('1970-01-01T00:00:00.042Z')); // 42 * number.convert(['42']); // 42 * number.convert([ [ [ 42 ] ] ]); // 42 * number.convert(new Date('1970-01-01T00:00:00.999Z')); // 999 */ export declare const number: Converter<number>; /** * @memberof presets * @name unsigned * @description cast to ubyte, ushort (2 bytes), uint (4 bytes) or ulong (8 bytes) * @example * ubyte.convert(-7); // 0 * ubyte.convert('a'); // 0 * ubyte.convert(Infinity); // 255 * ubyte.convert(-Infinity); // 0 * ushort.convert(Infinity); // 65535 * ushort.convert(-Infinity); // 0 * uint.convert(Infinity); // 4294967295 * uint.convert(-Infinity); // 0 * ulong.convert(Infinity); // MAX_SAFE_INTEGER * ulong.convert(-Infinity); // 0 */ export declare const byte: Converter<number>, short: Converter<number>, int: Converter<number>, long: Converter<number>, ubyte: Converter<number>, ushort: Converter<number>, uint: Converter<number>, ulong: Converter<number>; /** * @memberof presets * @example * double.convert('42.5'); // 42.5 * double.convert(Infinity); // Number.MAX_VALUE * double.convert(NaN); // 0 */ export declare const double: Converter<number>; /** * @memberof presets * @example * bigint.convert(42.5); // 42n * bigint.convert('42'); // 42n * bigint.convert('42.5'); // 0n * bigint.convert(Symbol.for('42')); // 42n * bigint.convert(new Date('1970-01-01T00:00:00.999Z')); // 999n */ export declare const bigint: Converter<bigint>; /** * @memberof presets * @example * string.convert(); // '' * string.convert(null); // '' * string.convert(false); // '' * string.convert(true); // ' ' * string.convert(42.5); // '42.5' * string.convert([1, 2, 3]); // '1' * string.convert(Symbol.for('42')); // '42' * string.convert(new Date('1970-01-01T00:00:00.999Z')); // '1970-01-01T00:00:00.999Z' */ export declare const string: Converter<string>; /** * @memberof presets * @example * symbol.convert(false); // Symbol('') * symbol.convert(42.5); // Symbol('42.5') * symbol.convert('42.5'); // Symbol('42.5') * symbol.convert([1.5, 2, 3]); // Symbol('1.5') * symbol.convert(new Date('1970-01-01T00:00:00.999Z')); // Symbol('1970-01-01T00:00:00.999Z') */ export declare const symbol: Converter<symbol>; /** * @memberof presets * @example * array.convert(); // [] * array.convert(null); // [] * array.convert(false); // [false] * array.convert(123); // [123] * array.convert('1,2,3'); // ['1,2,3'] * array.convert(new Set([1, 2, 3])); // [1, 2, 3] * array.convert(new Map([[1, 2], [3, 4], [5, 6]])); // [[1, 2], [3, 4], [5, 6]] */ export declare const array: Converter<any[]>; /** * @memberof presets * @example * fn.convert((a, b) => a + b); // (a, b) => a + b * fn.convert(123); // () => 123 */ export declare const fn: Converter<Function>; /** * @memberof presets * @example * date.convert(111); // Date('1970-01-01T00:00:00.111Z') * date.convert([222, 333]); // Date('1970-01-01T00:00:00.222Z') * date.convert('abc'); // Date(NaN) */ export declare const date: Converter<Date>; /** * @memberof presets * @example * object.convert(undefined); // {} * object.convert(null); // {} * object.convert(false); // Boolean { false } * object.convert(1); // Number { 1 } * object.convert('2'); // String { 2 } * object.convert([1, '2', 3n]); // [1, '2', 3n] */ export declare const object: Converter<object>; /** * @memberof presets * @example * map.convert([ [true, 1], 2, '3']); // Map { [true, 1] } */ export declare const map: Converter<Map<unknown, unknown>>; /** * @memberof presets * @example * weakmap.convert([ [Boolean, 'bool'], [Number, 'num'], [String, 'str'], [true, 1], 2, '3']); // WeakMap { [Boolean, 'bool'], [Number, 'num'], [String, 'str'] } */ export declare const weakmap: Converter<WeakMap<any, unknown>>; /** * @memberof presets * @example * set.convert([1, '2', 3]); // Set {1, '2', 3} */ export declare const set: Converter<Set<unknown>>; /** * @memberof presets * @example * weakset.convert([Boolean, Number, String, true, 2, '3']); // WeakSet { Boolean, Number, String } */ export declare const weakset: Converter<WeakSet<any>>; /** * @memberof presets * @example * promise.convert(Promise.resolve(1)); // Promise { 1 } * promise.convert(42); // Promise { 42 } */ export declare const promise: Converter<Promise<any>>; //# sourceMappingURL=presets.d.ts.map