import com.dynamic.sdk.android.DynamicSDK
import com.dynamic.sdk.android.Models.BaseWallet
import com.solanaweb3.*
import org.sol4k.PublicKey
val sdk = DynamicSDK.getInstance()
suspend fun sendSOL(
wallet: BaseWallet,
recipient: String,
amountInSOL: Double
): String {
try {
val connection = Connection(Cluster.DEVNET)
val fromPubkey = PublicKey(wallet.address)
val toPubkey = PublicKey(recipient)
val lamports = (amountInSOL * 1_000_000_000).toLong()
val blockhash = connection.getLatestBlockhash()
val instruction = SystemProgram.transfer(fromPubkey, toPubkey, lamports)
val transaction = Transaction.v0(fromPubkey, listOf(instruction), blockhash.blockhash)
val base64Transaction = transaction.serializeUnsignedToBase64()
val signature = sdk.solana.signAndSendTransaction(base64Transaction, wallet)
println("Transaction sent!")
println("Signature: $signature")
return signature
} catch (e: Exception) {
println("Transaction failed: ${e.message}")
throw e
}
}