* [react-router] fixed lint error due to implicit any in CustomLink test
* [react-router] added possibility to specify component props in route definitions, and to specify the type of this.props.route.props when implementing such a component
Example:
/* component definition */
interface Props { foo: string }
class MyComponent extends React.Component<RouteComponentProps<void,void,Props>, State> {
/* here you can use this.props.route.props.foo */
}
/* route configuration */
<Route path="/my-path" component={MyComponent} props={{ foo: 'bar' }}>
* - fixed lint errors related to T[] instead of Array<T>
- added default type for ComponentProps in RouteComponentProps<P,R,ComponentProps>, so that it stays compatible with existing code
* [react-router] added default route props type (any) so that this new feature is fully backward compatible
* [react-router] fixed lint errors (T[] instead of Array<T> for non-generic types)
* [react-router] Fix for --strictFunctionTypes
It seems it's not possible for a SFC to conform to React.ComponentType<RouteComponentProps<any> | {}> with both strictFunctionTypes and strictNullChecks (they have to either be `Partial<RouteComponentProps<any>>` or `{}`).
The whole point of the `| {}` is to allow for components that have defaulted `Props` / don't use any `Props` anyway, so adding it as another listed type should work.
* Fix dtslint errors
* [react-router] add RouteComponentProps.staticContext
* [react-router] revert RouteConfig test file
* [react-router] Add example for StaticRouter and staticContext
SwitchProps.children is too strict for projects using typescript 2.3.
With typescript 2.3 the children could be made mandatory, but this will
break backwards compatibility with any ts 2.2 user
The `Router` component passes a context object down to children. This
commit adds the type definition for this context object for children of
`Router` to use.