From 0fee49d171b36d0972b49cd1bb6fa5a8e7a8f140 Mon Sep 17 00:00:00 2001 From: Tal Mac Date: Sun, 23 Jul 2023 14:55:39 +0300 Subject: [PATCH] Make ResolveTypesOfTypeGuardsTuple more readable --- source/index.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/source/index.ts b/source/index.ts index eb5c487..122917b 100644 --- a/source/index.ts +++ b/source/index.ts @@ -329,7 +329,12 @@ is.arrayLike = (value: unknown): value is ArrayLike => !is.nullO type TypeGuard = (value: unknown) => value is T; // eslint-disable-next-line @typescript-eslint/ban-types -type ResolveTypesOfTypeGuardsTuple = TypeGuardsOfT extends [TypeGuard, ...infer TOthers] ? ResolveTypesOfTypeGuardsTuple : TypeGuardsOfT extends undefined[] ? ResultOfT : never; +type ResolveTypesOfTypeGuardsTuple = + TypeGuardsOfT extends [TypeGuard, ...infer TOthers] + ? ResolveTypesOfTypeGuardsTuple + : TypeGuardsOfT extends undefined[] + ? ResultOfT + : never; is.tupleLike = >>(value: unknown, guards: [...T]): value is ResolveTypesOfTypeGuardsTuple => { if (is.array(guards) && is.array(value) && guards.length === value.length) {