export declare class ObjectUtil { static transformKeysAndValues(object: any, newKey?: (key: string, value: any, keyList?: string[]) => string, newValue?: (key: string, value: any, keyList?: string[]) => any | { key: string; value: any; }[], mergeKeyValue?: (key: string, value: any, newKey: string, newValue: any, keyList?: string[]) => { key: string; value: any; remove?: boolean; }, keyList?: string[]): any; static transfromKeysAndValuesAsync(object: any, newKey?: (key: string, value: any, keyList?: string[]) => Promise, newValue?: (key: string, value: any, keyList?: string[]) => Promise, mergeKeyValue?: (key: string, value: any, newKey: string, newValue: any, keyList?: string[]) => Promise<{ key: string; value: any; remove?: boolean; }>, keyList?: string[]): Promise; static nestedKeys(object: any, excludeKeys?: string[], onObject?: (key: string, value: any, keys: string[]) => void, onArray?: (key: string, value: any, keys: string[]) => void): string[]; static duplicate(object: any): T; }