The LT and GT signs are somehow eaten up by this website, I originally wrote TScriptInterface<class IBuffableInterface> (hopefully shown now)
But if it is a smart pointer, forget about passing it as pointer as I suggested… It may be impossible to give it default value when used as UFUNCTION parameter. The UHT is not perfect yet. May someone correct me if I am wrong.
You can at least move the problematic paramter to the first position, so you can keep the default values for the other parameters.
Sorry that I can not help you further.