/**
 * Determines if an object is a proxy Map created with proxyMap
 */
export declare const isProxyMap: (obj: object) => boolean;
/**
 * Creates a reactive Map that integrates with Valtio's proxy system
 *
 * This utility creates a Map-like object that works with Valtio's reactivity system,
 * allowing you to track changes to the Map in the same way as regular proxy objects.
 * The API is the same as the standard JavaScript Map.
 *
 * @example
 * import { proxyMap } from 'valtio/utils'
 * const state = proxyMap([["key", "value"]])
 *
 * This can be used inside a proxy as well
 *
 * const state = proxy({
 *   count: 1,
 *   map: proxyMap()
 * })
 *
 * When using an object as a key, you can wrap it with `ref` so it's not proxied
 * this is useful if you want to preserve the key equality
 *
 * import { ref } from 'valtio'
 *
 * const key = ref({})
 * state.set(key, "value")
 * state.get(key) //value
 *
 * const key = {}
 * state.set(key, "value")
 * state.get(key) //undefined
 */
export declare function proxyMap<K, V>(entries?: Iterable<[K, V]> | undefined | null): Map<K, V> & {
    $$valtioSnapshot: Omit<Map<K, V>, "set" | "delete" | "clear">;
};
