1234567891011121314151617181920212223242526272829303132333435363738 |
- /**
- Convert a value to an array.
-
- _Supplying `null` or `undefined` results in an empty array._
-
- @example
- ```
- import arrify = require('arrify');
-
- arrify('🦄');
- //=> ['🦄']
-
- arrify(['🦄']);
- //=> ['🦄']
-
- arrify(new Set(['🦄']));
- //=> ['🦄']
-
- arrify(null);
- //=> []
-
- arrify(undefined);
- //=> []
- ```
- */
- declare function arrify<ValueType>(
- value: ValueType
- ): ValueType extends (null | undefined)
- ? []
- : ValueType extends string
- ? [string]
- : ValueType extends ReadonlyArray<unknown> // TODO: Use 'readonly unknown[]' in the next major version
- ? ValueType
- : ValueType extends Iterable<infer T>
- ? T[]
- : [ValueType];
-
- export = arrify;
|