syntax = "proto3"; package planetmintgo.machine; import "planetmintgo/machine/machine.proto"; import "planetmintgo/machine/trust_anchor.proto"; import "planetmintgo/machine/liquid_asset.proto"; import "planetmintgo/machine/params.proto"; import "amino/amino.proto"; import "gogoproto/gogo.proto"; import "cosmos_proto/cosmos.proto"; import "cosmos/msg/v1/msg.proto"; import "cosmos/base/v1beta1/coin.proto"; option go_package = "github.com/planetmint/planetmint-go/x/machine/types"; // Msg defines the Msg service. service Msg { rpc AttestMachine (MsgAttestMachine ) returns (MsgAttestMachineResponse ); rpc RegisterTrustAnchor (MsgRegisterTrustAnchor) returns (MsgRegisterTrustAnchorResponse); rpc NotarizeLiquidAsset (MsgNotarizeLiquidAsset) returns (MsgNotarizeLiquidAssetResponse); rpc UpdateParams (MsgUpdateParams ) returns (MsgUpdateParamsResponse ); rpc MintProduction (MsgMintProduction ) returns (MsgMintProductionResponse ); rpc BurnConsumption (MsgBurnConsumption ) returns (MsgBurnConsumptionResponse ); } message MsgAttestMachine { string creator = 1; Machine machine = 2; } message MsgAttestMachineResponse {} message MsgRegisterTrustAnchor { string creator = 1; TrustAnchor trustAnchor = 2; } message MsgRegisterTrustAnchorResponse {} message MsgNotarizeLiquidAsset { string creator = 1; LiquidAsset notarization = 2; } message MsgNotarizeLiquidAssetResponse {} message MsgUpdateParams { option (cosmos.msg.v1.signer) = "authority"; // authority is the address that controls the module (defaults to x/gov unless overwritten). string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // params defines the x/dao parameters to update. // NOTE: All parameters must be supplied. Params params = 2 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true]; } message MsgUpdateParamsResponse {} message MsgMintProduction { string creator = 1; repeated cosmos.base.v1beta1.Coin production = 2 [(gogoproto.nullable) = false]; } message MsgMintProductionResponse {} message MsgBurnConsumption { string creator = 1; repeated cosmos.base.v1beta1.Coin consumption = 2 [(gogoproto.nullable) = false]; } message MsgBurnConsumptionResponse {}