penumbra_sdk_proto/gen/
cosmos.auth.v1beta1.rs

1// This file is @generated by prost-build.
2/// BaseAccount defines a base account type. It contains all the necessary fields
3/// for basic account functionality. Any custom account type should extend this
4/// type for additional functionality (e.g. vesting).
5#[derive(Clone, PartialEq, ::prost::Message)]
6pub struct BaseAccount {
7    #[prost(string, tag = "1")]
8    pub address: ::prost::alloc::string::String,
9    #[prost(message, optional, tag = "2")]
10    pub pub_key: ::core::option::Option<::pbjson_types::Any>,
11    #[prost(uint64, tag = "3")]
12    pub account_number: u64,
13    #[prost(uint64, tag = "4")]
14    pub sequence: u64,
15}
16impl ::prost::Name for BaseAccount {
17    const NAME: &'static str = "BaseAccount";
18    const PACKAGE: &'static str = "cosmos.auth.v1beta1";
19    fn full_name() -> ::prost::alloc::string::String {
20        "cosmos.auth.v1beta1.BaseAccount".into()
21    }
22    fn type_url() -> ::prost::alloc::string::String {
23        "/cosmos.auth.v1beta1.BaseAccount".into()
24    }
25}
26/// ModuleAccount defines an account for modules that holds coins on a pool.
27#[derive(Clone, PartialEq, ::prost::Message)]
28pub struct ModuleAccount {
29    #[prost(message, optional, tag = "1")]
30    pub base_account: ::core::option::Option<BaseAccount>,
31    #[prost(string, tag = "2")]
32    pub name: ::prost::alloc::string::String,
33    #[prost(string, repeated, tag = "3")]
34    pub permissions: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
35}
36impl ::prost::Name for ModuleAccount {
37    const NAME: &'static str = "ModuleAccount";
38    const PACKAGE: &'static str = "cosmos.auth.v1beta1";
39    fn full_name() -> ::prost::alloc::string::String {
40        "cosmos.auth.v1beta1.ModuleAccount".into()
41    }
42    fn type_url() -> ::prost::alloc::string::String {
43        "/cosmos.auth.v1beta1.ModuleAccount".into()
44    }
45}
46/// ModuleCredential represents a unclaimable pubkey for base accounts controlled by modules.
47///
48/// Since: cosmos-sdk 0.47
49#[derive(Clone, PartialEq, ::prost::Message)]
50pub struct ModuleCredential {
51    /// module_name is the name of the module used for address derivation (passed into address.Module).
52    #[prost(string, tag = "1")]
53    pub module_name: ::prost::alloc::string::String,
54    /// derivation_keys is for deriving a module account address (passed into address.Module)
55    /// adding more keys creates sub-account addresses (passed into address.Derive)
56    #[prost(bytes = "vec", repeated, tag = "2")]
57    pub derivation_keys: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
58}
59impl ::prost::Name for ModuleCredential {
60    const NAME: &'static str = "ModuleCredential";
61    const PACKAGE: &'static str = "cosmos.auth.v1beta1";
62    fn full_name() -> ::prost::alloc::string::String {
63        "cosmos.auth.v1beta1.ModuleCredential".into()
64    }
65    fn type_url() -> ::prost::alloc::string::String {
66        "/cosmos.auth.v1beta1.ModuleCredential".into()
67    }
68}
69/// Params defines the parameters for the auth module.
70#[derive(Clone, Copy, PartialEq, ::prost::Message)]
71pub struct Params {
72    #[prost(uint64, tag = "1")]
73    pub max_memo_characters: u64,
74    #[prost(uint64, tag = "2")]
75    pub tx_sig_limit: u64,
76    #[prost(uint64, tag = "3")]
77    pub tx_size_cost_per_byte: u64,
78    #[prost(uint64, tag = "4")]
79    pub sig_verify_cost_ed25519: u64,
80    #[prost(uint64, tag = "5")]
81    pub sig_verify_cost_secp256k1: u64,
82}
83impl ::prost::Name for Params {
84    const NAME: &'static str = "Params";
85    const PACKAGE: &'static str = "cosmos.auth.v1beta1";
86    fn full_name() -> ::prost::alloc::string::String {
87        "cosmos.auth.v1beta1.Params".into()
88    }
89    fn type_url() -> ::prost::alloc::string::String {
90        "/cosmos.auth.v1beta1.Params".into()
91    }
92}