import { AggregatorProvider } from '../config/provider';
import { ConfigLinkItem } from '../types';
interface GlobalState {
    currentExplorer: string;
    setCurrentExplorer: (value: string) => void;
    rpcList: ConfigLinkItem[];
    setRpcList: (list: ConfigLinkItem[]) => void;
    currentRpc: ConfigLinkItem;
    setCurrentRpc: (value: ConfigLinkItem) => void;
    customRpc: string;
    setCustomRpc: (value: string) => void;
    slippage: string;
    setSlippage: (value: string) => void;
    isOpenSlippageDialog: boolean;
    setIsOpenSlippageDialog: (value: boolean) => void;
    providers: AggregatorProvider[];
    setProviders: (providers: AggregatorProvider[]) => void;
    poolApiMap: Record<string, any[]>;
    setPoolApiMap: (key: string, poolAddress: any[]) => void;
    mevProtect: boolean;
    setMevProtect: (value: boolean) => void;
    ignoreWarnTokenMap: Record<string, boolean>;
    setIgnoreWarnToken: (coin_type: string) => void;
}
declare const useGlobalStore: import('zustand').UseBoundStore<Omit<import('zustand').StoreApi<GlobalState>, "persist"> & {
    persist: {
        setOptions: (options: Partial<import('zustand/middleware').PersistOptions<GlobalState, {
            currentExplorer: string;
            currentRpc: ConfigLinkItem;
            slippage: string;
            customRpc: string;
            providers: AggregatorProvider[];
            mevProtect: boolean;
            ignoreWarnTokenMap: Record<string, boolean>;
        }>>) => void;
        clearStorage: () => void;
        rehydrate: () => Promise<void> | void;
        hasHydrated: () => boolean;
        onHydrate: (fn: (state: GlobalState) => void) => () => void;
        onFinishHydration: (fn: (state: GlobalState) => void) => () => void;
        getOptions: () => Partial<import('zustand/middleware').PersistOptions<GlobalState, {
            currentExplorer: string;
            currentRpc: ConfigLinkItem;
            slippage: string;
            customRpc: string;
            providers: AggregatorProvider[];
            mevProtect: boolean;
            ignoreWarnTokenMap: Record<string, boolean>;
        }>>;
    };
}>;
export { useGlobalStore };
