Skip to content

Upgrading react-redux 8 to 9

Breaking8.1.3 → 9.3.1Breaking5Platform5Deprecated2New8Changed28Fixed16Other14

BreakingUpgrade verdict

4 breaking changes and 5 platform requirement changes.

  • The old UMD script-tag builds are no longer included.
  • The setting that warns about a selector returning a new object every time has a new name and now lives inside a `devModeChecks` object.
  • The files shipped in the package and the package.json entry points have new names and locations, which can break setups that reference them directly.
  • Most build tools will now load the ESM build by default instead of the previous main artifact.
Top 5 of 11 that need code or config changes

Drops @babel/runtime, @types/hoist-non-react-statics, hoist-non-react-statics, react-is.

Installs 2 packages in all (was 7).

Moves @types/use-sync-external-store 0.0.3 → 0.0.6. Your build may pick other versions.

Breaking4
Drops UMD build artifacts from the published package.
Renames the noopCheck dev mode option to identityFunctionCheck and restructures the options object.
noopCheckidentityFunctionCheckUseSelectorOptionsdevModeChecksstabilityCheckequalityFnDevModeCheckFrequency
Changes published build artifact names and contents, and the exports/module/main fields in package.json.
exportsmodulemain
The primary build artifact is now the ESM file dist/react-redux.mjs.
dist/react-redux.mjsreact-redux.legacy-esm.js
Platform5
Replaces the internal NoInfer helper with TypeScript's built-in NoInfer, making TS 5.4 the minimum version for React-Redux's types.
NoInfer
Updates the React peer dependency to accept React 19.
Removes the no-longer-necessary peer dependency on react-native, fixing NPM peer dependency installation failures.
react-native
Updates the React Native peer dependency to >= 0.69 to reflect React 18 compatibility needs and reduce npm peer dependency install errors.
Allows react-native newer than 0.69 as a peer dependency.
react-native
Deprecated2
Marks the connect API as deprecated with an @deprecated docblock, without changing behavior or removing the API.
connect
Marks the batch export as deprecated since it is now effectively a no-op that immediately runs the callback.
batch

