// package: routerprotocol.routerchain.metastore
// file: routerprotocol/routerchain/metastore/events.proto

import * as jspb from "google-protobuf";
import * as routerprotocol_routerchain_metastore_meta_tx_status_pb from "../../../routerprotocol/routerchain/metastore/meta_tx_status_pb";
import * as routerprotocol_routerchain_multichain_chain_type_pb from "../../../routerprotocol/routerchain/multichain/chain_type_pb";
import * as cosmos_base_v1beta1_coin_pb from "../../../cosmos/base/v1beta1/coin_pb";
import * as gogoproto_gogo_pb from "../../../gogoproto/gogo_pb";

export class EventMetadataRequestCreated extends jspb.Message {
  getAttestationId(): Uint8Array | string;
  getAttestationId_asU8(): Uint8Array;
  getAttestationId_asB64(): string;
  setAttestationId(value: Uint8Array | string): void;

  getChainid(): string;
  setChainid(value: string): void;

  getEventnonce(): number;
  setEventnonce(value: number): void;

  getBlockheight(): number;
  setBlockheight(value: number): void;

  getDaapaddress(): string;
  setDaapaddress(value: string): void;

  getFeepayer(): string;
  setFeepayer(value: string): void;

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

export namespace EventMetadataRequestCreated {
  export type AsObject = {
    attestationId: Uint8Array | string,
    chainid: string,
    eventnonce: number,
    blockheight: number,
    daapaddress: string,
    feepayer: string,
  }
}

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

  getDaapaddress(): string;
  setDaapaddress(value: string): void;

  getFeepayer(): string;
  setFeepayer(value: string): void;

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

export namespace EventMetaInfoCreated {
  export type AsObject = {
    chainid: string,
    daapaddress: string,
    feepayer: string,
  }
}

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

  getDaapaddress(): string;
  setDaapaddress(value: string): void;

  getFeepayer(): string;
  setFeepayer(value: string): void;

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

export namespace EventFeePayerApproved {
  export type AsObject = {
    chainid: string,
    daapaddress: string,
    feepayer: string,
  }
}

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

  getDaapaddress(): string;
  setDaapaddress(value: string): void;

  getFeepayer(): string;
  setFeepayer(value: string): void;

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

export namespace EventFeePayerRevoked {
  export type AsObject = {
    chainid: string,
    daapaddress: string,
    feepayer: string,
  }
}

export class EventBurnNativeTokens extends jspb.Message {
  getSender(): string;
  setSender(value: string): void;

  getAmount(): string;
  setAmount(value: string): void;

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

export namespace EventBurnNativeTokens {
  export type AsObject = {
    sender: string,
    amount: string,
  }
}

