From c558eaf35cb6dd29f5415dbd7763937fd3a2b802 Mon Sep 17 00:00:00 2001 From: EnixCoda Date: Fri, 3 Jun 2022 21:44:17 +0800 Subject: [PATCH] feat: is.not --- src/utils/is.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/utils/is.ts b/src/utils/is.ts index b2ad89d..9ea15f4 100644 --- a/src/utils/is.ts +++ b/src/utils/is.ts @@ -2,6 +2,14 @@ export const is = { boolean: (d: unknown): d is boolean => typeof d === 'boolean', number: (d: unknown): d is number => typeof d === 'number', string: (d: unknown): d is string => typeof d === 'string', + not: { + undefined: (d: T | undefined): d is T => d !== undefined, + null: (d: T | null): d is T => d !== null, + true: (d: T | true): d is T => d !== true, + false: (d: T | false): d is T => d !== false, + number: (d: T | number): d is T => typeof d !== 'number', + string: (d: T | string): d is T => typeof d !== 'string', + }, JSON: { object(d: unknown): d is JSONObject { return (typeof d === 'object' && d && !Array.isArray(d)) || false