@apollo/client
Version:
A fully-featured caching GraphQL client.
34 lines (33 loc) • 1.15 kB
TypeScript
import { isNonNullObject } from "./isNonNullObject.js";
type ReconcilerFunction = (this: DeepMerger, target: Record<string | number, any>, source: Record<string | number, any>, property: string | number) => any;
/**
* @internal
*
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
*/
export declare namespace DeepMerger {
interface Options {
arrayMerge?: DeepMerger.ArrayMergeStrategy;
reconciler?: ReconcilerFunction;
}
interface MergeOptions {
atPath?: ReadonlyArray<string | number>;
}
type ArrayMergeStrategy = "truncate" | "combine";
}
/**
* @internal
*
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
*/
export declare class DeepMerger {
private options;
private reconciler;
constructor(options?: DeepMerger.Options);
merge(target: any, source: any, mergeOptions?: DeepMerger.MergeOptions): any;
isObject: typeof isNonNullObject;
private pastCopies;
shallowCopyForMerge<T>(value: T): T;
}
export {};
//# sourceMappingURL=DeepMerger.d.ts.map