- `path`: `String`*optional* route path to the request
- `path`: `String`*optional* route path to the request
- `method`: `String`*optional* http method. accepts `get`, `post`, `put`, `delete`, and of course Express' `all`
- `method`: `String`*optional* http method. accepts `get`, `post`, `put`, `delete`, and of course Express' `all`
- `lookup`: `String|Array.<String>` value lookup on the request object. Can be a single value or array. See [examples](#examples) for common usages
- `lookup`: `Function|String|Array.<String>` value lookup on the request object. Can be a single value, array or function. See [examples](#examples) for common usages
- `total`: `Number` allowed number of requests before getting rate limited
- `total`: `Number` allowed number of requests before getting rate limited
- `expire`: `Number` amount of time in `ms` before the rate-limited is reset
- `expire`: `Number` amount of time in `ms` before the rate-limited is reset
- `whitelist`: `function(req)` optional param allowing the ability to whitelist. return `boolean`, `true` to whitelist, `false` to passthru to limiter.
- `whitelist`: `function(req)` optional param allowing the ability to whitelist. return `boolean`, `true` to whitelist, `false` to passthru to limiter.