Merge branch 'feat/inda-383-daily-stat' into 'main'
[ProtonMail-WebClient.git] / packages / redux-shared-store-types / index.ts
blob38dd3b94af481973d70632b1a6081c8a28f6eaf7
1 import type { Action, ThunkDispatch, TypedStartListening } from '@reduxjs/toolkit';
2 import type { History } from 'history';
4 import type { ApiWithListener } from '@proton/shared/lib/api/createApi';
5 import type { AuthenticationStore } from '@proton/shared/lib/authentication/createAuthenticationStore';
6 import type { EventManager } from '@proton/shared/lib/eventManager/eventManager';
7 import type { ProtonConfig } from '@proton/shared/lib/interfaces';
8 import type { UnleashClient } from '@proton/unleash';
10 export interface ProtonThunkArguments {
11     api: ApiWithListener;
12     eventManager: EventManager;
13     history: History;
14     unleashClient: UnleashClient;
15     authentication: AuthenticationStore;
16     config: ProtonConfig;
19 export type ProtonDispatch<T> = ThunkDispatch<T, ProtonThunkArguments, Action>;
21 export type SharedStartListening<RequiredState> = TypedStartListening<
22     RequiredState,
23     ProtonDispatch<any>,
24     ProtonThunkArguments