import { NumericDictionary, PropertyPath } from '@ngx-simple/core/types'; /** * 判断对象属性存在 * @param object 任意{}对象 * @param path 属性值 'string' | 'string.string' | ['string', 'string'] * @returns 如果集合没有可枚举属性,或任何类型不被视为集合,则返回true。 */ export declare function has(object: T, path: PropertyPath): boolean; /** * 根据key深度获取对象对应值 * @param object 对象 [] | {} * @param path 属性值或者属性集合 'number' | 'string' | 'string.string' | ['string', 'string'] * @param fallback 回退值 * @returns 返回实际值,如果取不到返回null */ export declare function get(object: T, path: K | K[]): T[K]; export declare function get(object: T, path: K | K[]): T[K] | undefined; export declare function get(object: T | null | undefined, path: PropertyPath, fallback: D): T | D; export declare function get(object: NumericDictionary, path: number): T; export declare function get(object: NumericDictionary, path: number): T | undefined; export declare function get(object: NumericDictionary, path: number, fallback: D): T | D; export declare function get(object: null | undefined, path: PropertyPath, fallback: D): D; export declare function get(object: T | null | undefined, path: PropertyPath): undefined; export declare function get(object: T, path: K | K[], fallback: D): T[K] | D; /** * 根据属性集合排除对象值 * @param obj 对象 * @param arr 属性值或者属性集合 * @returns 返回排除属性值以外的对象属性和值 */ export declare function omit(object: T, path: K | K[]): Omit; /** * 根据属性集合获取对象值 * @param object 对象 * @param arr 属性值或者属性集合 * @returns 返回给定属性值以内的对象属性和值 */ export declare function pick(object: T, prop: K | K[]): Pick;