summaryrefslogtreecommitdiff
path: root/alarm/node_modules/graphql/jsutils/isAsyncIterable.js.flow
diff options
context:
space:
mode:
Diffstat (limited to 'alarm/node_modules/graphql/jsutils/isAsyncIterable.js.flow')
-rw-r--r--alarm/node_modules/graphql/jsutils/isAsyncIterable.js.flow14
1 files changed, 14 insertions, 0 deletions
diff --git a/alarm/node_modules/graphql/jsutils/isAsyncIterable.js.flow b/alarm/node_modules/graphql/jsutils/isAsyncIterable.js.flow
new file mode 100644
index 0000000..e81f94e
--- /dev/null
+++ b/alarm/node_modules/graphql/jsutils/isAsyncIterable.js.flow
@@ -0,0 +1,14 @@
+// @flow strict
+import { SYMBOL_ASYNC_ITERATOR } from '../polyfills/symbols';
+
+/**
+ * Returns true if the provided object implements the AsyncIterator protocol via
+ * either implementing a `Symbol.asyncIterator` or `"@@asyncIterator"` method.
+ */
+declare function isAsyncIterable(value: mixed): boolean %checks(value instanceof
+ AsyncIterable);
+
+// eslint-disable-next-line no-redeclare
+export default function isAsyncIterable(maybeAsyncIterable) {
+ return typeof maybeAsyncIterable?.[SYMBOL_ASYNC_ITERATOR] === 'function';
+}