import { CeloTokenContract, ContractKit } from '@celo/contractkit'; import { WalletConnectWalletOptions as WalletConnectWalletOptionsV1 } from '@celo/wallet-walletconnect-v1'; import { WalletTypes } from '../constants'; import { Connector, Network } from '../types'; /** * Connectors are our link between a DApp and the users wallet. Each * wallet has different semantics and these classes attempt to unify * them and present a workable API. */ export declare class UnauthenticatedConnector implements Connector { initialised: boolean; type: WalletTypes; kit: ContractKit; account: string | null; feeCurrency: CeloTokenContract; constructor(n: Network); initialise(): this; updateFeeCurrency(feeContract: CeloTokenContract): Promise; close(): void; } export declare class PrivateKeyConnector implements Connector { feeCurrency: CeloTokenContract; initialised: boolean; type: WalletTypes; kit: ContractKit; account: string | null; constructor(n: Network, privateKey: string, feeCurrency: CeloTokenContract); initialise(): Promise; updateFeeCurrency(feeContract: CeloTokenContract): Promise; close(): void; } export declare class LedgerConnector implements Connector { private network; private index; feeCurrency: CeloTokenContract; initialised: boolean; type: WalletTypes; kit: ContractKit; account: string | null; constructor(network: Network, index: number, feeCurrency: CeloTokenContract); initialise(): Promise; updateFeeCurrency(feeContract: CeloTokenContract): Promise; close(): void; } export declare class UnsupportedChainIdError extends Error { readonly chainID: number; static readonly NAME: string; constructor(chainID: number); } export declare class InjectedConnector implements Connector { feeCurrency: CeloTokenContract; initialised: boolean; type: WalletTypes; kit: ContractKit; account: string | null; private onNetworkChangeCallback?; private onAddressChangeCallback?; private network; constructor(network: Network, feeCurrency: CeloTokenContract, defaultType?: WalletTypes); initialise(): Promise; private onChainChanged; private onAccountsChanged; updateFeeCurrency(feeContract: CeloTokenContract): Promise; updateKitWithNetwork(network: Network): Promise; onNetworkChange(callback: (chainId: number) => void): void; onAddressChange(callback: (address: string | null) => void): void; close(): void; } export declare class MetaMaskConnector extends InjectedConnector { constructor(network: Network, feeCurrency: CeloTokenContract); } export declare class CeloExtensionWalletConnector implements Connector { feeCurrency: CeloTokenContract; initialised: boolean; type: WalletTypes; kit: ContractKit; account: string | null; private onNetworkChangeCallback?; constructor(network: Network, feeCurrency: CeloTokenContract); initialise(): Promise; updateFeeCurrency(feeContract: CeloTokenContract): Promise; onNetworkChange(callback: (chainId: number) => void): void; close(): void; } export declare class WalletConnectConnector implements Connector { readonly network: Network; feeCurrency: CeloTokenContract; readonly autoOpen: boolean; getDeeplinkUrl?: ((uri: string) => string) | undefined; readonly version?: number | undefined; initialised: boolean; type: WalletTypes; kit: ContractKit; account: string | null; private onUriCallback?; private onCloseCallback?; constructor(network: Network, feeCurrency: CeloTokenContract, options: WalletConnectWalletOptionsV1, autoOpen?: boolean, getDeeplinkUrl?: ((uri: string) => string) | undefined, version?: number | undefined); onUri(callback: (uri: string) => void): void; onClose(callback: () => void): void; initialise(): Promise; private fetchWalletAddressForAccount; updateFeeCurrency(feeContract: CeloTokenContract): Promise; close(): Promise; } //# sourceMappingURL=connectors.d.ts.map