import { TokenList } from '@envanik/token-lists/dist/types';
export interface ListsState {
    byUrl: {
        [url: string]: {
            current: TokenList | null;
            pendingUpdate: TokenList | null;
            loadingRequestId: string | null;
            error: string | null;
        };
    };
    lastInitializedDefaultListOfLists?: string[];
    selectedListUrl: string[] | undefined;
}
export declare const useListsStateAtom: () => {
    listsState: ListsState;
    pendingFetchTokenList: ({ requestId, url }: {
        requestId: string;
        url: string;
    }) => void;
    fulfilledFetchTokenList: ({ requestId, tokenList, url }: {
        requestId: string;
        tokenList: TokenList;
        url: string;
    }) => void;
    rejectedFetchTokenList: ({ url, requestId, errorMessage }: {
        url: string;
        errorMessage: string;
        requestId: string;
    }) => void;
    selectList: ({ url, shouldSelect }: {
        url: string;
        shouldSelect: boolean;
    }) => void;
    addList: ({ url }: {
        url: string;
    }) => void;
    removeList: (url: string) => void;
    acceptListUpdate: (url: string) => void;
    updateVersion: () => void;
};
