If you want to avoid the codegen TypeScript uses for rest params and manually deal with the arguments array you can write a function overload that takes rest params and an implementation that does not, like so: