"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.message
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class InflationDistribution(google.protobuf.message.Message):
    """InflationDistribution defines the distribution in which inflation is
    allocated through minting on each epoch (staking, community, strategic). It
    excludes the team vesting distribution.
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    STAKING_REWARDS_FIELD_NUMBER: builtins.int
    COMMUNITY_POOL_FIELD_NUMBER: builtins.int
    STRATEGIC_RESERVES_FIELD_NUMBER: builtins.int
    staking_rewards: builtins.str
    """staking_rewards defines the proportion of the minted_denom that is
    to be allocated as staking rewards
    """
    community_pool: builtins.str
    """community_pool defines the proportion of the minted_denom that is to
    be allocated to the community pool
    """
    strategic_reserves: builtins.str
    """strategic_reserves defines the proportion of the minted_denom that
    is to be allocated to the strategic reserves module address
    """
    def __init__(
        self,
        *,
        staking_rewards: builtins.str = ...,
        community_pool: builtins.str = ...,
        strategic_reserves: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["community_pool", b"community_pool", "staking_rewards", b"staking_rewards", "strategic_reserves", b"strategic_reserves"]) -> None: ...

global___InflationDistribution = InflationDistribution

@typing_extensions.final
class ExponentialCalculation(google.protobuf.message.Message):
    """ExponentialCalculation holds factors to calculate exponential inflation on
    each period. Calculation reference:
    periodProvision = exponentialDecay
    f(x)            = a * (1 - r) ^ x + c
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    A_FIELD_NUMBER: builtins.int
    R_FIELD_NUMBER: builtins.int
    C_FIELD_NUMBER: builtins.int
    a: builtins.str
    """a defines the initial value"""
    r: builtins.str
    """r defines the reduction factor"""
    c: builtins.str
    """c defines the parameter for long term inflation"""
    def __init__(
        self,
        *,
        a: builtins.str = ...,
        r: builtins.str = ...,
        c: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["a", b"a", "c", b"c", "r", b"r"]) -> None: ...

global___ExponentialCalculation = ExponentialCalculation
