// commonly used in HoCs where either an object or function can be passed as // configuration to the Hoc type FnParams = (passedProps: TParams) => TResult; type FnOrObject = TResult | FnParams;