import React from 'react'; import { Account, KeyType, SignerProvider, NetworkId } from '@alephium/web3'; import { Theme, Mode, CustomTheme, ConnectorId } from '../types'; import { node } from '@alephium/web3'; import { Connectors } from '../utils/connector'; type Error = string | React.ReactNode | null; export type ConnectSettingValue = { open: boolean; setOpen: React.Dispatch>; route: string; setRoute: React.Dispatch>; errorMessage: Error; connectorId: ConnectorId; setConnectorId: React.Dispatch>; displayAccount?: (account: Account) => string; theme: Theme; setTheme: React.Dispatch>; mode: Mode; setMode: React.Dispatch>; customTheme: CustomTheme; setCustomTheme: React.Dispatch>; csrModeOnly: boolean; }; export declare const ConnectSettingContext: React.Context; export declare const useConnectSettingContext: () => ConnectSettingValue; export type ConnectionStatus = 'connected' | 'connecting' | 'disconnected'; export type AlephiumConnectContextValue = { addressGroup?: number; setAddressGroup: (addressGroup: number | undefined) => void; keyType?: KeyType; setKeyType: (keyType: KeyType | undefined) => void; network: NetworkId; setNetwork: (network: NetworkId) => void; account?: Account; setAccount: (account: Account | undefined) => void; connectionStatus: ConnectionStatus; setConnectionStatus: (status: ConnectionStatus) => void; signerProvider?: SignerProvider; setSignerProvider: (signerProvider: SignerProvider | undefined) => void; connectors: Connectors; }; export declare const AlephiumConnectContext: React.Context; export declare const useAlephiumConnectContext: () => AlephiumConnectContextValue; export type AlephiumBalanceContextValue = { balance?: node.Balance; updateBalance: () => void; updateBalanceForTx: (txId: string, confirmations?: number) => void; }; export declare const AlephiumBalanceContext: React.Context; export declare const useAlephiumBalanceContext: () => AlephiumBalanceContextValue; export {};