github.com/Finschia/finschia-sdk@v0.49.1/proto/lbm/fbridge/v1/tx.proto (about)

     1  syntax = "proto3";
     2  package lbm.fbridge.v1;
     3  
     4  option go_package = "github.com/Finschia/finschia-sdk/x/fbridge/types";
     5  
     6  import "gogoproto/gogo.proto";
     7  import "lbm/fbridge/v1/fbridge.proto";
     8  
     9  service Msg {
    10    // UpdateParams updates the x/fbridge parameters.
    11    rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);
    12  
    13    // Submit a transfer request to the bridge module.
    14    rpc Transfer(MsgTransfer) returns (MsgTransferResponse);
    15  
    16    // Submit a provision to the bridge module.
    17    rpc Provision(MsgProvision) returns (MsgProvisionResponse);
    18  
    19    // Set the time lock value from default value to uint64.max for specific confirmed provision.
    20    rpc HoldTransfer(MsgHoldTransfer) returns (MsgHoldTransferResponse);
    21  
    22    // Set the time lock value to 0 for specific confirmed provision.
    23    rpc ReleaseTransfer(MsgReleaseTransfer) returns (MsgReleaseTransferResponse);
    24  
    25    // Remove a specific confirmed provision (reset for specific sequence number).
    26    rpc RemoveProvision(MsgRemoveProvision) returns (MsgRemoveProvisionResponse);
    27  
    28    // ClaimBatch processes the claiming of multiple claimable provisions in a single operation
    29    rpc ClaimBatch(MsgClaimBatch) returns (MsgClaimBatchResponse);
    30  
    31    // Claim processes the claiming of a provision with a specific sequence number
    32    rpc Claim(MsgClaim) returns (MsgClaimResponse);
    33  
    34    // SuggestRole suggests updating the role of an address in the bridge module.
    35    // The role can be one of the following: guardian, operator, judge.
    36    // The proposal will be passed only with the consent of +2/3 Guardian members.
    37    rpc SuggestRole(MsgSuggestRole) returns (MsgSuggestRoleResponse);
    38  
    39    // AddVoteForRole adds a vote for a role change proposal.
    40    rpc AddVoteForRole(MsgAddVoteForRole) returns (MsgAddVoteForRoleResponse);
    41  
    42    // SetBridgeStatus operates a switch to halt/resume the bridge module.
    43    // If the ratio of inactive bridge switches exceed TrustLevel, the bridge module halts.
    44    rpc SetBridgeStatus(MsgSetBridgeStatus) returns (MsgSetBridgeStatusResponse);
    45  }
    46  
    47  message MsgUpdateParams {
    48    // the authority address
    49    string authority = 1;
    50  
    51    // params defines the x/fbridge parameters to update.
    52    //
    53    // NOTE: All parameters must be supplied.
    54    Params params = 2 [(gogoproto.nullable) = false];
    55  }
    56  
    57  message MsgUpdateParamsResponse {}
    58  
    59  // MsgTransfer is input values required for bridge transfer
    60  message MsgTransfer {
    61    // the sender address on the source chain
    62    string sender = 1;
    63    // the recipient address on the destination chain
    64    string receiver = 2;
    65    // the amount of token to be transferred
    66    string amount = 3
    67        [(gogoproto.customtype) = "github.com/Finschia/finschia-sdk/types.Int", (gogoproto.nullable) = false];
    68  }
    69  
    70  message MsgTransferResponse {}
    71  
    72  // MsgProvision is input values required for provisioning
    73  message MsgProvision {
    74    // the operator address
    75    string from = 1;
    76    // the sequence number of the bridge request
    77    uint64 seq = 2;
    78    // the sender address on the source chain
    79    string sender = 3;
    80    // the recipient address on the destination chain
    81    string receiver = 4;
    82    // the amount of token to be claimed
    83    string amount = 5
    84        [(gogoproto.customtype) = "github.com/Finschia/finschia-sdk/types.Int", (gogoproto.nullable) = false];
    85  }
    86  
    87  message MsgProvisionResponse {}
    88  
    89  // MsgHoldTransfer is input values required for holding transfer
    90  message MsgHoldTransfer {
    91    // the judge address
    92    string from = 1;
    93    // the sequence number of the bridge request
    94    uint64 seq = 2;
    95  }
    96  
    97  message MsgHoldTransferResponse {}
    98  
    99  // MsgReleaseTransfer is input values required for releasing a held transfer by time lock
   100  message MsgReleaseTransfer {
   101    // the guardian address
   102    string from = 1;
   103    // the sequence number of the bridge request
   104    uint64 seq = 2;
   105  }
   106  
   107  message MsgReleaseTransferResponse {}
   108  
   109  // MsgRemoveProvision is input values required for removing a specific confirmed provision
   110  message MsgRemoveProvision {
   111    // the judge address
   112    string from = 1;
   113    // the sequence number of the bridge request
   114    uint64 seq = 2;
   115  }
   116  
   117  message MsgRemoveProvisionResponse {}
   118  
   119  // MsgClaimBatch is input values required for claiming multiple claimable provisions
   120  message MsgClaimBatch {
   121    // the claimer address
   122    string from = 1;
   123    // the maximum number of claims to be made at once
   124    uint64 max_claims = 2;
   125  }
   126  
   127  message MsgClaimBatchResponse {}
   128  
   129  // MsgClaim is input values required for claiming a provision
   130  message MsgClaim {
   131    // the claimer address
   132    string from = 1;
   133    // the sequence number of the bridge request
   134    uint64 seq = 2;
   135  }
   136  
   137  message MsgClaimResponse {}
   138  
   139  // MsgUpdateRole is input values required for updating the role of an address
   140  message MsgSuggestRole {
   141    // the guardian address
   142    string from = 1;
   143    // the address to update the role
   144    string target = 2;
   145    // the role to be updated
   146    // - unspecified : 0, used to remove the address from a group
   147    // - guardian : 1
   148    // - operator : 2
   149    // - judge : 3
   150    Role role = 3;
   151  }
   152  
   153  message MsgSuggestRoleResponse {}
   154  
   155  message MsgAddVoteForRole {
   156    // the guardian address
   157    string from = 1;
   158    // the proposal ID
   159    uint64 proposal_id = 2;
   160    // the vote option
   161    VoteOption option = 3;
   162  }
   163  
   164  message MsgAddVoteForRoleResponse {}
   165  
   166  // MsgSetBridgeStatus is input values required for setting the status of the bridge module
   167  message MsgSetBridgeStatus {
   168    // the guardian address
   169    string guardian = 1;
   170  
   171    BridgeStatus status = 2;
   172  }
   173  
   174  message MsgSetBridgeStatusResponse {}