// package: bet.beteran.c2se.member_class
// file: c2se/member_class.proto

import * as jspb from "google-protobuf";
import * as protobuf_rpc_pb from "../protobuf/rpc_pb";
import * as protobuf_pagination_pb from "../protobuf/pagination_pb";
import * as models_member_class_pb from "../models/member_class_pb";

export class CreateMemberClassRequest extends jspb.Message {
  hasParentId(): boolean;
  clearParentId(): void;
  getParentId(): string;
  setParentId(value: string): void;

  getName(): string;
  setName(value: string): void;

  getShow(): boolean;
  setShow(value: boolean): void;

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

export namespace CreateMemberClassRequest {
  export type AsObject = {
    parentId: string,
    name: string,
    show: boolean,
  }
}

export class CreateMemberClassResponse extends jspb.Message {
  hasError(): boolean;
  clearError(): void;
  getError(): protobuf_rpc_pb.Error | undefined;
  setError(value?: protobuf_rpc_pb.Error): void;

  hasResult(): boolean;
  clearResult(): void;
  getResult(): CreateMemberClassResponse.Result | undefined;
  setResult(value?: CreateMemberClassResponse.Result): void;

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

export namespace CreateMemberClassResponse {
  export type AsObject = {
    error?: protobuf_rpc_pb.Error.AsObject,
    result?: CreateMemberClassResponse.Result.AsObject,
  }

  export class Result extends jspb.Message {
    hasMemberClass(): boolean;
    clearMemberClass(): void;
    getMemberClass(): models_member_class_pb.MemberClass | undefined;
    setMemberClass(value?: models_member_class_pb.MemberClass): void;

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

  export namespace Result {
    export type AsObject = {
      memberClass?: models_member_class_pb.MemberClass.AsObject,
    }
  }
}

export class ListMemberClassesRequest extends jspb.Message {
  hasPagination(): boolean;
  clearPagination(): void;
  getPagination(): protobuf_pagination_pb.Pagination | undefined;
  setPagination(value?: protobuf_pagination_pb.Pagination): void;

  clearSortsList(): void;
  getSortsList(): Array<protobuf_pagination_pb.Sort>;
  setSortsList(value: Array<protobuf_pagination_pb.Sort>): void;
  addSorts(value?: protobuf_pagination_pb.Sort, index?: number): protobuf_pagination_pb.Sort;

  hasSearch(): boolean;
  clearSearch(): void;
  getSearch(): ListMemberClassesRequest.Search | undefined;
  setSearch(value?: ListMemberClassesRequest.Search): void;

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

export namespace ListMemberClassesRequest {
  export type AsObject = {
    pagination?: protobuf_pagination_pb.Pagination.AsObject,
    sortsList: Array<protobuf_pagination_pb.Sort.AsObject>,
    search?: ListMemberClassesRequest.Search.AsObject,
  }

  export class Search extends jspb.Message {
    hasNameLike(): boolean;
    clearNameLike(): void;
    getNameLike(): string;
    setNameLike(value: string): void;

    hasShow(): boolean;
    clearShow(): void;
    getShow(): boolean;
    setShow(value: boolean): void;

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

  export namespace Search {
    export type AsObject = {
      nameLike: string,
      show: boolean,
    }
  }
}

export class ListMemberClassesResponse extends jspb.Message {
  hasError(): boolean;
  clearError(): void;
  getError(): protobuf_rpc_pb.Error | undefined;
  setError(value?: protobuf_rpc_pb.Error): void;

  hasResult(): boolean;
  clearResult(): void;
  getResult(): ListMemberClassesResponse.Result | undefined;
  setResult(value?: ListMemberClassesResponse.Result): void;

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

export namespace ListMemberClassesResponse {
  export type AsObject = {
    error?: protobuf_rpc_pb.Error.AsObject,
    result?: ListMemberClassesResponse.Result.AsObject,
  }

  export class Result extends jspb.Message {
    clearMemberClassesList(): void;
    getMemberClassesList(): Array<models_member_class_pb.MemberClass>;
    setMemberClassesList(value: Array<models_member_class_pb.MemberClass>): void;
    addMemberClasses(value?: models_member_class_pb.MemberClass, index?: number): models_member_class_pb.MemberClass;

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

  export namespace Result {
    export type AsObject = {
      memberClassesList: Array<models_member_class_pb.MemberClass.AsObject>,
    }
  }
}

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

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

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

export class GetMemberClassResponse extends jspb.Message {
  hasError(): boolean;
  clearError(): void;
  getError(): protobuf_rpc_pb.Error | undefined;
  setError(value?: protobuf_rpc_pb.Error): void;

  hasResult(): boolean;
  clearResult(): void;
  getResult(): GetMemberClassResponse.Result | undefined;
  setResult(value?: GetMemberClassResponse.Result): void;

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

export namespace GetMemberClassResponse {
  export type AsObject = {
    error?: protobuf_rpc_pb.Error.AsObject,
    result?: GetMemberClassResponse.Result.AsObject,
  }

  export class Result extends jspb.Message {
    hasMemberClass(): boolean;
    clearMemberClass(): void;
    getMemberClass(): models_member_class_pb.MemberClass | undefined;
    setMemberClass(value?: models_member_class_pb.MemberClass): void;

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

  export namespace Result {
    export type AsObject = {
      memberClass?: models_member_class_pb.MemberClass.AsObject,
    }
  }
}

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

  hasParentId(): boolean;
  clearParentId(): void;
  getParentId(): string;
  setParentId(value: string): void;

  getName(): string;
  setName(value: string): void;

  getShow(): boolean;
  setShow(value: boolean): void;

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

export namespace UpdateMemberClassRequest {
  export type AsObject = {
    id: string,
    parentId: string,
    name: string,
    show: boolean,
  }
}

export class UpdateMemberClassResponse extends jspb.Message {
  hasError(): boolean;
  clearError(): void;
  getError(): protobuf_rpc_pb.Error | undefined;
  setError(value?: protobuf_rpc_pb.Error): void;

  hasResult(): boolean;
  clearResult(): void;
  getResult(): UpdateMemberClassResponse.Result | undefined;
  setResult(value?: UpdateMemberClassResponse.Result): void;

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

export namespace UpdateMemberClassResponse {
  export type AsObject = {
    error?: protobuf_rpc_pb.Error.AsObject,
    result?: UpdateMemberClassResponse.Result.AsObject,
  }

  export class Result extends jspb.Message {
    hasMemberClass(): boolean;
    clearMemberClass(): void;
    getMemberClass(): models_member_class_pb.MemberClass | undefined;
    setMemberClass(value?: models_member_class_pb.MemberClass): void;

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

  export namespace Result {
    export type AsObject = {
      memberClass?: models_member_class_pb.MemberClass.AsObject,
    }
  }
}

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

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

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

export class DeleteMemberClassResponse extends jspb.Message {
  hasError(): boolean;
  clearError(): void;
  getError(): protobuf_rpc_pb.Error | undefined;
  setError(value?: protobuf_rpc_pb.Error): void;

  hasResult(): boolean;
  clearResult(): void;
  getResult(): DeleteMemberClassResponse.Result | undefined;
  setResult(value?: DeleteMemberClassResponse.Result): void;

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

export namespace DeleteMemberClassResponse {
  export type AsObject = {
    error?: protobuf_rpc_pb.Error.AsObject,
    result?: DeleteMemberClassResponse.Result.AsObject,
  }

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

  export namespace Result {
    export type AsObject = {
    }
  }
}

