/**
 * 对象属性
 */
export type ObjectKey = string | number | symbol;
/**
 * 获取成员值
 * @param target - 目标对象
 * @param propPath - 属性路径
 * @returns 成员值
 */
export declare function getMember(target: any, propPath: ObjectKey[]): any;
/**
 * 设置成员值
 * @remarks
 * 对于数字类型的路径，会使用数组作该属性所属的对象
 * @param target - 目标对象
 * @param propPath - 属性路径
 * @param value
 */
export declare function setMember(target: any, propPath: ObjectKey[], value: any): void;
/**
 * 获得默认值
 */
export type GetDefaultValue = () => any;
/**
 * 获取成员值
 * @param target
 * @param propPath
 * @param defaultValue
 * @returns
 */
export declare function getMemberWithDefault(target: any, propPath: ObjectKey[], defaultValue?: GetDefaultValue | any): any;
/**
 * 获取成员值
 * @param target
 * @param propPath
 * @param defaultValue
 * @returns 如果 defaultValue 返回的是 Promise ，则该函数也返回 Promise，其它
 */
export declare function getMemberWithAsyncDefault(target: any, propPath: ObjectKey[], defaultValue?: GetDefaultValue | any): any;
/**
 * 删除成员
 * @param target - 目标对象
 * @param propPath - 属性路径
 * @returns 是否执行了删除操作
 */
export declare function deleteMember(target: any, propPath: ObjectKey[]): boolean;
/**
 * 移除根级 undefined 属性
 * @param obj
 * @returns
 */
export declare function removeUndefined(obj: any): any;
/**
 * 移除根级 undefined 和 null 属性
 * @param obj
 * @returns
 */
export declare function removeNull(obj: any): any;
//# sourceMappingURL=prop-path.d.ts.map