ES6: How to distinguish between spread & rest operators?