вопрос в усложнении себе жизни.
вот вы говорите, что можете на функции переписать, что тогда будет принимать аргументом возвращаемая функция?
если какую-то глобальную структуру Options, с которой работает оба этих метода, то проблема решена, метод сам выбирает, какие именно поля из этой структуры ему использовать после применения опций