import { O } from "ts-toolbelt"; import { Required } from "utility-types"; export declare type SetPropertyCallbackTypeStatic = O.Readonly>; export declare type SetPropertyCallbackTypeDynamic = Omit & O.Readonly>; /** * set property from {@param factory} to getter for {@param object} * should be used outside * * @param object * * @param property * getter key * * @param writable * * @param factory * @param configurable */ export default function SetPropertyCallbackParameters(object: This, property: Key, factory: () => This[Key], writable?: boolean, configurable?: boolean): SetPropertyCallbackTypeStatic; export default function SetPropertyCallbackParameters(object: This, property: Key, factory: () => Type, writable?: boolean, configurable?: boolean): SetPropertyCallbackTypeDynamic;