Skip to content

Type alias 'ExcludeFromTuple' circularly references itself. #2462

Closed as not planned
@srinivasan-ayyasamy

Description

@srinivasan-ayyasamy

We are trying to use redux-toolkit in our stencil js, typescript project. Once we import the createAsyncThunk , I'm getting the below error.

[51:07.6] transpile started ...
[51:08.8] transpile finished in 1.20 s

[ ERROR ] TypeScript: ../../node_modules/@reduxjs/toolkit/dist/tsHelpers.d.ts:43:21
Type alias 'ExcludeFromTuple' circularly references itself.

 L42:  export declare type IsUnknownOrNonInferrable<T, True, False> = AtLeastTS35<IsUnknown<T, True, False>, IsEmptyObj<T, True, IsUnknown<T, True, False>>>;
 L43:  export declare type ExcludeFromTuple<T, E, Acc extends unknown[] = []> = T extends [
 L44:      infer Head,

[ ERROR ] TypeScript: ../../node_modules/@reduxjs/toolkit/dist/tsHelpers.d.ts:46:5
Type 'ExcludeFromTuple' is not generic.

 L45:      ...infer Tail
 L46:  ] ? ExcludeFromTuple<Tail, E, [...Acc, ...([Head] extends [E] ? [] : [Head])]> : Acc;
 L47:  declare type ExtractDispatchFromMiddlewareTuple<MiddlewareTuple extends any[], Acc extends {}> = MiddlewareTuple extends [infer Head, ...infer Tail] ? ExtractDispatchFromMiddlewareTuple<Tail, Acc & (Head extends Middleware<infer D, any> ? IsAny<D, {}, D> : {})> : Acc;

[ ERROR ] TypeScript: ../../node_modules/@reduxjs/toolkit/dist/tsHelpers.d.ts:47:14
Type alias 'ExtractDispatchFromMiddlewareTuple' circularly references itself.

 L46:  ] ? ExcludeFromTuple<Tail, E, [...Acc, ...([Head] extends [E] ? [] : [Head])]> : Acc;
 L47:  declare type ExtractDispatchFromMiddlewareTuple<MiddlewareTuple extends any[], Acc extends {}> = Middlewa
 L48:  export declare type ExtractDispatchExtensions<M> = M extends MiddlewareArray<infer MiddlewareTuple> ? ExtractDispatchFromMiddlewareTuple<MiddlewareTuple, {}> : M extends Middleware[] ? ExtractDispatchFromMiddlewareTuple<[...M], {}> : never;

[ ERROR ] TypeScript: ../../node_modules/@reduxjs/toolkit/dist/tsHelpers.d.ts:47:152
Type 'ExtractDispatchFromMiddlewareTuple' is not generic.

 L46:  ] ? ExcludeFromTuple<Tail, E, [...Acc, ...([Head] extends [E] ? [] : [Head])]> : Acc;
 L47:  uple<MiddlewareTuple extends any[], Acc extends {}> = MiddlewareTuple extends [infer Head, ...infer Tail]                                                                                                              
 L48:  export declare type ExtractDispatchExtensions<M> = M extends MiddlewareArray<infer MiddlewareTuple> ? ExtractDispatchFromMiddlewareTuple<MiddlewareTuple, {}> : M extends Middleware[] ? ExtractDispatchFromMiddlewareTuple<[...M], {}> : never;

[ ERROR ] TypeScript: ../../node_modules/@reduxjs/toolkit/dist/getDefaultMiddleware.d.ts:26:36
Type 'ExcludeFromTuple' is not generic.

 L25:      serializableCheck: true;
 L26:  }>(options?: O) => MiddlewareArray<ExcludeFromTuple<[ThunkMiddlewareFor<S, O>], never>>;
 L27:  export declare function curryGetDefaultMiddleware<S = any>(): CurriedGetDefaultMiddleware<S>;

[51:08.8] build failed in 1.22 s

error Command failed with exit code 1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions