import { ObjPathProxy } from './obj-path-proxy'; export * from './obj-path-proxy'; export declare type ObjProxyArg = ObjPathProxy | ((p: ObjPathProxy) => ObjPathProxy); export declare function createProxy(path?: PropertyKey[]): ObjPathProxy; export declare function getPath(proxy: ObjProxyArg): PropertyKey[]; /** * For the sake of "overloading" on return type * @param proxy */ export declare function getPlainPath(proxy?: ObjProxyArg): Array; export declare function isProxy(value: any): value is ObjPathProxy; export declare function get(object: TRoot, proxy: ObjProxyArg, defaultValue?: T | null | undefined): T; export declare function set(object: TRoot, proxy: ObjProxyArg, value: T): void;