// package: bet.beteran.c2se.common.identity
// file: c2se/common/identity.proto

import * as jspb from 'google-protobuf';
import * as protobuf_rpc_error_pb from '../../protobuf/rpc/error_pb';

export class CheckUsernameForDuplicationRequest extends jspb.Message {
  getUsername(): string;
  setUsername(value: string): void;

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

export namespace CheckUsernameForDuplicationRequest {
  export type AsObject = {
    username: string;
  };
}

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

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

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

export namespace CheckUsernameForDuplicationResponse {
  export type AsObject = {
    error?: protobuf_rpc_error_pb.Error.AsObject;
    result?: CheckUsernameForDuplicationResponse.Result.AsObject;
  };

  export class Result extends jspb.Message {
    getDuplicated(): boolean;
    setDuplicated(value: boolean): 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 = {
      duplicated: boolean;
    };
  }
}

export class CheckNicknameForDuplicationRequest extends jspb.Message {
  getNickname(): string;
  setNickname(value: string): void;

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

export namespace CheckNicknameForDuplicationRequest {
  export type AsObject = {
    nickname: string;
  };
}

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

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

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

export namespace CheckNicknameForDuplicationResponse {
  export type AsObject = {
    error?: protobuf_rpc_error_pb.Error.AsObject;
    result?: CheckNicknameForDuplicationResponse.Result.AsObject;
  };

  export class Result extends jspb.Message {
    getDuplicated(): boolean;
    setDuplicated(value: boolean): 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 = {
      duplicated: boolean;
    };
  }
}

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

export namespace CaptchaRequest {
  export type AsObject = {};
}

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

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

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

export namespace CaptchaResponse {
  export type AsObject = {
    error?: protobuf_rpc_error_pb.Error.AsObject;
    result?: CaptchaResponse.Result.AsObject;
  };

  export class Result extends jspb.Message {
    getSecurityCodeHash(): string;
    setSecurityCodeHash(value: string): void;

    getImage(): string;
    setImage(value: string): 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 = {
      securityCodeHash: string;
      image: string;
    };
  }
}
