fun <T : CompoundParam<T>> compoundParameter(customName: String? = null): CompoundDelegateProvider<T>