import 'dart:typed_data'; import 'package:flutter/foundation.dart'; import 'package:bitcoin_flutter/bitcoin_flutter.dart' as bitcoin; import 'package:bitcoin_flutter/src/payments/index.dart' show PaymentData; import 'package:hex/hex.dart'; bitcoin.PaymentData generatePaymentData( {required bitcoin.HDWallet hd, required int index}) => PaymentData( pubkey: Uint8List.fromList(HEX.decode(hd.derive(index).pubKey!))); bitcoin.ECPair generateKeyPair( {required bitcoin.HDWallet hd, required int index, required bitcoin.NetworkType network}) => bitcoin.ECPair.fromWIF(hd.derive(index).wif!, network: network); String generateP2WPKHAddress( {required bitcoin.HDWallet hd, required int index, required bitcoin.NetworkType networkType}) => bitcoin .P2WPKH( data: PaymentData( pubkey: Uint8List.fromList(HEX.decode(hd.derive(index).pubKey!))), network: networkType) .data .address!; String generateP2WPKHAddressByPath( {required bitcoin.HDWallet hd, required String path, required bitcoin.NetworkType networkType}) => bitcoin .P2WPKH( data: PaymentData( pubkey: Uint8List.fromList(HEX.decode(hd.derivePath(path).pubKey!))), network: networkType) .data .address!; String generateP2PKHAddress( {required bitcoin.HDWallet hd, required int index, required bitcoin.NetworkType networkType}) => bitcoin .P2PKH( data: PaymentData( pubkey: Uint8List.fromList(HEX.decode(hd.derive(index).pubKey!))), network: networkType) .data .address!;