export declare type ChangeTrace = { path: string; newValue: any; oldValue: any; }; export declare function get(object: O, path: K): O[K]; export declare function get(object: O, path: K extends keyof O ? never : K): any; export declare function set(object: O, path: K, value: O[K]): ChangeTrace[]; export declare function set(object: O, path: K extends keyof O ? never : K, value: any): ChangeTrace[];