private val address: WalletAddress
) : TransactionSigner.Async {
override suspend fun signTransferTransaction(
gasConfiguration: GasConfiguration
): SignedTransaction = TODO()
override suspend fun signContractTransaction(
gasConfiguration: GasConfiguration
): SignedTransaction = TODO()
// defining an extension function
fun Credentials.Companion.createFromMetaMask(address: WalletAddress) =
Credentials(address, MetaMaskSigner(address))
// using the extension function
val metaMask = Credentials.createFromMetaMask(/*...*/)