/// import type { TransactionRequest } from '@ethersproject/abstract-provider'; import type { HDNode } from '@ethersproject/hdnode'; import type { UnsignedTransaction } from '@ethersproject/transactions'; import { Client } from 'gridplus-sdk'; import type { DerivationPath } from '../../dpaths'; import type { DeterministicAddress, TAddress } from '../../types'; import type { Wallet } from '../../wallet'; import { HardwareWallet } from './hardware-wallet'; export interface GridPlusConfiguration extends GridPlusCredentials { name: string; } export interface GridPlusCredentials { deviceID?: string; password?: string; } export declare class GridPlusWalletInstance implements Wallet { private config; private client; private readonly path; private address?; constructor(config: GridPlusConfiguration, client: Client, path: string, address?: TAddress | undefined); getClient(): Promise; buildSigningRequest(fwVersion: { fix: number; minor: number; major: number; } | null, type: number | undefined, transaction: UnsignedTransaction): Promise<{ data: { payload: Buffer; curveType: number; hashType: number; encodingType: number; signerPath: number[]; decoder: Buffer | undefined; }; currency?: undefined; } | { currency: string; data: { signerPath: number[]; accessList?: import("@ethersproject/transactions").AccessListish | undefined; payload?: undefined; curveType?: undefined; hashType?: undefined; encodingType?: undefined; decoder?: undefined; }; }>; signTransaction(rawTx: TransactionRequest): Promise; signMessage(message: string): Promise; getAddress(): Promise; getPrivateKey(): Promise; } export declare class GridPlusWallet extends HardwareWallet { private config; constructor(config: GridPlusConfiguration); private client?; getClient(): Promise; getAddress(path: DerivationPath, index: number): Promise; getExtendedKey(_path: string): Promise<{ publicKey: string; chainCode: string; }>; getHardenedAddress(path: DerivationPath, index: number): Promise; getAddresses({ path, limit, offset, node }: { path: DerivationPath; limit: number; offset?: number; node?: HDNode; }): Promise; getWallet(path: DerivationPath, index: number, address?: TAddress): Promise; getCredentials(): GridPlusCredentials; }