import { type Nullable } from './types.js'; /** * Similar to Map.has, but works for plain objects, and returns false * for null maps * @see Map.has */ export declare function has(obj: O, key: keyof O): boolean; /** * Similar to Map.has, but works for plain objects, and returns false * for null maps * @see Map.has */ export declare function has(obj: Map, key: K): boolean; export declare function has(obj: null | undefined, key: unknown): false; export type MapValue = T extends Map ? V : never; export type ObjValue = O[K]; /** * Similar to Map.get, but works for plain objects, and returns undefined * for null maps and missing keys * @see Map.get * @returns found value, *undefined* if map/value to not exist */ export declare function get(obj: O, key: K): ObjValue; export declare function get>(obj: Nullable, key: K): MapValue; /** * Returns a value by key, throws if the value is missing or the map null */ export declare function getValue(map: T, key: keyof T, errorMessage?: string): ObjValue; export declare function getValue>(map: T, key: K, errorMessage?: string): MapValue; export declare function getValue(map: T, key: unknown, errorMessage?: string): never; /** * @see Map.keys * @see Object.keys * @returns an iterable of the map/object keys */ export declare function keys>(map: O): Iterable; export declare function keys(map: O): Iterable; /** * @see Map.values * @see Object.values */ export declare function values>(map: O): Iterable>; export declare function values(map: O): Iterable>; //# sourceMappingURL=maps.d.ts.map