/** * Is the given argument a plain object (created via `{}`, `new Object()`, or * `Object.create(null)`) rather than a class instance, array, or built-in like * `Date`/`Map`. * * Works across realms (e.g. an object literal from an iframe), by checking the * prototype chain instead of identity against this realm's `Object.prototype`. * * @param x - Argument to test * * @returns Whether the argument is a plain object or not * * @example * ```ts * class Obj {} * * isPlainObject({}); // --> true * isPlainObject(Object.create(null)); // --> true * isPlainObject(new Obj()); // --> false * isPlainObject([]); // --> false * isPlainObject(new Date()); // --> false * ``` */ export declare function isPlainObject(x: unknown): x is Record; export default isPlainObject;