// package: wechaty.puppet
// file: wechaty/puppet/tag.proto

import * as jspb from "google-protobuf";
import * as google_protobuf_wrappers_pb from "google-protobuf/google/protobuf/wrappers_pb";

export class TagContactAddRequest extends jspb.Message {
  getId(): string;
  setId(value: string): void;

  getContactId(): string;
  setContactId(value: string): void;

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

export namespace TagContactAddRequest {
  export type AsObject = {
    id: string,
    contactId: string,
  }
}

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

export namespace TagContactAddResponse {
  export type AsObject = {
  }
}

export class TagContactRemoveRequest extends jspb.Message {
  getId(): string;
  setId(value: string): void;

  getContactId(): string;
  setContactId(value: string): void;

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

export namespace TagContactRemoveRequest {
  export type AsObject = {
    id: string,
    contactId: string,
  }
}

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

export namespace TagContactRemoveResponse {
  export type AsObject = {
  }
}

export class TagContactDeleteRequest extends jspb.Message {
  getId(): string;
  setId(value: string): void;

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

export namespace TagContactDeleteRequest {
  export type AsObject = {
    id: string,
  }
}

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

export namespace TagContactDeleteResponse {
  export type AsObject = {
  }
}

export class TagContactListRequest extends jspb.Message {
  hasContactIdStringValueDeprecated(): boolean;
  clearContactIdStringValueDeprecated(): void;
  getContactIdStringValueDeprecated(): google_protobuf_wrappers_pb.StringValue | undefined;
  setContactIdStringValueDeprecated(value?: google_protobuf_wrappers_pb.StringValue): void;

  getContactId(): string;
  setContactId(value: string): void;

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

export namespace TagContactListRequest {
  export type AsObject = {
    contactIdStringValueDeprecated?: google_protobuf_wrappers_pb.StringValue.AsObject,
    contactId: string,
  }
}

export class TagContactListResponse extends jspb.Message {
  clearIdsList(): void;
  getIdsList(): Array<string>;
  setIdsList(value: Array<string>): void;
  addIds(value: string, index?: number): string;

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

export namespace TagContactListResponse {
  export type AsObject = {
    idsList: Array<string>,
  }
}

