airgap-coin-lib
Version:
The airgap-coin-lib is a protocol agnostic library to prepare, sign and broadcast cryptocurrency transactions.
47 lines (46 loc) • 2.33 kB
TypeScript
import { ProtocolBlockExplorer } from '../../utils/ProtocolBlockExplorer';
import { NetworkType, ProtocolNetwork } from '../../utils/ProtocolNetwork';
import { ProtocolOptions } from '../../utils/ProtocolOptions';
import { SubProtocolSymbols } from '../../utils/ProtocolSymbols';
import { EthereumInfoClient } from './clients/info-clients/InfoClient';
import { EthereumNodeClient } from './clients/node-clients/NodeClient';
export declare const NODE_URL: string;
export declare const BLOCK_EXPLORER_API: string;
export declare class EthereumProtocolNetworkExtras {
readonly chainID: number;
readonly blockExplorerApi: string;
constructor(chainID?: number, blockExplorerApi?: string);
}
export declare class EtherscanBlockExplorer implements ProtocolBlockExplorer {
readonly blockExplorer: string;
constructor(blockExplorer?: string);
getAddressLink(address: string): Promise<string>;
getTransactionLink(transactionId: string): Promise<string>;
}
export declare class EthereumProtocolNetwork extends ProtocolNetwork<EthereumProtocolNetworkExtras> {
constructor(name?: string, type?: NetworkType, rpcUrl?: string, blockExplorer?: ProtocolBlockExplorer, extras?: EthereumProtocolNetworkExtras);
}
export declare class EthereumProtocolConfig {
constructor();
}
export declare class EthereumProtocolOptions implements ProtocolOptions<EthereumProtocolConfig> {
readonly network: EthereumProtocolNetwork;
readonly config: EthereumProtocolConfig;
readonly nodeClient: EthereumNodeClient;
readonly infoClient: EthereumInfoClient;
constructor(network?: EthereumProtocolNetwork, config?: EthereumProtocolConfig);
}
export declare class EthereumERC20ProtocolConfig {
readonly symbol: string;
readonly name: string;
readonly marketSymbol: string;
readonly identifier: SubProtocolSymbols;
readonly contractAddress: string;
readonly decimals: number;
constructor(symbol: string, name: string, marketSymbol: string, identifier: SubProtocolSymbols, contractAddress: string, decimals: number);
}
export declare class EthereumERC20ProtocolOptions extends EthereumProtocolOptions {
readonly network: EthereumProtocolNetwork;
readonly config: EthereumERC20ProtocolConfig;
constructor(network: EthereumProtocolNetwork, config: EthereumERC20ProtocolConfig);
}