@alephium/web3-react
Version:
React components for Alephium Web3.
52 lines (51 loc) • 2.39 kB
TypeScript
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<React.SetStateAction<boolean>>;
route: string;
setRoute: React.Dispatch<React.SetStateAction<string>>;
errorMessage: Error;
connectorId: ConnectorId;
setConnectorId: React.Dispatch<React.SetStateAction<ConnectorId>>;
displayAccount?: (account: Account) => string;
theme: Theme;
setTheme: React.Dispatch<React.SetStateAction<Theme>>;
mode: Mode;
setMode: React.Dispatch<React.SetStateAction<Mode>>;
customTheme: CustomTheme;
setCustomTheme: React.Dispatch<React.SetStateAction<CustomTheme>>;
csrModeOnly: boolean;
};
export declare const ConnectSettingContext: React.Context<ConnectSettingValue | null>;
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) => 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<AlephiumConnectContextValue | null>;
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<AlephiumBalanceContextValue | null>;
export declare const useAlephiumBalanceContext: () => AlephiumBalanceContextValue;
export {};