/**
 * @file Safe references to `Map`, `Set`, `WeakMap`, `WeakSet`, and `WeakRef`.
 *   Constructors plus uncurried prototype methods. `WeakRef` exposes only its
 *   constructor — there's a separate `weakRefSafe` wrapper in `./uncurry` for
 *   the throws-on-non-Object case.
 */
export declare const MapCtor: MapConstructor;
export declare const SetCtor: SetConstructor;
export declare const WeakMapCtor: WeakMapConstructor;
export declare const WeakRefCtor: WeakRefConstructor;
export declare const WeakSetCtor: WeakSetConstructor;
export declare const MapPrototypeClear: (self: unknown) => void;
export declare const MapPrototypeDelete: (self: unknown, key: any) => boolean;
export declare const MapPrototypeEntries: (self: unknown) => MapIterator<[any, any]>;
export declare const MapPrototypeForEach: (self: unknown, callbackfn: (value: any, key: any, map: Map<any, any>) => void, thisArg?: any) => void;
export declare const MapPrototypeGet: (self: unknown, key: any) => any;
export declare const MapPrototypeHas: (self: unknown, key: any) => boolean;
export declare const MapPrototypeKeys: (self: unknown) => MapIterator<any>;
export declare const MapPrototypeSet: (self: unknown, key: any, value: any) => Map<any, any>;
export declare const MapPrototypeValues: (self: unknown) => MapIterator<any>;
export declare const SetPrototypeAdd: (self: unknown, value: any) => Set<any>;
export declare const SetPrototypeClear: (self: unknown) => void;
export declare const SetPrototypeDelete: (self: unknown, value: any) => boolean;
export declare const SetPrototypeEntries: (self: unknown) => SetIterator<[any, any]>;
export declare const SetPrototypeForEach: (self: unknown, callbackfn: (value: any, value2: any, set: Set<any>) => void, thisArg?: any) => void;
export declare const SetPrototypeHas: (self: unknown, value: any) => boolean;
export declare const SetPrototypeKeys: (self: unknown) => SetIterator<any>;
export declare const SetPrototypeValues: (self: unknown) => SetIterator<any>;
export declare const WeakMapPrototypeDelete: (self: unknown, key: WeakKey) => boolean;
export declare const WeakMapPrototypeGet: (self: unknown, key: WeakKey) => any;
export declare const WeakMapPrototypeHas: (self: unknown, key: WeakKey) => boolean;
export declare const WeakMapPrototypeSet: (self: unknown, key: WeakKey, value: any) => WeakMap<WeakKey, any>;
export declare const WeakSetPrototypeAdd: (self: unknown, value: WeakKey) => WeakSet<WeakKey>;
export declare const WeakSetPrototypeDelete: (self: unknown, value: WeakKey) => boolean;
export declare const WeakSetPrototypeHas: (self: unknown, value: WeakKey) => boolean;
