payload-is
Version:
A comprehensive TypeScript/JavaScript type checking library providing functions to check data types, collections, primitives, and built-in objects
1 lines • 968 B
Source Map (JSON)
{"version":3,"file":"has.cjs","sources":["../../src/has.ts"],"sourcesContent":["import { isFunction } from \"./function.ts\";\nimport { isObject } from \"./object.ts\";\n\n// toJSON\ninterface HasToJSON {\n toJSON(): unknown;\n}\nexport function hasToJSON(value: unknown): value is HasToJSON {\n return isObject(value) && isFunction((value as HasToJSON).toJSON);\n}\n\n// fromJSON\ninterface HasFromJSON<T extends abstract new (...args: any) => any> {\n fromJSON(json: any): InstanceType<T>;\n}\nexport function hasFromJSON<T extends abstract new (...args: any) => any>(\n value: unknown\n): value is HasFromJSON<T> {\n return isObject(value) && isFunction((value as HasFromJSON<T>).fromJSON);\n}\n"],"names":["isObject","isFunction"],"mappings":";;;;;;AAOO,SAAS,UAAU,KAAoC,EAAA;AAC5D,EAAA,OAAOA,eAAS,CAAA,KAAK,CAAK,IAAAC,oBAAA,CAAY,MAAoB,MAAM,CAAA;AAClE;AAMO,SAAS,YACd,KACyB,EAAA;AACzB,EAAA,OAAOD,eAAS,CAAA,KAAK,CAAK,IAAAC,oBAAA,CAAY,MAAyB,QAAQ,CAAA;AACzE;;;;;"}