{
+ )>(component: TComponentConstruct): TComponentConstruct
+ }
+
+ /**
+ * Connects a React component to a Redux store.
+ * @param mapStateToProps
+ * @param mapDispatchToProps
+ * @param mergeProps
+ * @param options
+ */
+ export function connect (mapStateToProps?: MapStateToProps,
+ mapDispatchToProps?: MapDispatchToPropsFunction|MapDispatchToPropsObject,
+ mergeProps?: MergeProps,
+ options?: Options): ComponentConstructDecorator ;
+
+ interface MapStateToProps {
+ (state: any, ownProps?: any): any;
+ }
+
+ interface MapDispatchToPropsFunction {
+ (dispatch: Dispatch, ownProps?: any): any;
+ }
+
+ interface MapDispatchToPropsObject {
+ [name: string]: ActionCreator;
+ }
+
+ interface MergeProps {
+ (stateProps: any, dispatchProps: any, ownProps: any): any;
+ }
+
+ interface Options {
+ /**
+ * If true, implements shouldComponentUpdate and shallowly compares the result of mergeProps,
+ * preventing unnecessary updates, assuming that the component is a “pure” component
+ * and does not rely on any input or state other than its props and the selected Redux store’s state.
+ * Defaults to true.
+ * @default true
+ */
+ pure: boolean;
+ }
+
+ export interface Property {
+ /**
+ * The single Redux store in your application.
+ */
+ store?: Store;
+ children?: Function;
+ }
+
+ /**
+ * Makes the Redux store available to the connect() calls in the component hierarchy below.
+ */
+ export class Provider extends Component