voraa, не, мыж не знаем что там за проверки, может ему ок, если последние аргументы будут undefined:
{foo: isString, bar: [isArray, undefined], 'buz': [isElement, undefined]},
По идее конечно в таком случае надо юзать 'foo?' но мало ли какие там сложные и хитрые проверки будут.)