import { StringKeyedObject, YjsProxiableValue } from './types'; import * as Y from "yjs"; /** * Wraps a Y.js Map or Array in a Proxy that allows it to be treated as a plain JavaScript object or array. * * Mutations to the proxy are automatically applied to the underlying Y.js value within a transaction. * Nested Y.js values are automatically wrapped in proxies when accessed. * * @param yjsValue The Y.js Map or Array to wrap. * @returns A proxy that behaves like a plain JS object or array. * @throws {YjsProxyError} If the Y.js value is deleted or if it's not a Y.Map or Y.Array. */ export declare function wrapYjs(yArray: Y.Array): T; export declare function wrapYjs(yMap: Y.Map): T; export declare function wrapYjs(yjsValue: YjsProxiableValue): T;