Urara-Blog/node_modules/.pnpm-store/v3/files/8d/37c079b566429075fa8d4ffcb08f0e4144767d249dc68e3ecbfaba52f6fe3f2fa962c967633da66a236c6500a72dac97469a4a6eed24fc146eafd13711ac71
2022-08-14 01:14:53 +08:00

35 lines
673 B
Text

/**
Check if a value is a plain object.
An object is plain if it's created by either `{}`, `new Object()`, or `Object.create(null)`.
@example
```
import isPlainObject from 'is-plain-obj';
import {runInNewContext} from 'node:vm';
isPlainObject({foo: 'bar'});
//=> true
isPlainObject(new Object());
//=> true
isPlainObject(Object.create(null));
//=> true
// This works across realms
isPlainObject(runInNewContext('({})'));
//=> true
isPlainObject([1, 2, 3]);
//=> false
class Unicorn {}
isPlainObject(new Unicorn());
//=> false
isPlainObject(Math);
//=> false
```
*/
export default function isPlainObject<Value>(value: unknown): value is Record<PropertyKey, Value>;