// package: routerprotocol.routerchain.attestation
// file: routerprotocol/routerchain/attestation/attestation.proto

import * as jspb from "google-protobuf";
import * as google_protobuf_any_pb from "google-protobuf/google/protobuf/any_pb";

export class Attestation extends jspb.Message {
  getObserved(): boolean;
  setObserved(value: boolean): void;

  clearVotesList(): void;
  getVotesList(): Array<string>;
  setVotesList(value: Array<string>): void;
  addVotes(value: string, index?: number): string;

  getHeight(): number;
  setHeight(value: number): void;

  hasClaim(): boolean;
  clearClaim(): void;
  getClaim(): google_protobuf_any_pb.Any | undefined;
  setClaim(value?: google_protobuf_any_pb.Any): void;

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

export namespace Attestation {
  export type AsObject = {
    observed: boolean,
    votesList: Array<string>,
    height: number,
    claim?: google_protobuf_any_pb.Any.AsObject,
  }
}

