import { BinaryReader, BinaryWriter } from "../../../../binary.js"; import { DeepPartial } from "../../../../helpers.js"; import { Params, ParamsAmino, Preinstall, PreinstallAmino, State, StateAmino } from "./evm.js"; //#region src/cosmos/evm/vm/v1/genesis.d.ts /** * GenesisState defines the evm module's genesis state. * @name GenesisState * @package cosmos.evm.vm.v1 * @see proto type: cosmos.evm.vm.v1.GenesisState */ interface GenesisState { /** * accounts is an array containing the ethereum genesis accounts. */ accounts: GenesisAccount[]; /** * params defines all the parameters of the module. */ params: Params; /** * preinstalls defines a set of predefined contracts */ preinstalls: Preinstall[]; } interface GenesisStateProtoMsg { typeUrl: "/cosmos.evm.vm.v1.GenesisState"; value: Uint8Array; } /** * GenesisState defines the evm module's genesis state. * @name GenesisStateAmino * @package cosmos.evm.vm.v1 * @see proto type: cosmos.evm.vm.v1.GenesisState */ interface GenesisStateAmino { /** * accounts is an array containing the ethereum genesis accounts. */ accounts: GenesisAccountAmino[]; /** * params defines all the parameters of the module. */ params: ParamsAmino; /** * preinstalls defines a set of predefined contracts */ preinstalls: PreinstallAmino[]; } interface GenesisStateAminoMsg { type: "cosmos-sdk/GenesisState"; value: GenesisStateAmino; } /** * GenesisAccount defines an account to be initialized in the genesis state. * Its main difference between with Geth's GenesisAccount is that it uses a * custom storage type and that it doesn't contain the private key field. * @name GenesisAccount * @package cosmos.evm.vm.v1 * @see proto type: cosmos.evm.vm.v1.GenesisAccount */ interface GenesisAccount { /** * address defines an ethereum hex formated address of an account */ address: string; /** * code defines the hex bytes of the account code. */ code: string; /** * storage defines the set of state key values for the account. */ storage: State[]; } interface GenesisAccountProtoMsg { typeUrl: "/cosmos.evm.vm.v1.GenesisAccount"; value: Uint8Array; } /** * GenesisAccount defines an account to be initialized in the genesis state. * Its main difference between with Geth's GenesisAccount is that it uses a * custom storage type and that it doesn't contain the private key field. * @name GenesisAccountAmino * @package cosmos.evm.vm.v1 * @see proto type: cosmos.evm.vm.v1.GenesisAccount */ interface GenesisAccountAmino { /** * address defines an ethereum hex formated address of an account */ address: string; /** * code defines the hex bytes of the account code. */ code: string; /** * storage defines the set of state key values for the account. */ storage: StateAmino[]; } interface GenesisAccountAminoMsg { type: "cosmos-sdk/GenesisAccount"; value: GenesisAccountAmino; } /** * GenesisState defines the evm module's genesis state. * @name GenesisState * @package cosmos.evm.vm.v1 * @see proto type: cosmos.evm.vm.v1.GenesisState */ declare const GenesisState: { typeUrl: string; aminoType: string; is(o: any): o is GenesisState; isAmino(o: any): o is GenesisStateAmino; encode(message: GenesisState, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): GenesisState; fromPartial(object: DeepPartial): GenesisState; fromAmino(object: GenesisStateAmino): GenesisState; toAmino(message: GenesisState): GenesisStateAmino; fromAminoMsg(object: GenesisStateAminoMsg): GenesisState; toAminoMsg(message: GenesisState): GenesisStateAminoMsg; fromProtoMsg(message: GenesisStateProtoMsg): GenesisState; toProto(message: GenesisState): Uint8Array; toProtoMsg(message: GenesisState): GenesisStateProtoMsg; registerTypeUrl(): void; }; /** * GenesisAccount defines an account to be initialized in the genesis state. * Its main difference between with Geth's GenesisAccount is that it uses a * custom storage type and that it doesn't contain the private key field. * @name GenesisAccount * @package cosmos.evm.vm.v1 * @see proto type: cosmos.evm.vm.v1.GenesisAccount */ declare const GenesisAccount: { typeUrl: string; aminoType: string; is(o: any): o is GenesisAccount; isAmino(o: any): o is GenesisAccountAmino; encode(message: GenesisAccount, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): GenesisAccount; fromPartial(object: DeepPartial): GenesisAccount; fromAmino(object: GenesisAccountAmino): GenesisAccount; toAmino(message: GenesisAccount): GenesisAccountAmino; fromAminoMsg(object: GenesisAccountAminoMsg): GenesisAccount; toAminoMsg(message: GenesisAccount): GenesisAccountAminoMsg; fromProtoMsg(message: GenesisAccountProtoMsg): GenesisAccount; toProto(message: GenesisAccount): Uint8Array; toProtoMsg(message: GenesisAccount): GenesisAccountProtoMsg; registerTypeUrl(): void; }; //#endregion export { GenesisAccount, GenesisAccountAmino, GenesisAccountAminoMsg, GenesisAccountProtoMsg, GenesisState, GenesisStateAmino, GenesisStateAminoMsg, GenesisStateProtoMsg };