import { DecCoin, DecCoinSDKType } from "../../base/v1beta1/coin"; import { ValidatorAccumulatedCommission, ValidatorAccumulatedCommissionSDKType, ValidatorHistoricalRewards, ValidatorHistoricalRewardsSDKType, ValidatorCurrentRewards, ValidatorCurrentRewardsSDKType, DelegatorStartingInfo, DelegatorStartingInfoSDKType, ValidatorSlashEvent, ValidatorSlashEventSDKType, Params, ParamsSDKType, FeePool, FeePoolSDKType } from "./distribution"; import { BinaryReader, BinaryWriter } from "../../../binary"; export declare const protobufPackage = "cosmos.distribution.v1beta1"; /** * DelegatorWithdrawInfo is the address for where distributions rewards are * withdrawn to by default this struct is only used at genesis to feed in * default withdraw addresses. */ export interface DelegatorWithdrawInfo { /** delegator_address is the address of the delegator. */ delegatorAddress: string; /** withdraw_address is the address to withdraw the delegation rewards to. */ withdrawAddress: string; } /** * DelegatorWithdrawInfo is the address for where distributions rewards are * withdrawn to by default this struct is only used at genesis to feed in * default withdraw addresses. */ export interface DelegatorWithdrawInfoSDKType { delegator_address: string; withdraw_address: string; } /** ValidatorOutstandingRewardsRecord is used for import/export via genesis json. */ export interface ValidatorOutstandingRewardsRecord { /** validator_address is the address of the validator. */ validatorAddress: string; /** outstanding_rewards represents the oustanding rewards of a validator. */ outstandingRewards: DecCoin[]; } /** ValidatorOutstandingRewardsRecord is used for import/export via genesis json. */ export interface ValidatorOutstandingRewardsRecordSDKType { validator_address: string; outstanding_rewards: DecCoinSDKType[]; } /** * ValidatorAccumulatedCommissionRecord is used for import / export via genesis * json. */ export interface ValidatorAccumulatedCommissionRecord { /** validator_address is the address of the validator. */ validatorAddress: string; /** accumulated is the accumulated commission of a validator. */ accumulated: ValidatorAccumulatedCommission | undefined; } /** * ValidatorAccumulatedCommissionRecord is used for import / export via genesis * json. */ export interface ValidatorAccumulatedCommissionRecordSDKType { validator_address: string; accumulated: ValidatorAccumulatedCommissionSDKType | undefined; } /** * ValidatorHistoricalRewardsRecord is used for import / export via genesis * json. */ export interface ValidatorHistoricalRewardsRecord { /** validator_address is the address of the validator. */ validatorAddress: string; /** period defines the period the historical rewards apply to. */ period: bigint; /** rewards defines the historical rewards of a validator. */ rewards: ValidatorHistoricalRewards | undefined; } /** * ValidatorHistoricalRewardsRecord is used for import / export via genesis * json. */ export interface ValidatorHistoricalRewardsRecordSDKType { validator_address: string; period: bigint; rewards: ValidatorHistoricalRewardsSDKType | undefined; } /** ValidatorCurrentRewardsRecord is used for import / export via genesis json. */ export interface ValidatorCurrentRewardsRecord { /** validator_address is the address of the validator. */ validatorAddress: string; /** rewards defines the current rewards of a validator. */ rewards: ValidatorCurrentRewards | undefined; } /** ValidatorCurrentRewardsRecord is used for import / export via genesis json. */ export interface ValidatorCurrentRewardsRecordSDKType { validator_address: string; rewards: ValidatorCurrentRewardsSDKType | undefined; } /** DelegatorStartingInfoRecord used for import / export via genesis json. */ export interface DelegatorStartingInfoRecord { /** delegator_address is the address of the delegator. */ delegatorAddress: string; /** validator_address is the address of the validator. */ validatorAddress: string; /** starting_info defines the starting info of a delegator. */ startingInfo: DelegatorStartingInfo | undefined; } /** DelegatorStartingInfoRecord used for import / export via genesis json. */ export interface DelegatorStartingInfoRecordSDKType { delegator_address: string; validator_address: string; starting_info: DelegatorStartingInfoSDKType | undefined; } /** ValidatorSlashEventRecord is used for import / export via genesis json. */ export interface ValidatorSlashEventRecord { /** validator_address is the address of the validator. */ validatorAddress: string; /** height defines the block height at which the slash event occured. */ height: bigint; /** period is the period of the slash event. */ period: bigint; /** validator_slash_event describes the slash event. */ validatorSlashEvent: ValidatorSlashEvent | undefined; } /** ValidatorSlashEventRecord is used for import / export via genesis json. */ export interface ValidatorSlashEventRecordSDKType { validator_address: string; height: bigint; period: bigint; validator_slash_event: ValidatorSlashEventSDKType | undefined; } /** GenesisState defines the distribution module's genesis state. */ export interface GenesisState { /** params defines all the paramaters of the module. */ params: Params | undefined; /** fee_pool defines the fee pool at genesis. */ feePool: FeePool | undefined; /** fee_pool defines the delegator withdraw infos at genesis. */ delegatorWithdrawInfos: DelegatorWithdrawInfo[]; /** fee_pool defines the previous proposer at genesis. */ previousProposer: string; /** fee_pool defines the outstanding rewards of all validators at genesis. */ outstandingRewards: ValidatorOutstandingRewardsRecord[]; /** fee_pool defines the accumulated commisions of all validators at genesis. */ validatorAccumulatedCommissions: ValidatorAccumulatedCommissionRecord[]; /** fee_pool defines the historical rewards of all validators at genesis. */ validatorHistoricalRewards: ValidatorHistoricalRewardsRecord[]; /** fee_pool defines the current rewards of all validators at genesis. */ validatorCurrentRewards: ValidatorCurrentRewardsRecord[]; /** fee_pool defines the delegator starting infos at genesis. */ delegatorStartingInfos: DelegatorStartingInfoRecord[]; /** fee_pool defines the validator slash events at genesis. */ validatorSlashEvents: ValidatorSlashEventRecord[]; } /** GenesisState defines the distribution module's genesis state. */ export interface GenesisStateSDKType { params: ParamsSDKType | undefined; fee_pool: FeePoolSDKType | undefined; delegator_withdraw_infos: DelegatorWithdrawInfoSDKType[]; previous_proposer: string; outstanding_rewards: ValidatorOutstandingRewardsRecordSDKType[]; validator_accumulated_commissions: ValidatorAccumulatedCommissionRecordSDKType[]; validator_historical_rewards: ValidatorHistoricalRewardsRecordSDKType[]; validator_current_rewards: ValidatorCurrentRewardsRecordSDKType[]; delegator_starting_infos: DelegatorStartingInfoRecordSDKType[]; validator_slash_events: ValidatorSlashEventRecordSDKType[]; } export declare const DelegatorWithdrawInfo: { typeUrl: string; encode(message: DelegatorWithdrawInfo, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): DelegatorWithdrawInfo; fromJSON(object: any): DelegatorWithdrawInfo; toJSON(message: DelegatorWithdrawInfo): unknown; fromPartial & { delegatorAddress?: string; withdrawAddress?: string; } & Record, never>>(object: I): DelegatorWithdrawInfo; }; export declare const ValidatorOutstandingRewardsRecord: { typeUrl: string; encode(message: ValidatorOutstandingRewardsRecord, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): ValidatorOutstandingRewardsRecord; fromJSON(object: any): ValidatorOutstandingRewardsRecord; toJSON(message: ValidatorOutstandingRewardsRecord): unknown; fromPartial & { validatorAddress?: string; outstandingRewards?: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; } & Record, never>>(object: I): ValidatorOutstandingRewardsRecord; }; export declare const ValidatorAccumulatedCommissionRecord: { typeUrl: string; encode(message: ValidatorAccumulatedCommissionRecord, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): ValidatorAccumulatedCommissionRecord; fromJSON(object: any): ValidatorAccumulatedCommissionRecord; toJSON(message: ValidatorAccumulatedCommissionRecord): unknown; fromPartial & { validatorAddress?: string; accumulated?: ValidatorAccumulatedCommission & { commission: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; } & Record, never>; } & Record, never>>(object: I): ValidatorAccumulatedCommissionRecord; }; export declare const ValidatorHistoricalRewardsRecord: { typeUrl: string; encode(message: ValidatorHistoricalRewardsRecord, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): ValidatorHistoricalRewardsRecord; fromJSON(object: any): ValidatorHistoricalRewardsRecord; toJSON(message: ValidatorHistoricalRewardsRecord): unknown; fromPartial & { validatorAddress?: string; period?: bigint; rewards?: ValidatorHistoricalRewards & { cumulativeRewardRatio: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; referenceCount: number; } & Record, never>; } & Record, never>>(object: I): ValidatorHistoricalRewardsRecord; }; export declare const ValidatorCurrentRewardsRecord: { typeUrl: string; encode(message: ValidatorCurrentRewardsRecord, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): ValidatorCurrentRewardsRecord; fromJSON(object: any): ValidatorCurrentRewardsRecord; toJSON(message: ValidatorCurrentRewardsRecord): unknown; fromPartial & { validatorAddress?: string; rewards?: ValidatorCurrentRewards & { rewards: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; period: bigint; } & Record, never>; } & Record, never>>(object: I): ValidatorCurrentRewardsRecord; }; export declare const DelegatorStartingInfoRecord: { typeUrl: string; encode(message: DelegatorStartingInfoRecord, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): DelegatorStartingInfoRecord; fromJSON(object: any): DelegatorStartingInfoRecord; toJSON(message: DelegatorStartingInfoRecord): unknown; fromPartial & { delegatorAddress?: string; validatorAddress?: string; startingInfo?: DelegatorStartingInfo & { previousPeriod: bigint; stake: string; height: bigint; } & Record, never>; } & Record, never>>(object: I): DelegatorStartingInfoRecord; }; export declare const ValidatorSlashEventRecord: { typeUrl: string; encode(message: ValidatorSlashEventRecord, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): ValidatorSlashEventRecord; fromJSON(object: any): ValidatorSlashEventRecord; toJSON(message: ValidatorSlashEventRecord): unknown; fromPartial & { validatorAddress?: string; height?: bigint; period?: bigint; validatorSlashEvent?: ValidatorSlashEvent & { validatorPeriod: bigint; fraction: string; } & Record, never>; } & Record, never>>(object: I): ValidatorSlashEventRecord; }; export declare const GenesisState: { typeUrl: string; encode(message: GenesisState, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): GenesisState; fromJSON(object: any): GenesisState; toJSON(message: GenesisState): unknown; fromPartial & { params?: Params & { communityTax: string; baseProposerReward: string; bonusProposerReward: string; withdrawAddrEnabled: boolean; } & Record, never>; feePool?: FeePool & { communityPool: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; } & Record, never>; delegatorWithdrawInfos?: DelegatorWithdrawInfo[] & (DelegatorWithdrawInfo & { delegatorAddress: string; withdrawAddress: string; } & Record, never>)[] & Record, never>; previousProposer?: string; outstandingRewards?: ValidatorOutstandingRewardsRecord[] & (ValidatorOutstandingRewardsRecord & { validatorAddress: string; outstandingRewards: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; } & Record, never>)[] & Record, never>; validatorAccumulatedCommissions?: ValidatorAccumulatedCommissionRecord[] & (ValidatorAccumulatedCommissionRecord & { validatorAddress: string; accumulated: ValidatorAccumulatedCommission & { commission: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; } & Record, never>; } & Record, never>)[] & Record, never>; validatorHistoricalRewards?: ValidatorHistoricalRewardsRecord[] & (ValidatorHistoricalRewardsRecord & { validatorAddress: string; period: bigint; rewards: ValidatorHistoricalRewards & { cumulativeRewardRatio: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; referenceCount: number; } & Record, never>; } & Record, never>)[] & Record, never>; validatorCurrentRewards?: ValidatorCurrentRewardsRecord[] & (ValidatorCurrentRewardsRecord & { validatorAddress: string; rewards: ValidatorCurrentRewards & { rewards: DecCoin[] & (DecCoin & { denom: string; amount: string; } & Record, never>)[] & Record, never>; period: bigint; } & Record, never>; } & Record, never>)[] & Record, never>; delegatorStartingInfos?: DelegatorStartingInfoRecord[] & (DelegatorStartingInfoRecord & { delegatorAddress: string; validatorAddress: string; startingInfo: DelegatorStartingInfo & { previousPeriod: bigint; stake: string; height: bigint; } & Record, never>; } & Record, never>)[] & Record, never>; validatorSlashEvents?: ValidatorSlashEventRecord[] & (ValidatorSlashEventRecord & { validatorAddress: string; height: bigint; period: bigint; validatorSlashEvent: ValidatorSlashEvent & { validatorPeriod: bigint; fraction: string; } & Record, never>; } & Record, never>)[] & Record, never>; } & Record, never>>(object: I): GenesisState; };