@tronlink/core
Version:
The library serves as a core module within TronLink Extension, which provides low-level wallet functionality for both Tron and Ethereum networks, primary features includes account generation and transaction signing
37 lines (36 loc) • 1.44 kB
TypeScript
import { Chain, Common } from '@ethereumjs/common';
import type { DerivePrivateKeyParams, GetAddressParams, SignParams, ValidateAddressParams } from '../base_wallet/types';
import { BaseWallet } from '../base_wallet';
import { CoinType } from '../base_wallet/constants';
export declare class EvmWallet extends BaseWallet {
protected getCoinType(): CoinType;
derivePrivateKey(params: DerivePrivateKeyParams): string;
getAddressBy(params: GetAddressParams): string;
validateAddress(params: ValidateAddressParams): boolean;
sign(params: SignParams): Promise<any>;
signMessage(param: SignParams): Promise<any>;
signTransaction(params: SignParams & {
data: {
common: Common;
unSignedTransaction: Record<string, any>;
};
}): Promise<any>;
verifyEthMessageSign(signature: string, message: string, expectAddress: string): boolean;
verifyEthTransactionSign(rawTransaction: any, rsvSignature: {
r: string;
s: string;
v: number;
}, expectAddress: string): boolean;
signTypedData(params: SignParams): Promise<string>;
signedConvertRSVtoHex({ r, s, v }: {
r: Buffer;
s: Buffer;
v: bigint;
}): string;
getCommonConfiguration({ isSupportsEIP1559, chain, chainId, chainName, }: {
isSupportsEIP1559: boolean;
chain?: Chain;
chainId: string;
chainName: string;
}): Common;
}