ts-type-guards
Version:
Curried TypeScript type guards for primitive types and classes
32 lines • 936 B
JavaScript
import { isPrimitive, isNonPrimitive, is, isLike } from "./is";
export function isArrayOfBooleans(x) {
return isArrayOfLike(true)(x);
}
export function isArrayOfNumbers(x) {
return isArrayOfLike(1)(x);
}
export function isArrayOfStrings(x) {
return isArrayOfLike("")(x);
}
export function isArrayOfSymbols(x) {
return isArrayOfLike(Symbol())(x);
}
export function isArrayOfNulls(x) {
return isArrayOfLike(null)(x);
}
export function isArrayOfUndefineds(x) {
return isArrayOfLike(undefined)(x);
}
export function isArrayOfPrimitives(x) {
return is(Array)(x) && x.every(isPrimitive);
}
export function isArrayOfObjects(x) {
return is(Array)(x) && x.every(isNonPrimitive);
}
export function isArrayOf(type) {
return (xs) => is(Array)(xs) && xs.every(is(type));
}
export function isArrayOfLike(reference) {
return (x) => is(Array)(x) && x.every(isLike(reference));
}
//# sourceMappingURL=array.js.map