+++ /dev/null
-syntax = "proto3";
-
-package bc;
-
-message Hash {
- fixed64 v0 = 1;
- fixed64 v1 = 2;
- fixed64 v2 = 3;
- fixed64 v3 = 4;
-}
-
-message Program {
- uint64 vm_version = 1;
- bytes code = 2;
-}
-
-// This message type duplicates Hash, above. One alternative is to
-// embed a Hash inside an AssetID. But it's useful for AssetID to be
-// plain old data (without pointers). Another alternative is use Hash
-// in any protobuf types where an AssetID is called for, but it's
-// preferable to have type safety.
-message AssetID {
- fixed64 v0 = 1;
- fixed64 v1 = 2;
- fixed64 v2 = 3;
- fixed64 v3 = 4;
-}
-
-message AssetAmount {
- AssetID asset_id = 1;
- uint64 amount = 2;
-}
-
-message AssetDefinition {
- Program issuance_program = 1;
- Hash data = 2;
-}
-
-message ValueSource {
- Hash ref = 1;
- AssetAmount value = 2;
- uint64 position = 3;
-}
-
-message ValueDestination {
- Hash ref = 1;
- AssetAmount value = 2;
- uint64 position = 3;
-}
-
-message Proof {
- bytes sign = 1;
- bytes controlProgram = 2;
- bytes address = 3;
-}
-
-message BytomBlockHeader {
- uint64 version = 1;
- uint64 height = 2;
- Hash previous_block_id = 3;
- uint64 timestamp = 4;
- Hash transactions_root = 5;
- Hash transaction_status_hash = 6;
- uint64 nonce = 7;
- uint64 bits = 8;
- TransactionStatus transaction_status = 9;
-}
-
-message BlockHeader {
- uint64 version = 1;
- uint64 height = 2;
- Hash previous_block_id = 3;
- uint64 timestamp = 4;
- Hash transactions_root = 5;
- Hash transaction_status_hash = 6;
- uint64 nonce = 7;
- uint64 bits = 8;
- TransactionStatus transaction_status = 9;
-}
-
-message TxHeader {
- uint64 version = 1;
- uint64 serialized_size = 2;
- Hash data = 3;
- uint64 time_range = 4;
- repeated Hash result_ids = 5;
- bool side = 6;
-}
-
-message TxVerifyResult {
- bool status_fail = 1;
-}
-
-message TransactionStatus {
- uint64 version = 1;
- repeated TxVerifyResult verify_status = 2;
-}
-
-message Mux {
- repeated ValueSource sources = 1; // issuances, spends, and muxes
- Program program = 2;
- repeated ValueDestination witness_destinations = 3; // outputs, retirements, and muxes
- repeated bytes witness_arguments = 4;
-}
-
-message Coinbase {
- ValueDestination witness_destination = 1;
- bytes arbitrary = 2;
-}
-
-message Output {
- ValueSource source = 1;
- Program control_program = 2;
- uint64 ordinal = 3;
-}
-
-message Retirement {
- ValueSource source = 1;
- uint64 ordinal = 2;
-}
-
-message Issuance {
- Hash nonce_hash = 1;
- AssetAmount value = 2;
- ValueDestination witness_destination = 3;
- AssetDefinition witness_asset_definition = 4;
- repeated bytes witness_arguments = 5;
- uint64 ordinal = 6;
-}
-
-message Spend {
- Hash spent_output_id = 1;
- ValueDestination witness_destination = 2;
- repeated bytes witness_arguments = 3;
- uint64 ordinal = 4;
-}
-
-message Claim {
- Hash spent_output_id = 1;
- ValueDestination witness_destination = 2;
- repeated bytes witness_arguments = 3;
- uint64 ordinal = 4;
- repeated bytes Peginwitness = 5;
-}
-