// package: routerprotocol.routerchain.voyager
// file: routerprotocol/routerchain/voyager/genesis.proto

import * as jspb from "google-protobuf";
import * as gogoproto_gogo_pb from "../../../gogoproto/gogo_pb";
import * as routerprotocol_routerchain_voyager_params_pb from "../../../routerprotocol/routerchain/voyager/params_pb";
import * as routerprotocol_routerchain_voyager_fund_deposit_request_pb from "../../../routerprotocol/routerchain/voyager/fund_deposit_request_pb";
import * as routerprotocol_routerchain_voyager_funds_paid_request_pb from "../../../routerprotocol/routerchain/voyager/funds_paid_request_pb";
import * as routerprotocol_routerchain_voyager_deposit_update_info_request_pb from "../../../routerprotocol/routerchain/voyager/deposit_update_info_request_pb";

export class GenesisState extends jspb.Message {
  hasParams(): boolean;
  clearParams(): void;
  getParams(): routerprotocol_routerchain_voyager_params_pb.Params | undefined;
  setParams(value?: routerprotocol_routerchain_voyager_params_pb.Params): void;

  clearFunddepositrequestlistList(): void;
  getFunddepositrequestlistList(): Array<routerprotocol_routerchain_voyager_fund_deposit_request_pb.FundDepositRequest>;
  setFunddepositrequestlistList(value: Array<routerprotocol_routerchain_voyager_fund_deposit_request_pb.FundDepositRequest>): void;
  addFunddepositrequestlist(value?: routerprotocol_routerchain_voyager_fund_deposit_request_pb.FundDepositRequest, index?: number): routerprotocol_routerchain_voyager_fund_deposit_request_pb.FundDepositRequest;

  clearFundspaidrequestlistList(): void;
  getFundspaidrequestlistList(): Array<routerprotocol_routerchain_voyager_funds_paid_request_pb.FundsPaidRequest>;
  setFundspaidrequestlistList(value: Array<routerprotocol_routerchain_voyager_funds_paid_request_pb.FundsPaidRequest>): void;
  addFundspaidrequestlist(value?: routerprotocol_routerchain_voyager_funds_paid_request_pb.FundsPaidRequest, index?: number): routerprotocol_routerchain_voyager_funds_paid_request_pb.FundsPaidRequest;

  clearDepositupdateinforequestlistList(): void;
  getDepositupdateinforequestlistList(): Array<routerprotocol_routerchain_voyager_deposit_update_info_request_pb.DepositUpdateInfoRequest>;
  setDepositupdateinforequestlistList(value: Array<routerprotocol_routerchain_voyager_deposit_update_info_request_pb.DepositUpdateInfoRequest>): void;
  addDepositupdateinforequestlist(value?: routerprotocol_routerchain_voyager_deposit_update_info_request_pb.DepositUpdateInfoRequest, index?: number): routerprotocol_routerchain_voyager_deposit_update_info_request_pb.DepositUpdateInfoRequest;

  serializeBinary(): Uint8Array;
  toObject(includeInstance?: boolean): GenesisState.AsObject;
  static toObject(includeInstance: boolean, msg: GenesisState): GenesisState.AsObject;
  static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
  static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
  static serializeBinaryToWriter(message: GenesisState, writer: jspb.BinaryWriter): void;
  static deserializeBinary(bytes: Uint8Array): GenesisState;
  static deserializeBinaryFromReader(message: GenesisState, reader: jspb.BinaryReader): GenesisState;
}

export namespace GenesisState {
  export type AsObject = {
    params?: routerprotocol_routerchain_voyager_params_pb.Params.AsObject,
    funddepositrequestlistList: Array<routerprotocol_routerchain_voyager_fund_deposit_request_pb.FundDepositRequest.AsObject>,
    fundspaidrequestlistList: Array<routerprotocol_routerchain_voyager_funds_paid_request_pb.FundsPaidRequest.AsObject>,
    depositupdateinforequestlistList: Array<routerprotocol_routerchain_voyager_deposit_update_info_request_pb.DepositUpdateInfoRequest.AsObject>,
  }
}

