13 uint64 vm_version = 1;
17 // This message type duplicates Hash, above. One alternative is to
18 // embed a Hash inside an AssetID. But it's useful for AssetID to be
19 // plain old data (without pointers). Another alternative is use Hash
20 // in any protobuf types where an AssetID is called for, but it's
21 // preferable to have type safety.
34 message AssetDefinition {
35 Hash initial_block_id = 1;
36 Program issuance_program = 2;
42 AssetAmount value = 2;
46 message ValueDestination {
48 AssetAmount value = 2;
55 Hash previous_block_id = 3;
56 uint64 timestamp_ms = 4;
57 Hash transactions_root = 5;
65 repeated Hash result_ids = 2;
67 uint64 min_time_ms = 4;
68 uint64 max_time_ms = 5;
73 repeated ValueSource sources = 1; // issuances, spends, and muxes
76 repeated ValueDestination witness_destinations = 4; // outputs, retirements, and muxes
77 repeated bytes witness_arguments = 5;
82 Hash time_range_id = 2;
84 repeated bytes witness_arguments = 4;
85 Hash witness_anchored_id = 5;
92 repeated bytes witness_arguments = 4;
93 Hash witness_anchored_id = 5;
97 ValueSource source = 1;
98 Program control_program = 2;
105 ValueSource source = 1;
112 uint64 min_time_ms = 1;
113 uint64 max_time_ms = 2;
119 AssetAmount value = 2;
122 ValueDestination witness_destination = 5;
123 AssetDefinition witness_asset_definition = 6;
124 repeated bytes witness_arguments = 7;
125 Hash witness_anchored_id = 8;
130 Hash spent_output_id = 1;
133 ValueDestination witness_destination = 4;
134 repeated bytes witness_arguments = 5;
135 Hash witness_anchored_id = 6;