import type { Wallet } from "../"; import type { EthApp, FlrApp } from "./signer"; import { LedgerCore } from "./core"; /** * The class that implements {@link Wallet} and represents a Ledger account. */ export declare abstract class LedgerWallet implements Wallet { constructor(transport: any, derivationPath: string); protected readonly _core: LedgerCore; protected readonly _derivationPath: string; protected _address: string; protected _publicKey: string; /** * Returns the public key of the wallet. * @returns The public key in the hexadecimal encoding. */ abstract getPublicKey(): Promise; /** * Returns the C-chain address of the wallet. * @returns The C-chain address in the hexadecimal encoding. */ getCAddress(): Promise; protected _signEthMessage(signer: FlrApp | EthApp, app: string, message: string): Promise; protected _readResponse(response: any, method: string): any; protected _extractSignature(payload: any): string; protected _getTxResolution(tx: string): any; protected _prefixedHex(value: string | number | Buffer): string; protected _hexUtf8(utf8String: string): string; } /** * The class that implements {@link Wallet} and represents a Ledger account managed by the Flare app. */ export declare class FlrLedgerWallet extends LedgerWallet { constructor(app: FlrApp, derivationPath: string); protected readonly _app: FlrApp; /** * Returns the public key of the wallet. * @returns The public key in the hexadecimal encoding. */ getPublicKey(): Promise; /** * Signs a message with ETH prefix. * @param message UTF8 encoded message. * @returns The signature in hexadecimal encoding. */ signEthMessage(message: string): Promise; /** * Signs a C-chain (Ethereum Virtual Machine) transaction. * @param tx Unsigned C-chain (EVM) transaction in hexadecimal encoding. * @returns The signature in hexadecimal encoding. */ signCTransaction(transaction: string): Promise; /** * Signs and submits a C-chain (Ethereum Virtual Machine) transaction. * @param tx Unsigned C-chain (EVM) transaction in hexadecimal encoding. * @returns The transaction id in hexadecimal encoding. */ signPTransaction(transaction: string): Promise; } /** * The class that implements {@link Wallet} and represents a Ledger account managed by the Ethereum app. */ export declare class EthLedgerWallet extends LedgerWallet { constructor(app: EthApp, derivationPath: string); protected readonly _app: EthApp; /** * Returns the public key of the wallet. * @returns The public key in hexadecimal encoding. */ getPublicKey(): Promise; /** * Signs a message with ETH prefix. * @param message UTF8 encoded message. * @returns The signature in hexadecimal encoding. */ signEthMessage(message: string): Promise; /** * Signs a C-chain (Ethereum Virtual Machine) transaction. * @param tx Unsigned C-chain (EVM) transaction in hexadecimal encoding. * @returns The signature in hexadecimal encoding. */ signCTransaction(transaction: string): Promise; } //# sourceMappingURL=wallet.d.ts.map