syntax = "proto3"; package vault.v1; import "cosmos/msg/v1/msg.proto"; import "cosmos_proto/cosmos.proto"; import "gogoproto/gogo.proto"; import "google/api/annotations.proto"; import "vault/v1/genesis.proto"; option go_package = "github.com/onsonr/sonr/x/vault/types"; // Msg defines the Msg service. service Msg { option (cosmos.msg.v1.service) = true; // AllocateVault assembles a sqlite3 database in a local directory and returns // the CID of the database. this operation is called by services initiating a // controller registration. rpc AllocateVault(MsgAllocateVault) returns (MsgAllocateVaultResponse) { option (google.api.http).post = "/vault/v1/allocate"; } // UpdateParams defines a governance operation for updating the parameters. // // Since: cosmos-sdk 0.47 rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse); } // MsgUpdateParams is the Msg/UpdateParams request type. // // Since: cosmos-sdk 0.47 message MsgUpdateParams { option (cosmos.msg.v1.signer) = "authority"; // authority is the address of the governance account. string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // params defines the parameters to update. // // NOTE: All parameters must be supplied. Params params = 2 [(gogoproto.nullable) = false]; } // MsgUpdateParamsResponse defines the response structure for executing a // MsgUpdateParams message. // // Since: cosmos-sdk 0.47 message MsgUpdateParamsResponse {} // MsgAllocateVault is the message type for the AllocateVault RPC. message MsgAllocateVault { option (cosmos.msg.v1.signer) = "authority"; // authority is the address of the service account. string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"]; // subject is a unique human-defined identifier to associate with the vault. string subject = 2; // origin is the origin of the request in wildcard form. string origin = 3; } // MsgAllocateVaultResponse is the response type for the AllocateVault RPC. message MsgAllocateVaultResponse { // CID is the content identifier of the vault. string cid = 1; // ExpiryBlock is the block number at which the vault will expire. int64 expiry_block = 2; // RegistrationOptions is a json string of the // PublicKeyCredentialCreationOptions for WebAuthn string token = 3; // IsLocalhost is a flag to indicate if the vault is localhost bool localhost = 4; }