/** * Creates a union of the passed in Type and a function that returns Type. */ export declare type InnerDynamic = Type | ((argument: Argument) => Type); /** * Recursively creates a union of the passed in Type and a function that returns Type. */ export declare type Dynamic = { [Key in keyof Type]: InnerDynamic, Argument>; }; /** * Resolves the dynamic values in the passed in object. * * @param argument the argument to pass into the dynamic functions * @param dynamicValue the dynamic value to resolve * @param defaultValue the dynamic defaults values to merge with the resolved dynamicValue * @returns the resolved dynamic value */ export declare function resolve(argument: Argument, dynamicValue: Dynamic | Type | undefined, defaultValue: Dynamic | DefaultType): DefaultType & Type;