mirror of
https://github.com/sonr-io/sonr.git
synced 2026-08-03 09:51:39 +00:00
89 lines
2.2 KiB
Protocol Buffer
89 lines
2.2 KiB
Protocol Buffer
syntax = "proto3";
|
|
package did.v1;
|
|
|
|
import "gogoproto/gogo.proto";
|
|
import "amino/amino.proto";
|
|
|
|
option go_package = "github.com/onsonr/hway/x/did/types";
|
|
|
|
// GenesisState defines the module genesis state
|
|
message GenesisState {
|
|
// Params defines all the parameters of the module.
|
|
Params params = 1 [(gogoproto.nullable) = false];
|
|
}
|
|
|
|
// Params defines the set of module parameters.
|
|
message Params {
|
|
option (amino.name) = "did/params";
|
|
option (gogoproto.equal) = true;
|
|
option (gogoproto.goproto_stringer) = false;
|
|
|
|
// Whitelisted Assets
|
|
repeated AssetInfo whitelisted_assets = 1;
|
|
|
|
// Whitelisted Blockchains
|
|
repeated ChainInfo whitelisted_chains = 2;
|
|
}
|
|
|
|
// AssetInfo defines the asset info
|
|
message AssetInfo {
|
|
string id = 1;
|
|
string denom = 2;
|
|
string symbol = 3;
|
|
string asset_type = 4;
|
|
string origin_chain = 5;
|
|
string origin_denom = 6;
|
|
int32 decimals = 7;
|
|
string description = 8;
|
|
string image_url = 9;
|
|
string coingecko_id = 10;
|
|
bool is_enabled = 11;
|
|
string ibc_path = 12;
|
|
string ibc_channel = 13;
|
|
string ibc_port = 14;
|
|
}
|
|
|
|
// ChainInfo defines the chain info
|
|
message ChainInfo {
|
|
string id = 1;
|
|
string chain_id = 2;
|
|
string name = 3;
|
|
string symbol = 4;
|
|
string bech32_prefix = 5;
|
|
string genesis_time = 6;
|
|
repeated Endpoint grpc_endpoints = 7;
|
|
repeated Endpoint rest_endpoints = 8;
|
|
ExplorerInfo explorer = 9;
|
|
FeeInfo fee_info = 10;
|
|
}
|
|
|
|
// Endpoint defines an endpoint
|
|
message Endpoint {
|
|
string url = 1;
|
|
bool is_primary = 2;
|
|
}
|
|
|
|
// ExplorerInfo defines the explorer info
|
|
message ExplorerInfo {
|
|
string name = 1;
|
|
string url = 2;
|
|
}
|
|
|
|
// FeeInfo defines a fee info
|
|
message FeeInfo {
|
|
string base_denom = 1;
|
|
repeated string fee_rates = 2;
|
|
int32 init_gas_limit = 3;
|
|
bool is_simulable = 4;
|
|
double gas_multiply = 5;
|
|
}
|
|
|
|
// KeyInfo defines information for accepted PubKey types
|
|
message KeyInfo {
|
|
string key_type = 1; // e.g., "secp256k1", "ed25519", "webauthn"
|
|
string algorithm = 2; // e.g., "ES256", "EdDSA", "ES256K"
|
|
string curve = 3; // e.g., "P-256", "Ed25519", "secp256k1"
|
|
bool is_cbor = 4; // true for WebAuthn CBOR-encoded keys, false for others
|
|
string encoding = 5; // e.g., "hex", "base64", "multibase"
|
|
}
|