syntax = "proto3"; package receipt; message TaskReceipt { string uuid = 1; Network network = 2; Timespan timespan = 3; } message Network { Inbound inbound = 2; Outbound outbound = 3; } message Inbound { uint64 bytes = 1; uint64 unitPrice = 2; uint64 priceCoefficient = 3; } message Outbound { uint64 bytes = 1; uint64 unitPrice = 2; uint64 priceCoefficient = 3; } message Timespan { bytes milliseconds = 1; // milliseconds serialized by uint128 uint64 unitPrice = 2; uint64 priceCoefficient = 3; } message StorageReceipt { string uuid = 1; Memory memory = 2; Disk disk = 3; } message Memory { uint64 bytes = 1; bytes duration = 2; // milliseconds serialized by uint128 uint64 unitPrice = 3; uint64 priceCoefficient = 4; } message Disk { uint64 bytes = 1; bytes duration = 2; // milliseconds serialized by uint128 uint64 unitPrice = 3; uint64 priceCoefficient = 4; }