// package: routerprotocol.routerchain.multichain
// file: routerprotocol/routerchain/multichain/ibc_relayer_config.proto

import * as jspb from "google-protobuf";
import * as gogoproto_gogo_pb from "../../../gogoproto/gogo_pb";

export class IbcRelayerConfig extends jspb.Message {
  getChainid(): string;
  setChainid(value: string): void;

  getRelayername(): string;
  setRelayername(value: string): void;

  getChannel(): string;
  setChannel(value: string): void;

  getRelayerenabled(): boolean;
  setRelayerenabled(value: boolean): void;

  getConnectiontype(): IbcRelayerConnectionTypeMap[keyof IbcRelayerConnectionTypeMap];
  setConnectiontype(value: IbcRelayerConnectionTypeMap[keyof IbcRelayerConnectionTypeMap]): void;

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

export namespace IbcRelayerConfig {
  export type AsObject = {
    chainid: string,
    relayername: string,
    channel: string,
    relayerenabled: boolean,
    connectiontype: IbcRelayerConnectionTypeMap[keyof IbcRelayerConnectionTypeMap],
  }
}

export interface IbcRelayerConnectionTypeMap {
  GATEWAY_ENDPOINT: 0;
  VOYAGER_ENDPOINT: 1;
}

export const IbcRelayerConnectionType: IbcRelayerConnectionTypeMap;

