import { ActionCreatorWithPayload, createAction } from "@reduxjs/toolkit"; import { TokenList, Version } from "@uniswap/token-lists"; export const fetchTokenList: Readonly<{ pending: ActionCreatorWithPayload<{ url: string; requestId: string }>; fulfilled: ActionCreatorWithPayload<{ url: string; tokenList: TokenList; requestId: string; }>; rejected: ActionCreatorWithPayload<{ url: string; errorMessage: string; requestId: string; }>; }> = { pending: createAction("glists/fetchTokenList/pending"), fulfilled: createAction("glists/fetchTokenList/fulfilled"), rejected: createAction("glists/fetchTokenList/rejected"), }; // add and remove from list options export const addList = createAction("glists/addList"); export const removeList = createAction("glists/removeList"); // select which lists to search across from loaded lists export const enableList = createAction("glists/enableList"); export const disableList = createAction("glists/disableList"); // versioning export const acceptListUpdate = createAction("glists/acceptListUpdate"); export const rejectVersionUpdate = createAction( "glists/rejectVersionUpdate" );