import { AnyModel } from '../model/BaseModel'; declare const objectMapBase: abstract new (data: any) => AnyModel & { readonly $: { items: Record; }; readonly items: Record; }; /** * A map that is backed by an object-like map. * Use `objectMap` to create it. */ export declare class ObjectMap extends objectMapBase implements Map { clear(): void; delete(key: string): boolean; forEach(callbackfn: (value: V, key: string, map: Map) => void, thisArg?: any): void; get(key: string): V | undefined; getOrInsert(key: string, defaultValue: V): V; getOrInsertComputed(key: string, callback: (key: string) => V): V; has(key: string): boolean; set(key: string, value: V): this; get size(): number; keys(): ReturnType["keys"]>; values(): ReturnType["values"]>; entries(): ReturnType["entries"]>; [Symbol.iterator](): ReturnType[typeof Symbol.iterator]>; readonly [Symbol.toStringTag] = "ObjectMap"; } export interface ObjectMap { readonly $: { items: Record; }; readonly items: Record; } /** * Creates a new ObjectMap model instance. * * @template V Value type. * @param [entries] Optional initial values. */ export declare function objectMap(entries?: ReadonlyArray | null): ObjectMap; export {};