From ad661ebceebb1ba9d39aece4c1ef11f90fa3ca16 Mon Sep 17 00:00:00 2001 From: Stuart Dotson Date: Fri, 7 Jan 2022 09:32:06 -0500 Subject: [PATCH] Fix `is.iterable` and `is.asyncIterable` TypeScript types (#149) --- source/index.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/index.ts b/source/index.ts index 86499f1..be9f990 100644 --- a/source/index.ts +++ b/source/index.ts @@ -181,13 +181,13 @@ is.buffer = (value: unknown): value is Buffer => (value as any)?.constructor?.is is.nullOrUndefined = (value: unknown): value is null | undefined => is.null_(value) || is.undefined(value); is.object = (value: unknown): value is object => !is.null_(value) && (typeof value === 'object' || is.function_(value)); -is.iterable = (value: unknown): value is IterableIterator => is.function_((value as IterableIterator)?.[Symbol.iterator]); +is.iterable = (value: unknown): value is Iterable => is.function_((value as Iterable)?.[Symbol.iterator]); -is.asyncIterable = (value: unknown): value is AsyncIterableIterator => is.function_((value as AsyncIterableIterator)?.[Symbol.asyncIterator]); +is.asyncIterable = (value: unknown): value is AsyncIterable => is.function_((value as AsyncIterable)?.[Symbol.asyncIterator]); -is.generator = (value: unknown): value is Generator => is.iterable(value) && is.function_(value.next) && is.function_(value.throw); +is.generator = (value: unknown): value is Generator => is.iterable(value) && is.function_((value as Generator)?.next) && is.function_((value as Generator)?.throw); -is.asyncGenerator = (value: unknown): value is AsyncGenerator => is.asyncIterable(value) && is.function_(value.next) && is.function_(value.throw); +is.asyncGenerator = (value: unknown): value is AsyncGenerator => is.asyncIterable(value) && is.function_((value as AsyncGenerator).next) && is.function_((value as AsyncGenerator).throw); is.nativePromise = (value: unknown): value is Promise => isObjectOfType>('Promise')(value);