Generated by DepDelta from published .d.ts files. Not mixed with prose notes.

  • added: call Connect(): InferableComponentEnhancer<DispatchProp>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispat…
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps…
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProp…
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: null | undefined): InferableComponentEnhancerWithProps<TStateProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TO…
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined): InferableComponentEnhancerWithProps<TStateProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParamForMergeProps<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>, options?: ConnectOptions<State, TStateProps, TOwnProps, T…
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps>
  • added: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined): InferableComponentEnhancerWithProps<TStateProps & DispatchProp, TOwnProps>
  • added: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToProps<TStateProps, TOwnProps, State> | null | undefined, mapDispatchToProps: null | undefined, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<DispatchProp & TStateProps, TOwnProps>
  • added: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>): InferableComponentEnhancerWithProps<TStateProps & DispatchProp, TOwnProps>
  • added: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsFactory<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<DispatchProp & TStateProps, TOwnProps>
  • added: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParamForMergeProps<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: MergeProps<TStateProps, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps>
  • added: call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<undefined, TDispatchProps, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps>
  • added: call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToProps<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps>
  • added: call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFactory<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps>
  • added: call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsFunction<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps>
  • added: call Connect<no_state = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: null | undefined, mergeProps: MergeProps<undefined, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps>
  • added: call TypedUseSelectorHook<Selected = unknown>(selector: (state: TState) => Selected, options?: UseSelectorOptions<Selected>): Selected
  • added: call TypedUseSelectorHook<TSelected>(selector: (state: TState) => TSelected, equalityFn?: EqualityFn<TSelected>): TSelected
  • added: call UseDispatch<AppDispatch extends DispatchType = DispatchType>(): AppDispatch
  • added: call UseSelector<TState extends StateType = StateType, Selected = unknown>(selector: (state: TState) => Selected, equalityFnOrOptions?: EqualityFn<Selected> | UseSelectorOptions<Selected>): Selected
  • added: call UseStore(): StoreType
  • added: call UseStore<StateType extends ReturnType<StoreType['getState']> = ReturnType<StoreType['getState']>, ActionType extends Action = ExtractStoreActionType<Store>>(): Store<StateType, ActionType>
  • added: const ReactReduxContext: Context<ReactReduxContextValue<any, UnknownAction> | null>
  • added: const batch: typeof defaultNoopBatch
  • added: const connect: Connect
  • added: const legacy_connect: Connect
  • added: const useDispatch: UseDispatch<Dispatch<UnknownAction>>
  • added: const useSelector: UseSelector<unknown>
  • added: const useStore: UseStore<Store<unknown, Action, unknown>>
  • added: function Provider<A extends Action<string> = UnknownAction, S = unknown>(providerProps: ProviderProps<A, S>): React.JSX.Element
  • added: function createDispatchHook<StateType = unknown, ActionType extends Action = UnknownAction>(context?: Context<ReactReduxContextValue<StateType, ActionType> | null>): UseDispatch<Dispatch<ActionType>>
  • added: function createSelectorHook(context?: React.Context<ReactReduxContextValue<any, any> | null>): UseSelector
  • added: function createStoreHook<StateType = unknown, ActionType extends Action = Action>(context?: Context<ReactReduxContextValue<StateType, ActionType> | null>): UseStore<Store<StateType, ActionType>>
  • added: function shallowEqual(objA: any, objB: any): boolean
  • added: interface Connect<DefaultState = unknown>
  • added: interface ConnectProps
  • added: interface DispatchProp<A extends Action<string> = UnknownAction>
  • added: interface ProviderProps<A extends Action<string> = UnknownAction, S = unknown>
  • added: interface ReactReduxContextValue<SS = any, A extends Action<string> = UnknownAction> extends Pick<ProviderProps, 'stabilityCheck' | 'identityFunctionCheck'>
  • added: interface Subscription
  • added: interface TypedUseSelectorHook<TState>
  • added: interface UseDispatch<DispatchType extends Dispatch<UnknownAction> = Dispatch<UnknownAction>>
  • added: interface UseSelector<StateType = unknown>
  • added: interface UseStore<StoreType extends Store>
  • added: property ConnectProps.context?: ReactReduxContextInstance
  • added: property ConnectProps.store?: Store
  • added: property DispatchProp.dispatch: Dispatch<A>
  • added: property ProviderProps.children: ReactNode
  • added: property ProviderProps.context?: Context<ReactReduxContextValue<S, A> | null>
  • added: property ProviderProps.identityFunctionCheck?: DevModeCheckFrequency
  • added: property ProviderProps.serverState?: S
  • added: property ProviderProps.stabilityCheck?: DevModeCheckFrequency
  • added: property ProviderProps.store: Store<S, A>
  • added: property ReactReduxContextValue.getServerState?: () => SS
  • added: property ReactReduxContextValue.store: Store<SS, A>
  • added: property ReactReduxContextValue.subscription: Subscription
  • added: property Subscription.addNestedSub: (listener: VoidFunc) => VoidFunc
  • added: property Subscription.getListeners: () => ListenerCollection
  • added: property Subscription.handleChangeWrapper: VoidFunc
  • added: property Subscription.isSubscribed: () => boolean
  • added: property Subscription.notifyNestedSubs: VoidFunc
  • added: property Subscription.onStateChange?: VoidFunc | null
  • added: property Subscription.trySubscribe: VoidFunc
  • added: property Subscription.tryUnsubscribe: VoidFunc
  • added: property UseDispatch.withTypes: <OverrideDispatchType extends DispatchType>() => UseDispatch<OverrideDispatchType>
  • added: property UseSelector.withTypes: <OverrideStateType extends StateType>() => UseSelector<OverrideStateType>
  • added: property UseStore.withTypes: <OverrideStoreType extends StoreType>() => UseStore<OverrideStoreType>
  • added: type AnyIfEmpty<T extends object> = keyof T extends never ? any : T
  • added: type ConnectPropsMaybeWithoutContext<TActualOwnProps> = TActualOwnProps extends { context: any } ? Omit<ConnectProps, 'context'> : ConnectProps
  • added: type ConnectedComponent<C extends ComponentType<any>, P> = FunctionComponent<P> & NonReactStatics<C> & { WrappedComponent: C }
  • added: type ConnectedProps<TConnector> = TConnector extends InferableComponentEnhancerWithProps<infer TInjectedProps, any> ? unknown extends TInjectedProps ? TConnector extends InferableComponentEnhan…
  • added: type DistributiveOmit<T, K extends keyof T> = T extends unknown ? Omit<T, K> : never
  • added: type EqualityFn<T> = (a: T, b: T) => boolean
  • added: type ExtendedEqualityFn<T, P> = (a: T, b: T, c: P, d: P) => boolean
  • added: type FixTypeLater = any
  • added: type GetLibraryManagedProps<C> = JSX.LibraryManagedAttributes<C, GetProps<C>>
  • added: type GetProps<C> = C extends ComponentType<infer P> ? C extends ComponentClass<P> ? ClassAttributes<InstanceType<C>> & P : P : never
  • added: type HandleThunkActionCreator<TActionCreator> = TActionCreator extends ((...args: any[]) => any) ? InferThunkActionCreatorType<TActionCreator> : TActionCreator
  • added: type InferThunkActionCreatorType<TActionCreator extends (...args: any[]) => any> = TActionCreator extends ((...args: infer TParams) => (...args: any[]) => infer TReturn) ? (...args: TParams) => TReturn : TActionCreator
  • added: type InferableComponentEnhancer<TInjectedProps> = InferableComponentEnhancerWithProps<TInjectedProps, {}>
  • added: type InferableComponentEnhancerWithProps<TInjectedProps, TNeedsProps> = <C extends ComponentType<Matching<TInjectedProps, GetProps<C>>>>(component: C) => ConnectedComponent<C, Mapped<DistributiveOmit<GetLibraryManagedProps<C>, keyo…
  • added: type MapDispatchToProps<TDispatchProps, TOwnProps> = MapDispatchToPropsFunction<TDispatchProps, TOwnProps> | TDispatchProps
  • added: type MapDispatchToPropsFactory<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<string>>, ownProps: TOwnProps) => MapDispatchToPropsFunction<TDispatchProps, TOwnProps>
  • added: type MapDispatchToPropsFunction<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<string>>, ownProps: TOwnProps) => TDispatchProps
  • added: type MapDispatchToPropsNonObject<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToPropsFunction<TDispatchProps, TOwnProps>
  • added: type MapDispatchToPropsParam<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToProps<TDispatchProps, TOwnProps>
  • added: type MapStateToProps<TStateProps, TOwnProps, State> = (state: State, ownProps: TOwnProps) => TStateProps
  • added: type MapStateToPropsFactory<TStateProps, TOwnProps, State> = (initialState: State, ownProps: TOwnProps) => MapStateToProps<TStateProps, TOwnProps, State>
  • added: type MapStateToPropsParam<TStateProps, TOwnProps, State> = MapStateToPropsFactory<TStateProps, TOwnProps, State> | MapStateToProps<TStateProps, TOwnProps, State> | null | undefined
  • added: type Mapped<T> = Identity<{ [k in keyof T]: T[k] }>
  • added: type Matching<InjectedProps, DecorationTargetProps> = { [P in keyof DecorationTargetProps]: P extends keyof InjectedProps ? InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : InjectedPr…
  • added: type MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps> = (stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps) => TMergedProps
  • added: type ResolveThunks<TDispatchProps> = TDispatchProps extends { [key: string]: any } ? { [C in keyof TDispatchProps]: HandleThunkActionCreator<TDispatchProps[C]> } : TDispatchProps
  • added: type Selector<S, TProps, TOwnProps = null> = TOwnProps extends null | undefined ? (state: S) => TProps : (state: S, ownProps: TOwnProps) => TProps
  • added: type SelectorFactory<S, TProps, TOwnProps, TFactoryOptions> = (dispatch: Dispatch<Action<string>>, factoryOptions: TFactoryOptions) => Selector<S, TProps, TOwnProps>
  • added: type Shared<InjectedProps, DecorationTargetProps> = { [P in Extract<keyof InjectedProps, keyof DecorationTargetProps>]?: InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : never }
  • removed: const batch: (callback: () => void) => void
  • removed: export * from './exports'
  • removed: const ReactReduxContext: React.Context<ReactReduxContextValue<any, AnyAction>>
  • removed: default ReactReduxContext
  • removed: interface ReactReduxContextValue<SS = any, A extends Action = AnyAction>
  • removed: property ReactReduxContextValue.getServerState?: () => SS
  • removed: property ReactReduxContextValue.noopCheck: CheckFrequency
  • removed: property ReactReduxContextValue.stabilityCheck: CheckFrequency
  • removed: property ReactReduxContextValue.store: Store<SS, A>
  • removed: property ReactReduxContextValue.subscription: Subscription
  • removed: type ReactReduxContextInstance = typeof ReactReduxContext
  • removed: default Provider
  • removed: function Provider<A extends Action = AnyAction, S = unknown>({ store, context, children, serverState, stabilityCheck, noopCheck }: ProviderProps<A, S>): JSX.Element
  • removed: interface ProviderProps<A extends Action = AnyAction, S = unknown>
  • removed: property ProviderProps.children: ReactNode
  • removed: property ProviderProps.context?: Context<ReactReduxContextValue<S, A>>
  • removed: property ProviderProps.noopCheck?: CheckFrequency
  • removed: property ProviderProps.serverState?: S
  • removed: property ProviderProps.stabilityCheck?: CheckFrequency
  • removed: property ProviderProps.store: Store<S, A>
  • removed: call Connect(): InferableComponentEnhancer<DispatchProp>
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & TDispatchProps, TOwnProps>
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>, TOwnProps>
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TStateProps & ResolveThunks<TDispatchProps>,…
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined): InferableComponentEnhancerWithProps<TStateProps, TOwnProps>
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>, options?: ConnectOptions<State, TStateProps, TOwnProps, TMergedProps>)…
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps>
  • removed: call Connect<TStateProps = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: null | undefined, options: ConnectOptions<{}, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps>
  • removed: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>): InferableComponentEnhancerWithProps<TStateProps & DispatchProp, TOwnProps>
  • removed: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: null | undefined, options: ConnectOptions<State, TStateProps, TOwnProps>): InferableComponentEnhancerWithProps<DispatchProp & TStateProps, TOwnProps>
  • removed: call Connect<TStateProps = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}, State = DefaultState>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>, mapDispatchToProps: null | undefined, mergeProps: MergeProps<TStateProps, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps>
  • removed: call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>, mergeProps: MergeProps<undefined, TDispatchProps, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps>
  • removed: call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsNonObject<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<TDispatchProps, TOwnProps>
  • removed: call Connect<no_state = {}, TDispatchProps = {}, TOwnProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps>): InferableComponentEnhancerWithProps<ResolveThunks<TDispatchProps>, TOwnProps>
  • removed: call Connect<no_state = {}, no_dispatch = {}, TOwnProps = {}, TMergedProps = {}>(mapStateToProps: null | undefined, mapDispatchToProps: null | undefined, mergeProps: MergeProps<undefined, DispatchProp, TOwnProps, TMergedProps>): InferableComponentEnhancerWithProps<TMergedProps, TOwnProps>
  • removed: const _default: Connect<unknown>
  • removed: const initializeConnect: (fn: uSES) => void
  • removed: default _default
  • removed: interface Connect<DefaultState = unknown>
  • removed: interface ConnectOptions<State = unknown, TStateProps = {}, TOwnProps = {}, TMergedProps = {}>
  • removed: interface ConnectProps
  • removed: property ConnectOptions.areMergedPropsEqual?: (nextMergedProps: TMergedProps, prevMergedProps: TMergedProps) => boolean
  • removed: property ConnectOptions.areOwnPropsEqual?: (nextOwnProps: TOwnProps, prevOwnProps: TOwnProps) => boolean
  • removed: property ConnectOptions.areStatePropsEqual?: (nextStateProps: TStateProps, prevStateProps: TStateProps) => boolean
  • removed: property ConnectOptions.areStatesEqual?: (nextState: State, prevState: State, nextOwnProps: TOwnProps, prevOwnProps: TOwnProps) => boolean
  • removed: property ConnectOptions.context?: typeof ReactReduxContext
  • removed: property ConnectOptions.forwardRef?: boolean
  • removed: property ConnectProps.context?: ReactReduxContextInstance
  • removed: property ConnectProps.store?: Store
  • removed: type ConnectedProps<TConnector> = TConnector extends InferableComponentEnhancerWithProps<infer TInjectedProps, any> ? unknown extends TInjectedProps ? TConnector extends InferableComponentEnhan…
  • removed: function createInvalidArgFactory(arg: unknown, name: string): (dispatch: Dispatch<Action<unknown>>, options: { readonly wrappedComponentName: string }) => never
  • removed: function mapDispatchToPropsFactory<TDispatchProps, TOwnProps>(mapDispatchToProps: MapDispatchToPropsParam<TDispatchProps, TOwnProps> | undefined): ((dispatch: Dispatch<import('redux').AnyAction>) => { (): import('redux').ActionCreatorsMapObject<any> | import('redux').ActionCreator<any> | { dispatch?: Dispatch<import('redux').AnyAction> | undefined; dependsOnOwnProps?: boolean | undefined }; depen…
  • removed: function mapStateToPropsFactory<TStateProps, TOwnProps, State>(mapStateToProps: MapStateToPropsParam<TStateProps, TOwnProps, State>): ((dispatch: import('redux').Dispatch<import('redux').AnyAction>) => { (): import('redux').ActionCreatorsMapObject<any> | import('redux').ActionCreator<any> | { dispatch?: import('redux').Dispatch<import('redux').AnyAction> | undefined; dependsOnOwnProps?: boolean |…
  • removed: function defaultMergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>(stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps): TMergedProps
  • removed: function mergePropsFactory<TStateProps, TDispatchProps, TOwnProps, TMergedProps>(mergeProps?: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>): ((dispatch: Dispatch<Action<unknown>>, options: { readonly wrappedComponentName: string }) => never) | ((dispatch: Dispatch<Action<unknown>>, options: { readonly displayName: string; readonly areMergedPropsEqual: EqualityFn<TMergedProps>…
  • removed: function wrapMergePropsFunc<TStateProps, TDispatchProps, TOwnProps, TMergedProps>(mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>): (dispatch: Dispatch<Action<unknown>>, options: { readonly displayName: string; readonly areMergedPropsEqual: EqualityFn<TMergedProps> }) => MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>
  • removed: default function finalPropsSelectorFactory<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State>(dispatch: Dispatch<Action<unknown>>, { initMapStateToProps, initMapDispatchToProps, initMergeProps, ...options }: SelectorFactoryOptions<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State>): (nextState: State, nextOwnProps: TOwnProps) => TMergedProps
  • removed: function pureFinalPropsSelectorFactory<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State>(mapStateToProps: WrappedMapStateToProps<TStateProps, TOwnProps, State>, mapDispatchToProps: WrappedMapDispatchToProps<TDispatchProps, TOwnProps>, mergeProps: MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>, dispatch: Dispatch<Action<unknown>>, { areStatesEqual, areOwnPropsEqual, ar…
  • removed: interface InitOptions<TStateProps, TOwnProps, TMergedProps, State> extends PureSelectorFactoryComparisonOptions<TStateProps, TOwnProps, State>
  • removed: interface SelectorFactoryOptions<TStateProps, TOwnProps, TDispatchProps, TMergedProps, State> extends InitOptions<TStateProps, TOwnProps, TMergedProps, State>
  • removed: readonly property InitOptions.WrappedComponent: ComponentType<TOwnProps>
  • removed: readonly property InitOptions.areMergedPropsEqual: EqualityFn<TMergedProps>
  • removed: readonly property InitOptions.displayName: string
  • removed: readonly property InitOptions.shouldHandleStateChanges: boolean
  • removed: readonly property InitOptions.wrappedComponentName: string
  • removed: readonly property SelectorFactoryOptions.initMapDispatchToProps: (dispatch: Dispatch<Action<unknown>>, options: InitOptions<TStateProps, TOwnProps, TMergedProps, State>) => WrappedMapDispatchToProps<TDispatchProps, TOwnProps>
  • removed: readonly property SelectorFactoryOptions.initMapStateToProps: (dispatch: Dispatch<Action<unknown>>, options: InitOptions<TStateProps, TOwnProps, TMergedProps, State>) => WrappedMapStateToProps<TStateProps, TOwnProps, State>
  • removed: readonly property SelectorFactoryOptions.initMergeProps: (dispatch: Dispatch<Action<unknown>>, options: InitOptions<TStateProps, TOwnProps, TMergedProps, State>) => MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps>
  • removed: type MapDispatchToProps<TDispatchProps, TOwnProps> = MapDispatchToPropsFunction<TDispatchProps, TOwnProps> | TDispatchProps
  • removed: type MapDispatchToPropsFactory<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<unknown>>, ownProps: TOwnProps) => MapDispatchToPropsFunction<TDispatchProps, TOwnProps>
  • removed: type MapDispatchToPropsFunction<TDispatchProps, TOwnProps> = (dispatch: Dispatch<Action<unknown>>, ownProps: TOwnProps) => TDispatchProps
  • removed: type MapDispatchToPropsNonObject<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToPropsFunction<TDispatchProps, TOwnProps>
  • removed: type MapDispatchToPropsParam<TDispatchProps, TOwnProps> = MapDispatchToPropsFactory<TDispatchProps, TOwnProps> | MapDispatchToProps<TDispatchProps, TOwnProps>
  • removed: type MapStateToProps<TStateProps, TOwnProps, State> = (state: State, ownProps: TOwnProps) => TStateProps
  • removed: type MapStateToPropsFactory<TStateProps, TOwnProps, State> = (initialState: State, ownProps: TOwnProps) => MapStateToProps<TStateProps, TOwnProps, State>
  • removed: type MapStateToPropsParam<TStateProps, TOwnProps, State> = MapStateToPropsFactory<TStateProps, TOwnProps, State> | MapStateToProps<TStateProps, TOwnProps, State> | null | undefined
  • removed: type MergeProps<TStateProps, TDispatchProps, TOwnProps, TMergedProps> = (stateProps: TStateProps, dispatchProps: TDispatchProps, ownProps: TOwnProps) => TMergedProps
  • removed: type Selector<S, TProps, TOwnProps = null> = TOwnProps extends null | undefined ? (state: S) => TProps : (state: S, ownProps: TOwnProps) => TProps
  • removed: type SelectorFactory<S, TProps, TOwnProps, TFactoryOptions> = (dispatch: Dispatch<Action<unknown>>, factoryOptions: TFactoryOptions) => Selector<S, TProps, TOwnProps>
  • removed: default function verifySubselectors(mapStateToProps: unknown, mapDispatchToProps: unknown, mergeProps: unknown): void
  • removed: function getDependsOnOwnProps(mapToProps: MapToProps): boolean
  • removed: function wrapMapToPropsConstant(getConstant: (dispatch: Dispatch) => { dispatch?: Dispatch; dependsOnOwnProps?: boolean } | ActionCreatorsMapObject | ActionCreator<any>): (dispatch: Dispatch) => { (): ActionCreatorsMapObject<any> | ActionCreator<any> | { dispatch?: Dispatch<import('redux').AnyAction> | undefined; dependsOnOwnProps?: boolean | undefined }; dependsOnOwnProps: boolean }
  • removed: function wrapMapToPropsFunc<P extends AnyProps = AnyProps>(mapToProps: MapToProps, methodName: string): (dispatch: Dispatch, { displayName }: { displayName: string }) => { (stateOrDispatch: StateOrDispatch, ownProps?: P | undefined): MapToProps; dependsOnOwnProps: boolean; mapToProps(stateOrDispatch: StateOrDispatch, ownProps?: P | undefined): MapToProps }
  • removed: type MapToProps<P extends AnyProps = AnyProps> = { (stateOrDispatch: StateOrDispatch, ownProps?: P): FixTypeLater; dependsOnOwnProps?: boolean }
  • removed: export * from './types'
  • removed: export { Connect }
  • removed: export { ConnectProps }
  • removed: export { ConnectedProps }
  • removed: export { MapDispatchToProps }
  • removed: export { MapDispatchToPropsFactory }
  • removed: export { MapDispatchToPropsFunction }
  • removed: export { MapDispatchToPropsNonObject }
  • removed: export { MapDispatchToPropsParam }
  • removed: export { MapStateToProps }
  • removed: export { MapStateToPropsFactory }
  • removed: export { MapStateToPropsParam }
  • removed: export { MergeProps }
  • removed: export { Provider }
  • removed: export { ProviderProps }
  • removed: export { ReactReduxContext }
  • removed: export { ReactReduxContextValue }
  • removed: export { Selector }
  • removed: export { SelectorFactory }
  • removed: export { Subscription }
  • removed: export { connect }
  • removed: export { createDispatchHook }
  • removed: export { createSelectorHook }
  • removed: export { createStoreHook }
  • removed: export { shallowEqual }
  • removed: export { useDispatch }
  • removed: export { useSelector }
  • removed: export { useStore }
  • removed: const useDispatch: <AppDispatch extends Dispatch<AnyAction> = Dispatch<AnyAction>>() => AppDispatch
  • removed: function createDispatchHook<S = unknown, A extends Action = AnyAction>(context?: Context<ReactReduxContextValue<S, A>>): <AppDispatch extends Dispatch<A> = Dispatch<A>>() => AppDispatch
  • removed: const useReduxContext: () => ReactReduxContextValue | null
  • removed: function createReduxContextHook(context?: import('react').Context<ReactReduxContextValue<any, import('redux').AnyAction>>): () => ReactReduxContextValue | null
  • removed: call UseSelector<TState = unknown, Selected = unknown>(selector: (state: TState) => Selected, equalityFn?: EqualityFn<Selected>): Selected
  • removed: call UseSelector<TState = unknown, Selected = unknown>(selector: (state: TState) => Selected, options?: UseSelectorOptions<Selected>): Selected
  • removed: const initializeUseSelector: (fn: uSESWS) => void
  • removed: const useSelector: UseSelector
  • removed: function createSelectorHook(context?: import('react').Context<import('../components/Context').ReactReduxContextValue<any, import('redux').AnyAction>>): UseSelector
  • removed: interface UseSelector
  • removed: interface UseSelectorOptions<Selected = unknown>
  • removed: property UseSelectorOptions.equalityFn?: EqualityFn<Selected>
  • removed: property UseSelectorOptions.noopCheck?: CheckFrequency
  • removed: property UseSelectorOptions.stabilityCheck?: CheckFrequency
  • removed: type CheckFrequency = 'never' | 'once' | 'always'
  • removed: const useStore: <State = unknown, Action extends BasicAction<any> = AnyAction>() => Store<State, Action>
  • removed: function createStoreHook<S = unknown, A extends BasicAction = AnyAction>(context?: Context<ReactReduxContextValue<S, A>>): <State = S, Action extends BasicAction<any> = A>() => Store<State, Action>
  • removed: export * from './exports'
  • removed: export { batch }
  • removed: export * from './exports'
  • removed: export { batch }
  • removed: call TypedUseSelectorHook<Selected = unknown>(selector: (state: TState) => Selected, options?: UseSelectorOptions<Selected>): Selected
  • removed: call TypedUseSelectorHook<TSelected>(selector: (state: TState) => TSelected, equalityFn?: EqualityFn<NoInfer<TSelected>>): TSelected
  • removed: interface DispatchProp<A extends Action = AnyAction>
  • removed: interface TypedUseSelectorHook<TState>
  • removed: property DispatchProp.dispatch: Dispatch<A>
  • removed: type AnyIfEmpty<T extends object> = keyof T extends never ? any : T
  • removed: type ConnectPropsMaybeWithoutContext<TActualOwnProps> = TActualOwnProps extends { context: any } ? Omit<ConnectProps, 'context'> : ConnectProps
  • removed: type ConnectedComponent<C extends ComponentType<any>, P> = FunctionComponent<P> & NonReactStatics<C> & { WrappedComponent: C }
  • removed: type DistributiveOmit<T, K extends keyof T> = T extends unknown ? Omit<T, K> : never
  • removed: type EqualityFn<T> = (a: T, b: T) => boolean
  • removed: type ExtendedEqualityFn<T, P> = (a: T, b: T, c: P, d: P) => boolean
  • removed: type FixTypeLater = any
  • removed: type GetLibraryManagedProps<C> = JSX.LibraryManagedAttributes<C, GetProps<C>>
  • removed: type GetProps<C> = C extends ComponentType<infer P> ? C extends ComponentClass<P> ? ClassAttributes<InstanceType<C>> & P : P : never
  • removed: type HandleThunkActionCreator<TActionCreator> = TActionCreator extends (...args: any[]) => any ? InferThunkActionCreatorType<TActionCreator> : TActionCreator
  • removed: type InferThunkActionCreatorType<TActionCreator extends (...args: any[]) => any> = TActionCreator extends (...args: infer TParams) => (...args: any[]) => infer TReturn ? (...args: TParams) => TReturn : TActionCreator
  • removed: type InferableComponentEnhancer<TInjectedProps> = InferableComponentEnhancerWithProps<TInjectedProps, {}>
  • removed: type InferableComponentEnhancerWithProps<TInjectedProps, TNeedsProps> = <C extends ComponentType<Matching<TInjectedProps, GetProps<C>>>>(component: C) => ConnectedComponent<C, Mapped<DistributiveOmit<GetLibraryManagedProps<C>, keyo…
  • removed: type Mapped<T> = Identity<{ [k in keyof T]: T[k] }>
  • removed: type Matching<InjectedProps, DecorationTargetProps> = { [P in keyof DecorationTargetProps]: P extends keyof InjectedProps ? InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : InjectedPr…
  • removed: type NoInfer<T> = [T][T extends any ? 0 : never]
  • removed: type ResolveThunks<TDispatchProps> = TDispatchProps extends { [key: string]: any } ? { [C in keyof TDispatchProps]: HandleThunkActionCreator<TDispatchProps[C]> } : TDispatchProps
  • removed: type Shared<InjectedProps, DecorationTargetProps> = { [P in Extract<keyof InjectedProps, keyof DecorationTargetProps>]?: InjectedProps[P] extends DecorationTargetProps[P] ? DecorationTargetProps[P] : never }
  • removed: function createSubscription(store: any, parentSub?: Subscription): Subscription
  • removed: interface Subscription
  • removed: property Subscription.addNestedSub: (listener: VoidFunc) => VoidFunc
  • removed: property Subscription.getListeners: () => ListenerCollection
  • removed: property Subscription.handleChangeWrapper: VoidFunc
  • removed: property Subscription.isSubscribed: () => boolean
  • removed: property Subscription.notifyNestedSubs: VoidFunc
  • removed: property Subscription.onStateChange?: VoidFunc | null
  • removed: property Subscription.trySubscribe: VoidFunc
  • removed: property Subscription.tryUnsubscribe: VoidFunc
  • removed: const getBatch: () => typeof defaultNoopBatch
  • removed: const setBatch: (newBatch: typeof defaultNoopBatch) => typeof defaultNoopBatch
  • removed: default function bindActionCreators(actionCreators: ActionCreatorsMapObject, dispatch: Dispatch): ActionCreatorsMapObject
  • removed: default function isPlainObject(obj: unknown): boolean
  • removed: export { unstable_batchedUpdates } from 'react-dom'
  • removed: export { unstable_batchedUpdates }
  • removed: default function shallowEqual(objA: any, objB: any): boolean
  • removed: const canUseDOM: boolean
  • removed: const useIsomorphicLayoutEffect: typeof React.useLayoutEffect
  • removed: const useIsomorphicLayoutEffect: typeof React.useLayoutEffect
  • removed: const notInitialized: () => never
  • removed: type uSES = typeof useSyncExternalStore
  • removed: type uSESWS = typeof useSyncExternalStoreWithSelector
  • removed: default function verifyPlainObject(value: unknown, displayName: string, methodName: string): void
  • removed: default function warning(message: string): void