--- /dev/null
+/* --------------------------------------------------------------------------------------------
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for license information.
+ * ------------------------------------------------------------------------------------------ */
+'use strict';
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.objectLiteral = exports.typedArray = exports.stringArray = exports.array = exports.func = exports.error = exports.number = exports.string = exports.boolean = void 0;
+function boolean(value) {
+ return value === true || value === false;
+}
+exports.boolean = boolean;
+function string(value) {
+ return typeof value === 'string' || value instanceof String;
+}
+exports.string = string;
+function number(value) {
+ return typeof value === 'number' || value instanceof Number;
+}
+exports.number = number;
+function error(value) {
+ return value instanceof Error;
+}
+exports.error = error;
+function func(value) {
+ return typeof value === 'function';
+}
+exports.func = func;
+function array(value) {
+ return Array.isArray(value);
+}
+exports.array = array;
+function stringArray(value) {
+ return array(value) && value.every(elem => string(elem));
+}
+exports.stringArray = stringArray;
+function typedArray(value, check) {
+ return Array.isArray(value) && value.every(check);
+}
+exports.typedArray = typedArray;
+function objectLiteral(value) {
+ // Strictly speaking class instances pass this check as well. Since the LSP
+ // doesn't use classes we ignore this for now. If we do we need to add something
+ // like this: `Object.getPrototypeOf(Object.getPrototypeOf(x)) === null`
+ return value !== null && typeof value === 'object';
+}
+exports.objectLiteral = objectLiteral;
+//# sourceMappingURL=is.js.map
\ No newline at end of file