import { Params, type ParamsSDKType, Metadata, type MetadataSDKType, SendEnabled, type SendEnabledSDKType } from './bank.js'; import { Coin, type CoinSDKType } from '../../base/v1beta1/coin.js'; import { BinaryReader, BinaryWriter } from '../../../binary.js'; import { type JsonSafe } from '../../../json-safe.js'; /** GenesisState defines the bank module's genesis state. */ export interface GenesisState { /** params defines all the parameters of the module. */ params: Params; /** balances is an array containing the balances of all the accounts. */ balances: Balance[]; /** * supply represents the total supply. If it is left empty, then supply will be calculated based on the provided * balances. Otherwise, it will be used to validate that the sum of the balances equals this amount. */ supply: Coin[]; /** denom_metadata defines the metadata of the different coins. */ denomMetadata: Metadata[]; /** * send_enabled defines the denoms where send is enabled or disabled. * * Since: cosmos-sdk 0.47 */ sendEnabled: SendEnabled[]; } export interface GenesisStateProtoMsg { typeUrl: '/cosmos.bank.v1beta1.GenesisState'; value: Uint8Array; } /** GenesisState defines the bank module's genesis state. */ export interface GenesisStateSDKType { params: ParamsSDKType; balances: BalanceSDKType[]; supply: CoinSDKType[]; denom_metadata: MetadataSDKType[]; send_enabled: SendEnabledSDKType[]; } /** * Balance defines an account address and balance pair used in the bank module's * genesis state. */ export interface Balance { /** address is the address of the balance holder. */ address: string; /** coins defines the different coins this balance holds. */ coins: Coin[]; } export interface BalanceProtoMsg { typeUrl: '/cosmos.bank.v1beta1.Balance'; value: Uint8Array; } /** * Balance defines an account address and balance pair used in the bank module's * genesis state. */ export interface BalanceSDKType { address: string; coins: CoinSDKType[]; } export declare const GenesisState: { typeUrl: "/cosmos.bank.v1beta1.GenesisState"; encode(message: GenesisState, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): GenesisState; fromJSON(object: any): GenesisState; toJSON(message: GenesisState): JsonSafe; fromPartial(object: Partial): GenesisState; fromProtoMsg(message: GenesisStateProtoMsg): GenesisState; toProto(message: GenesisState): Uint8Array; toProtoMsg(message: GenesisState): GenesisStateProtoMsg; }; export declare const Balance: { typeUrl: "/cosmos.bank.v1beta1.Balance"; encode(message: Balance, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Balance; fromJSON(object: any): Balance; toJSON(message: Balance): JsonSafe; fromPartial(object: Partial): Balance; fromProtoMsg(message: BalanceProtoMsg): Balance; toProto(message: Balance): Uint8Array; toProtoMsg(message: Balance): BalanceProtoMsg; }; //# sourceMappingURL=genesis.d.ts.map