Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
Back to tool/Back to issues
#976·rematch

@rematch/core has incompatible types with react-redux@8

Author: sushantdhimanCreated Aug 10, 2022Updated Aug 10, 2022

Describe the bug

Typings are incompatible with latest react-redux@8

typescript
node_modules/@rematch/core/dist/types.d.ts:220:97 - error TS2304: Cannot find name 'MapStateToPropsParam'.

220         <RM extends Models<RM>, State, TStateProps, TDispatchProps, TOwnProps>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapRematchDispatchToPropsNonObject<TDispatchProps, TOwnProps, RM>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>;
                                                                                                    ~~~~~~~~~~~~~~~~~~~~

node_modules/@rematch/core/dist/types.d.ts:220:238 - error TS2304: Cannot find name 'InferableComponentEnhancerWithProps'.

220         <RM extends Models<RM>, State, TStateProps, TDispatchProps, TOwnProps>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapRematchDispatchToPropsNonObject<TDispatchProps, TOwnProps, RM>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>;

To Reproduce

If you try to compile any project with skipLibCheck: false using latest dependencies (example below), it will fail type check.

json
{
  "name": "rematch-test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "@rematch/core": "^2.2.0",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-redux": "^8.0.2",
    "redux": "^4.2.0",
    "typescript": "^4.7.4"
  }
}

Expected behavior

Compilation works without any errors

Additional context

Perhaps this type augmentation is no longer required

https://github.com/rematch/rematch/blob/f5a2773c9ad847f5eca840ceac3acdedb0068cb7/packages/core/src/types.ts#L803-L813

Source: rematch/rematch

View original on GitHubView discussion on GitHub