import { PropsWithChildren } from 'react';
import { Token } from './types/token';
import { LocalisationDict } from './types/localisation';
import { WidgetConfig } from './types/config';
import { ChainRpcUrls } from './types';
import { Theme } from './types/theme';
export type WidgetConfigProviderProps = PropsWithChildren<{
    config: Partial<WidgetConfig>;
    localisation?: LocalisationDict;
    balanceViaRpc?: boolean;
    rpcs?: ChainRpcUrls;
    theme?: Theme;
}>;
export declare const configStore: {
    config: WidgetConfig;
};
export declare const useConfig: () => {
    readonly apiKey?: string | undefined;
    readonly referral?: string | undefined;
    readonly enableAccountAbstraction?: boolean | undefined;
    readonly providers?: {
        readonly evm?: (() => Promise<import('ethers').Eip1193Provider>) | {
            readonly request: (request: {
                method: string;
                params?: Array<any> | Record<string, any>;
            }) => Promise<any>;
        } | null | undefined;
        readonly sol?: {
            readonly publicKey?: {
                readonly toString: () => string;
            } | null | undefined;
            readonly signMessage: (message: Uint8Array) => Promise<Uint8Array>;
            readonly signTransaction: (transaction: any) => Promise<any>;
        } | null | undefined;
        readonly stellar?: {
            readonly publicKey?: string | undefined;
            readonly signMessage: (message: string) => Promise<{
                signedMessage: string;
                signerAddress: string | undefined;
            }>;
            readonly signTransaction: (tx: string, options?: {
                networkPassphrase: string;
                address: string;
            }) => Promise<{
                signedTxXdr: string;
                signerAddress: string | undefined;
            } | string>;
        } | null | undefined;
        readonly near?: undefined | null | (() => import('./types').NearWalletBase) | undefined;
    } | undefined;
    readonly plugins?: {
        readonly evm?: {
            readonly makeTransfer: (args: import('./types').MakeTransferArgs, options: {
                provider: import('./types').EvmProvider;
            }) => Promise<Pick<import('./types').TransferResult, "hash">>;
        } | undefined;
        readonly sol?: {
            readonly makeTransfer: (args: import('./types').MakeTransferArgs, options: {
                provider: import('./types').SolanaProvider;
                alchemyApiKey: string;
            }) => Promise<Pick<import('./types').TransferResult, "hash">>;
        } | undefined;
        readonly stellar?: {
            readonly makeTransfer: (args: import('./types').MakeTransferArgs & {
                memo?: string;
            }, options: {
                provider: import('./types').StellarProvider;
            }) => Promise<Pick<import('./types').TransferResult, "hash">>;
            readonly decodePublicKey: (provider: import('./types').StellarProvider) => Uint8Array;
            readonly getNativeBalances: (provider: import('./types').StellarProvider) => Promise<{
                xlmStroops: string;
                usdcStroops: string;
            }>;
        } | undefined;
    } | undefined;
    readonly walletSupportedChains?: ReadonlyArray<import('./types').Chains> | undefined;
    readonly connectedWallets: {
        readonly aurora?: string | null | undefined;
        readonly arb?: string | null | undefined;
        readonly avax?: string | null | undefined;
        readonly base?: string | null | undefined;
        readonly bera?: string | null | undefined;
        readonly bsc?: string | null | undefined;
        readonly btc?: string | null | undefined;
        readonly doge?: string | null | undefined;
        readonly eth?: string | null | undefined;
        readonly gnosis?: string | null | undefined;
        readonly near?: string | null | undefined;
        readonly op?: string | null | undefined;
        readonly pol?: string | null | undefined;
        readonly sol?: string | null | undefined;
        readonly sui?: string | null | undefined;
        readonly ton?: string | null | undefined;
        readonly tron?: string | null | undefined;
        readonly xrp?: string | null | undefined;
        readonly zec?: string | null | undefined;
        readonly ltc?: string | null | undefined;
        readonly monad?: string | null | undefined;
        readonly adi?: string | null | undefined;
        readonly plasma?: string | null | undefined;
        readonly scroll?: string | null | undefined;
        readonly xlayer?: string | null | undefined;
        readonly cardano?: string | null | undefined;
        readonly stellar?: string | null | undefined;
        readonly aleo?: string | null | undefined;
        readonly bch?: string | null | undefined;
        readonly dash?: string | null | undefined;
        readonly starknet?: string | null | undefined;
        readonly default?: string | null | undefined;
    };
    readonly onWalletSignout?: ((walletType?: import('./types').IntentsAccountType) => void) | undefined;
    readonly onWalletSignin?: (() => void) | undefined;
    readonly sendAddress?: string | null | undefined;
    readonly slippageTolerance: number;
    readonly enableAutoTokensSwitching?: boolean | undefined;
    readonly refetchQuoteInterval?: number | undefined;
    readonly appFees?: readonly {
        readonly recipient: string;
        readonly fee: number;
    }[] | undefined;
    readonly extraQuoteParameters?: {
        readonly sessionId?: string | undefined;
        readonly virtualChainRecipient?: string | undefined;
        readonly virtualChainRefundRecipient?: string | undefined;
    } | undefined;
    readonly defaultSourceToken?: {
        readonly symbol: string;
        readonly blockchain: import('./types').Chains;
    } | null | undefined;
    readonly defaultTargetToken?: {
        readonly symbol: string;
        readonly blockchain: import('./types').Chains;
    } | null | undefined;
    readonly allowedTokensList?: readonly string[] | undefined;
    readonly allowedSourceTokensList?: readonly string[] | undefined;
    readonly allowedTargetTokensList?: readonly string[] | undefined;
    readonly priorityAssets?: readonly string[] | readonly (readonly ["aurora" | "arb" | "avax" | "base" | "bera" | "bsc" | "btc" | "doge" | "eth" | "gnosis" | "near" | "op" | "pol" | "sol" | "sui" | "ton" | "tron" | "xrp" | "zec" | "ltc" | "monad" | "adi" | "plasma" | "scroll" | "xlayer" | "cardano" | "stellar" | "aleo" | "bch" | "dash" | "starknet", string])[] | undefined;
    readonly filterTokens: (token: Token) => boolean;
    readonly disabledInternalBalanceTokens?: readonly string[] | undefined;
    readonly chainsOrder: readonly ("aurora" | "arb" | "avax" | "base" | "bera" | "bsc" | "btc" | "doge" | "eth" | "gnosis" | "near" | "op" | "pol" | "sol" | "sui" | "ton" | "tron" | "xrp" | "zec" | "ltc" | "monad" | "adi" | "plasma" | "scroll" | "xlayer" | "cardano" | "stellar" | "aleo" | "bch" | "dash" | "starknet")[];
    readonly allowedChainsList?: readonly ("aurora" | "arb" | "avax" | "base" | "bera" | "bsc" | "btc" | "doge" | "eth" | "gnosis" | "near" | "op" | "pol" | "sol" | "sui" | "ton" | "tron" | "xrp" | "zec" | "ltc" | "monad" | "adi" | "plasma" | "scroll" | "xlayer" | "cardano" | "stellar" | "aleo" | "bch" | "dash" | "starknet")[] | undefined;
    readonly allowedSourceChainsList?: readonly ("aurora" | "arb" | "avax" | "base" | "bera" | "bsc" | "btc" | "doge" | "eth" | "gnosis" | "near" | "op" | "pol" | "sol" | "sui" | "ton" | "tron" | "xrp" | "zec" | "ltc" | "monad" | "adi" | "plasma" | "scroll" | "xlayer" | "cardano" | "stellar" | "aleo" | "bch" | "dash" | "starknet")[] | undefined;
    readonly allowedTargetChainsList?: readonly ("aurora" | "arb" | "avax" | "base" | "bera" | "bsc" | "btc" | "doge" | "eth" | "gnosis" | "near" | "op" | "pol" | "sol" | "sui" | "ton" | "tron" | "xrp" | "zec" | "ltc" | "monad" | "adi" | "plasma" | "scroll" | "xlayer" | "cardano" | "stellar" | "aleo" | "bch" | "dash" | "starknet")[] | undefined;
    readonly topChainShortcuts?: ((intentsAccountType?: import('./types').IntentsAccountType) => [import('./types').Chains, import('./types').Chains, import('./types').Chains, import('./types').Chains]) | undefined;
    readonly chainsFilter?: {
        readonly target: {
            readonly intents: "none" | "all" | "with-balance";
            readonly external: "none" | "all" | "wallet-supported";
        };
        readonly source: {
            readonly intents: "none" | "all" | "with-balance";
            readonly external: "none" | "all" | "wallet-supported";
        };
    } | undefined;
    readonly fetchQuote?: ((data: import('@defuse-protocol/one-click-sdk-typescript').QuoteRequest, options: import('./types').FetchQuoteOptions) => Promise<import('@defuse-protocol/one-click-sdk-typescript').Quote>) | undefined;
    readonly fetchSourceTokens?: (() => Promise<import('./types/token').SimpleToken[]>) | undefined;
    readonly fetchTargetTokens?: (() => Promise<import('./types/token').SimpleToken[]>) | undefined;
    readonly alchemyApiKey?: string | undefined;
    readonly tonCenterApiKey?: string | undefined;
    readonly showProfileButton?: boolean | undefined;
    readonly hideSendAddress?: boolean | undefined;
    readonly hideTokenInputHeadings?: boolean | undefined;
    readonly themeParentElementSelector?: string | undefined;
    readonly lockSwapDirection?: boolean | undefined;
    readonly showTransactionHistory?: boolean | undefined;
    readonly showConversionPreview?: boolean | undefined;
};
export declare const WidgetConfigProvider: ({ children, config: userConfig, balanceViaRpc, localisation, rpcs, theme, }: WidgetConfigProviderProps) => import("react/jsx-runtime").JSX.Element;
