Files
Prad NukalaandGitHub 13e6c3e84d Master (#1262)
* clear

* feat: Add everything

* fix: Commenht
2025-10-03 14:45:52 -04:00

179 lines
3.8 KiB
Protocol Buffer

syntax = "proto3";
package dex.v1;
option go_package = "github.com/sonr-io/sonr/x/dex/types";
import "gogoproto/gogo.proto";
import "cosmos/base/v1beta1/coin.proto";
// EventDEXAccountRegistered is emitted when a new DEX account is registered
message EventDEXAccountRegistered {
// DID of the account owner
string did = 1;
// IBC connection ID
string connection_id = 2;
// Generated port ID
string port_id = 3;
// Remote account address (when available)
string account_address = 4;
}
// EventSwapExecuted is emitted when a swap is executed
message EventSwapExecuted {
// DID of the trader
string did = 1;
// IBC connection ID
string connection_id = 2;
// Source token and amount
cosmos.base.v1beta1.Coin source = 3 [(gogoproto.nullable) = false];
// Target token and amount received
cosmos.base.v1beta1.Coin target = 4 [(gogoproto.nullable) = false];
// Transaction hash on remote chain
string tx_hash = 5;
// IBC packet sequence
uint64 sequence = 6;
}
// EventLiquidityProvided is emitted when liquidity is added
message EventLiquidityProvided {
// DID of the liquidity provider
string did = 1;
// IBC connection ID
string connection_id = 2;
// Pool ID
string pool_id = 3;
// Assets provided
repeated cosmos.base.v1beta1.Coin assets = 4
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];
// Shares received
string shares_received = 5;
// Transaction hash on remote chain
string tx_hash = 6;
}
// EventLiquidityRemoved is emitted when liquidity is removed
message EventLiquidityRemoved {
// DID of the liquidity provider
string did = 1;
// IBC connection ID
string connection_id = 2;
// Pool ID
string pool_id = 3;
// Shares removed
string shares_removed = 4;
// Assets received
repeated cosmos.base.v1beta1.Coin assets = 5
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];
// Transaction hash on remote chain
string tx_hash = 6;
}
// EventOrderCreated is emitted when a limit order is created
message EventOrderCreated {
// DID of the trader
string did = 1;
// IBC connection ID
string connection_id = 2;
// Order ID on remote chain
string order_id = 3;
// Order details
string sell_denom = 4;
string buy_denom = 5;
string amount = 6;
string price = 7;
// Transaction hash on remote chain
string tx_hash = 8;
}
// EventOrderCancelled is emitted when an order is cancelled
message EventOrderCancelled {
// DID of the trader
string did = 1;
// IBC connection ID
string connection_id = 2;
// Order ID that was cancelled
string order_id = 3;
// Transaction hash on remote chain
string tx_hash = 4;
}
// EventOrderFilled is emitted when an order is filled
message EventOrderFilled {
// DID of the trader
string did = 1;
// IBC connection ID
string connection_id = 2;
// Order ID that was filled
string order_id = 3;
// Fill details
string fill_amount = 4;
string fill_price = 5;
// Transaction hash on remote chain
string tx_hash = 6;
}
// EventICAPacketSent is emitted when an ICA packet is sent
message EventICAPacketSent {
// DID of the sender
string did = 1;
// IBC connection ID
string connection_id = 2;
// Packet type (swap, liquidity, order, etc.)
string packet_type = 3;
// IBC packet sequence
uint64 sequence = 4;
}
// EventICAPacketAcknowledged is emitted when an ICA packet is acknowledged
message EventICAPacketAcknowledged {
// DID of the sender
string did = 1;
// IBC connection ID
string connection_id = 2;
// Packet type
string packet_type = 3;
// IBC packet sequence
uint64 sequence = 4;
// Success status
bool success = 5;
// Error message if failed
string error = 6;
}