spb/os-vault Public
Self-custody, multi-chain crypto wallet for macOS. One recovery phrase, six chain families, zero API keys — nothing leaves your Mac.
Swift 96%
Shell 3.4%
Makefile 0.6%
1import Foundation23public struct TransactionInstruction: Codable, Equatable {4 public let keys: [AccountMeta]5 public let programId: PublicKey6 public let data: [UInt8]78 public init(keys: [AccountMeta], programId: PublicKey, data: [BytesEncodable]) {9 self.keys = keys10 self.programId = programId11 self.data = data.bytes12 }1314 enum CodingKeys: String, CodingKey {15 case keys, programId, data16 }1718 public func encode(to encoder: Encoder) throws {19 var container = encoder.container(keyedBy: CodingKeys.self)20 try container.encode(keys, forKey: .keys)21 try container.encode(programId.base58EncodedString, forKey: .programId)22 try container.encode(data.toHexString(), forKey: .data)23 }24}25