{"version":3,"file":"ondewo-nlu-client-angular.mjs","sources":["../../api/google/api/http.pb.ts","../../api/google/rpc/status.pb.ts","../../api/google/type/latlng.pb.ts","../../api/ondewo/nlu/common.pb.ts","../../api/ondewo/nlu/project-role.pb.ts","../../api/ondewo/nlu/ccai-project.pb.ts","../../api/ondewo/nlu/context.pb.ts","../../api/ondewo/nlu/intent.pb.ts","../../api/ondewo/nlu/user.pb.ts","../../api/ondewo/nlu/entity-type.pb.ts","../../api/ondewo/nlu/llm-evaluation.pb.ts","../../api/ondewo/nlu/session.pb.ts","../../api/ondewo/nlu/agent.pb.ts","../../api/ondewo/nlu/agent.pbconf.ts","../../api/ondewo/nlu/operation-metadata.pb.ts","../../api/ondewo/nlu/operations.pb.ts","../../api/ondewo/nlu/agent.pbsc.ts","../../api/ondewo/nlu/aiservices.pb.ts","../../api/ondewo/nlu/aiservices.pbconf.ts","../../api/ondewo/nlu/aiservices.pbsc.ts","../../api/ondewo/nlu/ccai-project.pbconf.ts","../../api/ondewo/nlu/ccai-project.pbsc.ts","../../api/ondewo/nlu/context.pbconf.ts","../../api/ondewo/nlu/context.pbsc.ts","../../api/ondewo/nlu/entity-type.pbconf.ts","../../api/ondewo/nlu/entity-type.pbsc.ts","../../api/ondewo/nlu/intent.pbconf.ts","../../api/ondewo/nlu/intent.pbsc.ts","../../api/ondewo/nlu/llm-evaluation.pbconf.ts","../../api/ondewo/nlu/llm-evaluation.pbsc.ts","../../api/ondewo/nlu/operations.pbconf.ts","../../api/ondewo/nlu/operations.pbsc.ts","../../api/ondewo/nlu/project-role.pbconf.ts","../../api/ondewo/nlu/project-role.pbsc.ts","../../api/ondewo/nlu/project-statistics.pb.ts","../../api/ondewo/nlu/project-statistics.pbconf.ts","../../api/ondewo/nlu/project-statistics.pbsc.ts","../../api/ondewo/nlu/rag.pb.ts","../../api/ondewo/nlu/rag.pbconf.ts","../../api/ondewo/nlu/rag.pbsc.ts","../../api/ondewo/nlu/server-statistics.pb.ts","../../api/ondewo/nlu/server-statistics.pbconf.ts","../../api/ondewo/nlu/server-statistics.pbsc.ts","../../api/ondewo/nlu/session.pbconf.ts","../../api/ondewo/nlu/session.pbsc.ts","../../api/ondewo/nlu/user.pbconf.ts","../../api/ondewo/nlu/user.pbsc.ts","../../api/ondewo/nlu/utility.pb.ts","../../api/ondewo/nlu/utility.pbconf.ts","../../api/ondewo/nlu/utility.pbsc.ts","../../api/ondewo/nlu/webhook.pb.ts","../../api/ondewo/nlu/webhook.pbconf.ts","../../api/ondewo/nlu/webhook.pbsc.ts","../../api/ondewo/qa/qa.pb.ts","../../api/ondewo/qa/qa.pbconf.ts","../../api/ondewo/qa/qa.pbsc.ts","../../auth/token-provider.ts","../../auth/keycloak-token-provider.ts","../../auth/resolve-token.ts","../../auth/auth-http.interceptor.ts","../../auth/auth-grpc.interceptor.ts","../../auth/auth.providers.ts","../../auth/index.ts","../../ondewo-nlu-client-angular.ts"],"sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\n\n/**\n * Message implementation for google.api.Http\n */\nexport class Http implements GrpcMessage {\n  static id = 'google.api.Http';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Http();\n    Http.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Http) {\n    _instance.rules = _instance.rules || [];\n    _instance.fullyDecodeReservedExpansion =\n      _instance.fullyDecodeReservedExpansion || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(_instance: Http, _reader: BinaryReader) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new HttpRule();\n          _reader.readMessage(\n            messageInitializer1,\n            HttpRule.deserializeBinaryFromReader\n          );\n          (_instance.rules = _instance.rules || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.fullyDecodeReservedExpansion = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Http.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Http, _writer: BinaryWriter) {\n    if (_instance.rules && _instance.rules.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.rules as any,\n        HttpRule.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fullyDecodeReservedExpansion) {\n      _writer.writeBool(2, _instance.fullyDecodeReservedExpansion);\n    }\n  }\n\n  private _rules?: HttpRule[];\n  private _fullyDecodeReservedExpansion: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Http to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Http.AsObject>) {\n    _value = _value || {};\n    this.rules = (_value.rules || []).map(m => new HttpRule(m));\n    this.fullyDecodeReservedExpansion = _value.fullyDecodeReservedExpansion;\n    Http.refineValues(this);\n  }\n  get rules(): HttpRule[] | undefined {\n    return this._rules;\n  }\n  set rules(value: HttpRule[] | undefined) {\n    this._rules = value;\n  }\n  get fullyDecodeReservedExpansion(): boolean {\n    return this._fullyDecodeReservedExpansion;\n  }\n  set fullyDecodeReservedExpansion(value: boolean) {\n    this._fullyDecodeReservedExpansion = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Http.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Http.AsObject {\n    return {\n      rules: (this.rules || []).map(m => m.toObject()),\n      fullyDecodeReservedExpansion: this.fullyDecodeReservedExpansion\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Http.AsProtobufJSON {\n    return {\n      rules: (this.rules || []).map(m => m.toProtobufJSON(options)),\n      fullyDecodeReservedExpansion: this.fullyDecodeReservedExpansion\n    };\n  }\n}\nexport module Http {\n  /**\n   * Standard JavaScript object representation for Http\n   */\n  export interface AsObject {\n    rules?: HttpRule.AsObject[];\n    fullyDecodeReservedExpansion: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for Http\n   */\n  export interface AsProtobufJSON {\n    rules: HttpRule.AsProtobufJSON[] | null;\n    fullyDecodeReservedExpansion: boolean;\n  }\n}\n\n/**\n * Message implementation for google.api.HttpRule\n */\nexport class HttpRule implements GrpcMessage {\n  static id = 'google.api.HttpRule';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new HttpRule();\n    HttpRule.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: HttpRule) {\n    _instance.selector = _instance.selector || '';\n\n    _instance.body = _instance.body || '';\n    _instance.responseBody = _instance.responseBody || '';\n    _instance.additionalBindings = _instance.additionalBindings || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: HttpRule,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.selector = _reader.readString();\n          break;\n        case 2:\n          _instance.get = _reader.readString();\n          break;\n        case 3:\n          _instance.put = _reader.readString();\n          break;\n        case 4:\n          _instance.post = _reader.readString();\n          break;\n        case 5:\n          _instance.delete = _reader.readString();\n          break;\n        case 6:\n          _instance.patch = _reader.readString();\n          break;\n        case 8:\n          _instance.custom = new CustomHttpPattern();\n          _reader.readMessage(\n            _instance.custom,\n            CustomHttpPattern.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.body = _reader.readString();\n          break;\n        case 12:\n          _instance.responseBody = _reader.readString();\n          break;\n        case 11:\n          const messageInitializer11 = new HttpRule();\n          _reader.readMessage(\n            messageInitializer11,\n            HttpRule.deserializeBinaryFromReader\n          );\n          (_instance.additionalBindings =\n            _instance.additionalBindings || []).push(messageInitializer11);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    HttpRule.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: HttpRule, _writer: BinaryWriter) {\n    if (_instance.selector) {\n      _writer.writeString(1, _instance.selector);\n    }\n    if (_instance.get || _instance.get === '') {\n      _writer.writeString(2, _instance.get);\n    }\n    if (_instance.put || _instance.put === '') {\n      _writer.writeString(3, _instance.put);\n    }\n    if (_instance.post || _instance.post === '') {\n      _writer.writeString(4, _instance.post);\n    }\n    if (_instance.delete || _instance.delete === '') {\n      _writer.writeString(5, _instance.delete);\n    }\n    if (_instance.patch || _instance.patch === '') {\n      _writer.writeString(6, _instance.patch);\n    }\n    if (_instance.custom) {\n      _writer.writeMessage(\n        8,\n        _instance.custom as any,\n        CustomHttpPattern.serializeBinaryToWriter\n      );\n    }\n    if (_instance.body) {\n      _writer.writeString(7, _instance.body);\n    }\n    if (_instance.responseBody) {\n      _writer.writeString(12, _instance.responseBody);\n    }\n    if (_instance.additionalBindings && _instance.additionalBindings.length) {\n      _writer.writeRepeatedMessage(\n        11,\n        _instance.additionalBindings as any,\n        HttpRule.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _selector: string;\n  private _get: string;\n  private _put: string;\n  private _post: string;\n  private _delete: string;\n  private _patch: string;\n  private _custom?: CustomHttpPattern;\n  private _body: string;\n  private _responseBody: string;\n  private _additionalBindings?: HttpRule[];\n\n  private _pattern: HttpRule.PatternCase = HttpRule.PatternCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of HttpRule to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<HttpRule.AsObject>) {\n    _value = _value || {};\n    this.selector = _value.selector;\n    this.get = _value.get;\n    this.put = _value.put;\n    this.post = _value.post;\n    this.delete = _value.delete;\n    this.patch = _value.patch;\n    this.custom = _value.custom\n      ? new CustomHttpPattern(_value.custom)\n      : undefined;\n    this.body = _value.body;\n    this.responseBody = _value.responseBody;\n    this.additionalBindings = (_value.additionalBindings || []).map(\n      m => new HttpRule(m)\n    );\n    HttpRule.refineValues(this);\n  }\n  get selector(): string {\n    return this._selector;\n  }\n  set selector(value: string) {\n    this._selector = value;\n  }\n  get get(): string {\n    return this._get;\n  }\n  set get(value: string) {\n    if (value !== undefined && value !== null) {\n      this._put = this._post = this._delete = this._patch = this._custom = undefined;\n      this._pattern = HttpRule.PatternCase.get;\n    }\n    this._get = value;\n  }\n  get put(): string {\n    return this._put;\n  }\n  set put(value: string) {\n    if (value !== undefined && value !== null) {\n      this._get = this._post = this._delete = this._patch = this._custom = undefined;\n      this._pattern = HttpRule.PatternCase.put;\n    }\n    this._put = value;\n  }\n  get post(): string {\n    return this._post;\n  }\n  set post(value: string) {\n    if (value !== undefined && value !== null) {\n      this._get = this._put = this._delete = this._patch = this._custom = undefined;\n      this._pattern = HttpRule.PatternCase.post;\n    }\n    this._post = value;\n  }\n  get delete(): string {\n    return this._delete;\n  }\n  set delete(value: string) {\n    if (value !== undefined && value !== null) {\n      this._get = this._put = this._post = this._patch = this._custom = undefined;\n      this._pattern = HttpRule.PatternCase.delete;\n    }\n    this._delete = value;\n  }\n  get patch(): string {\n    return this._patch;\n  }\n  set patch(value: string) {\n    if (value !== undefined && value !== null) {\n      this._get = this._put = this._post = this._delete = this._custom = undefined;\n      this._pattern = HttpRule.PatternCase.patch;\n    }\n    this._patch = value;\n  }\n  get custom(): CustomHttpPattern | undefined {\n    return this._custom;\n  }\n  set custom(value: CustomHttpPattern | undefined) {\n    if (value !== undefined && value !== null) {\n      this._get = this._put = this._post = this._delete = this._patch = undefined;\n      this._pattern = HttpRule.PatternCase.custom;\n    }\n    this._custom = value;\n  }\n  get body(): string {\n    return this._body;\n  }\n  set body(value: string) {\n    this._body = value;\n  }\n  get responseBody(): string {\n    return this._responseBody;\n  }\n  set responseBody(value: string) {\n    this._responseBody = value;\n  }\n  get additionalBindings(): HttpRule[] | undefined {\n    return this._additionalBindings;\n  }\n  set additionalBindings(value: HttpRule[] | undefined) {\n    this._additionalBindings = value;\n  }\n  get pattern() {\n    return this._pattern;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    HttpRule.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): HttpRule.AsObject {\n    return {\n      selector: this.selector,\n      get: this.get,\n      put: this.put,\n      post: this.post,\n      delete: this.delete,\n      patch: this.patch,\n      custom: this.custom ? this.custom.toObject() : undefined,\n      body: this.body,\n      responseBody: this.responseBody,\n      additionalBindings: (this.additionalBindings || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): HttpRule.AsProtobufJSON {\n    return {\n      selector: this.selector,\n      get: this.get === null || this.get === undefined ? null : this.get,\n      put: this.put === null || this.put === undefined ? null : this.put,\n      post: this.post === null || this.post === undefined ? null : this.post,\n      delete:\n        this.delete === null || this.delete === undefined ? null : this.delete,\n      patch:\n        this.patch === null || this.patch === undefined ? null : this.patch,\n      custom: this.custom ? this.custom.toProtobufJSON(options) : null,\n      body: this.body,\n      responseBody: this.responseBody,\n      additionalBindings: (this.additionalBindings || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module HttpRule {\n  /**\n   * Standard JavaScript object representation for HttpRule\n   */\n  export interface AsObject {\n    selector: string;\n    get: string;\n    put: string;\n    post: string;\n    delete: string;\n    patch: string;\n    custom?: CustomHttpPattern.AsObject;\n    body: string;\n    responseBody: string;\n    additionalBindings?: HttpRule.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for HttpRule\n   */\n  export interface AsProtobufJSON {\n    selector: string;\n    get: string | null;\n    put: string | null;\n    post: string | null;\n    delete: string | null;\n    patch: string | null;\n    custom: CustomHttpPattern.AsProtobufJSON | null;\n    body: string;\n    responseBody: string;\n    additionalBindings: HttpRule.AsProtobufJSON[] | null;\n  }\n  export enum PatternCase {\n    none = 0,\n    get = 1,\n    put = 2,\n    post = 3,\n    delete = 4,\n    patch = 5,\n    custom = 6\n  }\n}\n\n/**\n * Message implementation for google.api.CustomHttpPattern\n */\nexport class CustomHttpPattern implements GrpcMessage {\n  static id = 'google.api.CustomHttpPattern';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CustomHttpPattern();\n    CustomHttpPattern.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CustomHttpPattern) {\n    _instance.kind = _instance.kind || '';\n    _instance.path = _instance.path || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CustomHttpPattern,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.kind = _reader.readString();\n          break;\n        case 2:\n          _instance.path = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CustomHttpPattern.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CustomHttpPattern,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.kind) {\n      _writer.writeString(1, _instance.kind);\n    }\n    if (_instance.path) {\n      _writer.writeString(2, _instance.path);\n    }\n  }\n\n  private _kind: string;\n  private _path: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CustomHttpPattern to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CustomHttpPattern.AsObject>) {\n    _value = _value || {};\n    this.kind = _value.kind;\n    this.path = _value.path;\n    CustomHttpPattern.refineValues(this);\n  }\n  get kind(): string {\n    return this._kind;\n  }\n  set kind(value: string) {\n    this._kind = value;\n  }\n  get path(): string {\n    return this._path;\n  }\n  set path(value: string) {\n    this._path = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CustomHttpPattern.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CustomHttpPattern.AsObject {\n    return {\n      kind: this.kind,\n      path: this.path\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CustomHttpPattern.AsProtobufJSON {\n    return {\n      kind: this.kind,\n      path: this.path\n    };\n  }\n}\nexport module CustomHttpPattern {\n  /**\n   * Standard JavaScript object representation for CustomHttpPattern\n   */\n  export interface AsObject {\n    kind: string;\n    path: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CustomHttpPattern\n   */\n  export interface AsProtobufJSON {\n    kind: string;\n    path: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleProtobuf000 from '@ngx-grpc/well-known-types';\n/**\n * Message implementation for google.rpc.Status\n */\nexport class Status implements GrpcMessage {\n  static id = 'google.rpc.Status';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Status();\n    Status.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Status) {\n    _instance.code = _instance.code || 0;\n    _instance.message = _instance.message || '';\n    _instance.details = _instance.details || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(_instance: Status, _reader: BinaryReader) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.code = _reader.readInt32();\n          break;\n        case 2:\n          _instance.message = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new googleProtobuf000.Any();\n          _reader.readMessage(\n            messageInitializer3,\n            googleProtobuf000.Any.deserializeBinaryFromReader\n          );\n          (_instance.details = _instance.details || []).push(\n            messageInitializer3\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Status.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Status, _writer: BinaryWriter) {\n    if (_instance.code) {\n      _writer.writeInt32(1, _instance.code);\n    }\n    if (_instance.message) {\n      _writer.writeString(2, _instance.message);\n    }\n    if (_instance.details && _instance.details.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.details as any,\n        googleProtobuf000.Any.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _code: number;\n  private _message: string;\n  private _details?: googleProtobuf000.Any[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Status to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Status.AsObject>) {\n    _value = _value || {};\n    this.code = _value.code;\n    this.message = _value.message;\n    this.details = (_value.details || []).map(\n      m => new googleProtobuf000.Any(m)\n    );\n    Status.refineValues(this);\n  }\n  get code(): number {\n    return this._code;\n  }\n  set code(value: number) {\n    this._code = value;\n  }\n  get message(): string {\n    return this._message;\n  }\n  set message(value: string) {\n    this._message = value;\n  }\n  get details(): googleProtobuf000.Any[] | undefined {\n    return this._details;\n  }\n  set details(value: googleProtobuf000.Any[] | undefined) {\n    this._details = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Status.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Status.AsObject {\n    return {\n      code: this.code,\n      message: this.message,\n      details: (this.details || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Status.AsProtobufJSON {\n    return {\n      code: this.code,\n      message: this.message,\n      details: (this.details || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module Status {\n  /**\n   * Standard JavaScript object representation for Status\n   */\n  export interface AsObject {\n    code: number;\n    message: string;\n    details?: googleProtobuf000.Any.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for Status\n   */\n  export interface AsProtobufJSON {\n    code: number;\n    message: string;\n    details: googleProtobuf000.Any.AsProtobufJSON[] | null;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\n\n/**\n * Message implementation for google.type.LatLng\n */\nexport class LatLng implements GrpcMessage {\n  static id = 'google.type.LatLng';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LatLng();\n    LatLng.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LatLng) {\n    _instance.latitude = _instance.latitude || 0;\n    _instance.longitude = _instance.longitude || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(_instance: LatLng, _reader: BinaryReader) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.latitude = _reader.readDouble();\n          break;\n        case 2:\n          _instance.longitude = _reader.readDouble();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LatLng.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: LatLng, _writer: BinaryWriter) {\n    if (_instance.latitude) {\n      _writer.writeDouble(1, _instance.latitude);\n    }\n    if (_instance.longitude) {\n      _writer.writeDouble(2, _instance.longitude);\n    }\n  }\n\n  private _latitude: number;\n  private _longitude: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LatLng to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LatLng.AsObject>) {\n    _value = _value || {};\n    this.latitude = _value.latitude;\n    this.longitude = _value.longitude;\n    LatLng.refineValues(this);\n  }\n  get latitude(): number {\n    return this._latitude;\n  }\n  set latitude(value: number) {\n    this._latitude = value;\n  }\n  get longitude(): number {\n    return this._longitude;\n  }\n  set longitude(value: number) {\n    this._longitude = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LatLng.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LatLng.AsObject {\n    return {\n      latitude: this.latitude,\n      longitude: this.longitude\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LatLng.AsProtobufJSON {\n    return {\n      latitude: this.latitude,\n      longitude: this.longitude\n    };\n  }\n}\nexport module LatLng {\n  /**\n   * Standard JavaScript object representation for LatLng\n   */\n  export interface AsObject {\n    latitude: number;\n    longitude: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LatLng\n   */\n  export interface AsProtobufJSON {\n    latitude: number;\n    longitude: number;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleProtobuf000 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nexport enum SortingMode {\n  ASCENDING = 0,\n  DESCENDING = 1\n}\nexport enum NotificationFlaggedStatus {\n  NOTIFICATION_FLAGGED_STATUS_UNSPECIFIED = 0,\n  NOTIFICATION_FLAGGED_STATUS_FLAGGED = 1,\n  NOTIFICATION_FLAGGED_STATUS_UNFLAGGED = 2\n}\nexport enum NotificationReadStatus {\n  NOTIFICATION_READ_STATUS_UNSPECIFIED = 0,\n  NOTIFICATION_READ_STATUS_READ = 1,\n  NOTIFICATION_READ_STATUS_UNREAD = 2\n}\nexport enum NotificationVisibility {\n  NOTIFICATION_VISIBILITY_UNSPECIFIED = 0,\n  NOTIFICATION_VISIBILITY_USER = 1,\n  NOTIFICATION_VISIBILITY_PROJECT = 2,\n  NOTIFICATION_VISIBILITY_PROJECT_OWNER = 3,\n  NOTIFICATION_VISIBILITY_PROJECT_ADMIN = 4,\n  NOTIFICATION_VISIBILITY_PROJECT_DEVELOPER = 5,\n  NOTIFICATION_VISIBILITY_PROJECT_USER = 6,\n  NOTIFICATION_VISIBILITY_PROJECT_EXECUTOR = 7,\n  NOTIFICATION_VISIBILITY_PROJECT_INACTIVE = 8,\n  NOTIFICATION_VISIBILITY_SERVER_ADMIN = 9,\n  NOTIFICATION_VISIBILITY_SERVER_MANAGER = 10,\n  NOTIFICATION_VISIBILITY_SERVER_USER = 11,\n  NOTIFICATION_VISIBILITY_SERVER_INACTIVE = 12\n}\nexport enum NotificationType {\n  NOTIFICATION_TYPE_UNSPECIFIED = 0,\n  NOTIFICATION_TYPE_DEBUG = 1,\n  NOTIFICATION_TYPE_WARNING = 2,\n  NOTIFICATION_TYPE_INFO = 3,\n  NOTIFICATION_TYPE_ERROR = 4,\n  NOTIFICATION_TYPE_NEWS = 5\n}\nexport enum NotificationOrigin {\n  NOTIFICATION_ORIGIN_UNSPECIFIED = 0,\n  NOTIFICATION_ORIGIN_ONDEWO_AIM = 1,\n  NOTIFICATION_ORIGIN_ONDEWO_BPI = 2,\n  NOTIFICATION_ORIGIN_ONDEWO_CSI = 3,\n  NOTIFICATION_ORIGIN_ONDEWO_NLU = 4,\n  NOTIFICATION_ORIGIN_ONDEWO_S2T = 5,\n  NOTIFICATION_ORIGIN_ONDEWO_SIP = 6,\n  NOTIFICATION_ORIGIN_ONDEWO_T2S = 7,\n  NOTIFICATION_ORIGIN_ONDEWO_VTSI = 8,\n  NOTIFICATION_ORIGIN_ONDEWO_VTSI_RABBITMQ = 9,\n  NOTIFICATION_ORIGIN_ONDEWO_SURVEY = 10\n}\nexport enum LogSeverity {\n  LOG_SEVERITY_UNSPECIFIED = 0,\n  LOG_SEVERITY_TRACE = 1,\n  LOG_SEVERITY_DEBUG = 2,\n  LOG_SEVERITY_INFO = 3,\n  LOG_SEVERITY_SUCCESS = 4,\n  LOG_SEVERITY_WARNING = 5,\n  LOG_SEVERITY_ERROR = 6,\n  LOG_SEVERITY_CRITICAL = 7\n}\n/**\n * Message implementation for ondewo.nlu.StatResponse\n */\nexport class StatResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.StatResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StatResponse();\n    StatResponse.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StatResponse) {\n    _instance.value = _instance.value || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StatResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.value = _reader.readUint32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StatResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StatResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.value) {\n      _writer.writeUint32(1, _instance.value);\n    }\n  }\n\n  private _value: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StatResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<StatResponse.AsObject>) {\n    _value = _value || {};\n    this.value = _value.value;\n    StatResponse.refineValues(this);\n  }\n  get value(): number {\n    return this._value;\n  }\n  set value(value: number) {\n    this._value = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StatResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StatResponse.AsObject {\n    return {\n      value: this.value\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StatResponse.AsProtobufJSON {\n    return {\n      value: this.value\n    };\n  }\n}\nexport module StatResponse {\n  /**\n   * Standard JavaScript object representation for StatResponse\n   */\n  export interface AsObject {\n    value: number;\n  }\n\n  /**\n   * Protobuf JSON representation for StatResponse\n   */\n  export interface AsProtobufJSON {\n    value: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.Comment\n */\nexport class Comment implements GrpcMessage {\n  static id = 'ondewo.nlu.Comment';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Comment();\n    Comment.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Comment) {\n    _instance.name = _instance.name || '';\n    _instance.text = _instance.text || '';\n    _instance.userId = _instance.userId || '';\n    _instance.commentAboutName = _instance.commentAboutName || '';\n    _instance.parentCommentName = _instance.parentCommentName || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.isResolved = _instance.isResolved || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: Comment,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.text = _reader.readString();\n          break;\n        case 3:\n          _instance.userId = _reader.readString();\n          break;\n        case 4:\n          _instance.commentAboutName = _reader.readString();\n          break;\n        case 5:\n          _instance.parentCommentName = _reader.readString();\n          break;\n        case 6:\n          _instance.createdAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.modifiedAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 9:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 10:\n          _instance.isResolved = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Comment.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Comment, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.text) {\n      _writer.writeString(2, _instance.text);\n    }\n    if (_instance.userId) {\n      _writer.writeString(3, _instance.userId);\n    }\n    if (_instance.commentAboutName) {\n      _writer.writeString(4, _instance.commentAboutName);\n    }\n    if (_instance.parentCommentName) {\n      _writer.writeString(5, _instance.parentCommentName);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        6,\n        _instance.createdAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        7,\n        _instance.modifiedAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(8, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(9, _instance.modifiedBy);\n    }\n    if (_instance.isResolved) {\n      _writer.writeBool(10, _instance.isResolved);\n    }\n  }\n\n  private _name: string;\n  private _text: string;\n  private _userId: string;\n  private _commentAboutName: string;\n  private _parentCommentName: string;\n  private _createdAt?: googleProtobuf002.Timestamp;\n  private _modifiedAt?: googleProtobuf002.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _isResolved: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Comment to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Comment.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.text = _value.text;\n    this.userId = _value.userId;\n    this.commentAboutName = _value.commentAboutName;\n    this.parentCommentName = _value.parentCommentName;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf002.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf002.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.isResolved = _value.isResolved;\n    Comment.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n  get commentAboutName(): string {\n    return this._commentAboutName;\n  }\n  set commentAboutName(value: string) {\n    this._commentAboutName = value;\n  }\n  get parentCommentName(): string {\n    return this._parentCommentName;\n  }\n  set parentCommentName(value: string) {\n    this._parentCommentName = value;\n  }\n  get createdAt(): googleProtobuf002.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf002.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get isResolved(): boolean {\n    return this._isResolved;\n  }\n  set isResolved(value: boolean) {\n    this._isResolved = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Comment.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Comment.AsObject {\n    return {\n      name: this.name,\n      text: this.text,\n      userId: this.userId,\n      commentAboutName: this.commentAboutName,\n      parentCommentName: this.parentCommentName,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      isResolved: this.isResolved\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Comment.AsProtobufJSON {\n    return {\n      name: this.name,\n      text: this.text,\n      userId: this.userId,\n      commentAboutName: this.commentAboutName,\n      parentCommentName: this.parentCommentName,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      isResolved: this.isResolved\n    };\n  }\n}\nexport module Comment {\n  /**\n   * Standard JavaScript object representation for Comment\n   */\n  export interface AsObject {\n    name: string;\n    text: string;\n    userId: string;\n    commentAboutName: string;\n    parentCommentName: string;\n    createdAt?: googleProtobuf002.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf002.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    isResolved: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for Comment\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    text: string;\n    userId: string;\n    commentAboutName: string;\n    parentCommentName: string;\n    createdAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    isResolved: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.Notification\n */\nexport class Notification implements GrpcMessage {\n  static id = 'ondewo.nlu.Notification';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Notification();\n    Notification.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Notification) {\n    _instance.name = _instance.name || '';\n    _instance.userName = _instance.userName || '';\n    _instance.title = _instance.title || '';\n    _instance.descriptionShort = _instance.descriptionShort || '';\n    _instance.descriptionLong = _instance.descriptionLong || '';\n    _instance.notificationFlaggedStatus =\n      _instance.notificationFlaggedStatus || 0;\n    _instance.notificationFlaggedTimestamp =\n      _instance.notificationFlaggedTimestamp || undefined;\n    _instance.notificationReadStatus = _instance.notificationReadStatus || 0;\n    _instance.notificationReadTimestamp =\n      _instance.notificationReadTimestamp || undefined;\n    _instance.notificationOrigin = _instance.notificationOrigin || 0;\n    _instance.originName = _instance.originName || '';\n    _instance.originLanguage = _instance.originLanguage || '';\n    _instance.notificationType = _instance.notificationType || 0;\n    _instance.notificationVisibility = _instance.notificationVisibility || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.link = _instance.link || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: Notification,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.userName = _reader.readString();\n          break;\n        case 3:\n          _instance.title = _reader.readString();\n          break;\n        case 4:\n          _instance.descriptionShort = _reader.readString();\n          break;\n        case 5:\n          _instance.descriptionLong = _reader.readString();\n          break;\n        case 6:\n          _instance.notificationFlaggedStatus = _reader.readEnum();\n          break;\n        case 7:\n          _instance.notificationFlaggedTimestamp = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.notificationFlaggedTimestamp,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.notificationReadStatus = _reader.readEnum();\n          break;\n        case 9:\n          _instance.notificationReadTimestamp = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.notificationReadTimestamp,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.notificationOrigin = _reader.readEnum();\n          break;\n        case 11:\n          _instance.originName = _reader.readString();\n          break;\n        case 12:\n          _instance.originLanguage = _reader.readString();\n          break;\n        case 13:\n          _instance.notificationType = _reader.readEnum();\n          break;\n        case 14:\n          _instance.notificationVisibility = _reader.readEnum();\n          break;\n        case 15:\n          _instance.createdAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 16:\n          _instance.modifiedAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 17:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 18:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 19:\n          _instance.link = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Notification.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: Notification,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.userName) {\n      _writer.writeString(2, _instance.userName);\n    }\n    if (_instance.title) {\n      _writer.writeString(3, _instance.title);\n    }\n    if (_instance.descriptionShort) {\n      _writer.writeString(4, _instance.descriptionShort);\n    }\n    if (_instance.descriptionLong) {\n      _writer.writeString(5, _instance.descriptionLong);\n    }\n    if (_instance.notificationFlaggedStatus) {\n      _writer.writeEnum(6, _instance.notificationFlaggedStatus);\n    }\n    if (_instance.notificationFlaggedTimestamp) {\n      _writer.writeMessage(\n        7,\n        _instance.notificationFlaggedTimestamp as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.notificationReadStatus) {\n      _writer.writeEnum(8, _instance.notificationReadStatus);\n    }\n    if (_instance.notificationReadTimestamp) {\n      _writer.writeMessage(\n        9,\n        _instance.notificationReadTimestamp as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.notificationOrigin) {\n      _writer.writeEnum(10, _instance.notificationOrigin);\n    }\n    if (_instance.originName) {\n      _writer.writeString(11, _instance.originName);\n    }\n    if (_instance.originLanguage) {\n      _writer.writeString(12, _instance.originLanguage);\n    }\n    if (_instance.notificationType) {\n      _writer.writeEnum(13, _instance.notificationType);\n    }\n    if (_instance.notificationVisibility) {\n      _writer.writeEnum(14, _instance.notificationVisibility);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        15,\n        _instance.createdAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        16,\n        _instance.modifiedAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(17, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(18, _instance.modifiedBy);\n    }\n    if (_instance.link) {\n      _writer.writeString(19, _instance.link);\n    }\n  }\n\n  private _name: string;\n  private _userName: string;\n  private _title: string;\n  private _descriptionShort: string;\n  private _descriptionLong: string;\n  private _notificationFlaggedStatus: NotificationFlaggedStatus;\n  private _notificationFlaggedTimestamp?: googleProtobuf002.Timestamp;\n  private _notificationReadStatus: NotificationReadStatus;\n  private _notificationReadTimestamp?: googleProtobuf002.Timestamp;\n  private _notificationOrigin: NotificationOrigin;\n  private _originName: string;\n  private _originLanguage: string;\n  private _notificationType: NotificationType;\n  private _notificationVisibility: NotificationVisibility;\n  private _createdAt?: googleProtobuf002.Timestamp;\n  private _modifiedAt?: googleProtobuf002.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _link: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Notification to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Notification.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.userName = _value.userName;\n    this.title = _value.title;\n    this.descriptionShort = _value.descriptionShort;\n    this.descriptionLong = _value.descriptionLong;\n    this.notificationFlaggedStatus = _value.notificationFlaggedStatus;\n    this.notificationFlaggedTimestamp = _value.notificationFlaggedTimestamp\n      ? new googleProtobuf002.Timestamp(_value.notificationFlaggedTimestamp)\n      : undefined;\n    this.notificationReadStatus = _value.notificationReadStatus;\n    this.notificationReadTimestamp = _value.notificationReadTimestamp\n      ? new googleProtobuf002.Timestamp(_value.notificationReadTimestamp)\n      : undefined;\n    this.notificationOrigin = _value.notificationOrigin;\n    this.originName = _value.originName;\n    this.originLanguage = _value.originLanguage;\n    this.notificationType = _value.notificationType;\n    this.notificationVisibility = _value.notificationVisibility;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf002.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf002.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.link = _value.link;\n    Notification.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get title(): string {\n    return this._title;\n  }\n  set title(value: string) {\n    this._title = value;\n  }\n  get descriptionShort(): string {\n    return this._descriptionShort;\n  }\n  set descriptionShort(value: string) {\n    this._descriptionShort = value;\n  }\n  get descriptionLong(): string {\n    return this._descriptionLong;\n  }\n  set descriptionLong(value: string) {\n    this._descriptionLong = value;\n  }\n  get notificationFlaggedStatus(): NotificationFlaggedStatus {\n    return this._notificationFlaggedStatus;\n  }\n  set notificationFlaggedStatus(value: NotificationFlaggedStatus) {\n    this._notificationFlaggedStatus = value;\n  }\n  get notificationFlaggedTimestamp(): googleProtobuf002.Timestamp | undefined {\n    return this._notificationFlaggedTimestamp;\n  }\n  set notificationFlaggedTimestamp(\n    value: googleProtobuf002.Timestamp | undefined\n  ) {\n    this._notificationFlaggedTimestamp = value;\n  }\n  get notificationReadStatus(): NotificationReadStatus {\n    return this._notificationReadStatus;\n  }\n  set notificationReadStatus(value: NotificationReadStatus) {\n    this._notificationReadStatus = value;\n  }\n  get notificationReadTimestamp(): googleProtobuf002.Timestamp | undefined {\n    return this._notificationReadTimestamp;\n  }\n  set notificationReadTimestamp(\n    value: googleProtobuf002.Timestamp | undefined\n  ) {\n    this._notificationReadTimestamp = value;\n  }\n  get notificationOrigin(): NotificationOrigin {\n    return this._notificationOrigin;\n  }\n  set notificationOrigin(value: NotificationOrigin) {\n    this._notificationOrigin = value;\n  }\n  get originName(): string {\n    return this._originName;\n  }\n  set originName(value: string) {\n    this._originName = value;\n  }\n  get originLanguage(): string {\n    return this._originLanguage;\n  }\n  set originLanguage(value: string) {\n    this._originLanguage = value;\n  }\n  get notificationType(): NotificationType {\n    return this._notificationType;\n  }\n  set notificationType(value: NotificationType) {\n    this._notificationType = value;\n  }\n  get notificationVisibility(): NotificationVisibility {\n    return this._notificationVisibility;\n  }\n  set notificationVisibility(value: NotificationVisibility) {\n    this._notificationVisibility = value;\n  }\n  get createdAt(): googleProtobuf002.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf002.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get link(): string {\n    return this._link;\n  }\n  set link(value: string) {\n    this._link = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Notification.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Notification.AsObject {\n    return {\n      name: this.name,\n      userName: this.userName,\n      title: this.title,\n      descriptionShort: this.descriptionShort,\n      descriptionLong: this.descriptionLong,\n      notificationFlaggedStatus: this.notificationFlaggedStatus,\n      notificationFlaggedTimestamp: this.notificationFlaggedTimestamp\n        ? this.notificationFlaggedTimestamp.toObject()\n        : undefined,\n      notificationReadStatus: this.notificationReadStatus,\n      notificationReadTimestamp: this.notificationReadTimestamp\n        ? this.notificationReadTimestamp.toObject()\n        : undefined,\n      notificationOrigin: this.notificationOrigin,\n      originName: this.originName,\n      originLanguage: this.originLanguage,\n      notificationType: this.notificationType,\n      notificationVisibility: this.notificationVisibility,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      link: this.link\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Notification.AsProtobufJSON {\n    return {\n      name: this.name,\n      userName: this.userName,\n      title: this.title,\n      descriptionShort: this.descriptionShort,\n      descriptionLong: this.descriptionLong,\n      notificationFlaggedStatus:\n        NotificationFlaggedStatus[\n          this.notificationFlaggedStatus === null ||\n          this.notificationFlaggedStatus === undefined\n            ? 0\n            : this.notificationFlaggedStatus\n        ],\n      notificationFlaggedTimestamp: this.notificationFlaggedTimestamp\n        ? this.notificationFlaggedTimestamp.toProtobufJSON(options)\n        : null,\n      notificationReadStatus:\n        NotificationReadStatus[\n          this.notificationReadStatus === null ||\n          this.notificationReadStatus === undefined\n            ? 0\n            : this.notificationReadStatus\n        ],\n      notificationReadTimestamp: this.notificationReadTimestamp\n        ? this.notificationReadTimestamp.toProtobufJSON(options)\n        : null,\n      notificationOrigin:\n        NotificationOrigin[\n          this.notificationOrigin === null ||\n          this.notificationOrigin === undefined\n            ? 0\n            : this.notificationOrigin\n        ],\n      originName: this.originName,\n      originLanguage: this.originLanguage,\n      notificationType:\n        NotificationType[\n          this.notificationType === null || this.notificationType === undefined\n            ? 0\n            : this.notificationType\n        ],\n      notificationVisibility:\n        NotificationVisibility[\n          this.notificationVisibility === null ||\n          this.notificationVisibility === undefined\n            ? 0\n            : this.notificationVisibility\n        ],\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      link: this.link\n    };\n  }\n}\nexport module Notification {\n  /**\n   * Standard JavaScript object representation for Notification\n   */\n  export interface AsObject {\n    name: string;\n    userName: string;\n    title: string;\n    descriptionShort: string;\n    descriptionLong: string;\n    notificationFlaggedStatus: NotificationFlaggedStatus;\n    notificationFlaggedTimestamp?: googleProtobuf002.Timestamp.AsObject;\n    notificationReadStatus: NotificationReadStatus;\n    notificationReadTimestamp?: googleProtobuf002.Timestamp.AsObject;\n    notificationOrigin: NotificationOrigin;\n    originName: string;\n    originLanguage: string;\n    notificationType: NotificationType;\n    notificationVisibility: NotificationVisibility;\n    createdAt?: googleProtobuf002.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf002.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    link: string;\n  }\n\n  /**\n   * Protobuf JSON representation for Notification\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    userName: string;\n    title: string;\n    descriptionShort: string;\n    descriptionLong: string;\n    notificationFlaggedStatus: string;\n    notificationFlaggedTimestamp: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    notificationReadStatus: string;\n    notificationReadTimestamp: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    notificationOrigin: string;\n    originName: string;\n    originLanguage: string;\n    notificationType: string;\n    notificationVisibility: string;\n    createdAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    link: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddNotificationsRequest\n */\nexport class AddNotificationsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddNotificationsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddNotificationsRequest();\n    AddNotificationsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddNotificationsRequest) {\n    _instance.notifications = _instance.notifications || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddNotificationsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Notification();\n          _reader.readMessage(\n            messageInitializer1,\n            Notification.deserializeBinaryFromReader\n          );\n          (_instance.notifications = _instance.notifications || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddNotificationsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddNotificationsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notifications && _instance.notifications.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.notifications as any,\n        Notification.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _notifications?: Notification[];\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddNotificationsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddNotificationsRequest.AsObject>) {\n    _value = _value || {};\n    this.notifications = (_value.notifications || []).map(\n      m => new Notification(m)\n    );\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    AddNotificationsRequest.refineValues(this);\n  }\n  get notifications(): Notification[] | undefined {\n    return this._notifications;\n  }\n  set notifications(value: Notification[] | undefined) {\n    this._notifications = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddNotificationsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddNotificationsRequest.AsObject {\n    return {\n      notifications: (this.notifications || []).map(m => m.toObject()),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddNotificationsRequest.AsProtobufJSON {\n    return {\n      notifications: (this.notifications || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module AddNotificationsRequest {\n  /**\n   * Standard JavaScript object representation for AddNotificationsRequest\n   */\n  export interface AsObject {\n    notifications?: Notification.AsObject[];\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for AddNotificationsRequest\n   */\n  export interface AsProtobufJSON {\n    notifications: Notification.AsProtobufJSON[] | null;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddNotificationsResponse\n */\nexport class AddNotificationsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.AddNotificationsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddNotificationsResponse();\n    AddNotificationsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddNotificationsResponse) {\n    _instance.notifications = _instance.notifications || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddNotificationsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Notification();\n          _reader.readMessage(\n            messageInitializer1,\n            Notification.deserializeBinaryFromReader\n          );\n          (_instance.notifications = _instance.notifications || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddNotificationsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddNotificationsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notifications && _instance.notifications.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.notifications as any,\n        Notification.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _notifications?: Notification[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddNotificationsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddNotificationsResponse.AsObject>) {\n    _value = _value || {};\n    this.notifications = (_value.notifications || []).map(\n      m => new Notification(m)\n    );\n    AddNotificationsResponse.refineValues(this);\n  }\n  get notifications(): Notification[] | undefined {\n    return this._notifications;\n  }\n  set notifications(value: Notification[] | undefined) {\n    this._notifications = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddNotificationsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddNotificationsResponse.AsObject {\n    return {\n      notifications: (this.notifications || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddNotificationsResponse.AsProtobufJSON {\n    return {\n      notifications: (this.notifications || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module AddNotificationsResponse {\n  /**\n   * Standard JavaScript object representation for AddNotificationsResponse\n   */\n  export interface AsObject {\n    notifications?: Notification.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for AddNotificationsResponse\n   */\n  export interface AsProtobufJSON {\n    notifications: Notification.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.NotificationFilter\n */\nexport class NotificationFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.NotificationFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new NotificationFilter();\n    NotificationFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: NotificationFilter) {\n    _instance.languageCodes = _instance.languageCodes || [];\n    _instance.notificationOrigins = _instance.notificationOrigins || [];\n    _instance.notificationVisibilities =\n      _instance.notificationVisibilities || [];\n    _instance.notificationFlaggedStatus =\n      _instance.notificationFlaggedStatus || [];\n    _instance.notificationReadStatus = _instance.notificationReadStatus || [];\n    _instance.earliest = _instance.earliest || undefined;\n    _instance.latest = _instance.latest || undefined;\n    _instance.userNames = _instance.userNames || [];\n    _instance.originNames = _instance.originNames || [];\n    _instance.notificationTypes = _instance.notificationTypes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: NotificationFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _reader.readPackableEnumInto(\n            (_instance.notificationOrigins =\n              _instance.notificationOrigins || [])\n          );\n          break;\n        case 3:\n          _reader.readPackableEnumInto(\n            (_instance.notificationVisibilities =\n              _instance.notificationVisibilities || [])\n          );\n          break;\n        case 4:\n          _reader.readPackableEnumInto(\n            (_instance.notificationFlaggedStatus =\n              _instance.notificationFlaggedStatus || [])\n          );\n          break;\n        case 5:\n          _reader.readPackableEnumInto(\n            (_instance.notificationReadStatus =\n              _instance.notificationReadStatus || [])\n          );\n          break;\n        case 6:\n          _instance.earliest = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.earliest,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.latest = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.latest,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          (_instance.userNames = _instance.userNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          (_instance.originNames = _instance.originNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 10:\n          _reader.readPackableEnumInto(\n            (_instance.notificationTypes = _instance.notificationTypes || [])\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    NotificationFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: NotificationFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(1, _instance.languageCodes);\n    }\n    if (_instance.notificationOrigins && _instance.notificationOrigins.length) {\n      _writer.writePackedEnum(2, _instance.notificationOrigins);\n    }\n    if (\n      _instance.notificationVisibilities &&\n      _instance.notificationVisibilities.length\n    ) {\n      _writer.writePackedEnum(3, _instance.notificationVisibilities);\n    }\n    if (\n      _instance.notificationFlaggedStatus &&\n      _instance.notificationFlaggedStatus.length\n    ) {\n      _writer.writePackedEnum(4, _instance.notificationFlaggedStatus);\n    }\n    if (\n      _instance.notificationReadStatus &&\n      _instance.notificationReadStatus.length\n    ) {\n      _writer.writePackedEnum(5, _instance.notificationReadStatus);\n    }\n    if (_instance.earliest) {\n      _writer.writeMessage(\n        6,\n        _instance.earliest as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.latest) {\n      _writer.writeMessage(\n        7,\n        _instance.latest as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.userNames && _instance.userNames.length) {\n      _writer.writeRepeatedString(8, _instance.userNames);\n    }\n    if (_instance.originNames && _instance.originNames.length) {\n      _writer.writeRepeatedString(9, _instance.originNames);\n    }\n    if (_instance.notificationTypes && _instance.notificationTypes.length) {\n      _writer.writePackedEnum(10, _instance.notificationTypes);\n    }\n  }\n\n  private _languageCodes: string[];\n  private _notificationOrigins: NotificationOrigin[];\n  private _notificationVisibilities: NotificationVisibility[];\n  private _notificationFlaggedStatus: NotificationFlaggedStatus[];\n  private _notificationReadStatus: NotificationReadStatus[];\n  private _earliest?: googleProtobuf002.Timestamp;\n  private _latest?: googleProtobuf002.Timestamp;\n  private _userNames: string[];\n  private _originNames: string[];\n  private _notificationTypes: NotificationType[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of NotificationFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<NotificationFilter.AsObject>) {\n    _value = _value || {};\n    this.languageCodes = (_value.languageCodes || []).slice();\n    this.notificationOrigins = (_value.notificationOrigins || []).slice();\n    this.notificationVisibilities = (\n      _value.notificationVisibilities || []\n    ).slice();\n    this.notificationFlaggedStatus = (\n      _value.notificationFlaggedStatus || []\n    ).slice();\n    this.notificationReadStatus = (_value.notificationReadStatus || []).slice();\n    this.earliest = _value.earliest\n      ? new googleProtobuf002.Timestamp(_value.earliest)\n      : undefined;\n    this.latest = _value.latest\n      ? new googleProtobuf002.Timestamp(_value.latest)\n      : undefined;\n    this.userNames = (_value.userNames || []).slice();\n    this.originNames = (_value.originNames || []).slice();\n    this.notificationTypes = (_value.notificationTypes || []).slice();\n    NotificationFilter.refineValues(this);\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n  get notificationOrigins(): NotificationOrigin[] {\n    return this._notificationOrigins;\n  }\n  set notificationOrigins(value: NotificationOrigin[]) {\n    this._notificationOrigins = value;\n  }\n  get notificationVisibilities(): NotificationVisibility[] {\n    return this._notificationVisibilities;\n  }\n  set notificationVisibilities(value: NotificationVisibility[]) {\n    this._notificationVisibilities = value;\n  }\n  get notificationFlaggedStatus(): NotificationFlaggedStatus[] {\n    return this._notificationFlaggedStatus;\n  }\n  set notificationFlaggedStatus(value: NotificationFlaggedStatus[]) {\n    this._notificationFlaggedStatus = value;\n  }\n  get notificationReadStatus(): NotificationReadStatus[] {\n    return this._notificationReadStatus;\n  }\n  set notificationReadStatus(value: NotificationReadStatus[]) {\n    this._notificationReadStatus = value;\n  }\n  get earliest(): googleProtobuf002.Timestamp | undefined {\n    return this._earliest;\n  }\n  set earliest(value: googleProtobuf002.Timestamp | undefined) {\n    this._earliest = value;\n  }\n  get latest(): googleProtobuf002.Timestamp | undefined {\n    return this._latest;\n  }\n  set latest(value: googleProtobuf002.Timestamp | undefined) {\n    this._latest = value;\n  }\n  get userNames(): string[] {\n    return this._userNames;\n  }\n  set userNames(value: string[]) {\n    this._userNames = value;\n  }\n  get originNames(): string[] {\n    return this._originNames;\n  }\n  set originNames(value: string[]) {\n    this._originNames = value;\n  }\n  get notificationTypes(): NotificationType[] {\n    return this._notificationTypes;\n  }\n  set notificationTypes(value: NotificationType[]) {\n    this._notificationTypes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    NotificationFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): NotificationFilter.AsObject {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      notificationOrigins: (this.notificationOrigins || []).slice(),\n      notificationVisibilities: (this.notificationVisibilities || []).slice(),\n      notificationFlaggedStatus: (this.notificationFlaggedStatus || []).slice(),\n      notificationReadStatus: (this.notificationReadStatus || []).slice(),\n      earliest: this.earliest ? this.earliest.toObject() : undefined,\n      latest: this.latest ? this.latest.toObject() : undefined,\n      userNames: (this.userNames || []).slice(),\n      originNames: (this.originNames || []).slice(),\n      notificationTypes: (this.notificationTypes || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): NotificationFilter.AsProtobufJSON {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      notificationOrigins: (this.notificationOrigins || []).map(\n        v => NotificationOrigin[v]\n      ),\n      notificationVisibilities: (this.notificationVisibilities || []).map(\n        v => NotificationVisibility[v]\n      ),\n      notificationFlaggedStatus: (this.notificationFlaggedStatus || []).map(\n        v => NotificationFlaggedStatus[v]\n      ),\n      notificationReadStatus: (this.notificationReadStatus || []).map(\n        v => NotificationReadStatus[v]\n      ),\n      earliest: this.earliest ? this.earliest.toProtobufJSON(options) : null,\n      latest: this.latest ? this.latest.toProtobufJSON(options) : null,\n      userNames: (this.userNames || []).slice(),\n      originNames: (this.originNames || []).slice(),\n      notificationTypes: (this.notificationTypes || []).map(\n        v => NotificationType[v]\n      )\n    };\n  }\n}\nexport module NotificationFilter {\n  /**\n   * Standard JavaScript object representation for NotificationFilter\n   */\n  export interface AsObject {\n    languageCodes: string[];\n    notificationOrigins: NotificationOrigin[];\n    notificationVisibilities: NotificationVisibility[];\n    notificationFlaggedStatus: NotificationFlaggedStatus[];\n    notificationReadStatus: NotificationReadStatus[];\n    earliest?: googleProtobuf002.Timestamp.AsObject;\n    latest?: googleProtobuf002.Timestamp.AsObject;\n    userNames: string[];\n    originNames: string[];\n    notificationTypes: NotificationType[];\n  }\n\n  /**\n   * Protobuf JSON representation for NotificationFilter\n   */\n  export interface AsProtobufJSON {\n    languageCodes: string[];\n    notificationOrigins: string[];\n    notificationVisibilities: string[];\n    notificationFlaggedStatus: string[];\n    notificationReadStatus: string[];\n    earliest: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    latest: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    userNames: string[];\n    originNames: string[];\n    notificationTypes: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListNotificationsRequest\n */\nexport class ListNotificationsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListNotificationsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListNotificationsRequest();\n    ListNotificationsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListNotificationsRequest) {\n    _instance.notificationFilter = _instance.notificationFilter || undefined;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListNotificationsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.notificationFilter = new NotificationFilter();\n          _reader.readMessage(\n            _instance.notificationFilter,\n            NotificationFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListNotificationsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListNotificationsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notificationFilter) {\n      _writer.writeMessage(\n        1,\n        _instance.notificationFilter as any,\n        NotificationFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _notificationFilter?: NotificationFilter;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListNotificationsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListNotificationsRequest.AsObject>) {\n    _value = _value || {};\n    this.notificationFilter = _value.notificationFilter\n      ? new NotificationFilter(_value.notificationFilter)\n      : undefined;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    ListNotificationsRequest.refineValues(this);\n  }\n  get notificationFilter(): NotificationFilter | undefined {\n    return this._notificationFilter;\n  }\n  set notificationFilter(value: NotificationFilter | undefined) {\n    this._notificationFilter = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListNotificationsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListNotificationsRequest.AsObject {\n    return {\n      notificationFilter: this.notificationFilter\n        ? this.notificationFilter.toObject()\n        : undefined,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListNotificationsRequest.AsProtobufJSON {\n    return {\n      notificationFilter: this.notificationFilter\n        ? this.notificationFilter.toProtobufJSON(options)\n        : null,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListNotificationsRequest {\n  /**\n   * Standard JavaScript object representation for ListNotificationsRequest\n   */\n  export interface AsObject {\n    notificationFilter?: NotificationFilter.AsObject;\n    pageToken: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListNotificationsRequest\n   */\n  export interface AsProtobufJSON {\n    notificationFilter: NotificationFilter.AsProtobufJSON | null;\n    pageToken: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListNotificationsResponse\n */\nexport class ListNotificationsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListNotificationsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListNotificationsResponse();\n    ListNotificationsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListNotificationsResponse) {\n    _instance.notifications = _instance.notifications || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListNotificationsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Notification();\n          _reader.readMessage(\n            messageInitializer1,\n            Notification.deserializeBinaryFromReader\n          );\n          (_instance.notifications = _instance.notifications || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListNotificationsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListNotificationsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notifications && _instance.notifications.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.notifications as any,\n        Notification.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _notifications?: Notification[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListNotificationsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListNotificationsResponse.AsObject>) {\n    _value = _value || {};\n    this.notifications = (_value.notifications || []).map(\n      m => new Notification(m)\n    );\n    ListNotificationsResponse.refineValues(this);\n  }\n  get notifications(): Notification[] | undefined {\n    return this._notifications;\n  }\n  set notifications(value: Notification[] | undefined) {\n    this._notifications = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListNotificationsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListNotificationsResponse.AsObject {\n    return {\n      notifications: (this.notifications || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListNotificationsResponse.AsProtobufJSON {\n    return {\n      notifications: (this.notifications || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module ListNotificationsResponse {\n  /**\n   * Standard JavaScript object representation for ListNotificationsResponse\n   */\n  export interface AsObject {\n    notifications?: Notification.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListNotificationsResponse\n   */\n  export interface AsProtobufJSON {\n    notifications: Notification.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SetNotificationsFlaggedStatusRequest\n */\nexport class SetNotificationsFlaggedStatusRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.SetNotificationsFlaggedStatusRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SetNotificationsFlaggedStatusRequest();\n    SetNotificationsFlaggedStatusRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SetNotificationsFlaggedStatusRequest) {\n    _instance.notificationNames = _instance.notificationNames || [];\n    _instance.flagged = _instance.flagged || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SetNotificationsFlaggedStatusRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.notificationNames =\n            _instance.notificationNames || []).push(_reader.readString());\n          break;\n        case 2:\n          _reader.readPackableBoolInto(\n            (_instance.flagged = _instance.flagged || [])\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SetNotificationsFlaggedStatusRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SetNotificationsFlaggedStatusRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notificationNames && _instance.notificationNames.length) {\n      _writer.writeRepeatedString(1, _instance.notificationNames);\n    }\n    if (_instance.flagged && _instance.flagged.length) {\n      _writer.writePackedBool(2, _instance.flagged);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _notificationNames: string[];\n  private _flagged: boolean[];\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SetNotificationsFlaggedStatusRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<SetNotificationsFlaggedStatusRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.notificationNames = (_value.notificationNames || []).slice();\n    this.flagged = (_value.flagged || []).slice();\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    SetNotificationsFlaggedStatusRequest.refineValues(this);\n  }\n  get notificationNames(): string[] {\n    return this._notificationNames;\n  }\n  set notificationNames(value: string[]) {\n    this._notificationNames = value;\n  }\n  get flagged(): boolean[] {\n    return this._flagged;\n  }\n  set flagged(value: boolean[]) {\n    this._flagged = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SetNotificationsFlaggedStatusRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SetNotificationsFlaggedStatusRequest.AsObject {\n    return {\n      notificationNames: (this.notificationNames || []).slice(),\n      flagged: (this.flagged || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SetNotificationsFlaggedStatusRequest.AsProtobufJSON {\n    return {\n      notificationNames: (this.notificationNames || []).slice(),\n      flagged: (this.flagged || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module SetNotificationsFlaggedStatusRequest {\n  /**\n   * Standard JavaScript object representation for SetNotificationsFlaggedStatusRequest\n   */\n  export interface AsObject {\n    notificationNames: string[];\n    flagged: boolean[];\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for SetNotificationsFlaggedStatusRequest\n   */\n  export interface AsProtobufJSON {\n    notificationNames: string[];\n    flagged: boolean[];\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SetNotificationsReadStatusRequest\n */\nexport class SetNotificationsReadStatusRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.SetNotificationsReadStatusRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SetNotificationsReadStatusRequest();\n    SetNotificationsReadStatusRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SetNotificationsReadStatusRequest) {\n    _instance.notificationNames = _instance.notificationNames || [];\n    _instance.flagged = _instance.flagged || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SetNotificationsReadStatusRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.notificationNames =\n            _instance.notificationNames || []).push(_reader.readString());\n          break;\n        case 2:\n          _reader.readPackableBoolInto(\n            (_instance.flagged = _instance.flagged || [])\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SetNotificationsReadStatusRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SetNotificationsReadStatusRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notificationNames && _instance.notificationNames.length) {\n      _writer.writeRepeatedString(1, _instance.notificationNames);\n    }\n    if (_instance.flagged && _instance.flagged.length) {\n      _writer.writePackedBool(2, _instance.flagged);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _notificationNames: string[];\n  private _flagged: boolean[];\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SetNotificationsReadStatusRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<SetNotificationsReadStatusRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.notificationNames = (_value.notificationNames || []).slice();\n    this.flagged = (_value.flagged || []).slice();\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    SetNotificationsReadStatusRequest.refineValues(this);\n  }\n  get notificationNames(): string[] {\n    return this._notificationNames;\n  }\n  set notificationNames(value: string[]) {\n    this._notificationNames = value;\n  }\n  get flagged(): boolean[] {\n    return this._flagged;\n  }\n  set flagged(value: boolean[]) {\n    this._flagged = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SetNotificationsReadStatusRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SetNotificationsReadStatusRequest.AsObject {\n    return {\n      notificationNames: (this.notificationNames || []).slice(),\n      flagged: (this.flagged || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SetNotificationsReadStatusRequest.AsProtobufJSON {\n    return {\n      notificationNames: (this.notificationNames || []).slice(),\n      flagged: (this.flagged || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module SetNotificationsReadStatusRequest {\n  /**\n   * Standard JavaScript object representation for SetNotificationsReadStatusRequest\n   */\n  export interface AsObject {\n    notificationNames: string[];\n    flagged: boolean[];\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for SetNotificationsReadStatusRequest\n   */\n  export interface AsProtobufJSON {\n    notificationNames: string[];\n    flagged: boolean[];\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetNotificationRequest\n */\nexport class GetNotificationRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetNotificationRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetNotificationRequest();\n    GetNotificationRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetNotificationRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetNotificationRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetNotificationRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetNotificationRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetNotificationRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetNotificationRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    GetNotificationRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetNotificationRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetNotificationRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetNotificationRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetNotificationRequest {\n  /**\n   * Standard JavaScript object representation for GetNotificationRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetNotificationRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateNotificationRequest\n */\nexport class UpdateNotificationRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateNotificationRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateNotificationRequest();\n    UpdateNotificationRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateNotificationRequest) {\n    _instance.notification = _instance.notification || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateNotificationRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.notification = new Notification();\n          _reader.readMessage(\n            _instance.notification,\n            Notification.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateNotificationRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateNotificationRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notification) {\n      _writer.writeMessage(\n        1,\n        _instance.notification as any,\n        Notification.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _notification?: Notification;\n  private _updateMask?: googleProtobuf000.FieldMask;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateNotificationRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateNotificationRequest.AsObject>) {\n    _value = _value || {};\n    this.notification = _value.notification\n      ? new Notification(_value.notification)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf000.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    UpdateNotificationRequest.refineValues(this);\n  }\n  get notification(): Notification | undefined {\n    return this._notification;\n  }\n  set notification(value: Notification | undefined) {\n    this._notification = value;\n  }\n  get updateMask(): googleProtobuf000.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateNotificationRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateNotificationRequest.AsObject {\n    return {\n      notification: this.notification\n        ? this.notification.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateNotificationRequest.AsProtobufJSON {\n    return {\n      notification: this.notification\n        ? this.notification.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module UpdateNotificationRequest {\n  /**\n   * Standard JavaScript object representation for UpdateNotificationRequest\n   */\n  export interface AsObject {\n    notification?: Notification.AsObject;\n    updateMask?: googleProtobuf000.FieldMask.AsObject;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateNotificationRequest\n   */\n  export interface AsProtobufJSON {\n    notification: Notification.AsProtobufJSON | null;\n    updateMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteNotificationsRequest\n */\nexport class DeleteNotificationsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteNotificationsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteNotificationsRequest();\n    DeleteNotificationsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteNotificationsRequest) {\n    _instance.notificationNames = _instance.notificationNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteNotificationsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.notificationNames =\n            _instance.notificationNames || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteNotificationsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteNotificationsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notificationNames && _instance.notificationNames.length) {\n      _writer.writeRepeatedString(1, _instance.notificationNames);\n    }\n  }\n\n  private _notificationNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteNotificationsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteNotificationsRequest.AsObject>) {\n    _value = _value || {};\n    this.notificationNames = (_value.notificationNames || []).slice();\n    DeleteNotificationsRequest.refineValues(this);\n  }\n  get notificationNames(): string[] {\n    return this._notificationNames;\n  }\n  set notificationNames(value: string[]) {\n    this._notificationNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteNotificationsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteNotificationsRequest.AsObject {\n    return {\n      notificationNames: (this.notificationNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteNotificationsRequest.AsProtobufJSON {\n    return {\n      notificationNames: (this.notificationNames || []).slice()\n    };\n  }\n}\nexport module DeleteNotificationsRequest {\n  /**\n   * Standard JavaScript object representation for DeleteNotificationsRequest\n   */\n  export interface AsObject {\n    notificationNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteNotificationsRequest\n   */\n  export interface AsProtobufJSON {\n    notificationNames: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StreamNotificationsRequest\n */\nexport class StreamNotificationsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.StreamNotificationsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StreamNotificationsRequest();\n    StreamNotificationsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StreamNotificationsRequest) {\n    _instance.notificationFilter = _instance.notificationFilter || undefined;\n    _instance.includeExisting = _instance.includeExisting || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StreamNotificationsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.notificationFilter = new NotificationFilter();\n          _reader.readMessage(\n            _instance.notificationFilter,\n            NotificationFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.includeExisting = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StreamNotificationsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StreamNotificationsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.notificationFilter) {\n      _writer.writeMessage(\n        1,\n        _instance.notificationFilter as any,\n        NotificationFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.includeExisting) {\n      _writer.writeBool(2, _instance.includeExisting);\n    }\n  }\n\n  private _notificationFilter?: NotificationFilter;\n  private _includeExisting: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StreamNotificationsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<StreamNotificationsRequest.AsObject>) {\n    _value = _value || {};\n    this.notificationFilter = _value.notificationFilter\n      ? new NotificationFilter(_value.notificationFilter)\n      : undefined;\n    this.includeExisting = _value.includeExisting;\n    StreamNotificationsRequest.refineValues(this);\n  }\n  get notificationFilter(): NotificationFilter | undefined {\n    return this._notificationFilter;\n  }\n  set notificationFilter(value: NotificationFilter | undefined) {\n    this._notificationFilter = value;\n  }\n  get includeExisting(): boolean {\n    return this._includeExisting;\n  }\n  set includeExisting(value: boolean) {\n    this._includeExisting = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StreamNotificationsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StreamNotificationsRequest.AsObject {\n    return {\n      notificationFilter: this.notificationFilter\n        ? this.notificationFilter.toObject()\n        : undefined,\n      includeExisting: this.includeExisting\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StreamNotificationsRequest.AsProtobufJSON {\n    return {\n      notificationFilter: this.notificationFilter\n        ? this.notificationFilter.toProtobufJSON(options)\n        : null,\n      includeExisting: this.includeExisting\n    };\n  }\n}\nexport module StreamNotificationsRequest {\n  /**\n   * Standard JavaScript object representation for StreamNotificationsRequest\n   */\n  export interface AsObject {\n    notificationFilter?: NotificationFilter.AsObject;\n    includeExisting: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for StreamNotificationsRequest\n   */\n  export interface AsProtobufJSON {\n    notificationFilter: NotificationFilter.AsProtobufJSON | null;\n    includeExisting: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.KeyValuePair\n */\nexport class KeyValuePair implements GrpcMessage {\n  static id = 'ondewo.nlu.KeyValuePair';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new KeyValuePair();\n    KeyValuePair.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: KeyValuePair) {\n    _instance.key = _instance.key || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: KeyValuePair,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.key = _reader.readString();\n          break;\n        case 2:\n          _instance.intValue = _reader.readInt32();\n          break;\n        case 3:\n          _instance.floatValue = _reader.readFloat();\n          break;\n        case 4:\n          _instance.doubleValue = _reader.readDouble();\n          break;\n        case 5:\n          _instance.stringValue = _reader.readString();\n          break;\n        case 6:\n          _instance.createdAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    KeyValuePair.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: KeyValuePair,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.key) {\n      _writer.writeString(1, _instance.key);\n    }\n    if (_instance.intValue || _instance.intValue === 0) {\n      _writer.writeInt32(2, _instance.intValue);\n    }\n    if (_instance.floatValue || _instance.floatValue === 0) {\n      _writer.writeFloat(3, _instance.floatValue);\n    }\n    if (_instance.doubleValue || _instance.doubleValue === 0) {\n      _writer.writeDouble(4, _instance.doubleValue);\n    }\n    if (_instance.stringValue || _instance.stringValue === '') {\n      _writer.writeString(5, _instance.stringValue);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        6,\n        _instance.createdAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _key: string;\n  private _intValue: number;\n  private _floatValue: number;\n  private _doubleValue: number;\n  private _stringValue: string;\n  private _createdAt?: googleProtobuf002.Timestamp;\n\n  private _value: KeyValuePair.ValueCase = KeyValuePair.ValueCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of KeyValuePair to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<KeyValuePair.AsObject>) {\n    _value = _value || {};\n    this.key = _value.key;\n    this.intValue = _value.intValue;\n    this.floatValue = _value.floatValue;\n    this.doubleValue = _value.doubleValue;\n    this.stringValue = _value.stringValue;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf002.Timestamp(_value.createdAt)\n      : undefined;\n    KeyValuePair.refineValues(this);\n  }\n  get key(): string {\n    return this._key;\n  }\n  set key(value: string) {\n    this._key = value;\n  }\n  get intValue(): number {\n    return this._intValue;\n  }\n  set intValue(value: number) {\n    if (value !== undefined && value !== null) {\n      this._floatValue = this._doubleValue = this._stringValue = this._createdAt = undefined;\n      this._value = KeyValuePair.ValueCase.intValue;\n    }\n    this._intValue = value;\n  }\n  get floatValue(): number {\n    return this._floatValue;\n  }\n  set floatValue(value: number) {\n    if (value !== undefined && value !== null) {\n      this._intValue = this._doubleValue = this._stringValue = this._createdAt = undefined;\n      this._value = KeyValuePair.ValueCase.floatValue;\n    }\n    this._floatValue = value;\n  }\n  get doubleValue(): number {\n    return this._doubleValue;\n  }\n  set doubleValue(value: number) {\n    if (value !== undefined && value !== null) {\n      this._intValue = this._floatValue = this._stringValue = this._createdAt = undefined;\n      this._value = KeyValuePair.ValueCase.doubleValue;\n    }\n    this._doubleValue = value;\n  }\n  get stringValue(): string {\n    return this._stringValue;\n  }\n  set stringValue(value: string) {\n    if (value !== undefined && value !== null) {\n      this._intValue = this._floatValue = this._doubleValue = this._createdAt = undefined;\n      this._value = KeyValuePair.ValueCase.stringValue;\n    }\n    this._stringValue = value;\n  }\n  get createdAt(): googleProtobuf002.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf002.Timestamp | undefined) {\n    if (value !== undefined && value !== null) {\n      this._intValue = this._floatValue = this._doubleValue = this._stringValue = undefined;\n      this._value = KeyValuePair.ValueCase.createdAt;\n    }\n    this._createdAt = value;\n  }\n  get value() {\n    return this._value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    KeyValuePair.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): KeyValuePair.AsObject {\n    return {\n      key: this.key,\n      intValue: this.intValue,\n      floatValue: this.floatValue,\n      doubleValue: this.doubleValue,\n      stringValue: this.stringValue,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): KeyValuePair.AsProtobufJSON {\n    return {\n      key: this.key,\n      intValue:\n        this.intValue === null || this.intValue === undefined\n          ? null\n          : this.intValue,\n      floatValue:\n        this.floatValue === null || this.floatValue === undefined\n          ? null\n          : this.floatValue,\n      doubleValue:\n        this.doubleValue === null || this.doubleValue === undefined\n          ? null\n          : this.doubleValue,\n      stringValue:\n        this.stringValue === null || this.stringValue === undefined\n          ? null\n          : this.stringValue,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module KeyValuePair {\n  /**\n   * Standard JavaScript object representation for KeyValuePair\n   */\n  export interface AsObject {\n    key: string;\n    intValue: number;\n    floatValue: number;\n    doubleValue: number;\n    stringValue: string;\n    createdAt?: googleProtobuf002.Timestamp.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for KeyValuePair\n   */\n  export interface AsProtobufJSON {\n    key: string;\n    intValue: number | null;\n    floatValue: number | null;\n    doubleValue: number | null;\n    stringValue: string | null;\n    createdAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n  }\n  export enum ValueCase {\n    none = 0,\n    intValue = 1,\n    floatValue = 2,\n    doubleValue = 3,\n    stringValue = 4,\n    createdAt = 5\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LogEntry\n */\nexport class LogEntry implements GrpcMessage {\n  static id = 'ondewo.nlu.LogEntry';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LogEntry();\n    LogEntry.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LogEntry) {\n    _instance.name = _instance.name || '';\n    _instance.logEntrySequenceIndex = _instance.logEntrySequenceIndex || 0;\n    _instance.displayName = _instance.displayName || '';\n    _instance.logEntryTimestamp = _instance.logEntryTimestamp || undefined;\n    _instance.logEntryReceiveTimestamp =\n      _instance.logEntryReceiveTimestamp || undefined;\n    _instance.logEntrySeverity = _instance.logEntrySeverity || 0;\n    _instance.logEntryPhase = _instance.logEntryPhase || '';\n    _instance.logEntryOperationName = _instance.logEntryOperationName || '';\n    _instance.logEntryDetails = _instance.logEntryDetails || undefined;\n    _instance.logEntryContext = _instance.logEntryContext || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LogEntry,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.logEntrySequenceIndex = _reader.readInt32();\n          break;\n        case 3:\n          _instance.displayName = _reader.readString();\n          break;\n        case 4:\n          _instance.logEntryTimestamp = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.logEntryTimestamp,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.logEntryReceiveTimestamp = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.logEntryReceiveTimestamp,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.logEntrySeverity = _reader.readEnum();\n          break;\n        case 7:\n          _instance.logEntryPhase = _reader.readString();\n          break;\n        case 8:\n          _instance.logEntryOperationName = _reader.readString();\n          break;\n        case 9:\n          _instance.logEntryDetails = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.logEntryDetails,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.logEntryContext = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.logEntryContext,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LogEntry.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: LogEntry, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.logEntrySequenceIndex) {\n      _writer.writeInt32(2, _instance.logEntrySequenceIndex);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(3, _instance.displayName);\n    }\n    if (_instance.logEntryTimestamp) {\n      _writer.writeMessage(\n        4,\n        _instance.logEntryTimestamp as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.logEntryReceiveTimestamp) {\n      _writer.writeMessage(\n        5,\n        _instance.logEntryReceiveTimestamp as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.logEntrySeverity) {\n      _writer.writeEnum(6, _instance.logEntrySeverity);\n    }\n    if (_instance.logEntryPhase) {\n      _writer.writeString(7, _instance.logEntryPhase);\n    }\n    if (_instance.logEntryOperationName) {\n      _writer.writeString(8, _instance.logEntryOperationName);\n    }\n    if (_instance.logEntryDetails) {\n      _writer.writeMessage(\n        9,\n        _instance.logEntryDetails as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.logEntryContext) {\n      _writer.writeMessage(\n        10,\n        _instance.logEntryContext as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _logEntrySequenceIndex: number;\n  private _displayName: string;\n  private _logEntryTimestamp?: googleProtobuf002.Timestamp;\n  private _logEntryReceiveTimestamp?: googleProtobuf002.Timestamp;\n  private _logEntrySeverity: LogSeverity;\n  private _logEntryPhase: string;\n  private _logEntryOperationName: string;\n  private _logEntryDetails?: googleProtobuf001.Struct;\n  private _logEntryContext?: googleProtobuf001.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LogEntry to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LogEntry.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.logEntrySequenceIndex = _value.logEntrySequenceIndex;\n    this.displayName = _value.displayName;\n    this.logEntryTimestamp = _value.logEntryTimestamp\n      ? new googleProtobuf002.Timestamp(_value.logEntryTimestamp)\n      : undefined;\n    this.logEntryReceiveTimestamp = _value.logEntryReceiveTimestamp\n      ? new googleProtobuf002.Timestamp(_value.logEntryReceiveTimestamp)\n      : undefined;\n    this.logEntrySeverity = _value.logEntrySeverity;\n    this.logEntryPhase = _value.logEntryPhase;\n    this.logEntryOperationName = _value.logEntryOperationName;\n    this.logEntryDetails = _value.logEntryDetails\n      ? new googleProtobuf001.Struct(_value.logEntryDetails)\n      : undefined;\n    this.logEntryContext = _value.logEntryContext\n      ? new googleProtobuf001.Struct(_value.logEntryContext)\n      : undefined;\n    LogEntry.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get logEntrySequenceIndex(): number {\n    return this._logEntrySequenceIndex;\n  }\n  set logEntrySequenceIndex(value: number) {\n    this._logEntrySequenceIndex = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get logEntryTimestamp(): googleProtobuf002.Timestamp | undefined {\n    return this._logEntryTimestamp;\n  }\n  set logEntryTimestamp(value: googleProtobuf002.Timestamp | undefined) {\n    this._logEntryTimestamp = value;\n  }\n  get logEntryReceiveTimestamp(): googleProtobuf002.Timestamp | undefined {\n    return this._logEntryReceiveTimestamp;\n  }\n  set logEntryReceiveTimestamp(value: googleProtobuf002.Timestamp | undefined) {\n    this._logEntryReceiveTimestamp = value;\n  }\n  get logEntrySeverity(): LogSeverity {\n    return this._logEntrySeverity;\n  }\n  set logEntrySeverity(value: LogSeverity) {\n    this._logEntrySeverity = value;\n  }\n  get logEntryPhase(): string {\n    return this._logEntryPhase;\n  }\n  set logEntryPhase(value: string) {\n    this._logEntryPhase = value;\n  }\n  get logEntryOperationName(): string {\n    return this._logEntryOperationName;\n  }\n  set logEntryOperationName(value: string) {\n    this._logEntryOperationName = value;\n  }\n  get logEntryDetails(): googleProtobuf001.Struct | undefined {\n    return this._logEntryDetails;\n  }\n  set logEntryDetails(value: googleProtobuf001.Struct | undefined) {\n    this._logEntryDetails = value;\n  }\n  get logEntryContext(): googleProtobuf001.Struct | undefined {\n    return this._logEntryContext;\n  }\n  set logEntryContext(value: googleProtobuf001.Struct | undefined) {\n    this._logEntryContext = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LogEntry.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LogEntry.AsObject {\n    return {\n      name: this.name,\n      logEntrySequenceIndex: this.logEntrySequenceIndex,\n      displayName: this.displayName,\n      logEntryTimestamp: this.logEntryTimestamp\n        ? this.logEntryTimestamp.toObject()\n        : undefined,\n      logEntryReceiveTimestamp: this.logEntryReceiveTimestamp\n        ? this.logEntryReceiveTimestamp.toObject()\n        : undefined,\n      logEntrySeverity: this.logEntrySeverity,\n      logEntryPhase: this.logEntryPhase,\n      logEntryOperationName: this.logEntryOperationName,\n      logEntryDetails: this.logEntryDetails\n        ? this.logEntryDetails.toObject()\n        : undefined,\n      logEntryContext: this.logEntryContext\n        ? this.logEntryContext.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LogEntry.AsProtobufJSON {\n    return {\n      name: this.name,\n      logEntrySequenceIndex: this.logEntrySequenceIndex,\n      displayName: this.displayName,\n      logEntryTimestamp: this.logEntryTimestamp\n        ? this.logEntryTimestamp.toProtobufJSON(options)\n        : null,\n      logEntryReceiveTimestamp: this.logEntryReceiveTimestamp\n        ? this.logEntryReceiveTimestamp.toProtobufJSON(options)\n        : null,\n      logEntrySeverity:\n        LogSeverity[\n          this.logEntrySeverity === null || this.logEntrySeverity === undefined\n            ? 0\n            : this.logEntrySeverity\n        ],\n      logEntryPhase: this.logEntryPhase,\n      logEntryOperationName: this.logEntryOperationName,\n      logEntryDetails: this.logEntryDetails\n        ? this.logEntryDetails.toProtobufJSON(options)\n        : null,\n      logEntryContext: this.logEntryContext\n        ? this.logEntryContext.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LogEntry {\n  /**\n   * Standard JavaScript object representation for LogEntry\n   */\n  export interface AsObject {\n    name: string;\n    logEntrySequenceIndex: number;\n    displayName: string;\n    logEntryTimestamp?: googleProtobuf002.Timestamp.AsObject;\n    logEntryReceiveTimestamp?: googleProtobuf002.Timestamp.AsObject;\n    logEntrySeverity: LogSeverity;\n    logEntryPhase: string;\n    logEntryOperationName: string;\n    logEntryDetails?: googleProtobuf001.Struct.AsObject;\n    logEntryContext?: googleProtobuf001.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LogEntry\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    logEntrySequenceIndex: number;\n    displayName: string;\n    logEntryTimestamp: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    logEntryReceiveTimestamp: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    logEntrySeverity: string;\n    logEntryPhase: string;\n    logEntryOperationName: string;\n    logEntryDetails: googleProtobuf001.Struct.AsProtobufJSON | null;\n    logEntryContext: googleProtobuf001.Struct.AsProtobufJSON | null;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nexport enum DefaultProjectRole {\n  PROJECT_UNSPECIFIED = 0,\n  PROJECT_USER = 1,\n  PROJECT_EXECUTOR = 2,\n  PROJECT_DEVELOPER = 3,\n  PROJECT_ADMIN = 4,\n  PROJECT_INACTIVE = 5\n}\nexport enum ProjectRoleView {\n  PROJECT_ROLE_VIEW_UNSPECIFIED = 0,\n  PROJECT_ROLE_VIEW_SHALLOW = 1,\n  PROJECT_ROLE_VIEW_FULL = 2\n}\n/**\n * Message implementation for ondewo.nlu.ProjectRole\n */\nexport class ProjectRole implements GrpcMessage {\n  static id = 'ondewo.nlu.ProjectRole';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ProjectRole();\n    ProjectRole.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ProjectRole) {\n    _instance.roleId = _instance.roleId || 0;\n    _instance.name = _instance.name || '';\n    _instance.permissions = _instance.permissions || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ProjectRole,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.roleId = _reader.readUint32();\n          break;\n        case 2:\n          _instance.name = _reader.readString();\n          break;\n        case 3:\n          (_instance.permissions = _instance.permissions || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ProjectRole.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ProjectRole,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.roleId) {\n      _writer.writeUint32(1, _instance.roleId);\n    }\n    if (_instance.name) {\n      _writer.writeString(2, _instance.name);\n    }\n    if (_instance.permissions && _instance.permissions.length) {\n      _writer.writeRepeatedString(3, _instance.permissions);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        4,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        5,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(7, _instance.modifiedBy);\n    }\n  }\n\n  private _roleId: number;\n  private _name: string;\n  private _permissions: string[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ProjectRole to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ProjectRole.AsObject>) {\n    _value = _value || {};\n    this.roleId = _value.roleId;\n    this.name = _value.name;\n    this.permissions = (_value.permissions || []).slice();\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    ProjectRole.refineValues(this);\n  }\n  get roleId(): number {\n    return this._roleId;\n  }\n  set roleId(value: number) {\n    this._roleId = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get permissions(): string[] {\n    return this._permissions;\n  }\n  set permissions(value: string[]) {\n    this._permissions = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ProjectRole.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ProjectRole.AsObject {\n    return {\n      roleId: this.roleId,\n      name: this.name,\n      permissions: (this.permissions || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ProjectRole.AsProtobufJSON {\n    return {\n      roleId: this.roleId,\n      name: this.name,\n      permissions: (this.permissions || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module ProjectRole {\n  /**\n   * Standard JavaScript object representation for ProjectRole\n   */\n  export interface AsObject {\n    roleId: number;\n    name: string;\n    permissions: string[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ProjectRole\n   */\n  export interface AsProtobufJSON {\n    roleId: number;\n    name: string;\n    permissions: string[];\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateProjectRoleRequest\n */\nexport class CreateProjectRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateProjectRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateProjectRoleRequest();\n    CreateProjectRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateProjectRoleRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.role = _instance.role || undefined;\n    _instance.projectRoleView = _instance.projectRoleView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateProjectRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.role = new ProjectRole();\n          _reader.readMessage(\n            _instance.role,\n            ProjectRole.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.projectRoleView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateProjectRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateProjectRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.role) {\n      _writer.writeMessage(\n        2,\n        _instance.role as any,\n        ProjectRole.serializeBinaryToWriter\n      );\n    }\n    if (_instance.projectRoleView) {\n      _writer.writeEnum(3, _instance.projectRoleView);\n    }\n  }\n\n  private _parent: string;\n  private _role?: ProjectRole;\n  private _projectRoleView: ProjectRoleView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateProjectRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateProjectRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.role = _value.role ? new ProjectRole(_value.role) : undefined;\n    this.projectRoleView = _value.projectRoleView;\n    CreateProjectRoleRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get role(): ProjectRole | undefined {\n    return this._role;\n  }\n  set role(value: ProjectRole | undefined) {\n    this._role = value;\n  }\n  get projectRoleView(): ProjectRoleView {\n    return this._projectRoleView;\n  }\n  set projectRoleView(value: ProjectRoleView) {\n    this._projectRoleView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateProjectRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateProjectRoleRequest.AsObject {\n    return {\n      parent: this.parent,\n      role: this.role ? this.role.toObject() : undefined,\n      projectRoleView: this.projectRoleView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateProjectRoleRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      role: this.role ? this.role.toProtobufJSON(options) : null,\n      projectRoleView:\n        ProjectRoleView[\n          this.projectRoleView === null || this.projectRoleView === undefined\n            ? 0\n            : this.projectRoleView\n        ]\n    };\n  }\n}\nexport module CreateProjectRoleRequest {\n  /**\n   * Standard JavaScript object representation for CreateProjectRoleRequest\n   */\n  export interface AsObject {\n    parent: string;\n    role?: ProjectRole.AsObject;\n    projectRoleView: ProjectRoleView;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateProjectRoleRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    role: ProjectRole.AsProtobufJSON | null;\n    projectRoleView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateProjectRoleRequest\n */\nexport class UpdateProjectRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateProjectRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateProjectRoleRequest();\n    UpdateProjectRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateProjectRoleRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.role = _instance.role || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.projectRoleView = _instance.projectRoleView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateProjectRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.role = new ProjectRole();\n          _reader.readMessage(\n            _instance.role,\n            ProjectRole.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.updateMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.projectRoleView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateProjectRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateProjectRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.role) {\n      _writer.writeMessage(\n        2,\n        _instance.role as any,\n        ProjectRole.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        3,\n        _instance.updateMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.projectRoleView) {\n      _writer.writeEnum(4, _instance.projectRoleView);\n    }\n  }\n\n  private _parent: string;\n  private _role?: ProjectRole;\n  private _updateMask?: googleProtobuf004.FieldMask;\n  private _projectRoleView: ProjectRoleView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateProjectRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateProjectRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.role = _value.role ? new ProjectRole(_value.role) : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf004.FieldMask(_value.updateMask)\n      : undefined;\n    this.projectRoleView = _value.projectRoleView;\n    UpdateProjectRoleRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get role(): ProjectRole | undefined {\n    return this._role;\n  }\n  set role(value: ProjectRole | undefined) {\n    this._role = value;\n  }\n  get updateMask(): googleProtobuf004.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get projectRoleView(): ProjectRoleView {\n    return this._projectRoleView;\n  }\n  set projectRoleView(value: ProjectRoleView) {\n    this._projectRoleView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateProjectRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateProjectRoleRequest.AsObject {\n    return {\n      parent: this.parent,\n      role: this.role ? this.role.toObject() : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      projectRoleView: this.projectRoleView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateProjectRoleRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      role: this.role ? this.role.toProtobufJSON(options) : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      projectRoleView:\n        ProjectRoleView[\n          this.projectRoleView === null || this.projectRoleView === undefined\n            ? 0\n            : this.projectRoleView\n        ]\n    };\n  }\n}\nexport module UpdateProjectRoleRequest {\n  /**\n   * Standard JavaScript object representation for UpdateProjectRoleRequest\n   */\n  export interface AsObject {\n    parent: string;\n    role?: ProjectRole.AsObject;\n    updateMask?: googleProtobuf004.FieldMask.AsObject;\n    projectRoleView: ProjectRoleView;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateProjectRoleRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    role: ProjectRole.AsProtobufJSON | null;\n    updateMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n    projectRoleView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetProjectRoleRequest\n */\nexport class GetProjectRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetProjectRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetProjectRoleRequest();\n    GetProjectRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetProjectRoleRequest) {\n    _instance.parent = _instance.parent || '';\n\n    _instance.projectRoleView = _instance.projectRoleView || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetProjectRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.roleId = _reader.readUint32();\n          break;\n        case 3:\n          _instance.roleName = _reader.readString();\n          break;\n        case 4:\n          _instance.projectRoleView = _reader.readEnum();\n          break;\n        case 5:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetProjectRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetProjectRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.roleId || _instance.roleId === 0) {\n      _writer.writeUint32(2, _instance.roleId);\n    }\n    if (_instance.roleName || _instance.roleName === '') {\n      _writer.writeString(3, _instance.roleName);\n    }\n    if (_instance.projectRoleView) {\n      _writer.writeEnum(4, _instance.projectRoleView);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        5,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _roleId: number;\n  private _roleName: string;\n  private _projectRoleView: ProjectRoleView;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  private _projectRoleIdentifier: GetProjectRoleRequest.ProjectRoleIdentifierCase =\n    GetProjectRoleRequest.ProjectRoleIdentifierCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetProjectRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetProjectRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.roleId = _value.roleId;\n    this.roleName = _value.roleName;\n    this.projectRoleView = _value.projectRoleView;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    GetProjectRoleRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get roleId(): number {\n    return this._roleId;\n  }\n  set roleId(value: number) {\n    if (value !== undefined && value !== null) {\n      this._roleName = undefined;\n      this._projectRoleIdentifier =\n        GetProjectRoleRequest.ProjectRoleIdentifierCase.roleId;\n    }\n    this._roleId = value;\n  }\n  get roleName(): string {\n    return this._roleName;\n  }\n  set roleName(value: string) {\n    if (value !== undefined && value !== null) {\n      this._roleId = undefined;\n      this._projectRoleIdentifier =\n        GetProjectRoleRequest.ProjectRoleIdentifierCase.roleName;\n    }\n    this._roleName = value;\n  }\n  get projectRoleView(): ProjectRoleView {\n    return this._projectRoleView;\n  }\n  set projectRoleView(value: ProjectRoleView) {\n    this._projectRoleView = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get projectRoleIdentifier() {\n    return this._projectRoleIdentifier;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetProjectRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetProjectRoleRequest.AsObject {\n    return {\n      parent: this.parent,\n      roleId: this.roleId,\n      roleName: this.roleName,\n      projectRoleView: this.projectRoleView,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetProjectRoleRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      roleId:\n        this.roleId === null || this.roleId === undefined ? null : this.roleId,\n      roleName:\n        this.roleName === null || this.roleName === undefined\n          ? null\n          : this.roleName,\n      projectRoleView:\n        ProjectRoleView[\n          this.projectRoleView === null || this.projectRoleView === undefined\n            ? 0\n            : this.projectRoleView\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetProjectRoleRequest {\n  /**\n   * Standard JavaScript object representation for GetProjectRoleRequest\n   */\n  export interface AsObject {\n    parent: string;\n    roleId: number;\n    roleName: string;\n    projectRoleView: ProjectRoleView;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetProjectRoleRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    roleId: number | null;\n    roleName: string | null;\n    projectRoleView: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n  export enum ProjectRoleIdentifierCase {\n    none = 0,\n    roleId = 1,\n    roleName = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteProjectRoleRequest\n */\nexport class DeleteProjectRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteProjectRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteProjectRoleRequest();\n    DeleteProjectRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteProjectRoleRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.roleId = _instance.roleId || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteProjectRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.roleId = _reader.readUint32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteProjectRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteProjectRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.roleId) {\n      _writer.writeUint32(2, _instance.roleId);\n    }\n  }\n\n  private _parent: string;\n  private _roleId: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteProjectRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteProjectRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.roleId = _value.roleId;\n    DeleteProjectRoleRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get roleId(): number {\n    return this._roleId;\n  }\n  set roleId(value: number) {\n    this._roleId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteProjectRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteProjectRoleRequest.AsObject {\n    return {\n      parent: this.parent,\n      roleId: this.roleId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteProjectRoleRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      roleId: this.roleId\n    };\n  }\n}\nexport module DeleteProjectRoleRequest {\n  /**\n   * Standard JavaScript object representation for DeleteProjectRoleRequest\n   */\n  export interface AsObject {\n    parent: string;\n    roleId: number;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteProjectRoleRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    roleId: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListProjectRolesRequest\n */\nexport class ListProjectRolesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListProjectRolesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListProjectRolesRequest();\n    ListProjectRolesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListProjectRolesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.projectRoleView = _instance.projectRoleView || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListProjectRolesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.projectRoleView = _reader.readEnum();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListProjectRolesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListProjectRolesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.projectRoleView) {\n      _writer.writeEnum(3, _instance.projectRoleView);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _projectRoleView: ProjectRoleView;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListProjectRolesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListProjectRolesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.projectRoleView = _value.projectRoleView;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    ListProjectRolesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get projectRoleView(): ProjectRoleView {\n    return this._projectRoleView;\n  }\n  set projectRoleView(value: ProjectRoleView) {\n    this._projectRoleView = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListProjectRolesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListProjectRolesRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      projectRoleView: this.projectRoleView,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListProjectRolesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      projectRoleView:\n        ProjectRoleView[\n          this.projectRoleView === null || this.projectRoleView === undefined\n            ? 0\n            : this.projectRoleView\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListProjectRolesRequest {\n  /**\n   * Standard JavaScript object representation for ListProjectRolesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    projectRoleView: ProjectRoleView;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListProjectRolesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    projectRoleView: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListProjectRolesResponse\n */\nexport class ListProjectRolesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListProjectRolesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListProjectRolesResponse();\n    ListProjectRolesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListProjectRolesResponse) {\n    _instance.projectRoles = _instance.projectRoles || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListProjectRolesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ProjectRole();\n          _reader.readMessage(\n            messageInitializer1,\n            ProjectRole.deserializeBinaryFromReader\n          );\n          (_instance.projectRoles = _instance.projectRoles || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListProjectRolesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListProjectRolesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.projectRoles && _instance.projectRoles.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.projectRoles as any,\n        ProjectRole.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _projectRoles?: ProjectRole[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListProjectRolesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListProjectRolesResponse.AsObject>) {\n    _value = _value || {};\n    this.projectRoles = (_value.projectRoles || []).map(\n      m => new ProjectRole(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListProjectRolesResponse.refineValues(this);\n  }\n  get projectRoles(): ProjectRole[] | undefined {\n    return this._projectRoles;\n  }\n  set projectRoles(value: ProjectRole[] | undefined) {\n    this._projectRoles = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListProjectRolesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListProjectRolesResponse.AsObject {\n    return {\n      projectRoles: (this.projectRoles || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListProjectRolesResponse.AsProtobufJSON {\n    return {\n      projectRoles: (this.projectRoles || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListProjectRolesResponse {\n  /**\n   * Standard JavaScript object representation for ListProjectRolesResponse\n   */\n  export interface AsObject {\n    projectRoles?: ProjectRole.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListProjectRolesResponse\n   */\n  export interface AsProtobufJSON {\n    projectRoles: ProjectRole.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleProtobuf000 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu003 from '../../ondewo/nlu/common.pb';\nexport enum CcaiProjectStatus {\n  CCAI_PROJECT_STATUS_UNSPECIFIED = 0,\n  CCAI_PROJECT_STATUS_UNDEPLOYED = 1,\n  CCAI_PROJECT_STATUS_UPDATING = 2,\n  CCAI_PROJECT_STATUS_DEPLOYING = 3,\n  CCAI_PROJECT_STATUS_DEPLOYED = 4,\n  CCAI_PROJECT_STATUS_UNDEPLOYING = 5,\n  CCAI_PROJECT_STATUS_DELETING = 6,\n  CCAI_PROJECT_STATUS_DELETED = 7\n}\nexport enum CcaiServiceType {\n  CCAI_SERVICE_TYPE_UNSPECIFIED = 0,\n  CCAI_SERVICE_TYPE_ONDEWO_AIM = 1,\n  CCAI_SERVICE_TYPE_ONDEWO_BPI = 2,\n  CCAI_SERVICE_TYPE_ONDEWO_CSI = 3,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU = 4,\n  CCAI_SERVICE_TYPE_ONDEWO_S2T = 5,\n  CCAI_SERVICE_TYPE_ONDEWO_SIP = 6,\n  CCAI_SERVICE_TYPE_ONDEWO_T2S = 7,\n  CCAI_SERVICE_TYPE_ONDEWO_VTSI = 8,\n  CCAI_SERVICE_TYPE_ONDEWO_VTSI_RABBITMQ = 9,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_QA = 10,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_WEBHOOK = 11,\n  CCAI_SERVICE_TYPE_ONDEWO_SURVEY = 12,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM = 13,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_WEBSEARCH = 14,\n  CCAI_SERVICE_TYPE_ONDEWO_AIM_WEBCHAT = 15,\n  CCAI_SERVICE_TYPE_ONDEWO_AIM_WEBPHONE = 16,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_VECTORSTORE = 17,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM_AGENT = 18,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM_MCP = 19,\n  CCAI_SERVICE_TYPE_ONDEWO_NLU_LLM_RAG = 20,\n  CCAI_SERVICE_TYPE_ONDEWO_ANALYTICS = 21,\n  CCAI_SERVICE_TYPE_ONDEWO_ANALYTICS_DASHBOARD = 22,\n  CCAI_SERVICE_TYPE_ONDEWO_VTSI_OUTBOUND_CAMPAIGN = 23,\n  CCAI_SERVICE_TYPE_ONDEWO_VTSI_INBOUND_CAMPAIGN = 24\n}\nexport enum CcaiServiceProvider {\n  NO_CCAI_SERVICE_PROVIDER = 0,\n  CCAI_SERVICE_PROVIDER_ONDEWO = 1,\n  CCAI_SERVICE_PROVIDER_GOOGLE_GEMINI = 2,\n  CCAI_SERVICE_PROVIDER_MICROSOFT_AZURE_OPENAI = 3,\n  CCAI_SERVICE_PROVIDER_MICROSOFT_AUTOGEN = 4,\n  CCAI_SERVICE_PROVIDER_OLLAMA = 5,\n  CCAI_SERVICE_PROVIDER_OPENAI = 6,\n  CCAI_SERVICE_PROVIDER_ANTHROPIC = 7,\n  CCAI_SERVICE_PROVIDER_HUGGINGFACE = 8,\n  CCAI_SERVICE_PROVIDER_IBM = 9,\n  CCAI_SERVICE_PROVIDER_HAYSTACK = 10,\n  CCAI_SERVICE_PROVIDER_LANGCHAIN = 11,\n  CCAI_SERVICE_PROVIDER_AMAZON = 12,\n  CCAI_SERVICE_PROVIDER_MISTRAL = 13,\n  CCAI_SERVICE_PROVIDER_DUCKDUCKGO = 14,\n  CCAI_SERVICE_PROVIDER_GOOGLE_PSE = 15,\n  CCAI_SERVICE_PROVIDER_JINA = 16,\n  CCAI_SERVICE_PROVIDER_TAVILY = 17,\n  CCAI_SERVICE_PROVIDER_ELASTICSEARCH = 18,\n  CCAI_SERVICE_PROVIDER_MILVUS = 19,\n  CCAI_SERVICE_PROVIDER_QDRANT = 20,\n  CCAI_SERVICE_PROVIDER_CHROMA = 21,\n  CCAI_SERVICE_PROVIDER_GOOGLE = 22,\n  CCAI_SERVICE_PROVIDER_MICROSOFT = 23,\n  CCAI_SERVICE_PROVIDER_DEEPGRAM = 24,\n  CCAI_SERVICE_PROVIDER_ELEVENLABS = 25,\n  CCAI_SERVICE_PROVIDER_HUGGINGFACE_TGI = 26,\n  CCAI_SERVICE_PROVIDER_HUGGINGFACE_TGE = 27,\n  CCAI_SERVICE_PROVIDER_HUGGINGFACE_SMOLAGENTS = 28,\n  CCAI_SERVICE_PROVIDER_GOOGLE_AGENT_DEVELOPMENT_KIT = 29,\n  CCAI_SERVICE_PROVIDER_MODEL_CONTEXT_PROTOCOL = 30,\n  CCAI_SERVICE_PROVIDER_OPENSEARCH = 31,\n  CCAI_SERVICE_PROVIDER_GROK = 32,\n  CCAI_SERVICE_PROVIDER_POSTGRES = 33,\n  CCAI_SERVICE_PROVIDER_MICROSOFT_AGENT_FRAMEWORK = 34\n}\nexport enum CcaiProjectView {\n  CCAI_PROJECT_VIEW_UNSPECIFIED = 0,\n  CCAI_PROJECT_VIEW_FULL = 1,\n  CCAI_PROJECT_VIEW_SHALLOW = 2,\n  CCAI_PROJECT_VIEW_MINIMUM = 3\n}\n/**\n * Message implementation for ondewo.nlu.CcaiProject\n */\nexport class CcaiProject implements GrpcMessage {\n  static id = 'ondewo.nlu.CcaiProject';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CcaiProject();\n    CcaiProject.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CcaiProject) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.ownerName = _instance.ownerName || '';\n    _instance.ccaiServicesMap = _instance.ccaiServicesMap || {};\n    _instance.ccaiProjectStatus = _instance.ccaiProjectStatus || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.nluProjectName = _instance.nluProjectName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CcaiProject,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.ownerName = _reader.readString();\n          break;\n        case 4:\n          const msg_4 = {} as any;\n          _reader.readMessage(\n            msg_4,\n            CcaiProject.CcaiServicesMapEntry.deserializeBinaryFromReader\n          );\n          _instance.ccaiServicesMap = _instance.ccaiServicesMap || {};\n          _instance.ccaiServicesMap[msg_4.key] = msg_4.value;\n          break;\n        case 5:\n          _instance.ccaiProjectStatus = _reader.readEnum();\n          break;\n        case 6:\n          _instance.createdAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.modifiedAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 9:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 10:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CcaiProject.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CcaiProject,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.ownerName) {\n      _writer.writeString(3, _instance.ownerName);\n    }\n    if (!!_instance.ccaiServicesMap) {\n      const keys_4 = Object.keys(_instance.ccaiServicesMap as any);\n\n      if (keys_4.length) {\n        const repeated_4 = keys_4\n          .map(key => ({\n            key: key,\n            value: (_instance.ccaiServicesMap as any)[key]\n          }))\n          .reduce((r, v) => [...r, v], [] as any[]);\n\n        _writer.writeRepeatedMessage(\n          4,\n          repeated_4,\n          CcaiProject.CcaiServicesMapEntry.serializeBinaryToWriter\n        );\n      }\n    }\n    if (_instance.ccaiProjectStatus) {\n      _writer.writeEnum(5, _instance.ccaiProjectStatus);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        6,\n        _instance.createdAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        7,\n        _instance.modifiedAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(8, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(9, _instance.modifiedBy);\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(10, _instance.nluProjectName);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _ownerName: string;\n  private _ccaiServicesMap: { [prop: string]: CcaiServiceList };\n  private _ccaiProjectStatus: CcaiProjectStatus;\n  private _createdAt?: googleProtobuf002.Timestamp;\n  private _modifiedAt?: googleProtobuf002.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _nluProjectName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CcaiProject to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CcaiProject.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.ownerName = _value.ownerName;\n    (this.ccaiServicesMap = _value!.ccaiServicesMap\n      ? Object.keys(_value!.ccaiServicesMap).reduce(\n          (r, k) => ({\n            ...r,\n            [k]: _value!.ccaiServicesMap![k]\n              ? new CcaiServiceList(_value!.ccaiServicesMap![k])\n              : undefined\n          }),\n          {}\n        )\n      : {}),\n      (this.ccaiProjectStatus = _value.ccaiProjectStatus);\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf002.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf002.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.nluProjectName = _value.nluProjectName;\n    CcaiProject.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get ownerName(): string {\n    return this._ownerName;\n  }\n  set ownerName(value: string) {\n    this._ownerName = value;\n  }\n  get ccaiServicesMap(): { [prop: string]: CcaiServiceList } {\n    return this._ccaiServicesMap;\n  }\n  set ccaiServicesMap(value: { [prop: string]: CcaiServiceList }) {\n    this._ccaiServicesMap = value;\n  }\n  get ccaiProjectStatus(): CcaiProjectStatus {\n    return this._ccaiProjectStatus;\n  }\n  set ccaiProjectStatus(value: CcaiProjectStatus) {\n    this._ccaiProjectStatus = value;\n  }\n  get createdAt(): googleProtobuf002.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf002.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CcaiProject.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CcaiProject.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      ownerName: this.ownerName,\n      ccaiServicesMap: this.ccaiServicesMap\n        ? Object.keys(this.ccaiServicesMap).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.ccaiServicesMap![k]\n                ? this.ccaiServicesMap![k].toObject()\n                : undefined\n            }),\n            {}\n          )\n        : {},\n      ccaiProjectStatus: this.ccaiProjectStatus,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      nluProjectName: this.nluProjectName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CcaiProject.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      ownerName: this.ownerName,\n      ccaiServicesMap: this.ccaiServicesMap\n        ? Object.keys(this.ccaiServicesMap).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.ccaiServicesMap![k]\n                ? this.ccaiServicesMap![k].toJSON()\n                : null\n            }),\n            {}\n          )\n        : {},\n      ccaiProjectStatus:\n        CcaiProjectStatus[\n          this.ccaiProjectStatus === null ||\n          this.ccaiProjectStatus === undefined\n            ? 0\n            : this.ccaiProjectStatus\n        ],\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      nluProjectName: this.nluProjectName\n    };\n  }\n}\nexport module CcaiProject {\n  /**\n   * Standard JavaScript object representation for CcaiProject\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    ownerName: string;\n    ccaiServicesMap: { [prop: string]: CcaiServiceList };\n    ccaiProjectStatus: CcaiProjectStatus;\n    createdAt?: googleProtobuf002.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf002.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    nluProjectName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CcaiProject\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    ownerName: string;\n    ccaiServicesMap: { [prop: string]: CcaiServiceList };\n    ccaiProjectStatus: string;\n    createdAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    nluProjectName: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.CcaiProject.CcaiServicesMapEntry\n   */\n  export class CcaiServicesMapEntry implements GrpcMessage {\n    static id = 'ondewo.nlu.CcaiProject.CcaiServicesMapEntry';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new CcaiServicesMapEntry();\n      CcaiServicesMapEntry.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: CcaiServicesMapEntry) {\n      _instance.key = _instance.key || '';\n      _instance.value = _instance.value || undefined;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: CcaiServicesMapEntry,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.key = _reader.readString();\n            break;\n          case 2:\n            _instance.value = new CcaiServiceList();\n            _reader.readMessage(\n              _instance.value,\n              CcaiServiceList.deserializeBinaryFromReader\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      CcaiServicesMapEntry.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: CcaiServicesMapEntry,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.key) {\n        _writer.writeString(1, _instance.key);\n      }\n      if (_instance.value) {\n        _writer.writeMessage(\n          2,\n          _instance.value as any,\n          CcaiServiceList.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _key: string;\n    private _value?: CcaiServiceList;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of CcaiServicesMapEntry to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<CcaiServicesMapEntry.AsObject>) {\n      _value = _value || {};\n      this.key = _value.key;\n      this.value = _value.value ? new CcaiServiceList(_value.value) : undefined;\n      CcaiServicesMapEntry.refineValues(this);\n    }\n    get key(): string {\n      return this._key;\n    }\n    set key(value: string) {\n      this._key = value;\n    }\n    get value(): CcaiServiceList | undefined {\n      return this._value;\n    }\n    set value(value: CcaiServiceList | undefined) {\n      this._value = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      CcaiServicesMapEntry.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): CcaiServicesMapEntry.AsObject {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toObject() : undefined\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): CcaiServicesMapEntry.AsProtobufJSON {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toProtobufJSON(options) : null\n      };\n    }\n  }\n  export module CcaiServicesMapEntry {\n    /**\n     * Standard JavaScript object representation for CcaiServicesMapEntry\n     */\n    export interface AsObject {\n      key: string;\n      value?: CcaiServiceList.AsObject;\n    }\n\n    /**\n     * Protobuf JSON representation for CcaiServicesMapEntry\n     */\n    export interface AsProtobufJSON {\n      key: string;\n      value: CcaiServiceList.AsProtobufJSON | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CcaiServiceList\n */\nexport class CcaiServiceList implements GrpcMessage {\n  static id = 'ondewo.nlu.CcaiServiceList';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CcaiServiceList();\n    CcaiServiceList.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CcaiServiceList) {\n    _instance.ccaiServices = _instance.ccaiServices || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CcaiServiceList,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new CcaiService();\n          _reader.readMessage(\n            messageInitializer1,\n            CcaiService.deserializeBinaryFromReader\n          );\n          (_instance.ccaiServices = _instance.ccaiServices || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CcaiServiceList.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CcaiServiceList,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiServices && _instance.ccaiServices.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.ccaiServices as any,\n        CcaiService.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _ccaiServices?: CcaiService[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CcaiServiceList to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CcaiServiceList.AsObject>) {\n    _value = _value || {};\n    this.ccaiServices = (_value.ccaiServices || []).map(\n      m => new CcaiService(m)\n    );\n    CcaiServiceList.refineValues(this);\n  }\n  get ccaiServices(): CcaiService[] | undefined {\n    return this._ccaiServices;\n  }\n  set ccaiServices(value: CcaiService[] | undefined) {\n    this._ccaiServices = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CcaiServiceList.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CcaiServiceList.AsObject {\n    return {\n      ccaiServices: (this.ccaiServices || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CcaiServiceList.AsProtobufJSON {\n    return {\n      ccaiServices: (this.ccaiServices || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module CcaiServiceList {\n  /**\n   * Standard JavaScript object representation for CcaiServiceList\n   */\n  export interface AsObject {\n    ccaiServices?: CcaiService.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for CcaiServiceList\n   */\n  export interface AsProtobufJSON {\n    ccaiServices: CcaiService.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CcaiService\n */\nexport class CcaiService implements GrpcMessage {\n  static id = 'ondewo.nlu.CcaiService';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CcaiService();\n    CcaiService.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CcaiService) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.grpcHost = _instance.grpcHost || '';\n    _instance.grpcPort = _instance.grpcPort || 0;\n    _instance.webgrpcHost = _instance.webgrpcHost || '';\n    _instance.webgrpcPort = _instance.webgrpcPort || 0;\n    _instance.grpcCert = _instance.grpcCert || '';\n    _instance.host = _instance.host || '';\n    _instance.port = _instance.port || 0;\n    _instance.port2 = _instance.port2 || 0;\n    _instance.httpBasicAuthToken = _instance.httpBasicAuthToken || '';\n    _instance.accountName = _instance.accountName || '';\n    _instance.accountPassword = _instance.accountPassword || '';\n    _instance.apiKey = _instance.apiKey || '';\n    _instance.ccaiServiceType = _instance.ccaiServiceType || 0;\n    _instance.ccaiProjectName = _instance.ccaiProjectName || '';\n    _instance.ccaiServiceConfig = _instance.ccaiServiceConfig || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.headers = _instance.headers || undefined;\n    _instance.ccaiServiceProvider = _instance.ccaiServiceProvider || 0;\n    _instance.serviceHierarchy = _instance.serviceHierarchy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CcaiService,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.grpcHost = _reader.readString();\n          break;\n        case 5:\n          _instance.grpcPort = _reader.readInt32();\n          break;\n        case 6:\n          _instance.webgrpcHost = _reader.readString();\n          break;\n        case 7:\n          _instance.webgrpcPort = _reader.readInt32();\n          break;\n        case 8:\n          _instance.grpcCert = _reader.readString();\n          break;\n        case 9:\n          _instance.host = _reader.readString();\n          break;\n        case 10:\n          _instance.port = _reader.readInt32();\n          break;\n        case 11:\n          _instance.port2 = _reader.readInt32();\n          break;\n        case 12:\n          _instance.httpBasicAuthToken = _reader.readString();\n          break;\n        case 13:\n          _instance.accountName = _reader.readString();\n          break;\n        case 14:\n          _instance.accountPassword = _reader.readString();\n          break;\n        case 15:\n          _instance.apiKey = _reader.readString();\n          break;\n        case 16:\n          _instance.ccaiServiceType = _reader.readEnum();\n          break;\n        case 17:\n          _instance.ccaiProjectName = _reader.readString();\n          break;\n        case 18:\n          _instance.ccaiServiceConfig = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.ccaiServiceConfig,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 19:\n          _instance.createdAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 20:\n          _instance.modifiedAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 21:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 22:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 23:\n          _instance.headers = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.headers,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 24:\n          _instance.ccaiServiceProvider = _reader.readEnum();\n          break;\n        case 25:\n          _instance.serviceHierarchy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CcaiService.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CcaiService,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.grpcHost) {\n      _writer.writeString(4, _instance.grpcHost);\n    }\n    if (_instance.grpcPort) {\n      _writer.writeInt32(5, _instance.grpcPort);\n    }\n    if (_instance.webgrpcHost) {\n      _writer.writeString(6, _instance.webgrpcHost);\n    }\n    if (_instance.webgrpcPort) {\n      _writer.writeInt32(7, _instance.webgrpcPort);\n    }\n    if (_instance.grpcCert) {\n      _writer.writeString(8, _instance.grpcCert);\n    }\n    if (_instance.host) {\n      _writer.writeString(9, _instance.host);\n    }\n    if (_instance.port) {\n      _writer.writeInt32(10, _instance.port);\n    }\n    if (_instance.port2) {\n      _writer.writeInt32(11, _instance.port2);\n    }\n    if (_instance.httpBasicAuthToken) {\n      _writer.writeString(12, _instance.httpBasicAuthToken);\n    }\n    if (_instance.accountName) {\n      _writer.writeString(13, _instance.accountName);\n    }\n    if (_instance.accountPassword) {\n      _writer.writeString(14, _instance.accountPassword);\n    }\n    if (_instance.apiKey) {\n      _writer.writeString(15, _instance.apiKey);\n    }\n    if (_instance.ccaiServiceType) {\n      _writer.writeEnum(16, _instance.ccaiServiceType);\n    }\n    if (_instance.ccaiProjectName) {\n      _writer.writeString(17, _instance.ccaiProjectName);\n    }\n    if (_instance.ccaiServiceConfig) {\n      _writer.writeMessage(\n        18,\n        _instance.ccaiServiceConfig as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        19,\n        _instance.createdAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        20,\n        _instance.modifiedAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(21, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(22, _instance.modifiedBy);\n    }\n    if (_instance.headers) {\n      _writer.writeMessage(\n        23,\n        _instance.headers as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiServiceProvider) {\n      _writer.writeEnum(24, _instance.ccaiServiceProvider);\n    }\n    if (_instance.serviceHierarchy) {\n      _writer.writeString(25, _instance.serviceHierarchy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _languageCode: string;\n  private _grpcHost: string;\n  private _grpcPort: number;\n  private _webgrpcHost: string;\n  private _webgrpcPort: number;\n  private _grpcCert: string;\n  private _host: string;\n  private _port: number;\n  private _port2: number;\n  private _httpBasicAuthToken: string;\n  private _accountName: string;\n  private _accountPassword: string;\n  private _apiKey: string;\n  private _ccaiServiceType: CcaiServiceType;\n  private _ccaiProjectName: string;\n  private _ccaiServiceConfig?: googleProtobuf001.Struct;\n  private _createdAt?: googleProtobuf002.Timestamp;\n  private _modifiedAt?: googleProtobuf002.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _headers?: googleProtobuf001.Struct;\n  private _ccaiServiceProvider: CcaiServiceProvider;\n  private _serviceHierarchy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CcaiService to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CcaiService.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.languageCode = _value.languageCode;\n    this.grpcHost = _value.grpcHost;\n    this.grpcPort = _value.grpcPort;\n    this.webgrpcHost = _value.webgrpcHost;\n    this.webgrpcPort = _value.webgrpcPort;\n    this.grpcCert = _value.grpcCert;\n    this.host = _value.host;\n    this.port = _value.port;\n    this.port2 = _value.port2;\n    this.httpBasicAuthToken = _value.httpBasicAuthToken;\n    this.accountName = _value.accountName;\n    this.accountPassword = _value.accountPassword;\n    this.apiKey = _value.apiKey;\n    this.ccaiServiceType = _value.ccaiServiceType;\n    this.ccaiProjectName = _value.ccaiProjectName;\n    this.ccaiServiceConfig = _value.ccaiServiceConfig\n      ? new googleProtobuf001.Struct(_value.ccaiServiceConfig)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf002.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf002.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.headers = _value.headers\n      ? new googleProtobuf001.Struct(_value.headers)\n      : undefined;\n    this.ccaiServiceProvider = _value.ccaiServiceProvider;\n    this.serviceHierarchy = _value.serviceHierarchy;\n    CcaiService.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get grpcHost(): string {\n    return this._grpcHost;\n  }\n  set grpcHost(value: string) {\n    this._grpcHost = value;\n  }\n  get grpcPort(): number {\n    return this._grpcPort;\n  }\n  set grpcPort(value: number) {\n    this._grpcPort = value;\n  }\n  get webgrpcHost(): string {\n    return this._webgrpcHost;\n  }\n  set webgrpcHost(value: string) {\n    this._webgrpcHost = value;\n  }\n  get webgrpcPort(): number {\n    return this._webgrpcPort;\n  }\n  set webgrpcPort(value: number) {\n    this._webgrpcPort = value;\n  }\n  get grpcCert(): string {\n    return this._grpcCert;\n  }\n  set grpcCert(value: string) {\n    this._grpcCert = value;\n  }\n  get host(): string {\n    return this._host;\n  }\n  set host(value: string) {\n    this._host = value;\n  }\n  get port(): number {\n    return this._port;\n  }\n  set port(value: number) {\n    this._port = value;\n  }\n  get port2(): number {\n    return this._port2;\n  }\n  set port2(value: number) {\n    this._port2 = value;\n  }\n  get httpBasicAuthToken(): string {\n    return this._httpBasicAuthToken;\n  }\n  set httpBasicAuthToken(value: string) {\n    this._httpBasicAuthToken = value;\n  }\n  get accountName(): string {\n    return this._accountName;\n  }\n  set accountName(value: string) {\n    this._accountName = value;\n  }\n  get accountPassword(): string {\n    return this._accountPassword;\n  }\n  set accountPassword(value: string) {\n    this._accountPassword = value;\n  }\n  get apiKey(): string {\n    return this._apiKey;\n  }\n  set apiKey(value: string) {\n    this._apiKey = value;\n  }\n  get ccaiServiceType(): CcaiServiceType {\n    return this._ccaiServiceType;\n  }\n  set ccaiServiceType(value: CcaiServiceType) {\n    this._ccaiServiceType = value;\n  }\n  get ccaiProjectName(): string {\n    return this._ccaiProjectName;\n  }\n  set ccaiProjectName(value: string) {\n    this._ccaiProjectName = value;\n  }\n  get ccaiServiceConfig(): googleProtobuf001.Struct | undefined {\n    return this._ccaiServiceConfig;\n  }\n  set ccaiServiceConfig(value: googleProtobuf001.Struct | undefined) {\n    this._ccaiServiceConfig = value;\n  }\n  get createdAt(): googleProtobuf002.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf002.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get headers(): googleProtobuf001.Struct | undefined {\n    return this._headers;\n  }\n  set headers(value: googleProtobuf001.Struct | undefined) {\n    this._headers = value;\n  }\n  get ccaiServiceProvider(): CcaiServiceProvider {\n    return this._ccaiServiceProvider;\n  }\n  set ccaiServiceProvider(value: CcaiServiceProvider) {\n    this._ccaiServiceProvider = value;\n  }\n  get serviceHierarchy(): string {\n    return this._serviceHierarchy;\n  }\n  set serviceHierarchy(value: string) {\n    this._serviceHierarchy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CcaiService.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CcaiService.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      languageCode: this.languageCode,\n      grpcHost: this.grpcHost,\n      grpcPort: this.grpcPort,\n      webgrpcHost: this.webgrpcHost,\n      webgrpcPort: this.webgrpcPort,\n      grpcCert: this.grpcCert,\n      host: this.host,\n      port: this.port,\n      port2: this.port2,\n      httpBasicAuthToken: this.httpBasicAuthToken,\n      accountName: this.accountName,\n      accountPassword: this.accountPassword,\n      apiKey: this.apiKey,\n      ccaiServiceType: this.ccaiServiceType,\n      ccaiProjectName: this.ccaiProjectName,\n      ccaiServiceConfig: this.ccaiServiceConfig\n        ? this.ccaiServiceConfig.toObject()\n        : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      headers: this.headers ? this.headers.toObject() : undefined,\n      ccaiServiceProvider: this.ccaiServiceProvider,\n      serviceHierarchy: this.serviceHierarchy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CcaiService.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      languageCode: this.languageCode,\n      grpcHost: this.grpcHost,\n      grpcPort: this.grpcPort,\n      webgrpcHost: this.webgrpcHost,\n      webgrpcPort: this.webgrpcPort,\n      grpcCert: this.grpcCert,\n      host: this.host,\n      port: this.port,\n      port2: this.port2,\n      httpBasicAuthToken: this.httpBasicAuthToken,\n      accountName: this.accountName,\n      accountPassword: this.accountPassword,\n      apiKey: this.apiKey,\n      ccaiServiceType:\n        CcaiServiceType[\n          this.ccaiServiceType === null || this.ccaiServiceType === undefined\n            ? 0\n            : this.ccaiServiceType\n        ],\n      ccaiProjectName: this.ccaiProjectName,\n      ccaiServiceConfig: this.ccaiServiceConfig\n        ? this.ccaiServiceConfig.toProtobufJSON(options)\n        : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      headers: this.headers ? this.headers.toProtobufJSON(options) : null,\n      ccaiServiceProvider:\n        CcaiServiceProvider[\n          this.ccaiServiceProvider === null ||\n          this.ccaiServiceProvider === undefined\n            ? 0\n            : this.ccaiServiceProvider\n        ],\n      serviceHierarchy: this.serviceHierarchy\n    };\n  }\n}\nexport module CcaiService {\n  /**\n   * Standard JavaScript object representation for CcaiService\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    languageCode: string;\n    grpcHost: string;\n    grpcPort: number;\n    webgrpcHost: string;\n    webgrpcPort: number;\n    grpcCert: string;\n    host: string;\n    port: number;\n    port2: number;\n    httpBasicAuthToken: string;\n    accountName: string;\n    accountPassword: string;\n    apiKey: string;\n    ccaiServiceType: CcaiServiceType;\n    ccaiProjectName: string;\n    ccaiServiceConfig?: googleProtobuf001.Struct.AsObject;\n    createdAt?: googleProtobuf002.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf002.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    headers?: googleProtobuf001.Struct.AsObject;\n    ccaiServiceProvider: CcaiServiceProvider;\n    serviceHierarchy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CcaiService\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    languageCode: string;\n    grpcHost: string;\n    grpcPort: number;\n    webgrpcHost: string;\n    webgrpcPort: number;\n    grpcCert: string;\n    host: string;\n    port: number;\n    port2: number;\n    httpBasicAuthToken: string;\n    accountName: string;\n    accountPassword: string;\n    apiKey: string;\n    ccaiServiceType: string;\n    ccaiProjectName: string;\n    ccaiServiceConfig: googleProtobuf001.Struct.AsProtobufJSON | null;\n    createdAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    headers: googleProtobuf001.Struct.AsProtobufJSON | null;\n    ccaiServiceProvider: string;\n    serviceHierarchy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateCcaiProjectRequest\n */\nexport class CreateCcaiProjectRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateCcaiProjectRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateCcaiProjectRequest();\n    CreateCcaiProjectRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateCcaiProjectRequest) {\n    _instance.ccaiProject = _instance.ccaiProject || undefined;\n    _instance.nluProjectName = _instance.nluProjectName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateCcaiProjectRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.ccaiProject = new CcaiProject();\n          _reader.readMessage(\n            _instance.ccaiProject,\n            CcaiProject.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateCcaiProjectRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateCcaiProjectRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiProject) {\n      _writer.writeMessage(\n        1,\n        _instance.ccaiProject as any,\n        CcaiProject.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(4, _instance.nluProjectName);\n    }\n  }\n\n  private _ccaiProject?: CcaiProject;\n  private _nluProjectName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateCcaiProjectRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateCcaiProjectRequest.AsObject>) {\n    _value = _value || {};\n    this.ccaiProject = _value.ccaiProject\n      ? new CcaiProject(_value.ccaiProject)\n      : undefined;\n    this.nluProjectName = _value.nluProjectName;\n    CreateCcaiProjectRequest.refineValues(this);\n  }\n  get ccaiProject(): CcaiProject | undefined {\n    return this._ccaiProject;\n  }\n  set ccaiProject(value: CcaiProject | undefined) {\n    this._ccaiProject = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateCcaiProjectRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateCcaiProjectRequest.AsObject {\n    return {\n      ccaiProject: this.ccaiProject ? this.ccaiProject.toObject() : undefined,\n      nluProjectName: this.nluProjectName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateCcaiProjectRequest.AsProtobufJSON {\n    return {\n      ccaiProject: this.ccaiProject\n        ? this.ccaiProject.toProtobufJSON(options)\n        : null,\n      nluProjectName: this.nluProjectName\n    };\n  }\n}\nexport module CreateCcaiProjectRequest {\n  /**\n   * Standard JavaScript object representation for CreateCcaiProjectRequest\n   */\n  export interface AsObject {\n    ccaiProject?: CcaiProject.AsObject;\n    nluProjectName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateCcaiProjectRequest\n   */\n  export interface AsProtobufJSON {\n    ccaiProject: CcaiProject.AsProtobufJSON | null;\n    nluProjectName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateCcaiProjectResponse\n */\nexport class CreateCcaiProjectResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateCcaiProjectResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateCcaiProjectResponse();\n    CreateCcaiProjectResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateCcaiProjectResponse) {\n    _instance.ccaiProject = _instance.ccaiProject || undefined;\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateCcaiProjectResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.ccaiProject = new CcaiProject();\n          _reader.readMessage(\n            _instance.ccaiProject,\n            CcaiProject.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateCcaiProjectResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateCcaiProjectResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiProject) {\n      _writer.writeMessage(\n        1,\n        _instance.ccaiProject as any,\n        CcaiProject.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _ccaiProject?: CcaiProject;\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateCcaiProjectResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateCcaiProjectResponse.AsObject>) {\n    _value = _value || {};\n    this.ccaiProject = _value.ccaiProject\n      ? new CcaiProject(_value.ccaiProject)\n      : undefined;\n    this.errorMessage = _value.errorMessage;\n    CreateCcaiProjectResponse.refineValues(this);\n  }\n  get ccaiProject(): CcaiProject | undefined {\n    return this._ccaiProject;\n  }\n  set ccaiProject(value: CcaiProject | undefined) {\n    this._ccaiProject = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateCcaiProjectResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateCcaiProjectResponse.AsObject {\n    return {\n      ccaiProject: this.ccaiProject ? this.ccaiProject.toObject() : undefined,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateCcaiProjectResponse.AsProtobufJSON {\n    return {\n      ccaiProject: this.ccaiProject\n        ? this.ccaiProject.toProtobufJSON(options)\n        : null,\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module CreateCcaiProjectResponse {\n  /**\n   * Standard JavaScript object representation for CreateCcaiProjectResponse\n   */\n  export interface AsObject {\n    ccaiProject?: CcaiProject.AsObject;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateCcaiProjectResponse\n   */\n  export interface AsProtobufJSON {\n    ccaiProject: CcaiProject.AsProtobufJSON | null;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetCcaiProjectRequest\n */\nexport class GetCcaiProjectRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetCcaiProjectRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetCcaiProjectRequest();\n    GetCcaiProjectRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetCcaiProjectRequest) {\n    _instance.name = _instance.name || '';\n    _instance.ccaiProjectView = _instance.ccaiProjectView || 0;\n    _instance.ccaiServiceFilter = _instance.ccaiServiceFilter || undefined;\n    _instance.nluProjectName = _instance.nluProjectName || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetCcaiProjectRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.ccaiProjectView = _reader.readEnum();\n          break;\n        case 3:\n          _instance.ccaiServiceFilter = new CcaiServiceFilter();\n          _reader.readMessage(\n            _instance.ccaiServiceFilter,\n            CcaiServiceFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        case 5:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetCcaiProjectRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetCcaiProjectRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.ccaiProjectView) {\n      _writer.writeEnum(2, _instance.ccaiProjectView);\n    }\n    if (_instance.ccaiServiceFilter) {\n      _writer.writeMessage(\n        3,\n        _instance.ccaiServiceFilter as any,\n        CcaiServiceFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(4, _instance.nluProjectName);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        5,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _ccaiProjectView: CcaiProjectView;\n  private _ccaiServiceFilter?: CcaiServiceFilter;\n  private _nluProjectName: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetCcaiProjectRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetCcaiProjectRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.ccaiProjectView = _value.ccaiProjectView;\n    this.ccaiServiceFilter = _value.ccaiServiceFilter\n      ? new CcaiServiceFilter(_value.ccaiServiceFilter)\n      : undefined;\n    this.nluProjectName = _value.nluProjectName;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    GetCcaiProjectRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get ccaiProjectView(): CcaiProjectView {\n    return this._ccaiProjectView;\n  }\n  set ccaiProjectView(value: CcaiProjectView) {\n    this._ccaiProjectView = value;\n  }\n  get ccaiServiceFilter(): CcaiServiceFilter | undefined {\n    return this._ccaiServiceFilter;\n  }\n  set ccaiServiceFilter(value: CcaiServiceFilter | undefined) {\n    this._ccaiServiceFilter = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetCcaiProjectRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetCcaiProjectRequest.AsObject {\n    return {\n      name: this.name,\n      ccaiProjectView: this.ccaiProjectView,\n      ccaiServiceFilter: this.ccaiServiceFilter\n        ? this.ccaiServiceFilter.toObject()\n        : undefined,\n      nluProjectName: this.nluProjectName,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetCcaiProjectRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      ccaiProjectView:\n        CcaiProjectView[\n          this.ccaiProjectView === null || this.ccaiProjectView === undefined\n            ? 0\n            : this.ccaiProjectView\n        ],\n      ccaiServiceFilter: this.ccaiServiceFilter\n        ? this.ccaiServiceFilter.toProtobufJSON(options)\n        : null,\n      nluProjectName: this.nluProjectName,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetCcaiProjectRequest {\n  /**\n   * Standard JavaScript object representation for GetCcaiProjectRequest\n   */\n  export interface AsObject {\n    name: string;\n    ccaiProjectView: CcaiProjectView;\n    ccaiServiceFilter?: CcaiServiceFilter.AsObject;\n    nluProjectName: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetCcaiProjectRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    ccaiProjectView: string;\n    ccaiServiceFilter: CcaiServiceFilter.AsProtobufJSON | null;\n    nluProjectName: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetCcaiServiceRequest\n */\nexport class GetCcaiServiceRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetCcaiServiceRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetCcaiServiceRequest();\n    GetCcaiServiceRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetCcaiServiceRequest) {\n    _instance.name = _instance.name || '';\n    _instance.nluProjectName = _instance.nluProjectName || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetCcaiServiceRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 4:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        case 5:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetCcaiServiceRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetCcaiServiceRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(4, _instance.nluProjectName);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        5,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _nluProjectName: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetCcaiServiceRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetCcaiServiceRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.nluProjectName = _value.nluProjectName;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    GetCcaiServiceRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetCcaiServiceRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetCcaiServiceRequest.AsObject {\n    return {\n      name: this.name,\n      nluProjectName: this.nluProjectName,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetCcaiServiceRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      nluProjectName: this.nluProjectName,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetCcaiServiceRequest {\n  /**\n   * Standard JavaScript object representation for GetCcaiServiceRequest\n   */\n  export interface AsObject {\n    name: string;\n    nluProjectName: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetCcaiServiceRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    nluProjectName: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListCcaiProjectsRequest\n */\nexport class ListCcaiProjectsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListCcaiProjectsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListCcaiProjectsRequest();\n    ListCcaiProjectsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListCcaiProjectsRequest) {\n    _instance.ccaiProjectView = _instance.ccaiProjectView || 0;\n    _instance.ccaiServiceFilter = _instance.ccaiServiceFilter || undefined;\n    _instance.ccaiProjectSorting = _instance.ccaiProjectSorting || undefined;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.nluProjectName = _instance.nluProjectName || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListCcaiProjectsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.ccaiProjectView = _reader.readEnum();\n          break;\n        case 2:\n          _instance.ccaiServiceFilter = new CcaiServiceFilter();\n          _reader.readMessage(\n            _instance.ccaiServiceFilter,\n            CcaiServiceFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.ccaiProjectSorting = new CcaiProjectSorting();\n          _reader.readMessage(\n            _instance.ccaiProjectSorting,\n            CcaiProjectSorting.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListCcaiProjectsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListCcaiProjectsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiProjectView) {\n      _writer.writeEnum(1, _instance.ccaiProjectView);\n    }\n    if (_instance.ccaiServiceFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.ccaiServiceFilter as any,\n        CcaiServiceFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiProjectSorting) {\n      _writer.writeMessage(\n        3,\n        _instance.ccaiProjectSorting as any,\n        CcaiProjectSorting.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(5, _instance.nluProjectName);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _ccaiProjectView: CcaiProjectView;\n  private _ccaiServiceFilter?: CcaiServiceFilter;\n  private _ccaiProjectSorting?: CcaiProjectSorting;\n  private _pageToken: string;\n  private _nluProjectName: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListCcaiProjectsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListCcaiProjectsRequest.AsObject>) {\n    _value = _value || {};\n    this.ccaiProjectView = _value.ccaiProjectView;\n    this.ccaiServiceFilter = _value.ccaiServiceFilter\n      ? new CcaiServiceFilter(_value.ccaiServiceFilter)\n      : undefined;\n    this.ccaiProjectSorting = _value.ccaiProjectSorting\n      ? new CcaiProjectSorting(_value.ccaiProjectSorting)\n      : undefined;\n    this.pageToken = _value.pageToken;\n    this.nluProjectName = _value.nluProjectName;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    ListCcaiProjectsRequest.refineValues(this);\n  }\n  get ccaiProjectView(): CcaiProjectView {\n    return this._ccaiProjectView;\n  }\n  set ccaiProjectView(value: CcaiProjectView) {\n    this._ccaiProjectView = value;\n  }\n  get ccaiServiceFilter(): CcaiServiceFilter | undefined {\n    return this._ccaiServiceFilter;\n  }\n  set ccaiServiceFilter(value: CcaiServiceFilter | undefined) {\n    this._ccaiServiceFilter = value;\n  }\n  get ccaiProjectSorting(): CcaiProjectSorting | undefined {\n    return this._ccaiProjectSorting;\n  }\n  set ccaiProjectSorting(value: CcaiProjectSorting | undefined) {\n    this._ccaiProjectSorting = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListCcaiProjectsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListCcaiProjectsRequest.AsObject {\n    return {\n      ccaiProjectView: this.ccaiProjectView,\n      ccaiServiceFilter: this.ccaiServiceFilter\n        ? this.ccaiServiceFilter.toObject()\n        : undefined,\n      ccaiProjectSorting: this.ccaiProjectSorting\n        ? this.ccaiProjectSorting.toObject()\n        : undefined,\n      pageToken: this.pageToken,\n      nluProjectName: this.nluProjectName,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListCcaiProjectsRequest.AsProtobufJSON {\n    return {\n      ccaiProjectView:\n        CcaiProjectView[\n          this.ccaiProjectView === null || this.ccaiProjectView === undefined\n            ? 0\n            : this.ccaiProjectView\n        ],\n      ccaiServiceFilter: this.ccaiServiceFilter\n        ? this.ccaiServiceFilter.toProtobufJSON(options)\n        : null,\n      ccaiProjectSorting: this.ccaiProjectSorting\n        ? this.ccaiProjectSorting.toProtobufJSON(options)\n        : null,\n      pageToken: this.pageToken,\n      nluProjectName: this.nluProjectName,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListCcaiProjectsRequest {\n  /**\n   * Standard JavaScript object representation for ListCcaiProjectsRequest\n   */\n  export interface AsObject {\n    ccaiProjectView: CcaiProjectView;\n    ccaiServiceFilter?: CcaiServiceFilter.AsObject;\n    ccaiProjectSorting?: CcaiProjectSorting.AsObject;\n    pageToken: string;\n    nluProjectName: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListCcaiProjectsRequest\n   */\n  export interface AsProtobufJSON {\n    ccaiProjectView: string;\n    ccaiServiceFilter: CcaiServiceFilter.AsProtobufJSON | null;\n    ccaiProjectSorting: CcaiProjectSorting.AsProtobufJSON | null;\n    pageToken: string;\n    nluProjectName: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListCcaiProjectsResponse\n */\nexport class ListCcaiProjectsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListCcaiProjectsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListCcaiProjectsResponse();\n    ListCcaiProjectsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListCcaiProjectsResponse) {\n    _instance.ccaiProjects = _instance.ccaiProjects || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListCcaiProjectsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new CcaiProject();\n          _reader.readMessage(\n            messageInitializer1,\n            CcaiProject.deserializeBinaryFromReader\n          );\n          (_instance.ccaiProjects = _instance.ccaiProjects || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListCcaiProjectsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListCcaiProjectsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiProjects && _instance.ccaiProjects.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.ccaiProjects as any,\n        CcaiProject.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _ccaiProjects?: CcaiProject[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListCcaiProjectsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListCcaiProjectsResponse.AsObject>) {\n    _value = _value || {};\n    this.ccaiProjects = (_value.ccaiProjects || []).map(\n      m => new CcaiProject(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListCcaiProjectsResponse.refineValues(this);\n  }\n  get ccaiProjects(): CcaiProject[] | undefined {\n    return this._ccaiProjects;\n  }\n  set ccaiProjects(value: CcaiProject[] | undefined) {\n    this._ccaiProjects = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListCcaiProjectsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListCcaiProjectsResponse.AsObject {\n    return {\n      ccaiProjects: (this.ccaiProjects || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListCcaiProjectsResponse.AsProtobufJSON {\n    return {\n      ccaiProjects: (this.ccaiProjects || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListCcaiProjectsResponse {\n  /**\n   * Standard JavaScript object representation for ListCcaiProjectsResponse\n   */\n  export interface AsObject {\n    ccaiProjects?: CcaiProject.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListCcaiProjectsResponse\n   */\n  export interface AsProtobufJSON {\n    ccaiProjects: CcaiProject.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CcaiProjectSorting\n */\nexport class CcaiProjectSorting implements GrpcMessage {\n  static id = 'ondewo.nlu.CcaiProjectSorting';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CcaiProjectSorting();\n    CcaiProjectSorting.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CcaiProjectSorting) {\n    _instance.sortingField = _instance.sortingField || 0;\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CcaiProjectSorting,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sortingField = _reader.readEnum();\n          break;\n        case 2:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CcaiProjectSorting.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CcaiProjectSorting,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sortingField) {\n      _writer.writeEnum(1, _instance.sortingField);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(2, _instance.sortingMode);\n    }\n  }\n\n  private _sortingField: CcaiProjectSorting.CcaiProjectSortingField;\n  private _sortingMode: ondewoNlu003.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CcaiProjectSorting to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CcaiProjectSorting.AsObject>) {\n    _value = _value || {};\n    this.sortingField = _value.sortingField;\n    this.sortingMode = _value.sortingMode;\n    CcaiProjectSorting.refineValues(this);\n  }\n  get sortingField(): CcaiProjectSorting.CcaiProjectSortingField {\n    return this._sortingField;\n  }\n  set sortingField(value: CcaiProjectSorting.CcaiProjectSortingField) {\n    this._sortingField = value;\n  }\n  get sortingMode(): ondewoNlu003.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu003.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CcaiProjectSorting.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CcaiProjectSorting.AsObject {\n    return {\n      sortingField: this.sortingField,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CcaiProjectSorting.AsProtobufJSON {\n    return {\n      sortingField:\n        CcaiProjectSorting.CcaiProjectSortingField[\n          this.sortingField === null || this.sortingField === undefined\n            ? 0\n            : this.sortingField\n        ],\n      sortingMode:\n        ondewoNlu003.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module CcaiProjectSorting {\n  /**\n   * Standard JavaScript object representation for CcaiProjectSorting\n   */\n  export interface AsObject {\n    sortingField: CcaiProjectSorting.CcaiProjectSortingField;\n    sortingMode: ondewoNlu003.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for CcaiProjectSorting\n   */\n  export interface AsProtobufJSON {\n    sortingField: string;\n    sortingMode: string;\n  }\n  export enum CcaiProjectSortingField {\n    NO_CCAI_PROJECT_SORTING = 0,\n    SORT_CCAI_PROJECT_BY_NAME = 1,\n    SORT_CCAI_PROJECT_BY_DISPLAY_NAME = 2,\n    SORT_CCAI_PROJECT_BY_CREATION_DATE = 3,\n    SORT_CCAI_PROJECT_BY_LAST_MODIFIED = 4\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CcaiServiceFilter\n */\nexport class CcaiServiceFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.CcaiServiceFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CcaiServiceFilter();\n    CcaiServiceFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CcaiServiceFilter) {\n    _instance.languageCodes = _instance.languageCodes || [];\n    _instance.ccaiServiceTypes = _instance.ccaiServiceTypes || [];\n    _instance.ccaiServiceProviders = _instance.ccaiServiceProviders || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CcaiServiceFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _reader.readPackableEnumInto(\n            (_instance.ccaiServiceTypes = _instance.ccaiServiceTypes || [])\n          );\n          break;\n        case 3:\n          _reader.readPackableEnumInto(\n            (_instance.ccaiServiceProviders =\n              _instance.ccaiServiceProviders || [])\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CcaiServiceFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CcaiServiceFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(1, _instance.languageCodes);\n    }\n    if (_instance.ccaiServiceTypes && _instance.ccaiServiceTypes.length) {\n      _writer.writePackedEnum(2, _instance.ccaiServiceTypes);\n    }\n    if (\n      _instance.ccaiServiceProviders &&\n      _instance.ccaiServiceProviders.length\n    ) {\n      _writer.writePackedEnum(3, _instance.ccaiServiceProviders);\n    }\n  }\n\n  private _languageCodes: string[];\n  private _ccaiServiceTypes: CcaiServiceType[];\n  private _ccaiServiceProviders: CcaiServiceProvider[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CcaiServiceFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CcaiServiceFilter.AsObject>) {\n    _value = _value || {};\n    this.languageCodes = (_value.languageCodes || []).slice();\n    this.ccaiServiceTypes = (_value.ccaiServiceTypes || []).slice();\n    this.ccaiServiceProviders = (_value.ccaiServiceProviders || []).slice();\n    CcaiServiceFilter.refineValues(this);\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n  get ccaiServiceTypes(): CcaiServiceType[] {\n    return this._ccaiServiceTypes;\n  }\n  set ccaiServiceTypes(value: CcaiServiceType[]) {\n    this._ccaiServiceTypes = value;\n  }\n  get ccaiServiceProviders(): CcaiServiceProvider[] {\n    return this._ccaiServiceProviders;\n  }\n  set ccaiServiceProviders(value: CcaiServiceProvider[]) {\n    this._ccaiServiceProviders = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CcaiServiceFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CcaiServiceFilter.AsObject {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      ccaiServiceTypes: (this.ccaiServiceTypes || []).slice(),\n      ccaiServiceProviders: (this.ccaiServiceProviders || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CcaiServiceFilter.AsProtobufJSON {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      ccaiServiceTypes: (this.ccaiServiceTypes || []).map(\n        v => CcaiServiceType[v]\n      ),\n      ccaiServiceProviders: (this.ccaiServiceProviders || []).map(\n        v => CcaiServiceProvider[v]\n      )\n    };\n  }\n}\nexport module CcaiServiceFilter {\n  /**\n   * Standard JavaScript object representation for CcaiServiceFilter\n   */\n  export interface AsObject {\n    languageCodes: string[];\n    ccaiServiceTypes: CcaiServiceType[];\n    ccaiServiceProviders: CcaiServiceProvider[];\n  }\n\n  /**\n   * Protobuf JSON representation for CcaiServiceFilter\n   */\n  export interface AsProtobufJSON {\n    languageCodes: string[];\n    ccaiServiceTypes: string[];\n    ccaiServiceProviders: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateCcaiProjectRequest\n */\nexport class UpdateCcaiProjectRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateCcaiProjectRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateCcaiProjectRequest();\n    UpdateCcaiProjectRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateCcaiProjectRequest) {\n    _instance.ccaiProject = _instance.ccaiProject || undefined;\n    _instance.ccaiServiceFilter = _instance.ccaiServiceFilter || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.nluProjectName = _instance.nluProjectName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateCcaiProjectRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.ccaiProject = new CcaiProject();\n          _reader.readMessage(\n            _instance.ccaiProject,\n            CcaiProject.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.ccaiServiceFilter = new CcaiServiceFilter();\n          _reader.readMessage(\n            _instance.ccaiServiceFilter,\n            CcaiServiceFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.updateMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateCcaiProjectRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateCcaiProjectRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiProject) {\n      _writer.writeMessage(\n        1,\n        _instance.ccaiProject as any,\n        CcaiProject.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiServiceFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.ccaiServiceFilter as any,\n        CcaiServiceFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        3,\n        _instance.updateMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(4, _instance.nluProjectName);\n    }\n  }\n\n  private _ccaiProject?: CcaiProject;\n  private _ccaiServiceFilter?: CcaiServiceFilter;\n  private _updateMask?: googleProtobuf000.FieldMask;\n  private _nluProjectName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateCcaiProjectRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateCcaiProjectRequest.AsObject>) {\n    _value = _value || {};\n    this.ccaiProject = _value.ccaiProject\n      ? new CcaiProject(_value.ccaiProject)\n      : undefined;\n    this.ccaiServiceFilter = _value.ccaiServiceFilter\n      ? new CcaiServiceFilter(_value.ccaiServiceFilter)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf000.FieldMask(_value.updateMask)\n      : undefined;\n    this.nluProjectName = _value.nluProjectName;\n    UpdateCcaiProjectRequest.refineValues(this);\n  }\n  get ccaiProject(): CcaiProject | undefined {\n    return this._ccaiProject;\n  }\n  set ccaiProject(value: CcaiProject | undefined) {\n    this._ccaiProject = value;\n  }\n  get ccaiServiceFilter(): CcaiServiceFilter | undefined {\n    return this._ccaiServiceFilter;\n  }\n  set ccaiServiceFilter(value: CcaiServiceFilter | undefined) {\n    this._ccaiServiceFilter = value;\n  }\n  get updateMask(): googleProtobuf000.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateCcaiProjectRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateCcaiProjectRequest.AsObject {\n    return {\n      ccaiProject: this.ccaiProject ? this.ccaiProject.toObject() : undefined,\n      ccaiServiceFilter: this.ccaiServiceFilter\n        ? this.ccaiServiceFilter.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      nluProjectName: this.nluProjectName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateCcaiProjectRequest.AsProtobufJSON {\n    return {\n      ccaiProject: this.ccaiProject\n        ? this.ccaiProject.toProtobufJSON(options)\n        : null,\n      ccaiServiceFilter: this.ccaiServiceFilter\n        ? this.ccaiServiceFilter.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      nluProjectName: this.nluProjectName\n    };\n  }\n}\nexport module UpdateCcaiProjectRequest {\n  /**\n   * Standard JavaScript object representation for UpdateCcaiProjectRequest\n   */\n  export interface AsObject {\n    ccaiProject?: CcaiProject.AsObject;\n    ccaiServiceFilter?: CcaiServiceFilter.AsObject;\n    updateMask?: googleProtobuf000.FieldMask.AsObject;\n    nluProjectName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateCcaiProjectRequest\n   */\n  export interface AsProtobufJSON {\n    ccaiProject: CcaiProject.AsProtobufJSON | null;\n    ccaiServiceFilter: CcaiServiceFilter.AsProtobufJSON | null;\n    updateMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    nluProjectName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateCcaiProjectResponse\n */\nexport class UpdateCcaiProjectResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateCcaiProjectResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateCcaiProjectResponse();\n    UpdateCcaiProjectResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateCcaiProjectResponse) {\n    _instance.name = _instance.name || '';\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateCcaiProjectResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateCcaiProjectResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateCcaiProjectResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _name: string;\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateCcaiProjectResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateCcaiProjectResponse.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.errorMessage = _value.errorMessage;\n    UpdateCcaiProjectResponse.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateCcaiProjectResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateCcaiProjectResponse.AsObject {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateCcaiProjectResponse.AsProtobufJSON {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module UpdateCcaiProjectResponse {\n  /**\n   * Standard JavaScript object representation for UpdateCcaiProjectResponse\n   */\n  export interface AsObject {\n    name: string;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateCcaiProjectResponse\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteCcaiProjectRequest\n */\nexport class DeleteCcaiProjectRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteCcaiProjectRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteCcaiProjectRequest();\n    DeleteCcaiProjectRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteCcaiProjectRequest) {\n    _instance.name = _instance.name || '';\n    _instance.nluProjectName = _instance.nluProjectName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteCcaiProjectRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 4:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteCcaiProjectRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteCcaiProjectRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(4, _instance.nluProjectName);\n    }\n  }\n\n  private _name: string;\n  private _nluProjectName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteCcaiProjectRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteCcaiProjectRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.nluProjectName = _value.nluProjectName;\n    DeleteCcaiProjectRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteCcaiProjectRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteCcaiProjectRequest.AsObject {\n    return {\n      name: this.name,\n      nluProjectName: this.nluProjectName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteCcaiProjectRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      nluProjectName: this.nluProjectName\n    };\n  }\n}\nexport module DeleteCcaiProjectRequest {\n  /**\n   * Standard JavaScript object representation for DeleteCcaiProjectRequest\n   */\n  export interface AsObject {\n    name: string;\n    nluProjectName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteCcaiProjectRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    nluProjectName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteCcaiProjectResponse\n */\nexport class DeleteCcaiProjectResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteCcaiProjectResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteCcaiProjectResponse();\n    DeleteCcaiProjectResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteCcaiProjectResponse) {\n    _instance.name = _instance.name || '';\n    _instance.errorMessage = _instance.errorMessage || '';\n    _instance.nluProjectName = _instance.nluProjectName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteCcaiProjectResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        case 4:\n          _instance.nluProjectName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteCcaiProjectResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteCcaiProjectResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n    if (_instance.nluProjectName) {\n      _writer.writeString(4, _instance.nluProjectName);\n    }\n  }\n\n  private _name: string;\n  private _errorMessage: string;\n  private _nluProjectName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteCcaiProjectResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteCcaiProjectResponse.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.errorMessage = _value.errorMessage;\n    this.nluProjectName = _value.nluProjectName;\n    DeleteCcaiProjectResponse.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n  get nluProjectName(): string {\n    return this._nluProjectName;\n  }\n  set nluProjectName(value: string) {\n    this._nluProjectName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteCcaiProjectResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteCcaiProjectResponse.AsObject {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage,\n      nluProjectName: this.nluProjectName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteCcaiProjectResponse.AsProtobufJSON {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage,\n      nluProjectName: this.nluProjectName\n    };\n  }\n}\nexport module DeleteCcaiProjectResponse {\n  /**\n   * Standard JavaScript object representation for DeleteCcaiProjectResponse\n   */\n  export interface AsObject {\n    name: string;\n    errorMessage: string;\n    nluProjectName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteCcaiProjectResponse\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    errorMessage: string;\n    nluProjectName: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\n/**\n * Message implementation for ondewo.nlu.Context\n */\nexport class Context implements GrpcMessage {\n  static id = 'ondewo.nlu.Context';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Context();\n    Context.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Context) {\n    _instance.name = _instance.name || '';\n    _instance.lifespanCount = _instance.lifespanCount || 0;\n    _instance.parameters = _instance.parameters || {};\n    _instance.lifespanTime = _instance.lifespanTime || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: Context,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.lifespanCount = _reader.readInt32();\n          break;\n        case 3:\n          const msg_3 = {} as any;\n          _reader.readMessage(\n            msg_3,\n            Context.ParametersEntry.deserializeBinaryFromReader\n          );\n          _instance.parameters = _instance.parameters || {};\n          _instance.parameters[msg_3.key] = msg_3.value;\n          break;\n        case 4:\n          _instance.lifespanTime = _reader.readFloat();\n          break;\n        case 5:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 8:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Context.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Context, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.lifespanCount) {\n      _writer.writeInt32(2, _instance.lifespanCount);\n    }\n    if (!!_instance.parameters) {\n      const keys_3 = Object.keys(_instance.parameters as any);\n\n      if (keys_3.length) {\n        const repeated_3 = keys_3\n          .map(key => ({ key: key, value: (_instance.parameters as any)[key] }))\n          .reduce((r, v) => [...r, v], [] as any[]);\n\n        _writer.writeRepeatedMessage(\n          3,\n          repeated_3,\n          Context.ParametersEntry.serializeBinaryToWriter\n        );\n      }\n    }\n    if (_instance.lifespanTime) {\n      _writer.writeFloat(4, _instance.lifespanTime);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        5,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        6,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(7, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(8, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _lifespanCount: number;\n  private _parameters: { [prop: string]: Context.Parameter };\n  private _lifespanTime: number;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Context to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Context.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.lifespanCount = _value.lifespanCount;\n    (this.parameters = _value!.parameters\n      ? Object.keys(_value!.parameters).reduce(\n          (r, k) => ({\n            ...r,\n            [k]: _value!.parameters![k]\n              ? new Context.Parameter(_value!.parameters![k])\n              : undefined\n          }),\n          {}\n        )\n      : {}),\n      (this.lifespanTime = _value.lifespanTime);\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    Context.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get lifespanCount(): number {\n    return this._lifespanCount;\n  }\n  set lifespanCount(value: number) {\n    this._lifespanCount = value;\n  }\n  get parameters(): { [prop: string]: Context.Parameter } {\n    return this._parameters;\n  }\n  set parameters(value: { [prop: string]: Context.Parameter }) {\n    this._parameters = value;\n  }\n  get lifespanTime(): number {\n    return this._lifespanTime;\n  }\n  set lifespanTime(value: number) {\n    this._lifespanTime = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Context.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Context.AsObject {\n    return {\n      name: this.name,\n      lifespanCount: this.lifespanCount,\n      parameters: this.parameters\n        ? Object.keys(this.parameters).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.parameters![k]\n                ? this.parameters![k].toObject()\n                : undefined\n            }),\n            {}\n          )\n        : {},\n      lifespanTime: this.lifespanTime,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Context.AsProtobufJSON {\n    return {\n      name: this.name,\n      lifespanCount: this.lifespanCount,\n      parameters: this.parameters\n        ? Object.keys(this.parameters).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.parameters![k] ? this.parameters![k].toJSON() : null\n            }),\n            {}\n          )\n        : {},\n      lifespanTime: this.lifespanTime,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module Context {\n  /**\n   * Standard JavaScript object representation for Context\n   */\n  export interface AsObject {\n    name: string;\n    lifespanCount: number;\n    parameters: { [prop: string]: Context.Parameter };\n    lifespanTime: number;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for Context\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    lifespanCount: number;\n    parameters: { [prop: string]: Context.Parameter };\n    lifespanTime: number;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.Context.Parameter\n   */\n  export class Parameter implements GrpcMessage {\n    static id = 'ondewo.nlu.Context.Parameter';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new Parameter();\n      Parameter.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: Parameter) {\n      _instance.name = _instance.name || '';\n      _instance.displayName = _instance.displayName || '';\n      _instance.value = _instance.value || '';\n      _instance.valueOriginal = _instance.valueOriginal || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: Parameter,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.displayName = _reader.readString();\n            break;\n          case 3:\n            _instance.value = _reader.readString();\n            break;\n          case 4:\n            _instance.valueOriginal = _reader.readString();\n            break;\n          case 5:\n            _instance.createdAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 6:\n            _instance.modifiedAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 7:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 8:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      Parameter.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: Parameter,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.displayName) {\n        _writer.writeString(2, _instance.displayName);\n      }\n      if (_instance.value) {\n        _writer.writeString(3, _instance.value);\n      }\n      if (_instance.valueOriginal) {\n        _writer.writeString(4, _instance.valueOriginal);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          5,\n          _instance.createdAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          6,\n          _instance.modifiedAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(7, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(8, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _displayName: string;\n    private _value: string;\n    private _valueOriginal: string;\n    private _createdAt?: googleProtobuf005.Timestamp;\n    private _modifiedAt?: googleProtobuf005.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of Parameter to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<Parameter.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.displayName = _value.displayName;\n      this.value = _value.value;\n      this.valueOriginal = _value.valueOriginal;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf005.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      Parameter.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get displayName(): string {\n      return this._displayName;\n    }\n    set displayName(value: string) {\n      this._displayName = value;\n    }\n    get value(): string {\n      return this._value;\n    }\n    set value(value: string) {\n      this._value = value;\n    }\n    get valueOriginal(): string {\n      return this._valueOriginal;\n    }\n    set valueOriginal(value: string) {\n      this._valueOriginal = value;\n    }\n    get createdAt(): googleProtobuf005.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      Parameter.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): Parameter.AsObject {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        value: this.value,\n        valueOriginal: this.valueOriginal,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): Parameter.AsProtobufJSON {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        value: this.value,\n        valueOriginal: this.valueOriginal,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module Parameter {\n    /**\n     * Standard JavaScript object representation for Parameter\n     */\n    export interface AsObject {\n      name: string;\n      displayName: string;\n      value: string;\n      valueOriginal: string;\n      createdAt?: googleProtobuf005.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for Parameter\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      displayName: string;\n      value: string;\n      valueOriginal: string;\n      createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.Context.ParametersEntry\n   */\n  export class ParametersEntry implements GrpcMessage {\n    static id = 'ondewo.nlu.Context.ParametersEntry';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new ParametersEntry();\n      ParametersEntry.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: ParametersEntry) {\n      _instance.key = _instance.key || '';\n      _instance.value = _instance.value || undefined;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: ParametersEntry,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.key = _reader.readString();\n            break;\n          case 2:\n            _instance.value = new Context.Parameter();\n            _reader.readMessage(\n              _instance.value,\n              Context.Parameter.deserializeBinaryFromReader\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      ParametersEntry.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: ParametersEntry,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.key) {\n        _writer.writeString(1, _instance.key);\n      }\n      if (_instance.value) {\n        _writer.writeMessage(\n          2,\n          _instance.value as any,\n          Context.Parameter.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _key: string;\n    private _value?: Context.Parameter;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of ParametersEntry to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<ParametersEntry.AsObject>) {\n      _value = _value || {};\n      this.key = _value.key;\n      this.value = _value.value\n        ? new Context.Parameter(_value.value)\n        : undefined;\n      ParametersEntry.refineValues(this);\n    }\n    get key(): string {\n      return this._key;\n    }\n    set key(value: string) {\n      this._key = value;\n    }\n    get value(): Context.Parameter | undefined {\n      return this._value;\n    }\n    set value(value: Context.Parameter | undefined) {\n      this._value = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      ParametersEntry.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): ParametersEntry.AsObject {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toObject() : undefined\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): ParametersEntry.AsProtobufJSON {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toProtobufJSON(options) : null\n      };\n    }\n  }\n  export module ParametersEntry {\n    /**\n     * Standard JavaScript object representation for ParametersEntry\n     */\n    export interface AsObject {\n      key: string;\n      value?: Context.Parameter.AsObject;\n    }\n\n    /**\n     * Protobuf JSON representation for ParametersEntry\n     */\n    export interface AsProtobufJSON {\n      key: string;\n      value: Context.Parameter.AsProtobufJSON | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListContextsRequest\n */\nexport class ListContextsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListContextsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListContextsRequest();\n    ListContextsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListContextsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListContextsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListContextsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListContextsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n  }\n\n  private _sessionId: string;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListContextsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListContextsRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.pageToken = _value.pageToken;\n    ListContextsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListContextsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListContextsRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListContextsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListContextsRequest {\n  /**\n   * Standard JavaScript object representation for ListContextsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListContextsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListContextsResponse\n */\nexport class ListContextsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListContextsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListContextsResponse();\n    ListContextsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListContextsResponse) {\n    _instance.contexts = _instance.contexts || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListContextsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Context();\n          _reader.readMessage(\n            messageInitializer1,\n            Context.deserializeBinaryFromReader\n          );\n          (_instance.contexts = _instance.contexts || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListContextsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListContextsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.contexts && _instance.contexts.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.contexts as any,\n        Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _contexts?: Context[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListContextsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListContextsResponse.AsObject>) {\n    _value = _value || {};\n    this.contexts = (_value.contexts || []).map(m => new Context(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListContextsResponse.refineValues(this);\n  }\n  get contexts(): Context[] | undefined {\n    return this._contexts;\n  }\n  set contexts(value: Context[] | undefined) {\n    this._contexts = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListContextsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListContextsResponse.AsObject {\n    return {\n      contexts: (this.contexts || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListContextsResponse.AsProtobufJSON {\n    return {\n      contexts: (this.contexts || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListContextsResponse {\n  /**\n   * Standard JavaScript object representation for ListContextsResponse\n   */\n  export interface AsObject {\n    contexts?: Context.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListContextsResponse\n   */\n  export interface AsProtobufJSON {\n    contexts: Context.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetContextRequest\n */\nexport class GetContextRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetContextRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetContextRequest();\n    GetContextRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetContextRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetContextRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetContextRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetContextRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetContextRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetContextRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    GetContextRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetContextRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetContextRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetContextRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module GetContextRequest {\n  /**\n   * Standard JavaScript object representation for GetContextRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetContextRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateContextRequest\n */\nexport class CreateContextRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateContextRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateContextRequest();\n    CreateContextRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateContextRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.context = _instance.context || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateContextRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.context = new Context();\n          _reader.readMessage(\n            _instance.context,\n            Context.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateContextRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateContextRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.context) {\n      _writer.writeMessage(\n        2,\n        _instance.context as any,\n        Context.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _context?: Context;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateContextRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateContextRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.context = _value.context ? new Context(_value.context) : undefined;\n    CreateContextRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get context(): Context | undefined {\n    return this._context;\n  }\n  set context(value: Context | undefined) {\n    this._context = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateContextRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateContextRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      context: this.context ? this.context.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateContextRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      context: this.context ? this.context.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module CreateContextRequest {\n  /**\n   * Standard JavaScript object representation for CreateContextRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    context?: Context.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateContextRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    context: Context.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateContextRequest\n */\nexport class UpdateContextRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateContextRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateContextRequest();\n    UpdateContextRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateContextRequest) {\n    _instance.context = _instance.context || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateContextRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.context = new Context();\n          _reader.readMessage(\n            _instance.context,\n            Context.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateContextRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateContextRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.context) {\n      _writer.writeMessage(\n        1,\n        _instance.context as any,\n        Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _context?: Context;\n  private _updateMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateContextRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateContextRequest.AsObject>) {\n    _value = _value || {};\n    this.context = _value.context ? new Context(_value.context) : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf004.FieldMask(_value.updateMask)\n      : undefined;\n    UpdateContextRequest.refineValues(this);\n  }\n  get context(): Context | undefined {\n    return this._context;\n  }\n  set context(value: Context | undefined) {\n    this._context = value;\n  }\n  get updateMask(): googleProtobuf004.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateContextRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateContextRequest.AsObject {\n    return {\n      context: this.context ? this.context.toObject() : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateContextRequest.AsProtobufJSON {\n    return {\n      context: this.context ? this.context.toProtobufJSON(options) : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module UpdateContextRequest {\n  /**\n   * Standard JavaScript object representation for UpdateContextRequest\n   */\n  export interface AsObject {\n    context?: Context.AsObject;\n    updateMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateContextRequest\n   */\n  export interface AsProtobufJSON {\n    context: Context.AsProtobufJSON | null;\n    updateMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteContextRequest\n */\nexport class DeleteContextRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteContextRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteContextRequest();\n    DeleteContextRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteContextRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteContextRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteContextRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteContextRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteContextRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteContextRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteContextRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteContextRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteContextRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteContextRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteContextRequest {\n  /**\n   * Standard JavaScript object representation for DeleteContextRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteContextRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteAllContextsRequest\n */\nexport class DeleteAllContextsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteAllContextsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteAllContextsRequest();\n    DeleteAllContextsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteAllContextsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteAllContextsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteAllContextsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteAllContextsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n  }\n\n  private _sessionId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteAllContextsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteAllContextsRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    DeleteAllContextsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteAllContextsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteAllContextsRequest.AsObject {\n    return {\n      sessionId: this.sessionId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteAllContextsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId\n    };\n  }\n}\nexport module DeleteAllContextsRequest {\n  /**\n   * Standard JavaScript object representation for DeleteAllContextsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteAllContextsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleRpc008 from '../../google/rpc/status.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/operations.pb';\nexport enum IntentView {\n  INTENT_VIEW_UNSPECIFIED = 0,\n  INTENT_VIEW_FULL = 1,\n  INTENT_VIEW_PARTIAL = 2,\n  INTENT_VIEW_SHALLOW = 3,\n  INTENT_VIEW_MINIMUM = 4\n}\nexport enum IntentCategory {\n  ALL_INTENTS = 0,\n  DEFAULT_INTENTS = 1,\n  USER_DEFINED_INTENTS = 2,\n  DATE_EXPIRED_INTENTS = 3,\n  DATE_ACTIVE_INTENTS = 4,\n  DATE_UPCOMING_INTENTS = 5\n}\n/**\n * Message implementation for ondewo.nlu.Intent\n */\nexport class Intent implements GrpcMessage {\n  static id = 'ondewo.nlu.Intent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Intent();\n    Intent.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Intent) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.webhookState = _instance.webhookState || 0;\n    _instance.priority = _instance.priority || 0;\n    _instance.isFallback = _instance.isFallback || false;\n    _instance.mlDisabled = _instance.mlDisabled || false;\n    _instance.inputContextNames = _instance.inputContextNames || [];\n    _instance.events = _instance.events || [];\n    _instance.trainingPhrases = _instance.trainingPhrases || [];\n    _instance.action = _instance.action || '';\n    _instance.outputContexts = _instance.outputContexts || [];\n    _instance.resetContexts = _instance.resetContexts || false;\n    _instance.parameters = _instance.parameters || [];\n    _instance.messages = _instance.messages || [];\n    _instance.defaultResponsePlatforms =\n      _instance.defaultResponsePlatforms || [];\n    _instance.rootFollowupIntentName = _instance.rootFollowupIntentName || '';\n    _instance.parentFollowupIntentName =\n      _instance.parentFollowupIntentName || '';\n    _instance.followupIntentInfo = _instance.followupIntentInfo || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n    _instance.domainName = _instance.domainName || '';\n    _instance.isStartOfDeviation = _instance.isStartOfDeviation || false;\n    _instance.isEndOfDeviation = _instance.isEndOfDeviation || false;\n    _instance.trainingPhraseCount = _instance.trainingPhraseCount || 0;\n    _instance.status = _instance.status || 0;\n    _instance.startDate = _instance.startDate || undefined;\n    _instance.endDate = _instance.endDate || undefined;\n    _instance.tags = _instance.tags || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(_instance: Intent, _reader: BinaryReader) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 6:\n          _instance.webhookState = _reader.readEnum();\n          break;\n        case 3:\n          _instance.priority = _reader.readInt32();\n          break;\n        case 4:\n          _instance.isFallback = _reader.readBool();\n          break;\n        case 19:\n          _instance.mlDisabled = _reader.readBool();\n          break;\n        case 7:\n          (_instance.inputContextNames =\n            _instance.inputContextNames || []).push(_reader.readString());\n          break;\n        case 8:\n          (_instance.events = _instance.events || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          const messageInitializer9 = new Intent.TrainingPhrase();\n          _reader.readMessage(\n            messageInitializer9,\n            Intent.TrainingPhrase.deserializeBinaryFromReader\n          );\n          (_instance.trainingPhrases = _instance.trainingPhrases || []).push(\n            messageInitializer9\n          );\n          break;\n        case 10:\n          _instance.action = _reader.readString();\n          break;\n        case 11:\n          const messageInitializer11 = new ondewoNlu011.Context();\n          _reader.readMessage(\n            messageInitializer11,\n            ondewoNlu011.Context.deserializeBinaryFromReader\n          );\n          (_instance.outputContexts = _instance.outputContexts || []).push(\n            messageInitializer11\n          );\n          break;\n        case 12:\n          _instance.resetContexts = _reader.readBool();\n          break;\n        case 13:\n          const messageInitializer13 = new Intent.Parameter();\n          _reader.readMessage(\n            messageInitializer13,\n            Intent.Parameter.deserializeBinaryFromReader\n          );\n          (_instance.parameters = _instance.parameters || []).push(\n            messageInitializer13\n          );\n          break;\n        case 14:\n          const messageInitializer14 = new Intent.Message();\n          _reader.readMessage(\n            messageInitializer14,\n            Intent.Message.deserializeBinaryFromReader\n          );\n          (_instance.messages = _instance.messages || []).push(\n            messageInitializer14\n          );\n          break;\n        case 15:\n          _reader.readPackableEnumInto(\n            (_instance.defaultResponsePlatforms =\n              _instance.defaultResponsePlatforms || [])\n          );\n          break;\n        case 16:\n          _instance.rootFollowupIntentName = _reader.readString();\n          break;\n        case 17:\n          _instance.parentFollowupIntentName = _reader.readString();\n          break;\n        case 18:\n          const messageInitializer18 = new Intent.FollowupIntentInfo();\n          _reader.readMessage(\n            messageInitializer18,\n            Intent.FollowupIntentInfo.deserializeBinaryFromReader\n          );\n          (_instance.followupIntentInfo =\n            _instance.followupIntentInfo || []).push(messageInitializer18);\n          break;\n        case 30:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        case 31:\n          _instance.domainName = _reader.readString();\n          break;\n        case 32:\n          _instance.isStartOfDeviation = _reader.readBool();\n          break;\n        case 33:\n          _instance.isEndOfDeviation = _reader.readBool();\n          break;\n        case 34:\n          _instance.trainingPhraseCount = _reader.readInt32();\n          break;\n        case 35:\n          _instance.status = _reader.readEnum();\n          break;\n        case 36:\n          _instance.startDate = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startDate,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 37:\n          _instance.endDate = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.endDate,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 38:\n          (_instance.tags = _instance.tags || []).push(_reader.readString());\n          break;\n        case 39:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 40:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 41:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 42:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Intent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Intent, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.webhookState) {\n      _writer.writeEnum(6, _instance.webhookState);\n    }\n    if (_instance.priority) {\n      _writer.writeInt32(3, _instance.priority);\n    }\n    if (_instance.isFallback) {\n      _writer.writeBool(4, _instance.isFallback);\n    }\n    if (_instance.mlDisabled) {\n      _writer.writeBool(19, _instance.mlDisabled);\n    }\n    if (_instance.inputContextNames && _instance.inputContextNames.length) {\n      _writer.writeRepeatedString(7, _instance.inputContextNames);\n    }\n    if (_instance.events && _instance.events.length) {\n      _writer.writeRepeatedString(8, _instance.events);\n    }\n    if (_instance.trainingPhrases && _instance.trainingPhrases.length) {\n      _writer.writeRepeatedMessage(\n        9,\n        _instance.trainingPhrases as any,\n        Intent.TrainingPhrase.serializeBinaryToWriter\n      );\n    }\n    if (_instance.action) {\n      _writer.writeString(10, _instance.action);\n    }\n    if (_instance.outputContexts && _instance.outputContexts.length) {\n      _writer.writeRepeatedMessage(\n        11,\n        _instance.outputContexts as any,\n        ondewoNlu011.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.resetContexts) {\n      _writer.writeBool(12, _instance.resetContexts);\n    }\n    if (_instance.parameters && _instance.parameters.length) {\n      _writer.writeRepeatedMessage(\n        13,\n        _instance.parameters as any,\n        Intent.Parameter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.messages && _instance.messages.length) {\n      _writer.writeRepeatedMessage(\n        14,\n        _instance.messages as any,\n        Intent.Message.serializeBinaryToWriter\n      );\n    }\n    if (\n      _instance.defaultResponsePlatforms &&\n      _instance.defaultResponsePlatforms.length\n    ) {\n      _writer.writePackedEnum(15, _instance.defaultResponsePlatforms);\n    }\n    if (_instance.rootFollowupIntentName) {\n      _writer.writeString(16, _instance.rootFollowupIntentName);\n    }\n    if (_instance.parentFollowupIntentName) {\n      _writer.writeString(17, _instance.parentFollowupIntentName);\n    }\n    if (_instance.followupIntentInfo && _instance.followupIntentInfo.length) {\n      _writer.writeRepeatedMessage(\n        18,\n        _instance.followupIntentInfo as any,\n        Intent.FollowupIntentInfo.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(30, _instance.nextPageToken);\n    }\n    if (_instance.domainName) {\n      _writer.writeString(31, _instance.domainName);\n    }\n    if (_instance.isStartOfDeviation) {\n      _writer.writeBool(32, _instance.isStartOfDeviation);\n    }\n    if (_instance.isEndOfDeviation) {\n      _writer.writeBool(33, _instance.isEndOfDeviation);\n    }\n    if (_instance.trainingPhraseCount) {\n      _writer.writeInt32(34, _instance.trainingPhraseCount);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(35, _instance.status);\n    }\n    if (_instance.startDate) {\n      _writer.writeMessage(\n        36,\n        _instance.startDate as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endDate) {\n      _writer.writeMessage(\n        37,\n        _instance.endDate as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.tags && _instance.tags.length) {\n      _writer.writeRepeatedString(38, _instance.tags);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        39,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        40,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(41, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(42, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _webhookState: Intent.WebhookState;\n  private _priority: number;\n  private _isFallback: boolean;\n  private _mlDisabled: boolean;\n  private _inputContextNames: string[];\n  private _events: string[];\n  private _trainingPhrases?: Intent.TrainingPhrase[];\n  private _action: string;\n  private _outputContexts?: ondewoNlu011.Context[];\n  private _resetContexts: boolean;\n  private _parameters?: Intent.Parameter[];\n  private _messages?: Intent.Message[];\n  private _defaultResponsePlatforms: Intent.Message.Platform[];\n  private _rootFollowupIntentName: string;\n  private _parentFollowupIntentName: string;\n  private _followupIntentInfo?: Intent.FollowupIntentInfo[];\n  private _nextPageToken: string;\n  private _domainName: string;\n  private _isStartOfDeviation: boolean;\n  private _isEndOfDeviation: boolean;\n  private _trainingPhraseCount: number;\n  private _status: Intent.IntentStatus;\n  private _startDate?: googleProtobuf005.Timestamp;\n  private _endDate?: googleProtobuf005.Timestamp;\n  private _tags: string[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Intent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Intent.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.webhookState = _value.webhookState;\n    this.priority = _value.priority;\n    this.isFallback = _value.isFallback;\n    this.mlDisabled = _value.mlDisabled;\n    this.inputContextNames = (_value.inputContextNames || []).slice();\n    this.events = (_value.events || []).slice();\n    this.trainingPhrases = (_value.trainingPhrases || []).map(\n      m => new Intent.TrainingPhrase(m)\n    );\n    this.action = _value.action;\n    this.outputContexts = (_value.outputContexts || []).map(\n      m => new ondewoNlu011.Context(m)\n    );\n    this.resetContexts = _value.resetContexts;\n    this.parameters = (_value.parameters || []).map(\n      m => new Intent.Parameter(m)\n    );\n    this.messages = (_value.messages || []).map(m => new Intent.Message(m));\n    this.defaultResponsePlatforms = (\n      _value.defaultResponsePlatforms || []\n    ).slice();\n    this.rootFollowupIntentName = _value.rootFollowupIntentName;\n    this.parentFollowupIntentName = _value.parentFollowupIntentName;\n    this.followupIntentInfo = (_value.followupIntentInfo || []).map(\n      m => new Intent.FollowupIntentInfo(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    this.domainName = _value.domainName;\n    this.isStartOfDeviation = _value.isStartOfDeviation;\n    this.isEndOfDeviation = _value.isEndOfDeviation;\n    this.trainingPhraseCount = _value.trainingPhraseCount;\n    this.status = _value.status;\n    this.startDate = _value.startDate\n      ? new googleProtobuf005.Timestamp(_value.startDate)\n      : undefined;\n    this.endDate = _value.endDate\n      ? new googleProtobuf005.Timestamp(_value.endDate)\n      : undefined;\n    this.tags = (_value.tags || []).slice();\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    Intent.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get webhookState(): Intent.WebhookState {\n    return this._webhookState;\n  }\n  set webhookState(value: Intent.WebhookState) {\n    this._webhookState = value;\n  }\n  get priority(): number {\n    return this._priority;\n  }\n  set priority(value: number) {\n    this._priority = value;\n  }\n  get isFallback(): boolean {\n    return this._isFallback;\n  }\n  set isFallback(value: boolean) {\n    this._isFallback = value;\n  }\n  get mlDisabled(): boolean {\n    return this._mlDisabled;\n  }\n  set mlDisabled(value: boolean) {\n    this._mlDisabled = value;\n  }\n  get inputContextNames(): string[] {\n    return this._inputContextNames;\n  }\n  set inputContextNames(value: string[]) {\n    this._inputContextNames = value;\n  }\n  get events(): string[] {\n    return this._events;\n  }\n  set events(value: string[]) {\n    this._events = value;\n  }\n  get trainingPhrases(): Intent.TrainingPhrase[] | undefined {\n    return this._trainingPhrases;\n  }\n  set trainingPhrases(value: Intent.TrainingPhrase[] | undefined) {\n    this._trainingPhrases = value;\n  }\n  get action(): string {\n    return this._action;\n  }\n  set action(value: string) {\n    this._action = value;\n  }\n  get outputContexts(): ondewoNlu011.Context[] | undefined {\n    return this._outputContexts;\n  }\n  set outputContexts(value: ondewoNlu011.Context[] | undefined) {\n    this._outputContexts = value;\n  }\n  get resetContexts(): boolean {\n    return this._resetContexts;\n  }\n  set resetContexts(value: boolean) {\n    this._resetContexts = value;\n  }\n  get parameters(): Intent.Parameter[] | undefined {\n    return this._parameters;\n  }\n  set parameters(value: Intent.Parameter[] | undefined) {\n    this._parameters = value;\n  }\n  get messages(): Intent.Message[] | undefined {\n    return this._messages;\n  }\n  set messages(value: Intent.Message[] | undefined) {\n    this._messages = value;\n  }\n  get defaultResponsePlatforms(): Intent.Message.Platform[] {\n    return this._defaultResponsePlatforms;\n  }\n  set defaultResponsePlatforms(value: Intent.Message.Platform[]) {\n    this._defaultResponsePlatforms = value;\n  }\n  get rootFollowupIntentName(): string {\n    return this._rootFollowupIntentName;\n  }\n  set rootFollowupIntentName(value: string) {\n    this._rootFollowupIntentName = value;\n  }\n  get parentFollowupIntentName(): string {\n    return this._parentFollowupIntentName;\n  }\n  set parentFollowupIntentName(value: string) {\n    this._parentFollowupIntentName = value;\n  }\n  get followupIntentInfo(): Intent.FollowupIntentInfo[] | undefined {\n    return this._followupIntentInfo;\n  }\n  set followupIntentInfo(value: Intent.FollowupIntentInfo[] | undefined) {\n    this._followupIntentInfo = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n  get domainName(): string {\n    return this._domainName;\n  }\n  set domainName(value: string) {\n    this._domainName = value;\n  }\n  get isStartOfDeviation(): boolean {\n    return this._isStartOfDeviation;\n  }\n  set isStartOfDeviation(value: boolean) {\n    this._isStartOfDeviation = value;\n  }\n  get isEndOfDeviation(): boolean {\n    return this._isEndOfDeviation;\n  }\n  set isEndOfDeviation(value: boolean) {\n    this._isEndOfDeviation = value;\n  }\n  get trainingPhraseCount(): number {\n    return this._trainingPhraseCount;\n  }\n  set trainingPhraseCount(value: number) {\n    this._trainingPhraseCount = value;\n  }\n  get status(): Intent.IntentStatus {\n    return this._status;\n  }\n  set status(value: Intent.IntentStatus) {\n    this._status = value;\n  }\n  get startDate(): googleProtobuf005.Timestamp | undefined {\n    return this._startDate;\n  }\n  set startDate(value: googleProtobuf005.Timestamp | undefined) {\n    this._startDate = value;\n  }\n  get endDate(): googleProtobuf005.Timestamp | undefined {\n    return this._endDate;\n  }\n  set endDate(value: googleProtobuf005.Timestamp | undefined) {\n    this._endDate = value;\n  }\n  get tags(): string[] {\n    return this._tags;\n  }\n  set tags(value: string[]) {\n    this._tags = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Intent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Intent.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      webhookState: this.webhookState,\n      priority: this.priority,\n      isFallback: this.isFallback,\n      mlDisabled: this.mlDisabled,\n      inputContextNames: (this.inputContextNames || []).slice(),\n      events: (this.events || []).slice(),\n      trainingPhrases: (this.trainingPhrases || []).map(m => m.toObject()),\n      action: this.action,\n      outputContexts: (this.outputContexts || []).map(m => m.toObject()),\n      resetContexts: this.resetContexts,\n      parameters: (this.parameters || []).map(m => m.toObject()),\n      messages: (this.messages || []).map(m => m.toObject()),\n      defaultResponsePlatforms: (this.defaultResponsePlatforms || []).slice(),\n      rootFollowupIntentName: this.rootFollowupIntentName,\n      parentFollowupIntentName: this.parentFollowupIntentName,\n      followupIntentInfo: (this.followupIntentInfo || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken,\n      domainName: this.domainName,\n      isStartOfDeviation: this.isStartOfDeviation,\n      isEndOfDeviation: this.isEndOfDeviation,\n      trainingPhraseCount: this.trainingPhraseCount,\n      status: this.status,\n      startDate: this.startDate ? this.startDate.toObject() : undefined,\n      endDate: this.endDate ? this.endDate.toObject() : undefined,\n      tags: (this.tags || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Intent.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      webhookState:\n        Intent.WebhookState[\n          this.webhookState === null || this.webhookState === undefined\n            ? 0\n            : this.webhookState\n        ],\n      priority: this.priority,\n      isFallback: this.isFallback,\n      mlDisabled: this.mlDisabled,\n      inputContextNames: (this.inputContextNames || []).slice(),\n      events: (this.events || []).slice(),\n      trainingPhrases: (this.trainingPhrases || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      action: this.action,\n      outputContexts: (this.outputContexts || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      resetContexts: this.resetContexts,\n      parameters: (this.parameters || []).map(m => m.toProtobufJSON(options)),\n      messages: (this.messages || []).map(m => m.toProtobufJSON(options)),\n      defaultResponsePlatforms: (this.defaultResponsePlatforms || []).map(\n        v => Intent.Message.Platform[v]\n      ),\n      rootFollowupIntentName: this.rootFollowupIntentName,\n      parentFollowupIntentName: this.parentFollowupIntentName,\n      followupIntentInfo: (this.followupIntentInfo || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken,\n      domainName: this.domainName,\n      isStartOfDeviation: this.isStartOfDeviation,\n      isEndOfDeviation: this.isEndOfDeviation,\n      trainingPhraseCount: this.trainingPhraseCount,\n      status:\n        Intent.IntentStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      startDate: this.startDate ? this.startDate.toProtobufJSON(options) : null,\n      endDate: this.endDate ? this.endDate.toProtobufJSON(options) : null,\n      tags: (this.tags || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module Intent {\n  /**\n   * Standard JavaScript object representation for Intent\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    webhookState: Intent.WebhookState;\n    priority: number;\n    isFallback: boolean;\n    mlDisabled: boolean;\n    inputContextNames: string[];\n    events: string[];\n    trainingPhrases?: Intent.TrainingPhrase.AsObject[];\n    action: string;\n    outputContexts?: ondewoNlu011.Context.AsObject[];\n    resetContexts: boolean;\n    parameters?: Intent.Parameter.AsObject[];\n    messages?: Intent.Message.AsObject[];\n    defaultResponsePlatforms: Intent.Message.Platform[];\n    rootFollowupIntentName: string;\n    parentFollowupIntentName: string;\n    followupIntentInfo?: Intent.FollowupIntentInfo.AsObject[];\n    nextPageToken: string;\n    domainName: string;\n    isStartOfDeviation: boolean;\n    isEndOfDeviation: boolean;\n    trainingPhraseCount: number;\n    status: Intent.IntentStatus;\n    startDate?: googleProtobuf005.Timestamp.AsObject;\n    endDate?: googleProtobuf005.Timestamp.AsObject;\n    tags: string[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for Intent\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    webhookState: string;\n    priority: number;\n    isFallback: boolean;\n    mlDisabled: boolean;\n    inputContextNames: string[];\n    events: string[];\n    trainingPhrases: Intent.TrainingPhrase.AsProtobufJSON[] | null;\n    action: string;\n    outputContexts: ondewoNlu011.Context.AsProtobufJSON[] | null;\n    resetContexts: boolean;\n    parameters: Intent.Parameter.AsProtobufJSON[] | null;\n    messages: Intent.Message.AsProtobufJSON[] | null;\n    defaultResponsePlatforms: string[];\n    rootFollowupIntentName: string;\n    parentFollowupIntentName: string;\n    followupIntentInfo: Intent.FollowupIntentInfo.AsProtobufJSON[] | null;\n    nextPageToken: string;\n    domainName: string;\n    isStartOfDeviation: boolean;\n    isEndOfDeviation: boolean;\n    trainingPhraseCount: number;\n    status: string;\n    startDate: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    endDate: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    tags: string[];\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n  export enum IntentStatus {\n    ACTIVE = 0,\n    INACTIVE = 1\n  }\n  export enum WebhookState {\n    WEBHOOK_STATE_UNSPECIFIED = 0,\n    WEBHOOK_STATE_ENABLED = 1,\n    WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING = 2\n  }\n  /**\n   * Message implementation for ondewo.nlu.Intent.TrainingPhrase\n   */\n  export class TrainingPhrase implements GrpcMessage {\n    static id = 'ondewo.nlu.Intent.TrainingPhrase';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new TrainingPhrase();\n      TrainingPhrase.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: TrainingPhrase) {\n      _instance.name = _instance.name || '';\n      _instance.type = _instance.type || 0;\n      _instance.text = _instance.text || '';\n      _instance.entities = _instance.entities || [];\n      _instance.timesAddedCount = _instance.timesAddedCount || 0;\n      _instance.languageCode = _instance.languageCode || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: TrainingPhrase,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.type = _reader.readEnum();\n            break;\n          case 3:\n            _instance.text = _reader.readString();\n            break;\n          case 4:\n            const messageInitializer4 = new Intent.TrainingPhrase.Entity();\n            _reader.readMessage(\n              messageInitializer4,\n              Intent.TrainingPhrase.Entity.deserializeBinaryFromReader\n            );\n            (_instance.entities = _instance.entities || []).push(\n              messageInitializer4\n            );\n            break;\n          case 5:\n            _instance.timesAddedCount = _reader.readInt32();\n            break;\n          case 6:\n            _instance.languageCode = _reader.readString();\n            break;\n          case 7:\n            _instance.createdAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.modifiedAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 9:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 10:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      TrainingPhrase.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: TrainingPhrase,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.type) {\n        _writer.writeEnum(2, _instance.type);\n      }\n      if (_instance.text) {\n        _writer.writeString(3, _instance.text);\n      }\n      if (_instance.entities && _instance.entities.length) {\n        _writer.writeRepeatedMessage(\n          4,\n          _instance.entities as any,\n          Intent.TrainingPhrase.Entity.serializeBinaryToWriter\n        );\n      }\n      if (_instance.timesAddedCount) {\n        _writer.writeInt32(5, _instance.timesAddedCount);\n      }\n      if (_instance.languageCode) {\n        _writer.writeString(6, _instance.languageCode);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          7,\n          _instance.createdAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          8,\n          _instance.modifiedAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(9, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(10, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _type: Intent.TrainingPhrase.Type;\n    private _text: string;\n    private _entities?: Intent.TrainingPhrase.Entity[];\n    private _timesAddedCount: number;\n    private _languageCode: string;\n    private _createdAt?: googleProtobuf005.Timestamp;\n    private _modifiedAt?: googleProtobuf005.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of TrainingPhrase to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<TrainingPhrase.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.type = _value.type;\n      this.text = _value.text;\n      this.entities = (_value.entities || []).map(\n        m => new Intent.TrainingPhrase.Entity(m)\n      );\n      this.timesAddedCount = _value.timesAddedCount;\n      this.languageCode = _value.languageCode;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf005.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      TrainingPhrase.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get type(): Intent.TrainingPhrase.Type {\n      return this._type;\n    }\n    set type(value: Intent.TrainingPhrase.Type) {\n      this._type = value;\n    }\n    get text(): string {\n      return this._text;\n    }\n    set text(value: string) {\n      this._text = value;\n    }\n    get entities(): Intent.TrainingPhrase.Entity[] | undefined {\n      return this._entities;\n    }\n    set entities(value: Intent.TrainingPhrase.Entity[] | undefined) {\n      this._entities = value;\n    }\n    get timesAddedCount(): number {\n      return this._timesAddedCount;\n    }\n    set timesAddedCount(value: number) {\n      this._timesAddedCount = value;\n    }\n    get languageCode(): string {\n      return this._languageCode;\n    }\n    set languageCode(value: string) {\n      this._languageCode = value;\n    }\n    get createdAt(): googleProtobuf005.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      TrainingPhrase.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): TrainingPhrase.AsObject {\n      return {\n        name: this.name,\n        type: this.type,\n        text: this.text,\n        entities: (this.entities || []).map(m => m.toObject()),\n        timesAddedCount: this.timesAddedCount,\n        languageCode: this.languageCode,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): TrainingPhrase.AsProtobufJSON {\n      return {\n        name: this.name,\n        type:\n          Intent.TrainingPhrase.Type[\n            this.type === null || this.type === undefined ? 0 : this.type\n          ],\n        text: this.text,\n        entities: (this.entities || []).map(m => m.toProtobufJSON(options)),\n        timesAddedCount: this.timesAddedCount,\n        languageCode: this.languageCode,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module TrainingPhrase {\n    /**\n     * Standard JavaScript object representation for TrainingPhrase\n     */\n    export interface AsObject {\n      name: string;\n      type: Intent.TrainingPhrase.Type;\n      text: string;\n      entities?: Intent.TrainingPhrase.Entity.AsObject[];\n      timesAddedCount: number;\n      languageCode: string;\n      createdAt?: googleProtobuf005.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for TrainingPhrase\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      type: string;\n      text: string;\n      entities: Intent.TrainingPhrase.Entity.AsProtobufJSON[] | null;\n      timesAddedCount: number;\n      languageCode: string;\n      createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n    export enum Type {\n      TYPE_UNSPECIFIED = 0,\n      EXAMPLE = 1,\n      TEMPLATE = 2\n    }\n    /**\n     * Message implementation for ondewo.nlu.Intent.TrainingPhrase.Entity\n     */\n    export class Entity implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.TrainingPhrase.Entity';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Entity();\n        Entity.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Entity) {\n        _instance.entityTypeName = _instance.entityTypeName || '';\n        _instance.entityTypeDisplayName = _instance.entityTypeDisplayName || '';\n        _instance.entityValueName = _instance.entityValueName || '';\n        _instance.entityValueDisplayName =\n          _instance.entityValueDisplayName || '';\n        _instance.start = _instance.start || 0;\n        _instance.end = _instance.end || 0;\n        _instance.parameterName = _instance.parameterName || '';\n        _instance.parameterDisplayName = _instance.parameterDisplayName || '';\n        _instance.createdAt = _instance.createdAt || undefined;\n        _instance.modifiedAt = _instance.modifiedAt || undefined;\n        _instance.createdBy = _instance.createdBy || '';\n        _instance.modifiedBy = _instance.modifiedBy || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Entity,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.entityTypeName = _reader.readString();\n              break;\n            case 3:\n              _instance.entityTypeDisplayName = _reader.readString();\n              break;\n            case 4:\n              _instance.entityValueName = _reader.readString();\n              break;\n            case 5:\n              _instance.entityValueDisplayName = _reader.readString();\n              break;\n            case 6:\n              _instance.start = _reader.readInt32();\n              break;\n            case 7:\n              _instance.end = _reader.readInt32();\n              break;\n            case 8:\n              _instance.parameterName = _reader.readString();\n              break;\n            case 9:\n              _instance.parameterDisplayName = _reader.readString();\n              break;\n            case 10:\n              _instance.createdAt = new googleProtobuf005.Timestamp();\n              _reader.readMessage(\n                _instance.createdAt,\n                googleProtobuf005.Timestamp.deserializeBinaryFromReader\n              );\n              break;\n            case 11:\n              _instance.modifiedAt = new googleProtobuf005.Timestamp();\n              _reader.readMessage(\n                _instance.modifiedAt,\n                googleProtobuf005.Timestamp.deserializeBinaryFromReader\n              );\n              break;\n            case 12:\n              _instance.createdBy = _reader.readString();\n              break;\n            case 13:\n              _instance.modifiedBy = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Entity.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(_instance: Entity, _writer: BinaryWriter) {\n        if (_instance.entityTypeName) {\n          _writer.writeString(1, _instance.entityTypeName);\n        }\n        if (_instance.entityTypeDisplayName) {\n          _writer.writeString(3, _instance.entityTypeDisplayName);\n        }\n        if (_instance.entityValueName) {\n          _writer.writeString(4, _instance.entityValueName);\n        }\n        if (_instance.entityValueDisplayName) {\n          _writer.writeString(5, _instance.entityValueDisplayName);\n        }\n        if (_instance.start) {\n          _writer.writeInt32(6, _instance.start);\n        }\n        if (_instance.end) {\n          _writer.writeInt32(7, _instance.end);\n        }\n        if (_instance.parameterName) {\n          _writer.writeString(8, _instance.parameterName);\n        }\n        if (_instance.parameterDisplayName) {\n          _writer.writeString(9, _instance.parameterDisplayName);\n        }\n        if (_instance.createdAt) {\n          _writer.writeMessage(\n            10,\n            _instance.createdAt as any,\n            googleProtobuf005.Timestamp.serializeBinaryToWriter\n          );\n        }\n        if (_instance.modifiedAt) {\n          _writer.writeMessage(\n            11,\n            _instance.modifiedAt as any,\n            googleProtobuf005.Timestamp.serializeBinaryToWriter\n          );\n        }\n        if (_instance.createdBy) {\n          _writer.writeString(12, _instance.createdBy);\n        }\n        if (_instance.modifiedBy) {\n          _writer.writeString(13, _instance.modifiedBy);\n        }\n      }\n\n      private _entityTypeName: string;\n      private _entityTypeDisplayName: string;\n      private _entityValueName: string;\n      private _entityValueDisplayName: string;\n      private _start: number;\n      private _end: number;\n      private _parameterName: string;\n      private _parameterDisplayName: string;\n      private _createdAt?: googleProtobuf005.Timestamp;\n      private _modifiedAt?: googleProtobuf005.Timestamp;\n      private _createdBy: string;\n      private _modifiedBy: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Entity to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Entity.AsObject>) {\n        _value = _value || {};\n        this.entityTypeName = _value.entityTypeName;\n        this.entityTypeDisplayName = _value.entityTypeDisplayName;\n        this.entityValueName = _value.entityValueName;\n        this.entityValueDisplayName = _value.entityValueDisplayName;\n        this.start = _value.start;\n        this.end = _value.end;\n        this.parameterName = _value.parameterName;\n        this.parameterDisplayName = _value.parameterDisplayName;\n        this.createdAt = _value.createdAt\n          ? new googleProtobuf005.Timestamp(_value.createdAt)\n          : undefined;\n        this.modifiedAt = _value.modifiedAt\n          ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n          : undefined;\n        this.createdBy = _value.createdBy;\n        this.modifiedBy = _value.modifiedBy;\n        Entity.refineValues(this);\n      }\n      get entityTypeName(): string {\n        return this._entityTypeName;\n      }\n      set entityTypeName(value: string) {\n        this._entityTypeName = value;\n      }\n      get entityTypeDisplayName(): string {\n        return this._entityTypeDisplayName;\n      }\n      set entityTypeDisplayName(value: string) {\n        this._entityTypeDisplayName = value;\n      }\n      get entityValueName(): string {\n        return this._entityValueName;\n      }\n      set entityValueName(value: string) {\n        this._entityValueName = value;\n      }\n      get entityValueDisplayName(): string {\n        return this._entityValueDisplayName;\n      }\n      set entityValueDisplayName(value: string) {\n        this._entityValueDisplayName = value;\n      }\n      get start(): number {\n        return this._start;\n      }\n      set start(value: number) {\n        this._start = value;\n      }\n      get end(): number {\n        return this._end;\n      }\n      set end(value: number) {\n        this._end = value;\n      }\n      get parameterName(): string {\n        return this._parameterName;\n      }\n      set parameterName(value: string) {\n        this._parameterName = value;\n      }\n      get parameterDisplayName(): string {\n        return this._parameterDisplayName;\n      }\n      set parameterDisplayName(value: string) {\n        this._parameterDisplayName = value;\n      }\n      get createdAt(): googleProtobuf005.Timestamp | undefined {\n        return this._createdAt;\n      }\n      set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n        this._createdAt = value;\n      }\n      get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n        return this._modifiedAt;\n      }\n      set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n        this._modifiedAt = value;\n      }\n      get createdBy(): string {\n        return this._createdBy;\n      }\n      set createdBy(value: string) {\n        this._createdBy = value;\n      }\n      get modifiedBy(): string {\n        return this._modifiedBy;\n      }\n      set modifiedBy(value: string) {\n        this._modifiedBy = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Entity.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Entity.AsObject {\n        return {\n          entityTypeName: this.entityTypeName,\n          entityTypeDisplayName: this.entityTypeDisplayName,\n          entityValueName: this.entityValueName,\n          entityValueDisplayName: this.entityValueDisplayName,\n          start: this.start,\n          end: this.end,\n          parameterName: this.parameterName,\n          parameterDisplayName: this.parameterDisplayName,\n          createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n          modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n          createdBy: this.createdBy,\n          modifiedBy: this.modifiedBy\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Entity.AsProtobufJSON {\n        return {\n          entityTypeName: this.entityTypeName,\n          entityTypeDisplayName: this.entityTypeDisplayName,\n          entityValueName: this.entityValueName,\n          entityValueDisplayName: this.entityValueDisplayName,\n          start: this.start,\n          end: this.end,\n          parameterName: this.parameterName,\n          parameterDisplayName: this.parameterDisplayName,\n          createdAt: this.createdAt\n            ? this.createdAt.toProtobufJSON(options)\n            : null,\n          modifiedAt: this.modifiedAt\n            ? this.modifiedAt.toProtobufJSON(options)\n            : null,\n          createdBy: this.createdBy,\n          modifiedBy: this.modifiedBy\n        };\n      }\n    }\n    export module Entity {\n      /**\n       * Standard JavaScript object representation for Entity\n       */\n      export interface AsObject {\n        entityTypeName: string;\n        entityTypeDisplayName: string;\n        entityValueName: string;\n        entityValueDisplayName: string;\n        start: number;\n        end: number;\n        parameterName: string;\n        parameterDisplayName: string;\n        createdAt?: googleProtobuf005.Timestamp.AsObject;\n        modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n        createdBy: string;\n        modifiedBy: string;\n      }\n\n      /**\n       * Protobuf JSON representation for Entity\n       */\n      export interface AsProtobufJSON {\n        entityTypeName: string;\n        entityTypeDisplayName: string;\n        entityValueName: string;\n        entityValueDisplayName: string;\n        start: number;\n        end: number;\n        parameterName: string;\n        parameterDisplayName: string;\n        createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n        modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n        createdBy: string;\n        modifiedBy: string;\n      }\n    }\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.Intent.Parameter\n   */\n  export class Parameter implements GrpcMessage {\n    static id = 'ondewo.nlu.Intent.Parameter';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new Parameter();\n      Parameter.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: Parameter) {\n      _instance.name = _instance.name || '';\n      _instance.displayName = _instance.displayName || '';\n      _instance.value = _instance.value || '';\n      _instance.defaultValue = _instance.defaultValue || '';\n      _instance.entityTypeName = _instance.entityTypeName || '';\n      _instance.entityTypeDisplayName = _instance.entityTypeDisplayName || '';\n      _instance.mandatory = _instance.mandatory || false;\n      _instance.prompts = _instance.prompts || [];\n      _instance.isList = _instance.isList || false;\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: Parameter,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.displayName = _reader.readString();\n            break;\n          case 3:\n            _instance.value = _reader.readString();\n            break;\n          case 4:\n            _instance.defaultValue = _reader.readString();\n            break;\n          case 5:\n            _instance.entityTypeName = _reader.readString();\n            break;\n          case 6:\n            _instance.entityTypeDisplayName = _reader.readString();\n            break;\n          case 7:\n            _instance.mandatory = _reader.readBool();\n            break;\n          case 8:\n            const messageInitializer8 = new Intent.Parameter.Prompt();\n            _reader.readMessage(\n              messageInitializer8,\n              Intent.Parameter.Prompt.deserializeBinaryFromReader\n            );\n            (_instance.prompts = _instance.prompts || []).push(\n              messageInitializer8\n            );\n            break;\n          case 9:\n            _instance.isList = _reader.readBool();\n            break;\n          case 10:\n            _instance.createdAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 11:\n            _instance.modifiedAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 12:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 13:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      Parameter.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: Parameter,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.displayName) {\n        _writer.writeString(2, _instance.displayName);\n      }\n      if (_instance.value) {\n        _writer.writeString(3, _instance.value);\n      }\n      if (_instance.defaultValue) {\n        _writer.writeString(4, _instance.defaultValue);\n      }\n      if (_instance.entityTypeName) {\n        _writer.writeString(5, _instance.entityTypeName);\n      }\n      if (_instance.entityTypeDisplayName) {\n        _writer.writeString(6, _instance.entityTypeDisplayName);\n      }\n      if (_instance.mandatory) {\n        _writer.writeBool(7, _instance.mandatory);\n      }\n      if (_instance.prompts && _instance.prompts.length) {\n        _writer.writeRepeatedMessage(\n          8,\n          _instance.prompts as any,\n          Intent.Parameter.Prompt.serializeBinaryToWriter\n        );\n      }\n      if (_instance.isList) {\n        _writer.writeBool(9, _instance.isList);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          10,\n          _instance.createdAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          11,\n          _instance.modifiedAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(12, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(13, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _displayName: string;\n    private _value: string;\n    private _defaultValue: string;\n    private _entityTypeName: string;\n    private _entityTypeDisplayName: string;\n    private _mandatory: boolean;\n    private _prompts?: Intent.Parameter.Prompt[];\n    private _isList: boolean;\n    private _createdAt?: googleProtobuf005.Timestamp;\n    private _modifiedAt?: googleProtobuf005.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of Parameter to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<Parameter.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.displayName = _value.displayName;\n      this.value = _value.value;\n      this.defaultValue = _value.defaultValue;\n      this.entityTypeName = _value.entityTypeName;\n      this.entityTypeDisplayName = _value.entityTypeDisplayName;\n      this.mandatory = _value.mandatory;\n      this.prompts = (_value.prompts || []).map(\n        m => new Intent.Parameter.Prompt(m)\n      );\n      this.isList = _value.isList;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf005.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      Parameter.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get displayName(): string {\n      return this._displayName;\n    }\n    set displayName(value: string) {\n      this._displayName = value;\n    }\n    get value(): string {\n      return this._value;\n    }\n    set value(value: string) {\n      this._value = value;\n    }\n    get defaultValue(): string {\n      return this._defaultValue;\n    }\n    set defaultValue(value: string) {\n      this._defaultValue = value;\n    }\n    get entityTypeName(): string {\n      return this._entityTypeName;\n    }\n    set entityTypeName(value: string) {\n      this._entityTypeName = value;\n    }\n    get entityTypeDisplayName(): string {\n      return this._entityTypeDisplayName;\n    }\n    set entityTypeDisplayName(value: string) {\n      this._entityTypeDisplayName = value;\n    }\n    get mandatory(): boolean {\n      return this._mandatory;\n    }\n    set mandatory(value: boolean) {\n      this._mandatory = value;\n    }\n    get prompts(): Intent.Parameter.Prompt[] | undefined {\n      return this._prompts;\n    }\n    set prompts(value: Intent.Parameter.Prompt[] | undefined) {\n      this._prompts = value;\n    }\n    get isList(): boolean {\n      return this._isList;\n    }\n    set isList(value: boolean) {\n      this._isList = value;\n    }\n    get createdAt(): googleProtobuf005.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      Parameter.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): Parameter.AsObject {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        value: this.value,\n        defaultValue: this.defaultValue,\n        entityTypeName: this.entityTypeName,\n        entityTypeDisplayName: this.entityTypeDisplayName,\n        mandatory: this.mandatory,\n        prompts: (this.prompts || []).map(m => m.toObject()),\n        isList: this.isList,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): Parameter.AsProtobufJSON {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        value: this.value,\n        defaultValue: this.defaultValue,\n        entityTypeName: this.entityTypeName,\n        entityTypeDisplayName: this.entityTypeDisplayName,\n        mandatory: this.mandatory,\n        prompts: (this.prompts || []).map(m => m.toProtobufJSON(options)),\n        isList: this.isList,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module Parameter {\n    /**\n     * Standard JavaScript object representation for Parameter\n     */\n    export interface AsObject {\n      name: string;\n      displayName: string;\n      value: string;\n      defaultValue: string;\n      entityTypeName: string;\n      entityTypeDisplayName: string;\n      mandatory: boolean;\n      prompts?: Intent.Parameter.Prompt.AsObject[];\n      isList: boolean;\n      createdAt?: googleProtobuf005.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for Parameter\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      displayName: string;\n      value: string;\n      defaultValue: string;\n      entityTypeName: string;\n      entityTypeDisplayName: string;\n      mandatory: boolean;\n      prompts: Intent.Parameter.Prompt.AsProtobufJSON[] | null;\n      isList: boolean;\n      createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Parameter.Prompt\n     */\n    export class Prompt implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Parameter.Prompt';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Prompt();\n        Prompt.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Prompt) {\n        _instance.name = _instance.name || '';\n        _instance.text = _instance.text || '';\n        _instance.languageCode = _instance.languageCode || '';\n        _instance.createdAt = _instance.createdAt || undefined;\n        _instance.modifiedAt = _instance.modifiedAt || undefined;\n        _instance.createdBy = _instance.createdBy || '';\n        _instance.modifiedBy = _instance.modifiedBy || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Prompt,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.name = _reader.readString();\n              break;\n            case 2:\n              _instance.text = _reader.readString();\n              break;\n            case 3:\n              _instance.languageCode = _reader.readString();\n              break;\n            case 4:\n              _instance.createdAt = new googleProtobuf005.Timestamp();\n              _reader.readMessage(\n                _instance.createdAt,\n                googleProtobuf005.Timestamp.deserializeBinaryFromReader\n              );\n              break;\n            case 5:\n              _instance.modifiedAt = new googleProtobuf005.Timestamp();\n              _reader.readMessage(\n                _instance.modifiedAt,\n                googleProtobuf005.Timestamp.deserializeBinaryFromReader\n              );\n              break;\n            case 6:\n              _instance.createdBy = _reader.readString();\n              break;\n            case 7:\n              _instance.modifiedBy = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Prompt.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(_instance: Prompt, _writer: BinaryWriter) {\n        if (_instance.name) {\n          _writer.writeString(1, _instance.name);\n        }\n        if (_instance.text) {\n          _writer.writeString(2, _instance.text);\n        }\n        if (_instance.languageCode) {\n          _writer.writeString(3, _instance.languageCode);\n        }\n        if (_instance.createdAt) {\n          _writer.writeMessage(\n            4,\n            _instance.createdAt as any,\n            googleProtobuf005.Timestamp.serializeBinaryToWriter\n          );\n        }\n        if (_instance.modifiedAt) {\n          _writer.writeMessage(\n            5,\n            _instance.modifiedAt as any,\n            googleProtobuf005.Timestamp.serializeBinaryToWriter\n          );\n        }\n        if (_instance.createdBy) {\n          _writer.writeString(6, _instance.createdBy);\n        }\n        if (_instance.modifiedBy) {\n          _writer.writeString(7, _instance.modifiedBy);\n        }\n      }\n\n      private _name: string;\n      private _text: string;\n      private _languageCode: string;\n      private _createdAt?: googleProtobuf005.Timestamp;\n      private _modifiedAt?: googleProtobuf005.Timestamp;\n      private _createdBy: string;\n      private _modifiedBy: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Prompt to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Prompt.AsObject>) {\n        _value = _value || {};\n        this.name = _value.name;\n        this.text = _value.text;\n        this.languageCode = _value.languageCode;\n        this.createdAt = _value.createdAt\n          ? new googleProtobuf005.Timestamp(_value.createdAt)\n          : undefined;\n        this.modifiedAt = _value.modifiedAt\n          ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n          : undefined;\n        this.createdBy = _value.createdBy;\n        this.modifiedBy = _value.modifiedBy;\n        Prompt.refineValues(this);\n      }\n      get name(): string {\n        return this._name;\n      }\n      set name(value: string) {\n        this._name = value;\n      }\n      get text(): string {\n        return this._text;\n      }\n      set text(value: string) {\n        this._text = value;\n      }\n      get languageCode(): string {\n        return this._languageCode;\n      }\n      set languageCode(value: string) {\n        this._languageCode = value;\n      }\n      get createdAt(): googleProtobuf005.Timestamp | undefined {\n        return this._createdAt;\n      }\n      set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n        this._createdAt = value;\n      }\n      get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n        return this._modifiedAt;\n      }\n      set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n        this._modifiedAt = value;\n      }\n      get createdBy(): string {\n        return this._createdBy;\n      }\n      set createdBy(value: string) {\n        this._createdBy = value;\n      }\n      get modifiedBy(): string {\n        return this._modifiedBy;\n      }\n      set modifiedBy(value: string) {\n        this._modifiedBy = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Prompt.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Prompt.AsObject {\n        return {\n          name: this.name,\n          text: this.text,\n          languageCode: this.languageCode,\n          createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n          modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n          createdBy: this.createdBy,\n          modifiedBy: this.modifiedBy\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Prompt.AsProtobufJSON {\n        return {\n          name: this.name,\n          text: this.text,\n          languageCode: this.languageCode,\n          createdAt: this.createdAt\n            ? this.createdAt.toProtobufJSON(options)\n            : null,\n          modifiedAt: this.modifiedAt\n            ? this.modifiedAt.toProtobufJSON(options)\n            : null,\n          createdBy: this.createdBy,\n          modifiedBy: this.modifiedBy\n        };\n      }\n    }\n    export module Prompt {\n      /**\n       * Standard JavaScript object representation for Prompt\n       */\n      export interface AsObject {\n        name: string;\n        text: string;\n        languageCode: string;\n        createdAt?: googleProtobuf005.Timestamp.AsObject;\n        modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n        createdBy: string;\n        modifiedBy: string;\n      }\n\n      /**\n       * Protobuf JSON representation for Prompt\n       */\n      export interface AsProtobufJSON {\n        name: string;\n        text: string;\n        languageCode: string;\n        createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n        modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n        createdBy: string;\n        modifiedBy: string;\n      }\n    }\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.Intent.Message\n   */\n  export class Message implements GrpcMessage {\n    static id = 'ondewo.nlu.Intent.Message';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new Message();\n      Message.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: Message) {\n      _instance.name = _instance.name || '';\n      _instance.languageCode = _instance.languageCode || '';\n\n      _instance.platform = _instance.platform || 0;\n      _instance.isPrompt = _instance.isPrompt || false;\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: Message,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 16:\n            _instance.name = _reader.readString();\n            break;\n          case 17:\n            _instance.languageCode = _reader.readString();\n            break;\n          case 1:\n            _instance.text = new Intent.Message.Text();\n            _reader.readMessage(\n              _instance.text,\n              Intent.Message.Text.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            _instance.image = new Intent.Message.Image();\n            _reader.readMessage(\n              _instance.image,\n              Intent.Message.Image.deserializeBinaryFromReader\n            );\n            break;\n          case 3:\n            _instance.quickReplies = new Intent.Message.QuickReplies();\n            _reader.readMessage(\n              _instance.quickReplies,\n              Intent.Message.QuickReplies.deserializeBinaryFromReader\n            );\n            break;\n          case 4:\n            _instance.card = new Intent.Message.Card();\n            _reader.readMessage(\n              _instance.card,\n              Intent.Message.Card.deserializeBinaryFromReader\n            );\n            break;\n          case 5:\n            _instance.payload = new googleProtobuf006.Struct();\n            _reader.readMessage(\n              _instance.payload,\n              googleProtobuf006.Struct.deserializeBinaryFromReader\n            );\n            break;\n          case 7:\n            _instance.simpleResponses = new Intent.Message.SimpleResponses();\n            _reader.readMessage(\n              _instance.simpleResponses,\n              Intent.Message.SimpleResponses.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.basicCard = new Intent.Message.BasicCard();\n            _reader.readMessage(\n              _instance.basicCard,\n              Intent.Message.BasicCard.deserializeBinaryFromReader\n            );\n            break;\n          case 9:\n            _instance.suggestions = new Intent.Message.Suggestions();\n            _reader.readMessage(\n              _instance.suggestions,\n              Intent.Message.Suggestions.deserializeBinaryFromReader\n            );\n            break;\n          case 10:\n            _instance.linkOutSuggestion = new Intent.Message.LinkOutSuggestion();\n            _reader.readMessage(\n              _instance.linkOutSuggestion,\n              Intent.Message.LinkOutSuggestion.deserializeBinaryFromReader\n            );\n            break;\n          case 11:\n            _instance.listSelect = new Intent.Message.ListSelect();\n            _reader.readMessage(\n              _instance.listSelect,\n              Intent.Message.ListSelect.deserializeBinaryFromReader\n            );\n            break;\n          case 12:\n            _instance.carouselSelect = new Intent.Message.CarouselSelect();\n            _reader.readMessage(\n              _instance.carouselSelect,\n              Intent.Message.CarouselSelect.deserializeBinaryFromReader\n            );\n            break;\n          case 13:\n            _instance.htmlText = new Intent.Message.HTMLText();\n            _reader.readMessage(\n              _instance.htmlText,\n              Intent.Message.HTMLText.deserializeBinaryFromReader\n            );\n            break;\n          case 14:\n            _instance.video = new Intent.Message.Video();\n            _reader.readMessage(\n              _instance.video,\n              Intent.Message.Video.deserializeBinaryFromReader\n            );\n            break;\n          case 15:\n            _instance.audio = new Intent.Message.Audio();\n            _reader.readMessage(\n              _instance.audio,\n              Intent.Message.Audio.deserializeBinaryFromReader\n            );\n            break;\n          case 6:\n            _instance.platform = _reader.readEnum();\n            break;\n          case 18:\n            _instance.isPrompt = _reader.readBool();\n            break;\n          case 19:\n            _instance.createdAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 20:\n            _instance.modifiedAt = new googleProtobuf005.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf005.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 21:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 22:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      Message.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(_instance: Message, _writer: BinaryWriter) {\n      if (_instance.name) {\n        _writer.writeString(16, _instance.name);\n      }\n      if (_instance.languageCode) {\n        _writer.writeString(17, _instance.languageCode);\n      }\n      if (_instance.text) {\n        _writer.writeMessage(\n          1,\n          _instance.text as any,\n          Intent.Message.Text.serializeBinaryToWriter\n        );\n      }\n      if (_instance.image) {\n        _writer.writeMessage(\n          2,\n          _instance.image as any,\n          Intent.Message.Image.serializeBinaryToWriter\n        );\n      }\n      if (_instance.quickReplies) {\n        _writer.writeMessage(\n          3,\n          _instance.quickReplies as any,\n          Intent.Message.QuickReplies.serializeBinaryToWriter\n        );\n      }\n      if (_instance.card) {\n        _writer.writeMessage(\n          4,\n          _instance.card as any,\n          Intent.Message.Card.serializeBinaryToWriter\n        );\n      }\n      if (_instance.payload) {\n        _writer.writeMessage(\n          5,\n          _instance.payload as any,\n          googleProtobuf006.Struct.serializeBinaryToWriter\n        );\n      }\n      if (_instance.simpleResponses) {\n        _writer.writeMessage(\n          7,\n          _instance.simpleResponses as any,\n          Intent.Message.SimpleResponses.serializeBinaryToWriter\n        );\n      }\n      if (_instance.basicCard) {\n        _writer.writeMessage(\n          8,\n          _instance.basicCard as any,\n          Intent.Message.BasicCard.serializeBinaryToWriter\n        );\n      }\n      if (_instance.suggestions) {\n        _writer.writeMessage(\n          9,\n          _instance.suggestions as any,\n          Intent.Message.Suggestions.serializeBinaryToWriter\n        );\n      }\n      if (_instance.linkOutSuggestion) {\n        _writer.writeMessage(\n          10,\n          _instance.linkOutSuggestion as any,\n          Intent.Message.LinkOutSuggestion.serializeBinaryToWriter\n        );\n      }\n      if (_instance.listSelect) {\n        _writer.writeMessage(\n          11,\n          _instance.listSelect as any,\n          Intent.Message.ListSelect.serializeBinaryToWriter\n        );\n      }\n      if (_instance.carouselSelect) {\n        _writer.writeMessage(\n          12,\n          _instance.carouselSelect as any,\n          Intent.Message.CarouselSelect.serializeBinaryToWriter\n        );\n      }\n      if (_instance.htmlText) {\n        _writer.writeMessage(\n          13,\n          _instance.htmlText as any,\n          Intent.Message.HTMLText.serializeBinaryToWriter\n        );\n      }\n      if (_instance.video) {\n        _writer.writeMessage(\n          14,\n          _instance.video as any,\n          Intent.Message.Video.serializeBinaryToWriter\n        );\n      }\n      if (_instance.audio) {\n        _writer.writeMessage(\n          15,\n          _instance.audio as any,\n          Intent.Message.Audio.serializeBinaryToWriter\n        );\n      }\n      if (_instance.platform) {\n        _writer.writeEnum(6, _instance.platform);\n      }\n      if (_instance.isPrompt) {\n        _writer.writeBool(18, _instance.isPrompt);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          19,\n          _instance.createdAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          20,\n          _instance.modifiedAt as any,\n          googleProtobuf005.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(21, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(22, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _languageCode: string;\n    private _text?: Intent.Message.Text;\n    private _image?: Intent.Message.Image;\n    private _quickReplies?: Intent.Message.QuickReplies;\n    private _card?: Intent.Message.Card;\n    private _payload?: googleProtobuf006.Struct;\n    private _simpleResponses?: Intent.Message.SimpleResponses;\n    private _basicCard?: Intent.Message.BasicCard;\n    private _suggestions?: Intent.Message.Suggestions;\n    private _linkOutSuggestion?: Intent.Message.LinkOutSuggestion;\n    private _listSelect?: Intent.Message.ListSelect;\n    private _carouselSelect?: Intent.Message.CarouselSelect;\n    private _htmlText?: Intent.Message.HTMLText;\n    private _video?: Intent.Message.Video;\n    private _audio?: Intent.Message.Audio;\n    private _platform: Intent.Message.Platform;\n    private _isPrompt: boolean;\n    private _createdAt?: googleProtobuf005.Timestamp;\n    private _modifiedAt?: googleProtobuf005.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    private _message: Message.MessageCase = Message.MessageCase.none;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of Message to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<Message.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.languageCode = _value.languageCode;\n      this.text = _value.text\n        ? new Intent.Message.Text(_value.text)\n        : undefined;\n      this.image = _value.image\n        ? new Intent.Message.Image(_value.image)\n        : undefined;\n      this.quickReplies = _value.quickReplies\n        ? new Intent.Message.QuickReplies(_value.quickReplies)\n        : undefined;\n      this.card = _value.card\n        ? new Intent.Message.Card(_value.card)\n        : undefined;\n      this.payload = _value.payload\n        ? new googleProtobuf006.Struct(_value.payload)\n        : undefined;\n      this.simpleResponses = _value.simpleResponses\n        ? new Intent.Message.SimpleResponses(_value.simpleResponses)\n        : undefined;\n      this.basicCard = _value.basicCard\n        ? new Intent.Message.BasicCard(_value.basicCard)\n        : undefined;\n      this.suggestions = _value.suggestions\n        ? new Intent.Message.Suggestions(_value.suggestions)\n        : undefined;\n      this.linkOutSuggestion = _value.linkOutSuggestion\n        ? new Intent.Message.LinkOutSuggestion(_value.linkOutSuggestion)\n        : undefined;\n      this.listSelect = _value.listSelect\n        ? new Intent.Message.ListSelect(_value.listSelect)\n        : undefined;\n      this.carouselSelect = _value.carouselSelect\n        ? new Intent.Message.CarouselSelect(_value.carouselSelect)\n        : undefined;\n      this.htmlText = _value.htmlText\n        ? new Intent.Message.HTMLText(_value.htmlText)\n        : undefined;\n      this.video = _value.video\n        ? new Intent.Message.Video(_value.video)\n        : undefined;\n      this.audio = _value.audio\n        ? new Intent.Message.Audio(_value.audio)\n        : undefined;\n      this.platform = _value.platform;\n      this.isPrompt = _value.isPrompt;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf005.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      Message.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get languageCode(): string {\n      return this._languageCode;\n    }\n    set languageCode(value: string) {\n      this._languageCode = value;\n    }\n    get text(): Intent.Message.Text | undefined {\n      return this._text;\n    }\n    set text(value: Intent.Message.Text | undefined) {\n      if (value !== undefined && value !== null) {\n        this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.text;\n      }\n      this._text = value;\n    }\n    get image(): Intent.Message.Image | undefined {\n      return this._image;\n    }\n    set image(value: Intent.Message.Image | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.image;\n      }\n      this._image = value;\n    }\n    get quickReplies(): Intent.Message.QuickReplies | undefined {\n      return this._quickReplies;\n    }\n    set quickReplies(value: Intent.Message.QuickReplies | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.quickReplies;\n      }\n      this._quickReplies = value;\n    }\n    get card(): Intent.Message.Card | undefined {\n      return this._card;\n    }\n    set card(value: Intent.Message.Card | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.card;\n      }\n      this._card = value;\n    }\n    get payload(): googleProtobuf006.Struct | undefined {\n      return this._payload;\n    }\n    set payload(value: googleProtobuf006.Struct | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.payload;\n      }\n      this._payload = value;\n    }\n    get simpleResponses(): Intent.Message.SimpleResponses | undefined {\n      return this._simpleResponses;\n    }\n    set simpleResponses(value: Intent.Message.SimpleResponses | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.simpleResponses;\n      }\n      this._simpleResponses = value;\n    }\n    get basicCard(): Intent.Message.BasicCard | undefined {\n      return this._basicCard;\n    }\n    set basicCard(value: Intent.Message.BasicCard | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.basicCard;\n      }\n      this._basicCard = value;\n    }\n    get suggestions(): Intent.Message.Suggestions | undefined {\n      return this._suggestions;\n    }\n    set suggestions(value: Intent.Message.Suggestions | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.suggestions;\n      }\n      this._suggestions = value;\n    }\n    get linkOutSuggestion(): Intent.Message.LinkOutSuggestion | undefined {\n      return this._linkOutSuggestion;\n    }\n    set linkOutSuggestion(value: Intent.Message.LinkOutSuggestion | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._listSelect = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.linkOutSuggestion;\n      }\n      this._linkOutSuggestion = value;\n    }\n    get listSelect(): Intent.Message.ListSelect | undefined {\n      return this._listSelect;\n    }\n    set listSelect(value: Intent.Message.ListSelect | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._carouselSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.listSelect;\n      }\n      this._listSelect = value;\n    }\n    get carouselSelect(): Intent.Message.CarouselSelect | undefined {\n      return this._carouselSelect;\n    }\n    set carouselSelect(value: Intent.Message.CarouselSelect | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._htmlText = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.carouselSelect;\n      }\n      this._carouselSelect = value;\n    }\n    get htmlText(): Intent.Message.HTMLText | undefined {\n      return this._htmlText;\n    }\n    set htmlText(value: Intent.Message.HTMLText | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._video = this._audio = undefined;\n        this._message = Message.MessageCase.htmlText;\n      }\n      this._htmlText = value;\n    }\n    get video(): Intent.Message.Video | undefined {\n      return this._video;\n    }\n    set video(value: Intent.Message.Video | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._audio = undefined;\n        this._message = Message.MessageCase.video;\n      }\n      this._video = value;\n    }\n    get audio(): Intent.Message.Audio | undefined {\n      return this._audio;\n    }\n    set audio(value: Intent.Message.Audio | undefined) {\n      if (value !== undefined && value !== null) {\n        this._text = this._image = this._quickReplies = this._card = this._payload = this._simpleResponses = this._basicCard = this._suggestions = this._linkOutSuggestion = this._listSelect = this._carouselSelect = this._htmlText = this._video = undefined;\n        this._message = Message.MessageCase.audio;\n      }\n      this._audio = value;\n    }\n    get platform(): Intent.Message.Platform {\n      return this._platform;\n    }\n    set platform(value: Intent.Message.Platform) {\n      this._platform = value;\n    }\n    get isPrompt(): boolean {\n      return this._isPrompt;\n    }\n    set isPrompt(value: boolean) {\n      this._isPrompt = value;\n    }\n    get createdAt(): googleProtobuf005.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n    get message() {\n      return this._message;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      Message.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): Message.AsObject {\n      return {\n        name: this.name,\n        languageCode: this.languageCode,\n        text: this.text ? this.text.toObject() : undefined,\n        image: this.image ? this.image.toObject() : undefined,\n        quickReplies: this.quickReplies\n          ? this.quickReplies.toObject()\n          : undefined,\n        card: this.card ? this.card.toObject() : undefined,\n        payload: this.payload ? this.payload.toObject() : undefined,\n        simpleResponses: this.simpleResponses\n          ? this.simpleResponses.toObject()\n          : undefined,\n        basicCard: this.basicCard ? this.basicCard.toObject() : undefined,\n        suggestions: this.suggestions ? this.suggestions.toObject() : undefined,\n        linkOutSuggestion: this.linkOutSuggestion\n          ? this.linkOutSuggestion.toObject()\n          : undefined,\n        listSelect: this.listSelect ? this.listSelect.toObject() : undefined,\n        carouselSelect: this.carouselSelect\n          ? this.carouselSelect.toObject()\n          : undefined,\n        htmlText: this.htmlText ? this.htmlText.toObject() : undefined,\n        video: this.video ? this.video.toObject() : undefined,\n        audio: this.audio ? this.audio.toObject() : undefined,\n        platform: this.platform,\n        isPrompt: this.isPrompt,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): Message.AsProtobufJSON {\n      return {\n        name: this.name,\n        languageCode: this.languageCode,\n        text: this.text ? this.text.toProtobufJSON(options) : null,\n        image: this.image ? this.image.toProtobufJSON(options) : null,\n        quickReplies: this.quickReplies\n          ? this.quickReplies.toProtobufJSON(options)\n          : null,\n        card: this.card ? this.card.toProtobufJSON(options) : null,\n        payload: this.payload ? this.payload.toProtobufJSON(options) : null,\n        simpleResponses: this.simpleResponses\n          ? this.simpleResponses.toProtobufJSON(options)\n          : null,\n        basicCard: this.basicCard\n          ? this.basicCard.toProtobufJSON(options)\n          : null,\n        suggestions: this.suggestions\n          ? this.suggestions.toProtobufJSON(options)\n          : null,\n        linkOutSuggestion: this.linkOutSuggestion\n          ? this.linkOutSuggestion.toProtobufJSON(options)\n          : null,\n        listSelect: this.listSelect\n          ? this.listSelect.toProtobufJSON(options)\n          : null,\n        carouselSelect: this.carouselSelect\n          ? this.carouselSelect.toProtobufJSON(options)\n          : null,\n        htmlText: this.htmlText ? this.htmlText.toProtobufJSON(options) : null,\n        video: this.video ? this.video.toProtobufJSON(options) : null,\n        audio: this.audio ? this.audio.toProtobufJSON(options) : null,\n        platform:\n          Intent.Message.Platform[\n            this.platform === null || this.platform === undefined\n              ? 0\n              : this.platform\n          ],\n        isPrompt: this.isPrompt,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module Message {\n    /**\n     * Standard JavaScript object representation for Message\n     */\n    export interface AsObject {\n      name: string;\n      languageCode: string;\n      text?: Intent.Message.Text.AsObject;\n      image?: Intent.Message.Image.AsObject;\n      quickReplies?: Intent.Message.QuickReplies.AsObject;\n      card?: Intent.Message.Card.AsObject;\n      payload?: googleProtobuf006.Struct.AsObject;\n      simpleResponses?: Intent.Message.SimpleResponses.AsObject;\n      basicCard?: Intent.Message.BasicCard.AsObject;\n      suggestions?: Intent.Message.Suggestions.AsObject;\n      linkOutSuggestion?: Intent.Message.LinkOutSuggestion.AsObject;\n      listSelect?: Intent.Message.ListSelect.AsObject;\n      carouselSelect?: Intent.Message.CarouselSelect.AsObject;\n      htmlText?: Intent.Message.HTMLText.AsObject;\n      video?: Intent.Message.Video.AsObject;\n      audio?: Intent.Message.Audio.AsObject;\n      platform: Intent.Message.Platform;\n      isPrompt: boolean;\n      createdAt?: googleProtobuf005.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for Message\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      languageCode: string;\n      text: Intent.Message.Text.AsProtobufJSON | null;\n      image: Intent.Message.Image.AsProtobufJSON | null;\n      quickReplies: Intent.Message.QuickReplies.AsProtobufJSON | null;\n      card: Intent.Message.Card.AsProtobufJSON | null;\n      payload: googleProtobuf006.Struct.AsProtobufJSON | null;\n      simpleResponses: Intent.Message.SimpleResponses.AsProtobufJSON | null;\n      basicCard: Intent.Message.BasicCard.AsProtobufJSON | null;\n      suggestions: Intent.Message.Suggestions.AsProtobufJSON | null;\n      linkOutSuggestion: Intent.Message.LinkOutSuggestion.AsProtobufJSON | null;\n      listSelect: Intent.Message.ListSelect.AsProtobufJSON | null;\n      carouselSelect: Intent.Message.CarouselSelect.AsProtobufJSON | null;\n      htmlText: Intent.Message.HTMLText.AsProtobufJSON | null;\n      video: Intent.Message.Video.AsProtobufJSON | null;\n      audio: Intent.Message.Audio.AsProtobufJSON | null;\n      platform: string;\n      isPrompt: boolean;\n      createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n    export enum MessageCase {\n      none = 0,\n      text = 1,\n      image = 2,\n      quickReplies = 3,\n      card = 4,\n      payload = 5,\n      simpleResponses = 6,\n      basicCard = 7,\n      suggestions = 8,\n      linkOutSuggestion = 9,\n      listSelect = 10,\n      carouselSelect = 11,\n      htmlText = 12,\n      video = 13,\n      audio = 14\n    }\n    export enum Platform {\n      PLATFORM_UNSPECIFIED = 0,\n      FACEBOOK = 1,\n      SLACK = 2,\n      TELEGRAM = 3,\n      KIK = 4,\n      SKYPE = 5,\n      LINE = 6,\n      VIBER = 7,\n      ACTIONS_ON_GOOGLE = 8,\n      PLACEHOLDER_1 = 9,\n      PLACEHOLDER_2 = 10,\n      PLACEHOLDER_3 = 11,\n      PLACEHOLDER_4 = 12,\n      PLACEHOLDER_5 = 13,\n      PLACEHOLDER_6 = 14,\n      PLACEHOLDER_7 = 15,\n      PLACEHOLDER_8 = 16,\n      PLACEHOLDER_9 = 17,\n      PLACEHOLDER_10 = 18,\n      PLACEHOLDER_11 = 19,\n      PLACEHOLDER_12 = 20,\n      PLACEHOLDER_13 = 21,\n      PLACEHOLDER_14 = 22,\n      PLACEHOLDER_15 = 23,\n      PLACEHOLDER_16 = 24,\n      PLACEHOLDER_17 = 25,\n      PLACEHOLDER_18 = 26,\n      PLACEHOLDER_19 = 27,\n      PLACEHOLDER_20 = 28\n    }\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.Text\n     */\n    export class Text implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.Text';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Text();\n        Text.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Text) {\n        _instance.text = _instance.text || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Text,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              (_instance.text = _instance.text || []).push(\n                _reader.readString()\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Text.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(_instance: Text, _writer: BinaryWriter) {\n        if (_instance.text && _instance.text.length) {\n          _writer.writeRepeatedString(1, _instance.text);\n        }\n      }\n\n      private _text: string[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Text to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Text.AsObject>) {\n        _value = _value || {};\n        this.text = (_value.text || []).slice();\n        Text.refineValues(this);\n      }\n      get text(): string[] {\n        return this._text;\n      }\n      set text(value: string[]) {\n        this._text = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Text.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Text.AsObject {\n        return {\n          text: (this.text || []).slice()\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Text.AsProtobufJSON {\n        return {\n          text: (this.text || []).slice()\n        };\n      }\n    }\n    export module Text {\n      /**\n       * Standard JavaScript object representation for Text\n       */\n      export interface AsObject {\n        text: string[];\n      }\n\n      /**\n       * Protobuf JSON representation for Text\n       */\n      export interface AsProtobufJSON {\n        text: string[];\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.Image\n     */\n    export class Image implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.Image';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Image();\n        Image.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Image) {\n        _instance.imageUri = _instance.imageUri || '';\n        _instance.accessibilityText = _instance.accessibilityText || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Image,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.imageUri = _reader.readString();\n              break;\n            case 2:\n              _instance.accessibilityText = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Image.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(_instance: Image, _writer: BinaryWriter) {\n        if (_instance.imageUri) {\n          _writer.writeString(1, _instance.imageUri);\n        }\n        if (_instance.accessibilityText) {\n          _writer.writeString(2, _instance.accessibilityText);\n        }\n      }\n\n      private _imageUri: string;\n      private _accessibilityText: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Image to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Image.AsObject>) {\n        _value = _value || {};\n        this.imageUri = _value.imageUri;\n        this.accessibilityText = _value.accessibilityText;\n        Image.refineValues(this);\n      }\n      get imageUri(): string {\n        return this._imageUri;\n      }\n      set imageUri(value: string) {\n        this._imageUri = value;\n      }\n      get accessibilityText(): string {\n        return this._accessibilityText;\n      }\n      set accessibilityText(value: string) {\n        this._accessibilityText = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Image.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Image.AsObject {\n        return {\n          imageUri: this.imageUri,\n          accessibilityText: this.accessibilityText\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Image.AsProtobufJSON {\n        return {\n          imageUri: this.imageUri,\n          accessibilityText: this.accessibilityText\n        };\n      }\n    }\n    export module Image {\n      /**\n       * Standard JavaScript object representation for Image\n       */\n      export interface AsObject {\n        imageUri: string;\n        accessibilityText: string;\n      }\n\n      /**\n       * Protobuf JSON representation for Image\n       */\n      export interface AsProtobufJSON {\n        imageUri: string;\n        accessibilityText: string;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.QuickReplies\n     */\n    export class QuickReplies implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.QuickReplies';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new QuickReplies();\n        QuickReplies.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: QuickReplies) {\n        _instance.title = _instance.title || '';\n        _instance.quickReplies = _instance.quickReplies || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: QuickReplies,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.title = _reader.readString();\n              break;\n            case 2:\n              (_instance.quickReplies = _instance.quickReplies || []).push(\n                _reader.readString()\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        QuickReplies.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: QuickReplies,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.title) {\n          _writer.writeString(1, _instance.title);\n        }\n        if (_instance.quickReplies && _instance.quickReplies.length) {\n          _writer.writeRepeatedString(2, _instance.quickReplies);\n        }\n      }\n\n      private _title: string;\n      private _quickReplies: string[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of QuickReplies to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<QuickReplies.AsObject>) {\n        _value = _value || {};\n        this.title = _value.title;\n        this.quickReplies = (_value.quickReplies || []).slice();\n        QuickReplies.refineValues(this);\n      }\n      get title(): string {\n        return this._title;\n      }\n      set title(value: string) {\n        this._title = value;\n      }\n      get quickReplies(): string[] {\n        return this._quickReplies;\n      }\n      set quickReplies(value: string[]) {\n        this._quickReplies = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        QuickReplies.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): QuickReplies.AsObject {\n        return {\n          title: this.title,\n          quickReplies: (this.quickReplies || []).slice()\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): QuickReplies.AsProtobufJSON {\n        return {\n          title: this.title,\n          quickReplies: (this.quickReplies || []).slice()\n        };\n      }\n    }\n    export module QuickReplies {\n      /**\n       * Standard JavaScript object representation for QuickReplies\n       */\n      export interface AsObject {\n        title: string;\n        quickReplies: string[];\n      }\n\n      /**\n       * Protobuf JSON representation for QuickReplies\n       */\n      export interface AsProtobufJSON {\n        title: string;\n        quickReplies: string[];\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.Card\n     */\n    export class Card implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.Card';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Card();\n        Card.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Card) {\n        _instance.title = _instance.title || '';\n        _instance.subtitle = _instance.subtitle || '';\n        _instance.imageUri = _instance.imageUri || '';\n        _instance.buttons = _instance.buttons || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Card,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.title = _reader.readString();\n              break;\n            case 2:\n              _instance.subtitle = _reader.readString();\n              break;\n            case 3:\n              _instance.imageUri = _reader.readString();\n              break;\n            case 4:\n              const messageInitializer4 = new Intent.Message.Card.Button();\n              _reader.readMessage(\n                messageInitializer4,\n                Intent.Message.Card.Button.deserializeBinaryFromReader\n              );\n              (_instance.buttons = _instance.buttons || []).push(\n                messageInitializer4\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Card.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(_instance: Card, _writer: BinaryWriter) {\n        if (_instance.title) {\n          _writer.writeString(1, _instance.title);\n        }\n        if (_instance.subtitle) {\n          _writer.writeString(2, _instance.subtitle);\n        }\n        if (_instance.imageUri) {\n          _writer.writeString(3, _instance.imageUri);\n        }\n        if (_instance.buttons && _instance.buttons.length) {\n          _writer.writeRepeatedMessage(\n            4,\n            _instance.buttons as any,\n            Intent.Message.Card.Button.serializeBinaryToWriter\n          );\n        }\n      }\n\n      private _title: string;\n      private _subtitle: string;\n      private _imageUri: string;\n      private _buttons?: Intent.Message.Card.Button[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Card to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Card.AsObject>) {\n        _value = _value || {};\n        this.title = _value.title;\n        this.subtitle = _value.subtitle;\n        this.imageUri = _value.imageUri;\n        this.buttons = (_value.buttons || []).map(\n          m => new Intent.Message.Card.Button(m)\n        );\n        Card.refineValues(this);\n      }\n      get title(): string {\n        return this._title;\n      }\n      set title(value: string) {\n        this._title = value;\n      }\n      get subtitle(): string {\n        return this._subtitle;\n      }\n      set subtitle(value: string) {\n        this._subtitle = value;\n      }\n      get imageUri(): string {\n        return this._imageUri;\n      }\n      set imageUri(value: string) {\n        this._imageUri = value;\n      }\n      get buttons(): Intent.Message.Card.Button[] | undefined {\n        return this._buttons;\n      }\n      set buttons(value: Intent.Message.Card.Button[] | undefined) {\n        this._buttons = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Card.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Card.AsObject {\n        return {\n          title: this.title,\n          subtitle: this.subtitle,\n          imageUri: this.imageUri,\n          buttons: (this.buttons || []).map(m => m.toObject())\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Card.AsProtobufJSON {\n        return {\n          title: this.title,\n          subtitle: this.subtitle,\n          imageUri: this.imageUri,\n          buttons: (this.buttons || []).map(m => m.toProtobufJSON(options))\n        };\n      }\n    }\n    export module Card {\n      /**\n       * Standard JavaScript object representation for Card\n       */\n      export interface AsObject {\n        title: string;\n        subtitle: string;\n        imageUri: string;\n        buttons?: Intent.Message.Card.Button.AsObject[];\n      }\n\n      /**\n       * Protobuf JSON representation for Card\n       */\n      export interface AsProtobufJSON {\n        title: string;\n        subtitle: string;\n        imageUri: string;\n        buttons: Intent.Message.Card.Button.AsProtobufJSON[] | null;\n      }\n\n      /**\n       * Message implementation for ondewo.nlu.Intent.Message.Card.Button\n       */\n      export class Button implements GrpcMessage {\n        static id = 'ondewo.nlu.Intent.Message.Card.Button';\n\n        /**\n         * Deserialize binary data to message\n         * @param instance message instance\n         */\n        static deserializeBinary(bytes: ByteSource) {\n          const instance = new Button();\n          Button.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n          return instance;\n        }\n\n        /**\n         * Check all the properties and set default protobuf values if necessary\n         * @param _instance message instance\n         */\n        static refineValues(_instance: Button) {\n          _instance.text = _instance.text || '';\n          _instance.postback = _instance.postback || '';\n        }\n\n        /**\n         * Deserializes / reads binary message into message instance using provided binary reader\n         * @param _instance message instance\n         * @param _reader binary reader instance\n         */\n        static deserializeBinaryFromReader(\n          _instance: Button,\n          _reader: BinaryReader\n        ) {\n          while (_reader.nextField()) {\n            if (_reader.isEndGroup()) break;\n\n            switch (_reader.getFieldNumber()) {\n              case 1:\n                _instance.text = _reader.readString();\n                break;\n              case 2:\n                _instance.postback = _reader.readString();\n                break;\n              default:\n                _reader.skipField();\n            }\n          }\n\n          Button.refineValues(_instance);\n        }\n\n        /**\n         * Serializes a message to binary format using provided binary reader\n         * @param _instance message instance\n         * @param _writer binary writer instance\n         */\n        static serializeBinaryToWriter(\n          _instance: Button,\n          _writer: BinaryWriter\n        ) {\n          if (_instance.text) {\n            _writer.writeString(1, _instance.text);\n          }\n          if (_instance.postback) {\n            _writer.writeString(2, _instance.postback);\n          }\n        }\n\n        private _text: string;\n        private _postback: string;\n\n        /**\n         * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n         * @param _value initial values object or instance of Button to deeply clone from\n         */\n        constructor(_value?: RecursivePartial<Button.AsObject>) {\n          _value = _value || {};\n          this.text = _value.text;\n          this.postback = _value.postback;\n          Button.refineValues(this);\n        }\n        get text(): string {\n          return this._text;\n        }\n        set text(value: string) {\n          this._text = value;\n        }\n        get postback(): string {\n          return this._postback;\n        }\n        set postback(value: string) {\n          this._postback = value;\n        }\n\n        /**\n         * Serialize message to binary data\n         * @param instance message instance\n         */\n        serializeBinary() {\n          const writer = new BinaryWriter();\n          Button.serializeBinaryToWriter(this, writer);\n          return writer.getResultBuffer();\n        }\n\n        /**\n         * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n         */\n        toObject(): Button.AsObject {\n          return {\n            text: this.text,\n            postback: this.postback\n          };\n        }\n\n        /**\n         * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n         */\n        toJSON() {\n          return this.toObject();\n        }\n\n        /**\n         * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n         * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n         * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n         */\n        toProtobufJSON(\n          // @ts-ignore\n          options?: ToProtobufJSONOptions\n        ): Button.AsProtobufJSON {\n          return {\n            text: this.text,\n            postback: this.postback\n          };\n        }\n      }\n      export module Button {\n        /**\n         * Standard JavaScript object representation for Button\n         */\n        export interface AsObject {\n          text: string;\n          postback: string;\n        }\n\n        /**\n         * Protobuf JSON representation for Button\n         */\n        export interface AsProtobufJSON {\n          text: string;\n          postback: string;\n        }\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.SimpleResponse\n     */\n    export class SimpleResponse implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.SimpleResponse';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new SimpleResponse();\n        SimpleResponse.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: SimpleResponse) {\n        _instance.textToSpeech = _instance.textToSpeech || '';\n        _instance.ssml = _instance.ssml || '';\n        _instance.displayText = _instance.displayText || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: SimpleResponse,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.textToSpeech = _reader.readString();\n              break;\n            case 2:\n              _instance.ssml = _reader.readString();\n              break;\n            case 3:\n              _instance.displayText = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        SimpleResponse.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: SimpleResponse,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.textToSpeech) {\n          _writer.writeString(1, _instance.textToSpeech);\n        }\n        if (_instance.ssml) {\n          _writer.writeString(2, _instance.ssml);\n        }\n        if (_instance.displayText) {\n          _writer.writeString(3, _instance.displayText);\n        }\n      }\n\n      private _textToSpeech: string;\n      private _ssml: string;\n      private _displayText: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of SimpleResponse to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<SimpleResponse.AsObject>) {\n        _value = _value || {};\n        this.textToSpeech = _value.textToSpeech;\n        this.ssml = _value.ssml;\n        this.displayText = _value.displayText;\n        SimpleResponse.refineValues(this);\n      }\n      get textToSpeech(): string {\n        return this._textToSpeech;\n      }\n      set textToSpeech(value: string) {\n        this._textToSpeech = value;\n      }\n      get ssml(): string {\n        return this._ssml;\n      }\n      set ssml(value: string) {\n        this._ssml = value;\n      }\n      get displayText(): string {\n        return this._displayText;\n      }\n      set displayText(value: string) {\n        this._displayText = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        SimpleResponse.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): SimpleResponse.AsObject {\n        return {\n          textToSpeech: this.textToSpeech,\n          ssml: this.ssml,\n          displayText: this.displayText\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): SimpleResponse.AsProtobufJSON {\n        return {\n          textToSpeech: this.textToSpeech,\n          ssml: this.ssml,\n          displayText: this.displayText\n        };\n      }\n    }\n    export module SimpleResponse {\n      /**\n       * Standard JavaScript object representation for SimpleResponse\n       */\n      export interface AsObject {\n        textToSpeech: string;\n        ssml: string;\n        displayText: string;\n      }\n\n      /**\n       * Protobuf JSON representation for SimpleResponse\n       */\n      export interface AsProtobufJSON {\n        textToSpeech: string;\n        ssml: string;\n        displayText: string;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.SimpleResponses\n     */\n    export class SimpleResponses implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.SimpleResponses';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new SimpleResponses();\n        SimpleResponses.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: SimpleResponses) {\n        _instance.simpleResponses = _instance.simpleResponses || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: SimpleResponses,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              const messageInitializer1 = new Intent.Message.SimpleResponse();\n              _reader.readMessage(\n                messageInitializer1,\n                Intent.Message.SimpleResponse.deserializeBinaryFromReader\n              );\n              (_instance.simpleResponses =\n                _instance.simpleResponses || []).push(messageInitializer1);\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        SimpleResponses.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: SimpleResponses,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.simpleResponses && _instance.simpleResponses.length) {\n          _writer.writeRepeatedMessage(\n            1,\n            _instance.simpleResponses as any,\n            Intent.Message.SimpleResponse.serializeBinaryToWriter\n          );\n        }\n      }\n\n      private _simpleResponses?: Intent.Message.SimpleResponse[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of SimpleResponses to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<SimpleResponses.AsObject>) {\n        _value = _value || {};\n        this.simpleResponses = (_value.simpleResponses || []).map(\n          m => new Intent.Message.SimpleResponse(m)\n        );\n        SimpleResponses.refineValues(this);\n      }\n      get simpleResponses(): Intent.Message.SimpleResponse[] | undefined {\n        return this._simpleResponses;\n      }\n      set simpleResponses(value: Intent.Message.SimpleResponse[] | undefined) {\n        this._simpleResponses = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        SimpleResponses.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): SimpleResponses.AsObject {\n        return {\n          simpleResponses: (this.simpleResponses || []).map(m => m.toObject())\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): SimpleResponses.AsProtobufJSON {\n        return {\n          simpleResponses: (this.simpleResponses || []).map(m =>\n            m.toProtobufJSON(options)\n          )\n        };\n      }\n    }\n    export module SimpleResponses {\n      /**\n       * Standard JavaScript object representation for SimpleResponses\n       */\n      export interface AsObject {\n        simpleResponses?: Intent.Message.SimpleResponse.AsObject[];\n      }\n\n      /**\n       * Protobuf JSON representation for SimpleResponses\n       */\n      export interface AsProtobufJSON {\n        simpleResponses: Intent.Message.SimpleResponse.AsProtobufJSON[] | null;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.BasicCard\n     */\n    export class BasicCard implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.BasicCard';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new BasicCard();\n        BasicCard.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: BasicCard) {\n        _instance.title = _instance.title || '';\n        _instance.subtitle = _instance.subtitle || '';\n        _instance.formattedText = _instance.formattedText || '';\n        _instance.image = _instance.image || undefined;\n        _instance.buttons = _instance.buttons || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: BasicCard,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.title = _reader.readString();\n              break;\n            case 2:\n              _instance.subtitle = _reader.readString();\n              break;\n            case 3:\n              _instance.formattedText = _reader.readString();\n              break;\n            case 4:\n              _instance.image = new Intent.Message.Image();\n              _reader.readMessage(\n                _instance.image,\n                Intent.Message.Image.deserializeBinaryFromReader\n              );\n              break;\n            case 5:\n              const messageInitializer5 = new Intent.Message.BasicCard.Button();\n              _reader.readMessage(\n                messageInitializer5,\n                Intent.Message.BasicCard.Button.deserializeBinaryFromReader\n              );\n              (_instance.buttons = _instance.buttons || []).push(\n                messageInitializer5\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        BasicCard.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: BasicCard,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.title) {\n          _writer.writeString(1, _instance.title);\n        }\n        if (_instance.subtitle) {\n          _writer.writeString(2, _instance.subtitle);\n        }\n        if (_instance.formattedText) {\n          _writer.writeString(3, _instance.formattedText);\n        }\n        if (_instance.image) {\n          _writer.writeMessage(\n            4,\n            _instance.image as any,\n            Intent.Message.Image.serializeBinaryToWriter\n          );\n        }\n        if (_instance.buttons && _instance.buttons.length) {\n          _writer.writeRepeatedMessage(\n            5,\n            _instance.buttons as any,\n            Intent.Message.BasicCard.Button.serializeBinaryToWriter\n          );\n        }\n      }\n\n      private _title: string;\n      private _subtitle: string;\n      private _formattedText: string;\n      private _image?: Intent.Message.Image;\n      private _buttons?: Intent.Message.BasicCard.Button[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of BasicCard to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<BasicCard.AsObject>) {\n        _value = _value || {};\n        this.title = _value.title;\n        this.subtitle = _value.subtitle;\n        this.formattedText = _value.formattedText;\n        this.image = _value.image\n          ? new Intent.Message.Image(_value.image)\n          : undefined;\n        this.buttons = (_value.buttons || []).map(\n          m => new Intent.Message.BasicCard.Button(m)\n        );\n        BasicCard.refineValues(this);\n      }\n      get title(): string {\n        return this._title;\n      }\n      set title(value: string) {\n        this._title = value;\n      }\n      get subtitle(): string {\n        return this._subtitle;\n      }\n      set subtitle(value: string) {\n        this._subtitle = value;\n      }\n      get formattedText(): string {\n        return this._formattedText;\n      }\n      set formattedText(value: string) {\n        this._formattedText = value;\n      }\n      get image(): Intent.Message.Image | undefined {\n        return this._image;\n      }\n      set image(value: Intent.Message.Image | undefined) {\n        this._image = value;\n      }\n      get buttons(): Intent.Message.BasicCard.Button[] | undefined {\n        return this._buttons;\n      }\n      set buttons(value: Intent.Message.BasicCard.Button[] | undefined) {\n        this._buttons = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        BasicCard.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): BasicCard.AsObject {\n        return {\n          title: this.title,\n          subtitle: this.subtitle,\n          formattedText: this.formattedText,\n          image: this.image ? this.image.toObject() : undefined,\n          buttons: (this.buttons || []).map(m => m.toObject())\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): BasicCard.AsProtobufJSON {\n        return {\n          title: this.title,\n          subtitle: this.subtitle,\n          formattedText: this.formattedText,\n          image: this.image ? this.image.toProtobufJSON(options) : null,\n          buttons: (this.buttons || []).map(m => m.toProtobufJSON(options))\n        };\n      }\n    }\n    export module BasicCard {\n      /**\n       * Standard JavaScript object representation for BasicCard\n       */\n      export interface AsObject {\n        title: string;\n        subtitle: string;\n        formattedText: string;\n        image?: Intent.Message.Image.AsObject;\n        buttons?: Intent.Message.BasicCard.Button.AsObject[];\n      }\n\n      /**\n       * Protobuf JSON representation for BasicCard\n       */\n      export interface AsProtobufJSON {\n        title: string;\n        subtitle: string;\n        formattedText: string;\n        image: Intent.Message.Image.AsProtobufJSON | null;\n        buttons: Intent.Message.BasicCard.Button.AsProtobufJSON[] | null;\n      }\n\n      /**\n       * Message implementation for ondewo.nlu.Intent.Message.BasicCard.Button\n       */\n      export class Button implements GrpcMessage {\n        static id = 'ondewo.nlu.Intent.Message.BasicCard.Button';\n\n        /**\n         * Deserialize binary data to message\n         * @param instance message instance\n         */\n        static deserializeBinary(bytes: ByteSource) {\n          const instance = new Button();\n          Button.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n          return instance;\n        }\n\n        /**\n         * Check all the properties and set default protobuf values if necessary\n         * @param _instance message instance\n         */\n        static refineValues(_instance: Button) {\n          _instance.title = _instance.title || '';\n          _instance.openUriAction = _instance.openUriAction || undefined;\n        }\n\n        /**\n         * Deserializes / reads binary message into message instance using provided binary reader\n         * @param _instance message instance\n         * @param _reader binary reader instance\n         */\n        static deserializeBinaryFromReader(\n          _instance: Button,\n          _reader: BinaryReader\n        ) {\n          while (_reader.nextField()) {\n            if (_reader.isEndGroup()) break;\n\n            switch (_reader.getFieldNumber()) {\n              case 1:\n                _instance.title = _reader.readString();\n                break;\n              case 2:\n                _instance.openUriAction = new Intent.Message.BasicCard.Button.OpenUriAction();\n                _reader.readMessage(\n                  _instance.openUriAction,\n                  Intent.Message.BasicCard.Button.OpenUriAction\n                    .deserializeBinaryFromReader\n                );\n                break;\n              default:\n                _reader.skipField();\n            }\n          }\n\n          Button.refineValues(_instance);\n        }\n\n        /**\n         * Serializes a message to binary format using provided binary reader\n         * @param _instance message instance\n         * @param _writer binary writer instance\n         */\n        static serializeBinaryToWriter(\n          _instance: Button,\n          _writer: BinaryWriter\n        ) {\n          if (_instance.title) {\n            _writer.writeString(1, _instance.title);\n          }\n          if (_instance.openUriAction) {\n            _writer.writeMessage(\n              2,\n              _instance.openUriAction as any,\n              Intent.Message.BasicCard.Button.OpenUriAction\n                .serializeBinaryToWriter\n            );\n          }\n        }\n\n        private _title: string;\n        private _openUriAction?: Intent.Message.BasicCard.Button.OpenUriAction;\n\n        /**\n         * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n         * @param _value initial values object or instance of Button to deeply clone from\n         */\n        constructor(_value?: RecursivePartial<Button.AsObject>) {\n          _value = _value || {};\n          this.title = _value.title;\n          this.openUriAction = _value.openUriAction\n            ? new Intent.Message.BasicCard.Button.OpenUriAction(\n                _value.openUriAction\n              )\n            : undefined;\n          Button.refineValues(this);\n        }\n        get title(): string {\n          return this._title;\n        }\n        set title(value: string) {\n          this._title = value;\n        }\n        get openUriAction():\n          | Intent.Message.BasicCard.Button.OpenUriAction\n          | undefined {\n          return this._openUriAction;\n        }\n        set openUriAction(\n          value: Intent.Message.BasicCard.Button.OpenUriAction | undefined\n        ) {\n          this._openUriAction = value;\n        }\n\n        /**\n         * Serialize message to binary data\n         * @param instance message instance\n         */\n        serializeBinary() {\n          const writer = new BinaryWriter();\n          Button.serializeBinaryToWriter(this, writer);\n          return writer.getResultBuffer();\n        }\n\n        /**\n         * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n         */\n        toObject(): Button.AsObject {\n          return {\n            title: this.title,\n            openUriAction: this.openUriAction\n              ? this.openUriAction.toObject()\n              : undefined\n          };\n        }\n\n        /**\n         * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n         */\n        toJSON() {\n          return this.toObject();\n        }\n\n        /**\n         * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n         * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n         * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n         */\n        toProtobufJSON(\n          // @ts-ignore\n          options?: ToProtobufJSONOptions\n        ): Button.AsProtobufJSON {\n          return {\n            title: this.title,\n            openUriAction: this.openUriAction\n              ? this.openUriAction.toProtobufJSON(options)\n              : null\n          };\n        }\n      }\n      export module Button {\n        /**\n         * Standard JavaScript object representation for Button\n         */\n        export interface AsObject {\n          title: string;\n          openUriAction?: Intent.Message.BasicCard.Button.OpenUriAction.AsObject;\n        }\n\n        /**\n         * Protobuf JSON representation for Button\n         */\n        export interface AsProtobufJSON {\n          title: string;\n          openUriAction: Intent.Message.BasicCard.Button.OpenUriAction.AsProtobufJSON | null;\n        }\n\n        /**\n         * Message implementation for ondewo.nlu.Intent.Message.BasicCard.Button.OpenUriAction\n         */\n        export class OpenUriAction implements GrpcMessage {\n          static id =\n            'ondewo.nlu.Intent.Message.BasicCard.Button.OpenUriAction';\n\n          /**\n           * Deserialize binary data to message\n           * @param instance message instance\n           */\n          static deserializeBinary(bytes: ByteSource) {\n            const instance = new OpenUriAction();\n            OpenUriAction.deserializeBinaryFromReader(\n              instance,\n              new BinaryReader(bytes)\n            );\n            return instance;\n          }\n\n          /**\n           * Check all the properties and set default protobuf values if necessary\n           * @param _instance message instance\n           */\n          static refineValues(_instance: OpenUriAction) {\n            _instance.uri = _instance.uri || '';\n          }\n\n          /**\n           * Deserializes / reads binary message into message instance using provided binary reader\n           * @param _instance message instance\n           * @param _reader binary reader instance\n           */\n          static deserializeBinaryFromReader(\n            _instance: OpenUriAction,\n            _reader: BinaryReader\n          ) {\n            while (_reader.nextField()) {\n              if (_reader.isEndGroup()) break;\n\n              switch (_reader.getFieldNumber()) {\n                case 1:\n                  _instance.uri = _reader.readString();\n                  break;\n                default:\n                  _reader.skipField();\n              }\n            }\n\n            OpenUriAction.refineValues(_instance);\n          }\n\n          /**\n           * Serializes a message to binary format using provided binary reader\n           * @param _instance message instance\n           * @param _writer binary writer instance\n           */\n          static serializeBinaryToWriter(\n            _instance: OpenUriAction,\n            _writer: BinaryWriter\n          ) {\n            if (_instance.uri) {\n              _writer.writeString(1, _instance.uri);\n            }\n          }\n\n          private _uri: string;\n\n          /**\n           * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n           * @param _value initial values object or instance of OpenUriAction to deeply clone from\n           */\n          constructor(_value?: RecursivePartial<OpenUriAction.AsObject>) {\n            _value = _value || {};\n            this.uri = _value.uri;\n            OpenUriAction.refineValues(this);\n          }\n          get uri(): string {\n            return this._uri;\n          }\n          set uri(value: string) {\n            this._uri = value;\n          }\n\n          /**\n           * Serialize message to binary data\n           * @param instance message instance\n           */\n          serializeBinary() {\n            const writer = new BinaryWriter();\n            OpenUriAction.serializeBinaryToWriter(this, writer);\n            return writer.getResultBuffer();\n          }\n\n          /**\n           * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n           */\n          toObject(): OpenUriAction.AsObject {\n            return {\n              uri: this.uri\n            };\n          }\n\n          /**\n           * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n           */\n          toJSON() {\n            return this.toObject();\n          }\n\n          /**\n           * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n           * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n           * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n           */\n          toProtobufJSON(\n            // @ts-ignore\n            options?: ToProtobufJSONOptions\n          ): OpenUriAction.AsProtobufJSON {\n            return {\n              uri: this.uri\n            };\n          }\n        }\n        export module OpenUriAction {\n          /**\n           * Standard JavaScript object representation for OpenUriAction\n           */\n          export interface AsObject {\n            uri: string;\n          }\n\n          /**\n           * Protobuf JSON representation for OpenUriAction\n           */\n          export interface AsProtobufJSON {\n            uri: string;\n          }\n        }\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.Suggestion\n     */\n    export class Suggestion implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.Suggestion';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Suggestion();\n        Suggestion.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Suggestion) {\n        _instance.title = _instance.title || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Suggestion,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.title = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Suggestion.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: Suggestion,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.title) {\n          _writer.writeString(1, _instance.title);\n        }\n      }\n\n      private _title: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Suggestion to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Suggestion.AsObject>) {\n        _value = _value || {};\n        this.title = _value.title;\n        Suggestion.refineValues(this);\n      }\n      get title(): string {\n        return this._title;\n      }\n      set title(value: string) {\n        this._title = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Suggestion.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Suggestion.AsObject {\n        return {\n          title: this.title\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Suggestion.AsProtobufJSON {\n        return {\n          title: this.title\n        };\n      }\n    }\n    export module Suggestion {\n      /**\n       * Standard JavaScript object representation for Suggestion\n       */\n      export interface AsObject {\n        title: string;\n      }\n\n      /**\n       * Protobuf JSON representation for Suggestion\n       */\n      export interface AsProtobufJSON {\n        title: string;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.Suggestions\n     */\n    export class Suggestions implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.Suggestions';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Suggestions();\n        Suggestions.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Suggestions) {\n        _instance.suggestions = _instance.suggestions || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Suggestions,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              const messageInitializer1 = new Intent.Message.Suggestion();\n              _reader.readMessage(\n                messageInitializer1,\n                Intent.Message.Suggestion.deserializeBinaryFromReader\n              );\n              (_instance.suggestions = _instance.suggestions || []).push(\n                messageInitializer1\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Suggestions.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: Suggestions,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.suggestions && _instance.suggestions.length) {\n          _writer.writeRepeatedMessage(\n            1,\n            _instance.suggestions as any,\n            Intent.Message.Suggestion.serializeBinaryToWriter\n          );\n        }\n      }\n\n      private _suggestions?: Intent.Message.Suggestion[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Suggestions to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Suggestions.AsObject>) {\n        _value = _value || {};\n        this.suggestions = (_value.suggestions || []).map(\n          m => new Intent.Message.Suggestion(m)\n        );\n        Suggestions.refineValues(this);\n      }\n      get suggestions(): Intent.Message.Suggestion[] | undefined {\n        return this._suggestions;\n      }\n      set suggestions(value: Intent.Message.Suggestion[] | undefined) {\n        this._suggestions = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Suggestions.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Suggestions.AsObject {\n        return {\n          suggestions: (this.suggestions || []).map(m => m.toObject())\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Suggestions.AsProtobufJSON {\n        return {\n          suggestions: (this.suggestions || []).map(m =>\n            m.toProtobufJSON(options)\n          )\n        };\n      }\n    }\n    export module Suggestions {\n      /**\n       * Standard JavaScript object representation for Suggestions\n       */\n      export interface AsObject {\n        suggestions?: Intent.Message.Suggestion.AsObject[];\n      }\n\n      /**\n       * Protobuf JSON representation for Suggestions\n       */\n      export interface AsProtobufJSON {\n        suggestions: Intent.Message.Suggestion.AsProtobufJSON[] | null;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.LinkOutSuggestion\n     */\n    export class LinkOutSuggestion implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.LinkOutSuggestion';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new LinkOutSuggestion();\n        LinkOutSuggestion.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: LinkOutSuggestion) {\n        _instance.destinationName = _instance.destinationName || '';\n        _instance.uri = _instance.uri || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: LinkOutSuggestion,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.destinationName = _reader.readString();\n              break;\n            case 2:\n              _instance.uri = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        LinkOutSuggestion.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: LinkOutSuggestion,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.destinationName) {\n          _writer.writeString(1, _instance.destinationName);\n        }\n        if (_instance.uri) {\n          _writer.writeString(2, _instance.uri);\n        }\n      }\n\n      private _destinationName: string;\n      private _uri: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of LinkOutSuggestion to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<LinkOutSuggestion.AsObject>) {\n        _value = _value || {};\n        this.destinationName = _value.destinationName;\n        this.uri = _value.uri;\n        LinkOutSuggestion.refineValues(this);\n      }\n      get destinationName(): string {\n        return this._destinationName;\n      }\n      set destinationName(value: string) {\n        this._destinationName = value;\n      }\n      get uri(): string {\n        return this._uri;\n      }\n      set uri(value: string) {\n        this._uri = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        LinkOutSuggestion.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): LinkOutSuggestion.AsObject {\n        return {\n          destinationName: this.destinationName,\n          uri: this.uri\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): LinkOutSuggestion.AsProtobufJSON {\n        return {\n          destinationName: this.destinationName,\n          uri: this.uri\n        };\n      }\n    }\n    export module LinkOutSuggestion {\n      /**\n       * Standard JavaScript object representation for LinkOutSuggestion\n       */\n      export interface AsObject {\n        destinationName: string;\n        uri: string;\n      }\n\n      /**\n       * Protobuf JSON representation for LinkOutSuggestion\n       */\n      export interface AsProtobufJSON {\n        destinationName: string;\n        uri: string;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.ListSelect\n     */\n    export class ListSelect implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.ListSelect';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new ListSelect();\n        ListSelect.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: ListSelect) {\n        _instance.title = _instance.title || '';\n        _instance.items = _instance.items || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: ListSelect,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.title = _reader.readString();\n              break;\n            case 2:\n              const messageInitializer2 = new Intent.Message.ListSelect.Item();\n              _reader.readMessage(\n                messageInitializer2,\n                Intent.Message.ListSelect.Item.deserializeBinaryFromReader\n              );\n              (_instance.items = _instance.items || []).push(\n                messageInitializer2\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        ListSelect.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: ListSelect,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.title) {\n          _writer.writeString(1, _instance.title);\n        }\n        if (_instance.items && _instance.items.length) {\n          _writer.writeRepeatedMessage(\n            2,\n            _instance.items as any,\n            Intent.Message.ListSelect.Item.serializeBinaryToWriter\n          );\n        }\n      }\n\n      private _title: string;\n      private _items?: Intent.Message.ListSelect.Item[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of ListSelect to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<ListSelect.AsObject>) {\n        _value = _value || {};\n        this.title = _value.title;\n        this.items = (_value.items || []).map(\n          m => new Intent.Message.ListSelect.Item(m)\n        );\n        ListSelect.refineValues(this);\n      }\n      get title(): string {\n        return this._title;\n      }\n      set title(value: string) {\n        this._title = value;\n      }\n      get items(): Intent.Message.ListSelect.Item[] | undefined {\n        return this._items;\n      }\n      set items(value: Intent.Message.ListSelect.Item[] | undefined) {\n        this._items = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        ListSelect.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): ListSelect.AsObject {\n        return {\n          title: this.title,\n          items: (this.items || []).map(m => m.toObject())\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): ListSelect.AsProtobufJSON {\n        return {\n          title: this.title,\n          items: (this.items || []).map(m => m.toProtobufJSON(options))\n        };\n      }\n    }\n    export module ListSelect {\n      /**\n       * Standard JavaScript object representation for ListSelect\n       */\n      export interface AsObject {\n        title: string;\n        items?: Intent.Message.ListSelect.Item.AsObject[];\n      }\n\n      /**\n       * Protobuf JSON representation for ListSelect\n       */\n      export interface AsProtobufJSON {\n        title: string;\n        items: Intent.Message.ListSelect.Item.AsProtobufJSON[] | null;\n      }\n\n      /**\n       * Message implementation for ondewo.nlu.Intent.Message.ListSelect.Item\n       */\n      export class Item implements GrpcMessage {\n        static id = 'ondewo.nlu.Intent.Message.ListSelect.Item';\n\n        /**\n         * Deserialize binary data to message\n         * @param instance message instance\n         */\n        static deserializeBinary(bytes: ByteSource) {\n          const instance = new Item();\n          Item.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n          return instance;\n        }\n\n        /**\n         * Check all the properties and set default protobuf values if necessary\n         * @param _instance message instance\n         */\n        static refineValues(_instance: Item) {\n          _instance.info = _instance.info || undefined;\n          _instance.title = _instance.title || '';\n          _instance.description = _instance.description || '';\n          _instance.image = _instance.image || undefined;\n        }\n\n        /**\n         * Deserializes / reads binary message into message instance using provided binary reader\n         * @param _instance message instance\n         * @param _reader binary reader instance\n         */\n        static deserializeBinaryFromReader(\n          _instance: Item,\n          _reader: BinaryReader\n        ) {\n          while (_reader.nextField()) {\n            if (_reader.isEndGroup()) break;\n\n            switch (_reader.getFieldNumber()) {\n              case 1:\n                _instance.info = new Intent.Message.SelectItemInfo();\n                _reader.readMessage(\n                  _instance.info,\n                  Intent.Message.SelectItemInfo.deserializeBinaryFromReader\n                );\n                break;\n              case 2:\n                _instance.title = _reader.readString();\n                break;\n              case 3:\n                _instance.description = _reader.readString();\n                break;\n              case 4:\n                _instance.image = new Intent.Message.Image();\n                _reader.readMessage(\n                  _instance.image,\n                  Intent.Message.Image.deserializeBinaryFromReader\n                );\n                break;\n              default:\n                _reader.skipField();\n            }\n          }\n\n          Item.refineValues(_instance);\n        }\n\n        /**\n         * Serializes a message to binary format using provided binary reader\n         * @param _instance message instance\n         * @param _writer binary writer instance\n         */\n        static serializeBinaryToWriter(_instance: Item, _writer: BinaryWriter) {\n          if (_instance.info) {\n            _writer.writeMessage(\n              1,\n              _instance.info as any,\n              Intent.Message.SelectItemInfo.serializeBinaryToWriter\n            );\n          }\n          if (_instance.title) {\n            _writer.writeString(2, _instance.title);\n          }\n          if (_instance.description) {\n            _writer.writeString(3, _instance.description);\n          }\n          if (_instance.image) {\n            _writer.writeMessage(\n              4,\n              _instance.image as any,\n              Intent.Message.Image.serializeBinaryToWriter\n            );\n          }\n        }\n\n        private _info?: Intent.Message.SelectItemInfo;\n        private _title: string;\n        private _description: string;\n        private _image?: Intent.Message.Image;\n\n        /**\n         * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n         * @param _value initial values object or instance of Item to deeply clone from\n         */\n        constructor(_value?: RecursivePartial<Item.AsObject>) {\n          _value = _value || {};\n          this.info = _value.info\n            ? new Intent.Message.SelectItemInfo(_value.info)\n            : undefined;\n          this.title = _value.title;\n          this.description = _value.description;\n          this.image = _value.image\n            ? new Intent.Message.Image(_value.image)\n            : undefined;\n          Item.refineValues(this);\n        }\n        get info(): Intent.Message.SelectItemInfo | undefined {\n          return this._info;\n        }\n        set info(value: Intent.Message.SelectItemInfo | undefined) {\n          this._info = value;\n        }\n        get title(): string {\n          return this._title;\n        }\n        set title(value: string) {\n          this._title = value;\n        }\n        get description(): string {\n          return this._description;\n        }\n        set description(value: string) {\n          this._description = value;\n        }\n        get image(): Intent.Message.Image | undefined {\n          return this._image;\n        }\n        set image(value: Intent.Message.Image | undefined) {\n          this._image = value;\n        }\n\n        /**\n         * Serialize message to binary data\n         * @param instance message instance\n         */\n        serializeBinary() {\n          const writer = new BinaryWriter();\n          Item.serializeBinaryToWriter(this, writer);\n          return writer.getResultBuffer();\n        }\n\n        /**\n         * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n         */\n        toObject(): Item.AsObject {\n          return {\n            info: this.info ? this.info.toObject() : undefined,\n            title: this.title,\n            description: this.description,\n            image: this.image ? this.image.toObject() : undefined\n          };\n        }\n\n        /**\n         * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n         */\n        toJSON() {\n          return this.toObject();\n        }\n\n        /**\n         * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n         * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n         * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n         */\n        toProtobufJSON(\n          // @ts-ignore\n          options?: ToProtobufJSONOptions\n        ): Item.AsProtobufJSON {\n          return {\n            info: this.info ? this.info.toProtobufJSON(options) : null,\n            title: this.title,\n            description: this.description,\n            image: this.image ? this.image.toProtobufJSON(options) : null\n          };\n        }\n      }\n      export module Item {\n        /**\n         * Standard JavaScript object representation for Item\n         */\n        export interface AsObject {\n          info?: Intent.Message.SelectItemInfo.AsObject;\n          title: string;\n          description: string;\n          image?: Intent.Message.Image.AsObject;\n        }\n\n        /**\n         * Protobuf JSON representation for Item\n         */\n        export interface AsProtobufJSON {\n          info: Intent.Message.SelectItemInfo.AsProtobufJSON | null;\n          title: string;\n          description: string;\n          image: Intent.Message.Image.AsProtobufJSON | null;\n        }\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.CarouselSelect\n     */\n    export class CarouselSelect implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.CarouselSelect';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new CarouselSelect();\n        CarouselSelect.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: CarouselSelect) {\n        _instance.items = _instance.items || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: CarouselSelect,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              const messageInitializer1 = new Intent.Message.CarouselSelect.Item();\n              _reader.readMessage(\n                messageInitializer1,\n                Intent.Message.CarouselSelect.Item.deserializeBinaryFromReader\n              );\n              (_instance.items = _instance.items || []).push(\n                messageInitializer1\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        CarouselSelect.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: CarouselSelect,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.items && _instance.items.length) {\n          _writer.writeRepeatedMessage(\n            1,\n            _instance.items as any,\n            Intent.Message.CarouselSelect.Item.serializeBinaryToWriter\n          );\n        }\n      }\n\n      private _items?: Intent.Message.CarouselSelect.Item[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of CarouselSelect to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<CarouselSelect.AsObject>) {\n        _value = _value || {};\n        this.items = (_value.items || []).map(\n          m => new Intent.Message.CarouselSelect.Item(m)\n        );\n        CarouselSelect.refineValues(this);\n      }\n      get items(): Intent.Message.CarouselSelect.Item[] | undefined {\n        return this._items;\n      }\n      set items(value: Intent.Message.CarouselSelect.Item[] | undefined) {\n        this._items = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        CarouselSelect.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): CarouselSelect.AsObject {\n        return {\n          items: (this.items || []).map(m => m.toObject())\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): CarouselSelect.AsProtobufJSON {\n        return {\n          items: (this.items || []).map(m => m.toProtobufJSON(options))\n        };\n      }\n    }\n    export module CarouselSelect {\n      /**\n       * Standard JavaScript object representation for CarouselSelect\n       */\n      export interface AsObject {\n        items?: Intent.Message.CarouselSelect.Item.AsObject[];\n      }\n\n      /**\n       * Protobuf JSON representation for CarouselSelect\n       */\n      export interface AsProtobufJSON {\n        items: Intent.Message.CarouselSelect.Item.AsProtobufJSON[] | null;\n      }\n\n      /**\n       * Message implementation for ondewo.nlu.Intent.Message.CarouselSelect.Item\n       */\n      export class Item implements GrpcMessage {\n        static id = 'ondewo.nlu.Intent.Message.CarouselSelect.Item';\n\n        /**\n         * Deserialize binary data to message\n         * @param instance message instance\n         */\n        static deserializeBinary(bytes: ByteSource) {\n          const instance = new Item();\n          Item.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n          return instance;\n        }\n\n        /**\n         * Check all the properties and set default protobuf values if necessary\n         * @param _instance message instance\n         */\n        static refineValues(_instance: Item) {\n          _instance.info = _instance.info || undefined;\n          _instance.title = _instance.title || '';\n          _instance.description = _instance.description || '';\n          _instance.image = _instance.image || undefined;\n        }\n\n        /**\n         * Deserializes / reads binary message into message instance using provided binary reader\n         * @param _instance message instance\n         * @param _reader binary reader instance\n         */\n        static deserializeBinaryFromReader(\n          _instance: Item,\n          _reader: BinaryReader\n        ) {\n          while (_reader.nextField()) {\n            if (_reader.isEndGroup()) break;\n\n            switch (_reader.getFieldNumber()) {\n              case 1:\n                _instance.info = new Intent.Message.SelectItemInfo();\n                _reader.readMessage(\n                  _instance.info,\n                  Intent.Message.SelectItemInfo.deserializeBinaryFromReader\n                );\n                break;\n              case 2:\n                _instance.title = _reader.readString();\n                break;\n              case 3:\n                _instance.description = _reader.readString();\n                break;\n              case 4:\n                _instance.image = new Intent.Message.Image();\n                _reader.readMessage(\n                  _instance.image,\n                  Intent.Message.Image.deserializeBinaryFromReader\n                );\n                break;\n              default:\n                _reader.skipField();\n            }\n          }\n\n          Item.refineValues(_instance);\n        }\n\n        /**\n         * Serializes a message to binary format using provided binary reader\n         * @param _instance message instance\n         * @param _writer binary writer instance\n         */\n        static serializeBinaryToWriter(_instance: Item, _writer: BinaryWriter) {\n          if (_instance.info) {\n            _writer.writeMessage(\n              1,\n              _instance.info as any,\n              Intent.Message.SelectItemInfo.serializeBinaryToWriter\n            );\n          }\n          if (_instance.title) {\n            _writer.writeString(2, _instance.title);\n          }\n          if (_instance.description) {\n            _writer.writeString(3, _instance.description);\n          }\n          if (_instance.image) {\n            _writer.writeMessage(\n              4,\n              _instance.image as any,\n              Intent.Message.Image.serializeBinaryToWriter\n            );\n          }\n        }\n\n        private _info?: Intent.Message.SelectItemInfo;\n        private _title: string;\n        private _description: string;\n        private _image?: Intent.Message.Image;\n\n        /**\n         * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n         * @param _value initial values object or instance of Item to deeply clone from\n         */\n        constructor(_value?: RecursivePartial<Item.AsObject>) {\n          _value = _value || {};\n          this.info = _value.info\n            ? new Intent.Message.SelectItemInfo(_value.info)\n            : undefined;\n          this.title = _value.title;\n          this.description = _value.description;\n          this.image = _value.image\n            ? new Intent.Message.Image(_value.image)\n            : undefined;\n          Item.refineValues(this);\n        }\n        get info(): Intent.Message.SelectItemInfo | undefined {\n          return this._info;\n        }\n        set info(value: Intent.Message.SelectItemInfo | undefined) {\n          this._info = value;\n        }\n        get title(): string {\n          return this._title;\n        }\n        set title(value: string) {\n          this._title = value;\n        }\n        get description(): string {\n          return this._description;\n        }\n        set description(value: string) {\n          this._description = value;\n        }\n        get image(): Intent.Message.Image | undefined {\n          return this._image;\n        }\n        set image(value: Intent.Message.Image | undefined) {\n          this._image = value;\n        }\n\n        /**\n         * Serialize message to binary data\n         * @param instance message instance\n         */\n        serializeBinary() {\n          const writer = new BinaryWriter();\n          Item.serializeBinaryToWriter(this, writer);\n          return writer.getResultBuffer();\n        }\n\n        /**\n         * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n         */\n        toObject(): Item.AsObject {\n          return {\n            info: this.info ? this.info.toObject() : undefined,\n            title: this.title,\n            description: this.description,\n            image: this.image ? this.image.toObject() : undefined\n          };\n        }\n\n        /**\n         * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n         */\n        toJSON() {\n          return this.toObject();\n        }\n\n        /**\n         * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n         * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n         * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n         */\n        toProtobufJSON(\n          // @ts-ignore\n          options?: ToProtobufJSONOptions\n        ): Item.AsProtobufJSON {\n          return {\n            info: this.info ? this.info.toProtobufJSON(options) : null,\n            title: this.title,\n            description: this.description,\n            image: this.image ? this.image.toProtobufJSON(options) : null\n          };\n        }\n      }\n      export module Item {\n        /**\n         * Standard JavaScript object representation for Item\n         */\n        export interface AsObject {\n          info?: Intent.Message.SelectItemInfo.AsObject;\n          title: string;\n          description: string;\n          image?: Intent.Message.Image.AsObject;\n        }\n\n        /**\n         * Protobuf JSON representation for Item\n         */\n        export interface AsProtobufJSON {\n          info: Intent.Message.SelectItemInfo.AsProtobufJSON | null;\n          title: string;\n          description: string;\n          image: Intent.Message.Image.AsProtobufJSON | null;\n        }\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.HTMLText\n     */\n    export class HTMLText implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.HTMLText';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new HTMLText();\n        HTMLText.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: HTMLText) {\n        _instance.text = _instance.text || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: HTMLText,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              (_instance.text = _instance.text || []).push(\n                _reader.readString()\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        HTMLText.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: HTMLText,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.text && _instance.text.length) {\n          _writer.writeRepeatedString(1, _instance.text);\n        }\n      }\n\n      private _text: string[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of HTMLText to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<HTMLText.AsObject>) {\n        _value = _value || {};\n        this.text = (_value.text || []).slice();\n        HTMLText.refineValues(this);\n      }\n      get text(): string[] {\n        return this._text;\n      }\n      set text(value: string[]) {\n        this._text = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        HTMLText.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): HTMLText.AsObject {\n        return {\n          text: (this.text || []).slice()\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): HTMLText.AsProtobufJSON {\n        return {\n          text: (this.text || []).slice()\n        };\n      }\n    }\n    export module HTMLText {\n      /**\n       * Standard JavaScript object representation for HTMLText\n       */\n      export interface AsObject {\n        text: string[];\n      }\n\n      /**\n       * Protobuf JSON representation for HTMLText\n       */\n      export interface AsProtobufJSON {\n        text: string[];\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.Video\n     */\n    export class Video implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.Video';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Video();\n        Video.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Video) {\n        _instance.uri = _instance.uri || '';\n        _instance.accessibilityText = _instance.accessibilityText || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Video,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.uri = _reader.readString();\n              break;\n            case 2:\n              _instance.accessibilityText = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Video.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(_instance: Video, _writer: BinaryWriter) {\n        if (_instance.uri) {\n          _writer.writeString(1, _instance.uri);\n        }\n        if (_instance.accessibilityText) {\n          _writer.writeString(2, _instance.accessibilityText);\n        }\n      }\n\n      private _uri: string;\n      private _accessibilityText: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Video to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Video.AsObject>) {\n        _value = _value || {};\n        this.uri = _value.uri;\n        this.accessibilityText = _value.accessibilityText;\n        Video.refineValues(this);\n      }\n      get uri(): string {\n        return this._uri;\n      }\n      set uri(value: string) {\n        this._uri = value;\n      }\n      get accessibilityText(): string {\n        return this._accessibilityText;\n      }\n      set accessibilityText(value: string) {\n        this._accessibilityText = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Video.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Video.AsObject {\n        return {\n          uri: this.uri,\n          accessibilityText: this.accessibilityText\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Video.AsProtobufJSON {\n        return {\n          uri: this.uri,\n          accessibilityText: this.accessibilityText\n        };\n      }\n    }\n    export module Video {\n      /**\n       * Standard JavaScript object representation for Video\n       */\n      export interface AsObject {\n        uri: string;\n        accessibilityText: string;\n      }\n\n      /**\n       * Protobuf JSON representation for Video\n       */\n      export interface AsProtobufJSON {\n        uri: string;\n        accessibilityText: string;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.Audio\n     */\n    export class Audio implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.Audio';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new Audio();\n        Audio.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: Audio) {\n        _instance.uri = _instance.uri || '';\n        _instance.accessibilityText = _instance.accessibilityText || '';\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: Audio,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.uri = _reader.readString();\n              break;\n            case 2:\n              _instance.accessibilityText = _reader.readString();\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        Audio.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(_instance: Audio, _writer: BinaryWriter) {\n        if (_instance.uri) {\n          _writer.writeString(1, _instance.uri);\n        }\n        if (_instance.accessibilityText) {\n          _writer.writeString(2, _instance.accessibilityText);\n        }\n      }\n\n      private _uri: string;\n      private _accessibilityText: string;\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of Audio to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<Audio.AsObject>) {\n        _value = _value || {};\n        this.uri = _value.uri;\n        this.accessibilityText = _value.accessibilityText;\n        Audio.refineValues(this);\n      }\n      get uri(): string {\n        return this._uri;\n      }\n      set uri(value: string) {\n        this._uri = value;\n      }\n      get accessibilityText(): string {\n        return this._accessibilityText;\n      }\n      set accessibilityText(value: string) {\n        this._accessibilityText = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        Audio.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): Audio.AsObject {\n        return {\n          uri: this.uri,\n          accessibilityText: this.accessibilityText\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): Audio.AsProtobufJSON {\n        return {\n          uri: this.uri,\n          accessibilityText: this.accessibilityText\n        };\n      }\n    }\n    export module Audio {\n      /**\n       * Standard JavaScript object representation for Audio\n       */\n      export interface AsObject {\n        uri: string;\n        accessibilityText: string;\n      }\n\n      /**\n       * Protobuf JSON representation for Audio\n       */\n      export interface AsProtobufJSON {\n        uri: string;\n        accessibilityText: string;\n      }\n    }\n\n    /**\n     * Message implementation for ondewo.nlu.Intent.Message.SelectItemInfo\n     */\n    export class SelectItemInfo implements GrpcMessage {\n      static id = 'ondewo.nlu.Intent.Message.SelectItemInfo';\n\n      /**\n       * Deserialize binary data to message\n       * @param instance message instance\n       */\n      static deserializeBinary(bytes: ByteSource) {\n        const instance = new SelectItemInfo();\n        SelectItemInfo.deserializeBinaryFromReader(\n          instance,\n          new BinaryReader(bytes)\n        );\n        return instance;\n      }\n\n      /**\n       * Check all the properties and set default protobuf values if necessary\n       * @param _instance message instance\n       */\n      static refineValues(_instance: SelectItemInfo) {\n        _instance.key = _instance.key || '';\n        _instance.synonyms = _instance.synonyms || [];\n      }\n\n      /**\n       * Deserializes / reads binary message into message instance using provided binary reader\n       * @param _instance message instance\n       * @param _reader binary reader instance\n       */\n      static deserializeBinaryFromReader(\n        _instance: SelectItemInfo,\n        _reader: BinaryReader\n      ) {\n        while (_reader.nextField()) {\n          if (_reader.isEndGroup()) break;\n\n          switch (_reader.getFieldNumber()) {\n            case 1:\n              _instance.key = _reader.readString();\n              break;\n            case 2:\n              (_instance.synonyms = _instance.synonyms || []).push(\n                _reader.readString()\n              );\n              break;\n            default:\n              _reader.skipField();\n          }\n        }\n\n        SelectItemInfo.refineValues(_instance);\n      }\n\n      /**\n       * Serializes a message to binary format using provided binary reader\n       * @param _instance message instance\n       * @param _writer binary writer instance\n       */\n      static serializeBinaryToWriter(\n        _instance: SelectItemInfo,\n        _writer: BinaryWriter\n      ) {\n        if (_instance.key) {\n          _writer.writeString(1, _instance.key);\n        }\n        if (_instance.synonyms && _instance.synonyms.length) {\n          _writer.writeRepeatedString(2, _instance.synonyms);\n        }\n      }\n\n      private _key: string;\n      private _synonyms: string[];\n\n      /**\n       * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n       * @param _value initial values object or instance of SelectItemInfo to deeply clone from\n       */\n      constructor(_value?: RecursivePartial<SelectItemInfo.AsObject>) {\n        _value = _value || {};\n        this.key = _value.key;\n        this.synonyms = (_value.synonyms || []).slice();\n        SelectItemInfo.refineValues(this);\n      }\n      get key(): string {\n        return this._key;\n      }\n      set key(value: string) {\n        this._key = value;\n      }\n      get synonyms(): string[] {\n        return this._synonyms;\n      }\n      set synonyms(value: string[]) {\n        this._synonyms = value;\n      }\n\n      /**\n       * Serialize message to binary data\n       * @param instance message instance\n       */\n      serializeBinary() {\n        const writer = new BinaryWriter();\n        SelectItemInfo.serializeBinaryToWriter(this, writer);\n        return writer.getResultBuffer();\n      }\n\n      /**\n       * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n       */\n      toObject(): SelectItemInfo.AsObject {\n        return {\n          key: this.key,\n          synonyms: (this.synonyms || []).slice()\n        };\n      }\n\n      /**\n       * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n       */\n      toJSON() {\n        return this.toObject();\n      }\n\n      /**\n       * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n       * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n       * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n       */\n      toProtobufJSON(\n        // @ts-ignore\n        options?: ToProtobufJSONOptions\n      ): SelectItemInfo.AsProtobufJSON {\n        return {\n          key: this.key,\n          synonyms: (this.synonyms || []).slice()\n        };\n      }\n    }\n    export module SelectItemInfo {\n      /**\n       * Standard JavaScript object representation for SelectItemInfo\n       */\n      export interface AsObject {\n        key: string;\n        synonyms: string[];\n      }\n\n      /**\n       * Protobuf JSON representation for SelectItemInfo\n       */\n      export interface AsProtobufJSON {\n        key: string;\n        synonyms: string[];\n      }\n    }\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.Intent.FollowupIntentInfo\n   */\n  export class FollowupIntentInfo implements GrpcMessage {\n    static id = 'ondewo.nlu.Intent.FollowupIntentInfo';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new FollowupIntentInfo();\n      FollowupIntentInfo.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: FollowupIntentInfo) {\n      _instance.followupIntentName = _instance.followupIntentName || '';\n      _instance.parentFollowupIntentName =\n        _instance.parentFollowupIntentName || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: FollowupIntentInfo,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.followupIntentName = _reader.readString();\n            break;\n          case 2:\n            _instance.parentFollowupIntentName = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      FollowupIntentInfo.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: FollowupIntentInfo,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.followupIntentName) {\n        _writer.writeString(1, _instance.followupIntentName);\n      }\n      if (_instance.parentFollowupIntentName) {\n        _writer.writeString(2, _instance.parentFollowupIntentName);\n      }\n    }\n\n    private _followupIntentName: string;\n    private _parentFollowupIntentName: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of FollowupIntentInfo to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<FollowupIntentInfo.AsObject>) {\n      _value = _value || {};\n      this.followupIntentName = _value.followupIntentName;\n      this.parentFollowupIntentName = _value.parentFollowupIntentName;\n      FollowupIntentInfo.refineValues(this);\n    }\n    get followupIntentName(): string {\n      return this._followupIntentName;\n    }\n    set followupIntentName(value: string) {\n      this._followupIntentName = value;\n    }\n    get parentFollowupIntentName(): string {\n      return this._parentFollowupIntentName;\n    }\n    set parentFollowupIntentName(value: string) {\n      this._parentFollowupIntentName = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      FollowupIntentInfo.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): FollowupIntentInfo.AsObject {\n      return {\n        followupIntentName: this.followupIntentName,\n        parentFollowupIntentName: this.parentFollowupIntentName\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): FollowupIntentInfo.AsProtobufJSON {\n      return {\n        followupIntentName: this.followupIntentName,\n        parentFollowupIntentName: this.parentFollowupIntentName\n      };\n    }\n  }\n  export module FollowupIntentInfo {\n    /**\n     * Standard JavaScript object representation for FollowupIntentInfo\n     */\n    export interface AsObject {\n      followupIntentName: string;\n      parentFollowupIntentName: string;\n    }\n\n    /**\n     * Protobuf JSON representation for FollowupIntentInfo\n     */\n    export interface AsProtobufJSON {\n      followupIntentName: string;\n      parentFollowupIntentName: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListIntentsRequest\n */\nexport class ListIntentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListIntentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListIntentsRequest();\n    ListIntentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListIntentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentView = _instance.intentView || 0;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.filterByCategory = _instance.filterByCategory || 0;\n    _instance.sortByField = _instance.sortByField || undefined;\n    _instance.filterByTags = _instance.filterByTags || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListIntentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.intentView = _reader.readEnum();\n          break;\n        case 5:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 6:\n          _instance.filterByCategory = _reader.readEnum();\n          break;\n        case 7:\n          _instance.sortByField = new IntentSorting();\n          _reader.readMessage(\n            _instance.sortByField,\n            IntentSorting.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          (_instance.filterByTags = _instance.filterByTags || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListIntentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListIntentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.intentView) {\n      _writer.writeEnum(3, _instance.intentView);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(5, _instance.pageToken);\n    }\n    if (_instance.filterByCategory) {\n      _writer.writeEnum(6, _instance.filterByCategory);\n    }\n    if (_instance.sortByField) {\n      _writer.writeMessage(\n        7,\n        _instance.sortByField as any,\n        IntentSorting.serializeBinaryToWriter\n      );\n    }\n    if (_instance.filterByTags && _instance.filterByTags.length) {\n      _writer.writeRepeatedString(8, _instance.filterByTags);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentView: IntentView;\n  private _pageToken: string;\n  private _filterByCategory: IntentCategory;\n  private _sortByField?: IntentSorting;\n  private _filterByTags: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListIntentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListIntentsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentView = _value.intentView;\n    this.pageToken = _value.pageToken;\n    this.filterByCategory = _value.filterByCategory;\n    this.sortByField = _value.sortByField\n      ? new IntentSorting(_value.sortByField)\n      : undefined;\n    this.filterByTags = (_value.filterByTags || []).slice();\n    ListIntentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentView(): IntentView {\n    return this._intentView;\n  }\n  set intentView(value: IntentView) {\n    this._intentView = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get filterByCategory(): IntentCategory {\n    return this._filterByCategory;\n  }\n  set filterByCategory(value: IntentCategory) {\n    this._filterByCategory = value;\n  }\n  get sortByField(): IntentSorting | undefined {\n    return this._sortByField;\n  }\n  set sortByField(value: IntentSorting | undefined) {\n    this._sortByField = value;\n  }\n  get filterByTags(): string[] {\n    return this._filterByTags;\n  }\n  set filterByTags(value: string[]) {\n    this._filterByTags = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListIntentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListIntentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentView: this.intentView,\n      pageToken: this.pageToken,\n      filterByCategory: this.filterByCategory,\n      sortByField: this.sortByField ? this.sortByField.toObject() : undefined,\n      filterByTags: (this.filterByTags || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListIntentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentView:\n        IntentView[\n          this.intentView === null || this.intentView === undefined\n            ? 0\n            : this.intentView\n        ],\n      pageToken: this.pageToken,\n      filterByCategory:\n        IntentCategory[\n          this.filterByCategory === null || this.filterByCategory === undefined\n            ? 0\n            : this.filterByCategory\n        ],\n      sortByField: this.sortByField\n        ? this.sortByField.toProtobufJSON(options)\n        : null,\n      filterByTags: (this.filterByTags || []).slice()\n    };\n  }\n}\nexport module ListIntentsRequest {\n  /**\n   * Standard JavaScript object representation for ListIntentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentView: IntentView;\n    pageToken: string;\n    filterByCategory: IntentCategory;\n    sortByField?: IntentSorting.AsObject;\n    filterByTags: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListIntentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentView: string;\n    pageToken: string;\n    filterByCategory: string;\n    sortByField: IntentSorting.AsProtobufJSON | null;\n    filterByTags: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListIntentsResponse\n */\nexport class ListIntentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListIntentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListIntentsResponse();\n    ListIntentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListIntentsResponse) {\n    _instance.intents = _instance.intents || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListIntentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.deserializeBinaryFromReader\n          );\n          (_instance.intents = _instance.intents || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListIntentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListIntentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intents && _instance.intents.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.intents as any,\n        Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _intents?: Intent[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListIntentsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListIntentsResponse.AsObject>) {\n    _value = _value || {};\n    this.intents = (_value.intents || []).map(m => new Intent(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListIntentsResponse.refineValues(this);\n  }\n  get intents(): Intent[] | undefined {\n    return this._intents;\n  }\n  set intents(value: Intent[] | undefined) {\n    this._intents = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListIntentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListIntentsResponse.AsObject {\n    return {\n      intents: (this.intents || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListIntentsResponse.AsProtobufJSON {\n    return {\n      intents: (this.intents || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListIntentsResponse {\n  /**\n   * Standard JavaScript object representation for ListIntentsResponse\n   */\n  export interface AsObject {\n    intents?: Intent.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListIntentsResponse\n   */\n  export interface AsProtobufJSON {\n    intents: Intent.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetIntentRequest\n */\nexport class GetIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetIntentRequest();\n    GetIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetIntentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentView = _instance.intentView || 0;\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.intentView = _reader.readEnum();\n          break;\n        case 10:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.intentView) {\n      _writer.writeEnum(3, _instance.intentView);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(10, _instance.pageToken);\n    }\n  }\n\n  private _name: string;\n  private _languageCode: string;\n  private _intentView: IntentView;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetIntentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetIntentRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.languageCode = _value.languageCode;\n    this.intentView = _value.intentView;\n    this.pageToken = _value.pageToken;\n    GetIntentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentView(): IntentView {\n    return this._intentView;\n  }\n  set intentView(value: IntentView) {\n    this._intentView = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetIntentRequest.AsObject {\n    return {\n      name: this.name,\n      languageCode: this.languageCode,\n      intentView: this.intentView,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetIntentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      languageCode: this.languageCode,\n      intentView:\n        IntentView[\n          this.intentView === null || this.intentView === undefined\n            ? 0\n            : this.intentView\n        ],\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module GetIntentRequest {\n  /**\n   * Standard JavaScript object representation for GetIntentRequest\n   */\n  export interface AsObject {\n    name: string;\n    languageCode: string;\n    intentView: IntentView;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetIntentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    languageCode: string;\n    intentView: string;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateIntentRequest\n */\nexport class CreateIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateIntentRequest();\n    CreateIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateIntentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.intent = _instance.intent || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentView = _instance.intentView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.intent = new Intent();\n          _reader.readMessage(\n            _instance.intent,\n            Intent.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.intentView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.intent) {\n      _writer.writeMessage(\n        2,\n        _instance.intent as any,\n        Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.intentView) {\n      _writer.writeEnum(4, _instance.intentView);\n    }\n  }\n\n  private _parent: string;\n  private _intent?: Intent;\n  private _languageCode: string;\n  private _intentView: IntentView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateIntentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateIntentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.intent = _value.intent ? new Intent(_value.intent) : undefined;\n    this.languageCode = _value.languageCode;\n    this.intentView = _value.intentView;\n    CreateIntentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get intent(): Intent | undefined {\n    return this._intent;\n  }\n  set intent(value: Intent | undefined) {\n    this._intent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentView(): IntentView {\n    return this._intentView;\n  }\n  set intentView(value: IntentView) {\n    this._intentView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateIntentRequest.AsObject {\n    return {\n      parent: this.parent,\n      intent: this.intent ? this.intent.toObject() : undefined,\n      languageCode: this.languageCode,\n      intentView: this.intentView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateIntentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      intent: this.intent ? this.intent.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      intentView:\n        IntentView[\n          this.intentView === null || this.intentView === undefined\n            ? 0\n            : this.intentView\n        ]\n    };\n  }\n}\nexport module CreateIntentRequest {\n  /**\n   * Standard JavaScript object representation for CreateIntentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    intent?: Intent.AsObject;\n    languageCode: string;\n    intentView: IntentView;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateIntentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    intent: Intent.AsProtobufJSON | null;\n    languageCode: string;\n    intentView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateIntentRequest\n */\nexport class UpdateIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateIntentRequest();\n    UpdateIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateIntentRequest) {\n    _instance.intent = _instance.intent || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.intentView = _instance.intentView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intent = new Intent();\n          _reader.readMessage(\n            _instance.intent,\n            Intent.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.updateMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.intentView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intent) {\n      _writer.writeMessage(\n        1,\n        _instance.intent as any,\n        Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        3,\n        _instance.updateMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.intentView) {\n      _writer.writeEnum(4, _instance.intentView);\n    }\n  }\n\n  private _intent?: Intent;\n  private _languageCode: string;\n  private _updateMask?: googleProtobuf004.FieldMask;\n  private _intentView: IntentView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateIntentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateIntentRequest.AsObject>) {\n    _value = _value || {};\n    this.intent = _value.intent ? new Intent(_value.intent) : undefined;\n    this.languageCode = _value.languageCode;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf004.FieldMask(_value.updateMask)\n      : undefined;\n    this.intentView = _value.intentView;\n    UpdateIntentRequest.refineValues(this);\n  }\n  get intent(): Intent | undefined {\n    return this._intent;\n  }\n  set intent(value: Intent | undefined) {\n    this._intent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get updateMask(): googleProtobuf004.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get intentView(): IntentView {\n    return this._intentView;\n  }\n  set intentView(value: IntentView) {\n    this._intentView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateIntentRequest.AsObject {\n    return {\n      intent: this.intent ? this.intent.toObject() : undefined,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      intentView: this.intentView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateIntentRequest.AsProtobufJSON {\n    return {\n      intent: this.intent ? this.intent.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      intentView:\n        IntentView[\n          this.intentView === null || this.intentView === undefined\n            ? 0\n            : this.intentView\n        ]\n    };\n  }\n}\nexport module UpdateIntentRequest {\n  /**\n   * Standard JavaScript object representation for UpdateIntentRequest\n   */\n  export interface AsObject {\n    intent?: Intent.AsObject;\n    languageCode: string;\n    updateMask?: googleProtobuf004.FieldMask.AsObject;\n    intentView: IntentView;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateIntentRequest\n   */\n  export interface AsProtobufJSON {\n    intent: Intent.AsProtobufJSON | null;\n    languageCode: string;\n    updateMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n    intentView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteIntentRequest\n */\nexport class DeleteIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteIntentRequest();\n    DeleteIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteIntentRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteIntentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteIntentRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteIntentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteIntentRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteIntentRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteIntentRequest {\n  /**\n   * Standard JavaScript object representation for DeleteIntentRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteIntentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateIntentsRequest\n */\nexport class BatchUpdateIntentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateIntentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateIntentsRequest();\n    BatchUpdateIntentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateIntentsRequest) {\n    _instance.parent = _instance.parent || '';\n\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.intentView = _instance.intentView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateIntentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.intentBatchUri = _reader.readString();\n          break;\n        case 3:\n          _instance.intentBatchInline = new IntentBatch();\n          _reader.readMessage(\n            _instance.intentBatchInline,\n            IntentBatch.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.updateMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.intentView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateIntentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateIntentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.intentBatchUri || _instance.intentBatchUri === '') {\n      _writer.writeString(2, _instance.intentBatchUri);\n    }\n    if (_instance.intentBatchInline) {\n      _writer.writeMessage(\n        3,\n        _instance.intentBatchInline as any,\n        IntentBatch.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        5,\n        _instance.updateMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.intentView) {\n      _writer.writeEnum(6, _instance.intentView);\n    }\n  }\n\n  private _parent: string;\n  private _intentBatchUri: string;\n  private _intentBatchInline?: IntentBatch;\n  private _languageCode: string;\n  private _updateMask?: googleProtobuf004.FieldMask;\n  private _intentView: IntentView;\n\n  private _intentBatch: BatchUpdateIntentsRequest.IntentBatchCase =\n    BatchUpdateIntentsRequest.IntentBatchCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateIntentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchUpdateIntentsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.intentBatchUri = _value.intentBatchUri;\n    this.intentBatchInline = _value.intentBatchInline\n      ? new IntentBatch(_value.intentBatchInline)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf004.FieldMask(_value.updateMask)\n      : undefined;\n    this.intentView = _value.intentView;\n    BatchUpdateIntentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get intentBatchUri(): string {\n    return this._intentBatchUri;\n  }\n  set intentBatchUri(value: string) {\n    if (value !== undefined && value !== null) {\n      this._intentBatchInline = undefined;\n      this._intentBatch =\n        BatchUpdateIntentsRequest.IntentBatchCase.intentBatchUri;\n    }\n    this._intentBatchUri = value;\n  }\n  get intentBatchInline(): IntentBatch | undefined {\n    return this._intentBatchInline;\n  }\n  set intentBatchInline(value: IntentBatch | undefined) {\n    if (value !== undefined && value !== null) {\n      this._intentBatchUri = undefined;\n      this._intentBatch =\n        BatchUpdateIntentsRequest.IntentBatchCase.intentBatchInline;\n    }\n    this._intentBatchInline = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get updateMask(): googleProtobuf004.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get intentView(): IntentView {\n    return this._intentView;\n  }\n  set intentView(value: IntentView) {\n    this._intentView = value;\n  }\n  get intentBatch() {\n    return this._intentBatch;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateIntentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateIntentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      intentBatchUri: this.intentBatchUri,\n      intentBatchInline: this.intentBatchInline\n        ? this.intentBatchInline.toObject()\n        : undefined,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      intentView: this.intentView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateIntentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      intentBatchUri:\n        this.intentBatchUri === null || this.intentBatchUri === undefined\n          ? null\n          : this.intentBatchUri,\n      intentBatchInline: this.intentBatchInline\n        ? this.intentBatchInline.toProtobufJSON(options)\n        : null,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      intentView:\n        IntentView[\n          this.intentView === null || this.intentView === undefined\n            ? 0\n            : this.intentView\n        ]\n    };\n  }\n}\nexport module BatchUpdateIntentsRequest {\n  /**\n   * Standard JavaScript object representation for BatchUpdateIntentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    intentBatchUri: string;\n    intentBatchInline?: IntentBatch.AsObject;\n    languageCode: string;\n    updateMask?: googleProtobuf004.FieldMask.AsObject;\n    intentView: IntentView;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateIntentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    intentBatchUri: string | null;\n    intentBatchInline: IntentBatch.AsProtobufJSON | null;\n    languageCode: string;\n    updateMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n    intentView: string;\n  }\n  export enum IntentBatchCase {\n    none = 0,\n    intentBatchUri = 1,\n    intentBatchInline = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateIntentsResponse\n */\nexport class BatchUpdateIntentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateIntentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateIntentsResponse();\n    BatchUpdateIntentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateIntentsResponse) {\n    _instance.intents = _instance.intents || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateIntentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.deserializeBinaryFromReader\n          );\n          (_instance.intents = _instance.intents || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateIntentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateIntentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intents && _instance.intents.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.intents as any,\n        Intent.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _intents?: Intent[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateIntentsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchUpdateIntentsResponse.AsObject>) {\n    _value = _value || {};\n    this.intents = (_value.intents || []).map(m => new Intent(m));\n    BatchUpdateIntentsResponse.refineValues(this);\n  }\n  get intents(): Intent[] | undefined {\n    return this._intents;\n  }\n  set intents(value: Intent[] | undefined) {\n    this._intents = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateIntentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateIntentsResponse.AsObject {\n    return {\n      intents: (this.intents || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateIntentsResponse.AsProtobufJSON {\n    return {\n      intents: (this.intents || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module BatchUpdateIntentsResponse {\n  /**\n   * Standard JavaScript object representation for BatchUpdateIntentsResponse\n   */\n  export interface AsObject {\n    intents?: Intent.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateIntentsResponse\n   */\n  export interface AsProtobufJSON {\n    intents: Intent.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteIntentsRequest\n */\nexport class BatchDeleteIntentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteIntentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteIntentsRequest();\n    BatchDeleteIntentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteIntentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.intents = _instance.intents || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteIntentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new Intent();\n          _reader.readMessage(\n            messageInitializer2,\n            Intent.deserializeBinaryFromReader\n          );\n          (_instance.intents = _instance.intents || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteIntentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteIntentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.intents && _instance.intents.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.intents as any,\n        Intent.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _intents?: Intent[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteIntentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchDeleteIntentsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.intents = (_value.intents || []).map(m => new Intent(m));\n    BatchDeleteIntentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get intents(): Intent[] | undefined {\n    return this._intents;\n  }\n  set intents(value: Intent[] | undefined) {\n    this._intents = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteIntentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteIntentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      intents: (this.intents || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteIntentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      intents: (this.intents || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module BatchDeleteIntentsRequest {\n  /**\n   * Standard JavaScript object representation for BatchDeleteIntentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    intents?: Intent.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteIntentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    intents: Intent.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.IntentBatch\n */\nexport class IntentBatch implements GrpcMessage {\n  static id = 'ondewo.nlu.IntentBatch';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new IntentBatch();\n    IntentBatch.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: IntentBatch) {\n    _instance.intents = _instance.intents || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: IntentBatch,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.deserializeBinaryFromReader\n          );\n          (_instance.intents = _instance.intents || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    IntentBatch.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: IntentBatch,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intents && _instance.intents.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.intents as any,\n        Intent.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _intents?: Intent[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of IntentBatch to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<IntentBatch.AsObject>) {\n    _value = _value || {};\n    this.intents = (_value.intents || []).map(m => new Intent(m));\n    IntentBatch.refineValues(this);\n  }\n  get intents(): Intent[] | undefined {\n    return this._intents;\n  }\n  set intents(value: Intent[] | undefined) {\n    this._intents = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    IntentBatch.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): IntentBatch.AsObject {\n    return {\n      intents: (this.intents || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): IntentBatch.AsProtobufJSON {\n    return {\n      intents: (this.intents || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module IntentBatch {\n  /**\n   * Standard JavaScript object representation for IntentBatch\n   */\n  export interface AsObject {\n    intents?: Intent.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for IntentBatch\n   */\n  export interface AsProtobufJSON {\n    intents: Intent.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.IntentSorting\n */\nexport class IntentSorting implements GrpcMessage {\n  static id = 'ondewo.nlu.IntentSorting';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new IntentSorting();\n    IntentSorting.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: IntentSorting) {\n    _instance.sortingField = _instance.sortingField || 0;\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: IntentSorting,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sortingField = _reader.readEnum();\n          break;\n        case 2:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    IntentSorting.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: IntentSorting,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sortingField) {\n      _writer.writeEnum(1, _instance.sortingField);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(2, _instance.sortingMode);\n    }\n  }\n\n  private _sortingField: IntentSorting.IntentSortingField;\n  private _sortingMode: ondewoNlu010.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of IntentSorting to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<IntentSorting.AsObject>) {\n    _value = _value || {};\n    this.sortingField = _value.sortingField;\n    this.sortingMode = _value.sortingMode;\n    IntentSorting.refineValues(this);\n  }\n  get sortingField(): IntentSorting.IntentSortingField {\n    return this._sortingField;\n  }\n  set sortingField(value: IntentSorting.IntentSortingField) {\n    this._sortingField = value;\n  }\n  get sortingMode(): ondewoNlu010.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu010.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    IntentSorting.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): IntentSorting.AsObject {\n    return {\n      sortingField: this.sortingField,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): IntentSorting.AsProtobufJSON {\n    return {\n      sortingField:\n        IntentSorting.IntentSortingField[\n          this.sortingField === null || this.sortingField === undefined\n            ? 0\n            : this.sortingField\n        ],\n      sortingMode:\n        ondewoNlu010.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module IntentSorting {\n  /**\n   * Standard JavaScript object representation for IntentSorting\n   */\n  export interface AsObject {\n    sortingField: IntentSorting.IntentSortingField;\n    sortingMode: ondewoNlu010.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for IntentSorting\n   */\n  export interface AsProtobufJSON {\n    sortingField: string;\n    sortingMode: string;\n  }\n  export enum IntentSortingField {\n    NO_INTENT_SORTING = 0,\n    SORT_INTENT_BY_NAME = 1,\n    SORT_INTENT_BY_CREATION_DATE = 2,\n    SORT_INTENT_BY_LAST_UPDATED = 3,\n    SORT_INTENT_BY_USERSAYS_COUNT = 4,\n    SORT_INTENT_BY_START_DATE = 5,\n    SORT_INTENT_BY_END_DATE = 6\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.IntentTagRequest\n */\nexport class IntentTagRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.IntentTagRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new IntentTagRequest();\n    IntentTagRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: IntentTagRequest) {\n    _instance.intentName = _instance.intentName || '';\n    _instance.tags = _instance.tags || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: IntentTagRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intentName = _reader.readString();\n          break;\n        case 2:\n          (_instance.tags = _instance.tags || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    IntentTagRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: IntentTagRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentName) {\n      _writer.writeString(1, _instance.intentName);\n    }\n    if (_instance.tags && _instance.tags.length) {\n      _writer.writeRepeatedString(2, _instance.tags);\n    }\n  }\n\n  private _intentName: string;\n  private _tags: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of IntentTagRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<IntentTagRequest.AsObject>) {\n    _value = _value || {};\n    this.intentName = _value.intentName;\n    this.tags = (_value.tags || []).slice();\n    IntentTagRequest.refineValues(this);\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get tags(): string[] {\n    return this._tags;\n  }\n  set tags(value: string[]) {\n    this._tags = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    IntentTagRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): IntentTagRequest.AsObject {\n    return {\n      intentName: this.intentName,\n      tags: (this.tags || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): IntentTagRequest.AsProtobufJSON {\n    return {\n      intentName: this.intentName,\n      tags: (this.tags || []).slice()\n    };\n  }\n}\nexport module IntentTagRequest {\n  /**\n   * Standard JavaScript object representation for IntentTagRequest\n   */\n  export interface AsObject {\n    intentName: string;\n    tags: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for IntentTagRequest\n   */\n  export interface AsProtobufJSON {\n    intentName: string;\n    tags: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetIntentTagsRequest\n */\nexport class GetIntentTagsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetIntentTagsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetIntentTagsRequest();\n    GetIntentTagsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetIntentTagsRequest) {\n    _instance.intentName = _instance.intentName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetIntentTagsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intentName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetIntentTagsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetIntentTagsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentName) {\n      _writer.writeString(1, _instance.intentName);\n    }\n  }\n\n  private _intentName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetIntentTagsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetIntentTagsRequest.AsObject>) {\n    _value = _value || {};\n    this.intentName = _value.intentName;\n    GetIntentTagsRequest.refineValues(this);\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetIntentTagsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetIntentTagsRequest.AsObject {\n    return {\n      intentName: this.intentName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetIntentTagsRequest.AsProtobufJSON {\n    return {\n      intentName: this.intentName\n    };\n  }\n}\nexport module GetIntentTagsRequest {\n  /**\n   * Standard JavaScript object representation for GetIntentTagsRequest\n   */\n  export interface AsObject {\n    intentName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetIntentTagsRequest\n   */\n  export interface AsProtobufJSON {\n    intentName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetIntentTagsResponse\n */\nexport class GetIntentTagsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetIntentTagsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetIntentTagsResponse();\n    GetIntentTagsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetIntentTagsResponse) {\n    _instance.intentTags = _instance.intentTags || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetIntentTagsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.intentTags = _instance.intentTags || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetIntentTagsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetIntentTagsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentTags && _instance.intentTags.length) {\n      _writer.writeRepeatedString(1, _instance.intentTags);\n    }\n  }\n\n  private _intentTags: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetIntentTagsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetIntentTagsResponse.AsObject>) {\n    _value = _value || {};\n    this.intentTags = (_value.intentTags || []).slice();\n    GetIntentTagsResponse.refineValues(this);\n  }\n  get intentTags(): string[] {\n    return this._intentTags;\n  }\n  set intentTags(value: string[]) {\n    this._intentTags = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetIntentTagsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetIntentTagsResponse.AsObject {\n    return {\n      intentTags: (this.intentTags || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetIntentTagsResponse.AsProtobufJSON {\n    return {\n      intentTags: (this.intentTags || []).slice()\n    };\n  }\n}\nexport module GetIntentTagsResponse {\n  /**\n   * Standard JavaScript object representation for GetIntentTagsResponse\n   */\n  export interface AsObject {\n    intentTags: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetIntentTagsResponse\n   */\n  export interface AsProtobufJSON {\n    intentTags: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAllIntentTagsRequest\n */\nexport class GetAllIntentTagsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAllIntentTagsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAllIntentTagsRequest();\n    GetAllIntentTagsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAllIntentTagsRequest) {\n    _instance.parent = _instance.parent || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAllIntentTagsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAllIntentTagsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAllIntentTagsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n  }\n\n  private _parent: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAllIntentTagsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAllIntentTagsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    GetAllIntentTagsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAllIntentTagsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAllIntentTagsRequest.AsObject {\n    return {\n      parent: this.parent\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAllIntentTagsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent\n    };\n  }\n}\nexport module GetAllIntentTagsRequest {\n  /**\n   * Standard JavaScript object representation for GetAllIntentTagsRequest\n   */\n  export interface AsObject {\n    parent: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAllIntentTagsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateTrainingPhrasesRequest\n */\nexport class BatchUpdateTrainingPhrasesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateTrainingPhrasesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateTrainingPhrasesRequest();\n    BatchUpdateTrainingPhrasesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateTrainingPhrasesRequest) {\n    _instance.trainingPhrases = _instance.trainingPhrases || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateTrainingPhrasesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent.TrainingPhrase();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.TrainingPhrase.deserializeBinaryFromReader\n          );\n          (_instance.trainingPhrases = _instance.trainingPhrases || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateTrainingPhrasesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateTrainingPhrasesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.trainingPhrases && _instance.trainingPhrases.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.trainingPhrases as any,\n        Intent.TrainingPhrase.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _trainingPhrases?: Intent.TrainingPhrase[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateTrainingPhrasesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchUpdateTrainingPhrasesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.trainingPhrases = (_value.trainingPhrases || []).map(\n      m => new Intent.TrainingPhrase(m)\n    );\n    BatchUpdateTrainingPhrasesRequest.refineValues(this);\n  }\n  get trainingPhrases(): Intent.TrainingPhrase[] | undefined {\n    return this._trainingPhrases;\n  }\n  set trainingPhrases(value: Intent.TrainingPhrase[] | undefined) {\n    this._trainingPhrases = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateTrainingPhrasesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateTrainingPhrasesRequest.AsObject {\n    return {\n      trainingPhrases: (this.trainingPhrases || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateTrainingPhrasesRequest.AsProtobufJSON {\n    return {\n      trainingPhrases: (this.trainingPhrases || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module BatchUpdateTrainingPhrasesRequest {\n  /**\n   * Standard JavaScript object representation for BatchUpdateTrainingPhrasesRequest\n   */\n  export interface AsObject {\n    trainingPhrases?: Intent.TrainingPhrase.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateTrainingPhrasesRequest\n   */\n  export interface AsProtobufJSON {\n    trainingPhrases: Intent.TrainingPhrase.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.TrainingPhraseStatus\n */\nexport class TrainingPhraseStatus implements GrpcMessage {\n  static id = 'ondewo.nlu.TrainingPhraseStatus';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new TrainingPhraseStatus();\n    TrainingPhraseStatus.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: TrainingPhraseStatus) {}\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: TrainingPhraseStatus,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.trainingPhrase = new Intent.TrainingPhrase();\n          _reader.readMessage(\n            _instance.trainingPhrase,\n            Intent.TrainingPhrase.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    TrainingPhraseStatus.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: TrainingPhraseStatus,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.trainingPhrase) {\n      _writer.writeMessage(\n        1,\n        _instance.trainingPhrase as any,\n        Intent.TrainingPhrase.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage || _instance.errorMessage === '') {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _trainingPhrase?: Intent.TrainingPhrase;\n  private _errorMessage: string;\n\n  private _phraseOrStatus: TrainingPhraseStatus.PhraseOrStatusCase =\n    TrainingPhraseStatus.PhraseOrStatusCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of TrainingPhraseStatus to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<TrainingPhraseStatus.AsObject>) {\n    _value = _value || {};\n    this.trainingPhrase = _value.trainingPhrase\n      ? new Intent.TrainingPhrase(_value.trainingPhrase)\n      : undefined;\n    this.errorMessage = _value.errorMessage;\n    TrainingPhraseStatus.refineValues(this);\n  }\n  get trainingPhrase(): Intent.TrainingPhrase | undefined {\n    return this._trainingPhrase;\n  }\n  set trainingPhrase(value: Intent.TrainingPhrase | undefined) {\n    if (value !== undefined && value !== null) {\n      this._errorMessage = undefined;\n      this._phraseOrStatus =\n        TrainingPhraseStatus.PhraseOrStatusCase.trainingPhrase;\n    }\n    this._trainingPhrase = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    if (value !== undefined && value !== null) {\n      this._trainingPhrase = undefined;\n      this._phraseOrStatus =\n        TrainingPhraseStatus.PhraseOrStatusCase.errorMessage;\n    }\n    this._errorMessage = value;\n  }\n  get phraseOrStatus() {\n    return this._phraseOrStatus;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    TrainingPhraseStatus.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): TrainingPhraseStatus.AsObject {\n    return {\n      trainingPhrase: this.trainingPhrase\n        ? this.trainingPhrase.toObject()\n        : undefined,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): TrainingPhraseStatus.AsProtobufJSON {\n    return {\n      trainingPhrase: this.trainingPhrase\n        ? this.trainingPhrase.toProtobufJSON(options)\n        : null,\n      errorMessage:\n        this.errorMessage === null || this.errorMessage === undefined\n          ? null\n          : this.errorMessage\n    };\n  }\n}\nexport module TrainingPhraseStatus {\n  /**\n   * Standard JavaScript object representation for TrainingPhraseStatus\n   */\n  export interface AsObject {\n    trainingPhrase?: Intent.TrainingPhrase.AsObject;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for TrainingPhraseStatus\n   */\n  export interface AsProtobufJSON {\n    trainingPhrase: Intent.TrainingPhrase.AsProtobufJSON | null;\n    errorMessage: string | null;\n  }\n  export enum PhraseOrStatusCase {\n    none = 0,\n    trainingPhrase = 1,\n    errorMessage = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchTrainingPhrasesStatusResponse\n */\nexport class BatchTrainingPhrasesStatusResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchTrainingPhrasesStatusResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchTrainingPhrasesStatusResponse();\n    BatchTrainingPhrasesStatusResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchTrainingPhrasesStatusResponse) {\n    _instance.trainingPhraseStatuses = _instance.trainingPhraseStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchTrainingPhrasesStatusResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new TrainingPhraseStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            TrainingPhraseStatus.deserializeBinaryFromReader\n          );\n          (_instance.trainingPhraseStatuses =\n            _instance.trainingPhraseStatuses || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchTrainingPhrasesStatusResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchTrainingPhrasesStatusResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.trainingPhraseStatuses &&\n      _instance.trainingPhraseStatuses.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.trainingPhraseStatuses as any,\n        TrainingPhraseStatus.serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _trainingPhraseStatuses?: TrainingPhraseStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchTrainingPhrasesStatusResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchTrainingPhrasesStatusResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.trainingPhraseStatuses = (_value.trainingPhraseStatuses || []).map(\n      m => new TrainingPhraseStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchTrainingPhrasesStatusResponse.refineValues(this);\n  }\n  get trainingPhraseStatuses(): TrainingPhraseStatus[] | undefined {\n    return this._trainingPhraseStatuses;\n  }\n  set trainingPhraseStatuses(value: TrainingPhraseStatus[] | undefined) {\n    this._trainingPhraseStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchTrainingPhrasesStatusResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchTrainingPhrasesStatusResponse.AsObject {\n    return {\n      trainingPhraseStatuses: (this.trainingPhraseStatuses || []).map(m =>\n        m.toObject()\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchTrainingPhrasesStatusResponse.AsProtobufJSON {\n    return {\n      trainingPhraseStatuses: (this.trainingPhraseStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchTrainingPhrasesStatusResponse {\n  /**\n   * Standard JavaScript object representation for BatchTrainingPhrasesStatusResponse\n   */\n  export interface AsObject {\n    trainingPhraseStatuses?: TrainingPhraseStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchTrainingPhrasesStatusResponse\n   */\n  export interface AsProtobufJSON {\n    trainingPhraseStatuses: TrainingPhraseStatus.AsProtobufJSON[] | null;\n    hasErrors: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchCreateTrainingPhrasesRequest\n */\nexport class BatchCreateTrainingPhrasesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchCreateTrainingPhrasesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchCreateTrainingPhrasesRequest();\n    BatchCreateTrainingPhrasesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchCreateTrainingPhrasesRequest) {\n    _instance.trainingPhraseRequests = _instance.trainingPhraseRequests || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchCreateTrainingPhrasesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest\n              .deserializeBinaryFromReader\n          );\n          (_instance.trainingPhraseRequests =\n            _instance.trainingPhraseRequests || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchCreateTrainingPhrasesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchCreateTrainingPhrasesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.trainingPhraseRequests &&\n      _instance.trainingPhraseRequests.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.trainingPhraseRequests as any,\n        BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest\n          .serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _trainingPhraseRequests?: BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchCreateTrainingPhrasesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchCreateTrainingPhrasesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.trainingPhraseRequests = (_value.trainingPhraseRequests || []).map(\n      m => new BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest(m)\n    );\n    BatchCreateTrainingPhrasesRequest.refineValues(this);\n  }\n  get trainingPhraseRequests():\n    | BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest[]\n    | undefined {\n    return this._trainingPhraseRequests;\n  }\n  set trainingPhraseRequests(\n    value:\n      | BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest[]\n      | undefined\n  ) {\n    this._trainingPhraseRequests = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchCreateTrainingPhrasesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchCreateTrainingPhrasesRequest.AsObject {\n    return {\n      trainingPhraseRequests: (this.trainingPhraseRequests || []).map(m =>\n        m.toObject()\n      )\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchCreateTrainingPhrasesRequest.AsProtobufJSON {\n    return {\n      trainingPhraseRequests: (this.trainingPhraseRequests || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module BatchCreateTrainingPhrasesRequest {\n  /**\n   * Standard JavaScript object representation for BatchCreateTrainingPhrasesRequest\n   */\n  export interface AsObject {\n    trainingPhraseRequests?: BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchCreateTrainingPhrasesRequest\n   */\n  export interface AsProtobufJSON {\n    trainingPhraseRequests:\n      | BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest.AsProtobufJSON[]\n      | null;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest\n   */\n  export class CreateTrainingPhraseRequest implements GrpcMessage {\n    static id =\n      'ondewo.nlu.BatchCreateTrainingPhrasesRequest.CreateTrainingPhraseRequest';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new CreateTrainingPhraseRequest();\n      CreateTrainingPhraseRequest.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: CreateTrainingPhraseRequest) {\n      _instance.intentName = _instance.intentName || '';\n      _instance.trainingPhrase = _instance.trainingPhrase || undefined;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: CreateTrainingPhraseRequest,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.intentName = _reader.readString();\n            break;\n          case 2:\n            _instance.trainingPhrase = new Intent.TrainingPhrase();\n            _reader.readMessage(\n              _instance.trainingPhrase,\n              Intent.TrainingPhrase.deserializeBinaryFromReader\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      CreateTrainingPhraseRequest.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: CreateTrainingPhraseRequest,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.intentName) {\n        _writer.writeString(1, _instance.intentName);\n      }\n      if (_instance.trainingPhrase) {\n        _writer.writeMessage(\n          2,\n          _instance.trainingPhrase as any,\n          Intent.TrainingPhrase.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _intentName: string;\n    private _trainingPhrase?: Intent.TrainingPhrase;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of CreateTrainingPhraseRequest to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<CreateTrainingPhraseRequest.AsObject>\n    ) {\n      _value = _value || {};\n      this.intentName = _value.intentName;\n      this.trainingPhrase = _value.trainingPhrase\n        ? new Intent.TrainingPhrase(_value.trainingPhrase)\n        : undefined;\n      CreateTrainingPhraseRequest.refineValues(this);\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get trainingPhrase(): Intent.TrainingPhrase | undefined {\n      return this._trainingPhrase;\n    }\n    set trainingPhrase(value: Intent.TrainingPhrase | undefined) {\n      this._trainingPhrase = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      CreateTrainingPhraseRequest.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): CreateTrainingPhraseRequest.AsObject {\n      return {\n        intentName: this.intentName,\n        trainingPhrase: this.trainingPhrase\n          ? this.trainingPhrase.toObject()\n          : undefined\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): CreateTrainingPhraseRequest.AsProtobufJSON {\n      return {\n        intentName: this.intentName,\n        trainingPhrase: this.trainingPhrase\n          ? this.trainingPhrase.toProtobufJSON(options)\n          : null\n      };\n    }\n  }\n  export module CreateTrainingPhraseRequest {\n    /**\n     * Standard JavaScript object representation for CreateTrainingPhraseRequest\n     */\n    export interface AsObject {\n      intentName: string;\n      trainingPhrase?: Intent.TrainingPhrase.AsObject;\n    }\n\n    /**\n     * Protobuf JSON representation for CreateTrainingPhraseRequest\n     */\n    export interface AsProtobufJSON {\n      intentName: string;\n      trainingPhrase: Intent.TrainingPhrase.AsProtobufJSON | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchGetTrainingPhrasesRequest\n */\nexport class BatchGetTrainingPhrasesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchGetTrainingPhrasesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchGetTrainingPhrasesRequest();\n    BatchGetTrainingPhrasesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchGetTrainingPhrasesRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchGetTrainingPhrasesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchGetTrainingPhrasesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchGetTrainingPhrasesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchGetTrainingPhrasesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchGetTrainingPhrasesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchGetTrainingPhrasesRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchGetTrainingPhrasesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchGetTrainingPhrasesRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchGetTrainingPhrasesRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchGetTrainingPhrasesRequest {\n  /**\n   * Standard JavaScript object representation for BatchGetTrainingPhrasesRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchGetTrainingPhrasesRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteTrainingPhrasesRequest\n */\nexport class BatchDeleteTrainingPhrasesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteTrainingPhrasesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteTrainingPhrasesRequest();\n    BatchDeleteTrainingPhrasesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteTrainingPhrasesRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteTrainingPhrasesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteTrainingPhrasesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteTrainingPhrasesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteTrainingPhrasesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchDeleteTrainingPhrasesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchDeleteTrainingPhrasesRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteTrainingPhrasesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteTrainingPhrasesRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteTrainingPhrasesRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchDeleteTrainingPhrasesRequest {\n  /**\n   * Standard JavaScript object representation for BatchDeleteTrainingPhrasesRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteTrainingPhrasesRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteTrainingPhrasesResponse\n */\nexport class BatchDeleteTrainingPhrasesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteTrainingPhrasesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteTrainingPhrasesResponse();\n    BatchDeleteTrainingPhrasesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteTrainingPhrasesResponse) {\n    _instance.deleteStatuses = _instance.deleteStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteTrainingPhrasesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus\n              .deserializeBinaryFromReader\n          );\n          (_instance.deleteStatuses = _instance.deleteStatuses || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteTrainingPhrasesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteTrainingPhrasesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.deleteStatuses && _instance.deleteStatuses.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.deleteStatuses as any,\n        BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _deleteStatuses?: BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteTrainingPhrasesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchDeleteTrainingPhrasesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.deleteStatuses = (_value.deleteStatuses || []).map(\n      m => new BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchDeleteTrainingPhrasesResponse.refineValues(this);\n  }\n  get deleteStatuses():\n    | BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus[]\n    | undefined {\n    return this._deleteStatuses;\n  }\n  set deleteStatuses(\n    value:\n      | BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus[]\n      | undefined\n  ) {\n    this._deleteStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteTrainingPhrasesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteTrainingPhrasesResponse.AsObject {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m => m.toObject()),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteTrainingPhrasesResponse.AsProtobufJSON {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchDeleteTrainingPhrasesResponse {\n  /**\n   * Standard JavaScript object representation for BatchDeleteTrainingPhrasesResponse\n   */\n  export interface AsObject {\n    deleteStatuses?: BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteTrainingPhrasesResponse\n   */\n  export interface AsProtobufJSON {\n    deleteStatuses:\n      | BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus.AsProtobufJSON[]\n      | null;\n    hasErrors: boolean;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus\n   */\n  export class DeleteTrainingPhraseStatus implements GrpcMessage {\n    static id =\n      'ondewo.nlu.BatchDeleteTrainingPhrasesResponse.DeleteTrainingPhraseStatus';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new DeleteTrainingPhraseStatus();\n      DeleteTrainingPhraseStatus.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: DeleteTrainingPhraseStatus) {}\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: DeleteTrainingPhraseStatus,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.successfullyDeleted = new googleProtobuf003.Empty();\n            _reader.readMessage(\n              _instance.successfullyDeleted,\n              googleProtobuf003.Empty.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            _instance.errorMessage = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      DeleteTrainingPhraseStatus.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: DeleteTrainingPhraseStatus,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.successfullyDeleted) {\n        _writer.writeMessage(\n          1,\n          _instance.successfullyDeleted as any,\n          googleProtobuf003.Empty.serializeBinaryToWriter\n        );\n      }\n      if (_instance.errorMessage || _instance.errorMessage === '') {\n        _writer.writeString(2, _instance.errorMessage);\n      }\n    }\n\n    private _successfullyDeleted?: googleProtobuf003.Empty;\n    private _errorMessage: string;\n\n    private _deleteStatus: DeleteTrainingPhraseStatus.DeleteStatusCase =\n      DeleteTrainingPhraseStatus.DeleteStatusCase.none;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of DeleteTrainingPhraseStatus to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<DeleteTrainingPhraseStatus.AsObject>\n    ) {\n      _value = _value || {};\n      this.successfullyDeleted = _value.successfullyDeleted\n        ? new googleProtobuf003.Empty(_value.successfullyDeleted)\n        : undefined;\n      this.errorMessage = _value.errorMessage;\n      DeleteTrainingPhraseStatus.refineValues(this);\n    }\n    get successfullyDeleted(): googleProtobuf003.Empty | undefined {\n      return this._successfullyDeleted;\n    }\n    set successfullyDeleted(value: googleProtobuf003.Empty | undefined) {\n      if (value !== undefined && value !== null) {\n        this._errorMessage = undefined;\n        this._deleteStatus =\n          DeleteTrainingPhraseStatus.DeleteStatusCase.successfullyDeleted;\n      }\n      this._successfullyDeleted = value;\n    }\n    get errorMessage(): string {\n      return this._errorMessage;\n    }\n    set errorMessage(value: string) {\n      if (value !== undefined && value !== null) {\n        this._successfullyDeleted = undefined;\n        this._deleteStatus =\n          DeleteTrainingPhraseStatus.DeleteStatusCase.errorMessage;\n      }\n      this._errorMessage = value;\n    }\n    get deleteStatus() {\n      return this._deleteStatus;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      DeleteTrainingPhraseStatus.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): DeleteTrainingPhraseStatus.AsObject {\n      return {\n        successfullyDeleted: this.successfullyDeleted\n          ? this.successfullyDeleted.toObject()\n          : undefined,\n        errorMessage: this.errorMessage\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): DeleteTrainingPhraseStatus.AsProtobufJSON {\n      return {\n        successfullyDeleted: this.successfullyDeleted\n          ? this.successfullyDeleted.toProtobufJSON(options)\n          : null,\n        errorMessage:\n          this.errorMessage === null || this.errorMessage === undefined\n            ? null\n            : this.errorMessage\n      };\n    }\n  }\n  export module DeleteTrainingPhraseStatus {\n    /**\n     * Standard JavaScript object representation for DeleteTrainingPhraseStatus\n     */\n    export interface AsObject {\n      successfullyDeleted?: googleProtobuf003.Empty.AsObject;\n      errorMessage: string;\n    }\n\n    /**\n     * Protobuf JSON representation for DeleteTrainingPhraseStatus\n     */\n    export interface AsProtobufJSON {\n      successfullyDeleted: googleProtobuf003.Empty.AsProtobufJSON | null;\n      errorMessage: string | null;\n    }\n    export enum DeleteStatusCase {\n      none = 0,\n      successfullyDeleted = 1,\n      errorMessage = 2\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListTrainingPhrasesRequest\n */\nexport class ListTrainingPhrasesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListTrainingPhrasesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListTrainingPhrasesRequest();\n    ListTrainingPhrasesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListTrainingPhrasesRequest) {\n    _instance.intentName = _instance.intentName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListTrainingPhrasesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intentName = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListTrainingPhrasesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListTrainingPhrasesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentName) {\n      _writer.writeString(1, _instance.intentName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n  }\n\n  private _intentName: string;\n  private _languageCode: string;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListTrainingPhrasesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListTrainingPhrasesRequest.AsObject>) {\n    _value = _value || {};\n    this.intentName = _value.intentName;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    ListTrainingPhrasesRequest.refineValues(this);\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListTrainingPhrasesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListTrainingPhrasesRequest.AsObject {\n    return {\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListTrainingPhrasesRequest.AsProtobufJSON {\n    return {\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListTrainingPhrasesRequest {\n  /**\n   * Standard JavaScript object representation for ListTrainingPhrasesRequest\n   */\n  export interface AsObject {\n    intentName: string;\n    languageCode: string;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListTrainingPhrasesRequest\n   */\n  export interface AsProtobufJSON {\n    intentName: string;\n    languageCode: string;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListTrainingPhrasesResponse\n */\nexport class ListTrainingPhrasesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListTrainingPhrasesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListTrainingPhrasesResponse();\n    ListTrainingPhrasesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListTrainingPhrasesResponse) {\n    _instance.trainingPhrases = _instance.trainingPhrases || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListTrainingPhrasesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent.TrainingPhrase();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.TrainingPhrase.deserializeBinaryFromReader\n          );\n          (_instance.trainingPhrases = _instance.trainingPhrases || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListTrainingPhrasesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListTrainingPhrasesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.trainingPhrases && _instance.trainingPhrases.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.trainingPhrases as any,\n        Intent.TrainingPhrase.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _trainingPhrases?: Intent.TrainingPhrase[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListTrainingPhrasesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListTrainingPhrasesResponse.AsObject>) {\n    _value = _value || {};\n    this.trainingPhrases = (_value.trainingPhrases || []).map(\n      m => new Intent.TrainingPhrase(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListTrainingPhrasesResponse.refineValues(this);\n  }\n  get trainingPhrases(): Intent.TrainingPhrase[] | undefined {\n    return this._trainingPhrases;\n  }\n  set trainingPhrases(value: Intent.TrainingPhrase[] | undefined) {\n    this._trainingPhrases = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListTrainingPhrasesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListTrainingPhrasesResponse.AsObject {\n    return {\n      trainingPhrases: (this.trainingPhrases || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListTrainingPhrasesResponse.AsProtobufJSON {\n    return {\n      trainingPhrases: (this.trainingPhrases || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListTrainingPhrasesResponse {\n  /**\n   * Standard JavaScript object representation for ListTrainingPhrasesResponse\n   */\n  export interface AsObject {\n    trainingPhrases?: Intent.TrainingPhrase.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListTrainingPhrasesResponse\n   */\n  export interface AsProtobufJSON {\n    trainingPhrases: Intent.TrainingPhrase.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchResponseMessagesStatusResponse\n */\nexport class BatchResponseMessagesStatusResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchResponseMessagesStatusResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchResponseMessagesStatusResponse();\n    BatchResponseMessagesStatusResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchResponseMessagesStatusResponse) {\n    _instance.responseMessageStatuses = _instance.responseMessageStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchResponseMessagesStatusResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchResponseMessagesStatusResponse.ResponseMessageStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchResponseMessagesStatusResponse.ResponseMessageStatus\n              .deserializeBinaryFromReader\n          );\n          (_instance.responseMessageStatuses =\n            _instance.responseMessageStatuses || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchResponseMessagesStatusResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchResponseMessagesStatusResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.responseMessageStatuses &&\n      _instance.responseMessageStatuses.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.responseMessageStatuses as any,\n        BatchResponseMessagesStatusResponse.ResponseMessageStatus\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _responseMessageStatuses?: BatchResponseMessagesStatusResponse.ResponseMessageStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchResponseMessagesStatusResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchResponseMessagesStatusResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.responseMessageStatuses = (_value.responseMessageStatuses || []).map(\n      m => new BatchResponseMessagesStatusResponse.ResponseMessageStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchResponseMessagesStatusResponse.refineValues(this);\n  }\n  get responseMessageStatuses():\n    | BatchResponseMessagesStatusResponse.ResponseMessageStatus[]\n    | undefined {\n    return this._responseMessageStatuses;\n  }\n  set responseMessageStatuses(\n    value:\n      | BatchResponseMessagesStatusResponse.ResponseMessageStatus[]\n      | undefined\n  ) {\n    this._responseMessageStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchResponseMessagesStatusResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchResponseMessagesStatusResponse.AsObject {\n    return {\n      responseMessageStatuses: (this.responseMessageStatuses || []).map(m =>\n        m.toObject()\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchResponseMessagesStatusResponse.AsProtobufJSON {\n    return {\n      responseMessageStatuses: (this.responseMessageStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchResponseMessagesStatusResponse {\n  /**\n   * Standard JavaScript object representation for BatchResponseMessagesStatusResponse\n   */\n  export interface AsObject {\n    responseMessageStatuses?: BatchResponseMessagesStatusResponse.ResponseMessageStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchResponseMessagesStatusResponse\n   */\n  export interface AsProtobufJSON {\n    responseMessageStatuses:\n      | BatchResponseMessagesStatusResponse.ResponseMessageStatus.AsProtobufJSON[]\n      | null;\n    hasErrors: boolean;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchResponseMessagesStatusResponse.ResponseMessageStatus\n   */\n  export class ResponseMessageStatus implements GrpcMessage {\n    static id =\n      'ondewo.nlu.BatchResponseMessagesStatusResponse.ResponseMessageStatus';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new ResponseMessageStatus();\n      ResponseMessageStatus.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: ResponseMessageStatus) {}\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: ResponseMessageStatus,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.responseMessage = new Intent.Message();\n            _reader.readMessage(\n              _instance.responseMessage,\n              Intent.Message.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            _instance.errorMessage = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      ResponseMessageStatus.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: ResponseMessageStatus,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.responseMessage) {\n        _writer.writeMessage(\n          1,\n          _instance.responseMessage as any,\n          Intent.Message.serializeBinaryToWriter\n        );\n      }\n      if (_instance.errorMessage || _instance.errorMessage === '') {\n        _writer.writeString(2, _instance.errorMessage);\n      }\n    }\n\n    private _responseMessage?: Intent.Message;\n    private _errorMessage: string;\n\n    private _phraseOrStatus: ResponseMessageStatus.PhraseOrStatusCase =\n      ResponseMessageStatus.PhraseOrStatusCase.none;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of ResponseMessageStatus to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<ResponseMessageStatus.AsObject>) {\n      _value = _value || {};\n      this.responseMessage = _value.responseMessage\n        ? new Intent.Message(_value.responseMessage)\n        : undefined;\n      this.errorMessage = _value.errorMessage;\n      ResponseMessageStatus.refineValues(this);\n    }\n    get responseMessage(): Intent.Message | undefined {\n      return this._responseMessage;\n    }\n    set responseMessage(value: Intent.Message | undefined) {\n      if (value !== undefined && value !== null) {\n        this._errorMessage = undefined;\n        this._phraseOrStatus =\n          ResponseMessageStatus.PhraseOrStatusCase.responseMessage;\n      }\n      this._responseMessage = value;\n    }\n    get errorMessage(): string {\n      return this._errorMessage;\n    }\n    set errorMessage(value: string) {\n      if (value !== undefined && value !== null) {\n        this._responseMessage = undefined;\n        this._phraseOrStatus =\n          ResponseMessageStatus.PhraseOrStatusCase.errorMessage;\n      }\n      this._errorMessage = value;\n    }\n    get phraseOrStatus() {\n      return this._phraseOrStatus;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      ResponseMessageStatus.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): ResponseMessageStatus.AsObject {\n      return {\n        responseMessage: this.responseMessage\n          ? this.responseMessage.toObject()\n          : undefined,\n        errorMessage: this.errorMessage\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): ResponseMessageStatus.AsProtobufJSON {\n      return {\n        responseMessage: this.responseMessage\n          ? this.responseMessage.toProtobufJSON(options)\n          : null,\n        errorMessage:\n          this.errorMessage === null || this.errorMessage === undefined\n            ? null\n            : this.errorMessage\n      };\n    }\n  }\n  export module ResponseMessageStatus {\n    /**\n     * Standard JavaScript object representation for ResponseMessageStatus\n     */\n    export interface AsObject {\n      responseMessage?: Intent.Message.AsObject;\n      errorMessage: string;\n    }\n\n    /**\n     * Protobuf JSON representation for ResponseMessageStatus\n     */\n    export interface AsProtobufJSON {\n      responseMessage: Intent.Message.AsProtobufJSON | null;\n      errorMessage: string | null;\n    }\n    export enum PhraseOrStatusCase {\n      none = 0,\n      responseMessage = 1,\n      errorMessage = 2\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchCreateResponseMessagesRequest\n */\nexport class BatchCreateResponseMessagesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchCreateResponseMessagesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchCreateResponseMessagesRequest();\n    BatchCreateResponseMessagesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchCreateResponseMessagesRequest) {\n    _instance.responseMessageRequests = _instance.responseMessageRequests || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchCreateResponseMessagesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchCreateResponseMessagesRequest.CreateResponseMessageRequest();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchCreateResponseMessagesRequest.CreateResponseMessageRequest\n              .deserializeBinaryFromReader\n          );\n          (_instance.responseMessageRequests =\n            _instance.responseMessageRequests || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchCreateResponseMessagesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchCreateResponseMessagesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.responseMessageRequests &&\n      _instance.responseMessageRequests.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.responseMessageRequests as any,\n        BatchCreateResponseMessagesRequest.CreateResponseMessageRequest\n          .serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _responseMessageRequests?: BatchCreateResponseMessagesRequest.CreateResponseMessageRequest[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchCreateResponseMessagesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchCreateResponseMessagesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.responseMessageRequests = (_value.responseMessageRequests || []).map(\n      m =>\n        new BatchCreateResponseMessagesRequest.CreateResponseMessageRequest(m)\n    );\n    BatchCreateResponseMessagesRequest.refineValues(this);\n  }\n  get responseMessageRequests():\n    | BatchCreateResponseMessagesRequest.CreateResponseMessageRequest[]\n    | undefined {\n    return this._responseMessageRequests;\n  }\n  set responseMessageRequests(\n    value:\n      | BatchCreateResponseMessagesRequest.CreateResponseMessageRequest[]\n      | undefined\n  ) {\n    this._responseMessageRequests = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchCreateResponseMessagesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchCreateResponseMessagesRequest.AsObject {\n    return {\n      responseMessageRequests: (this.responseMessageRequests || []).map(m =>\n        m.toObject()\n      )\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchCreateResponseMessagesRequest.AsProtobufJSON {\n    return {\n      responseMessageRequests: (this.responseMessageRequests || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module BatchCreateResponseMessagesRequest {\n  /**\n   * Standard JavaScript object representation for BatchCreateResponseMessagesRequest\n   */\n  export interface AsObject {\n    responseMessageRequests?: BatchCreateResponseMessagesRequest.CreateResponseMessageRequest.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchCreateResponseMessagesRequest\n   */\n  export interface AsProtobufJSON {\n    responseMessageRequests:\n      | BatchCreateResponseMessagesRequest.CreateResponseMessageRequest.AsProtobufJSON[]\n      | null;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchCreateResponseMessagesRequest.CreateResponseMessageRequest\n   */\n  export class CreateResponseMessageRequest implements GrpcMessage {\n    static id =\n      'ondewo.nlu.BatchCreateResponseMessagesRequest.CreateResponseMessageRequest';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new CreateResponseMessageRequest();\n      CreateResponseMessageRequest.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: CreateResponseMessageRequest) {\n      _instance.intentName = _instance.intentName || '';\n      _instance.responseMessage = _instance.responseMessage || undefined;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: CreateResponseMessageRequest,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.intentName = _reader.readString();\n            break;\n          case 2:\n            _instance.responseMessage = new Intent.Message();\n            _reader.readMessage(\n              _instance.responseMessage,\n              Intent.Message.deserializeBinaryFromReader\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      CreateResponseMessageRequest.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: CreateResponseMessageRequest,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.intentName) {\n        _writer.writeString(1, _instance.intentName);\n      }\n      if (_instance.responseMessage) {\n        _writer.writeMessage(\n          2,\n          _instance.responseMessage as any,\n          Intent.Message.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _intentName: string;\n    private _responseMessage?: Intent.Message;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of CreateResponseMessageRequest to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<CreateResponseMessageRequest.AsObject>\n    ) {\n      _value = _value || {};\n      this.intentName = _value.intentName;\n      this.responseMessage = _value.responseMessage\n        ? new Intent.Message(_value.responseMessage)\n        : undefined;\n      CreateResponseMessageRequest.refineValues(this);\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get responseMessage(): Intent.Message | undefined {\n      return this._responseMessage;\n    }\n    set responseMessage(value: Intent.Message | undefined) {\n      this._responseMessage = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      CreateResponseMessageRequest.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): CreateResponseMessageRequest.AsObject {\n      return {\n        intentName: this.intentName,\n        responseMessage: this.responseMessage\n          ? this.responseMessage.toObject()\n          : undefined\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): CreateResponseMessageRequest.AsProtobufJSON {\n      return {\n        intentName: this.intentName,\n        responseMessage: this.responseMessage\n          ? this.responseMessage.toProtobufJSON(options)\n          : null\n      };\n    }\n  }\n  export module CreateResponseMessageRequest {\n    /**\n     * Standard JavaScript object representation for CreateResponseMessageRequest\n     */\n    export interface AsObject {\n      intentName: string;\n      responseMessage?: Intent.Message.AsObject;\n    }\n\n    /**\n     * Protobuf JSON representation for CreateResponseMessageRequest\n     */\n    export interface AsProtobufJSON {\n      intentName: string;\n      responseMessage: Intent.Message.AsProtobufJSON | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateResponseMessagesRequest\n */\nexport class BatchUpdateResponseMessagesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateResponseMessagesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateResponseMessagesRequest();\n    BatchUpdateResponseMessagesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateResponseMessagesRequest) {\n    _instance.responseMessages = _instance.responseMessages || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateResponseMessagesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent.Message();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.Message.deserializeBinaryFromReader\n          );\n          (_instance.responseMessages = _instance.responseMessages || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateResponseMessagesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateResponseMessagesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.responseMessages && _instance.responseMessages.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.responseMessages as any,\n        Intent.Message.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _responseMessages?: Intent.Message[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateResponseMessagesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchUpdateResponseMessagesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.responseMessages = (_value.responseMessages || []).map(\n      m => new Intent.Message(m)\n    );\n    BatchUpdateResponseMessagesRequest.refineValues(this);\n  }\n  get responseMessages(): Intent.Message[] | undefined {\n    return this._responseMessages;\n  }\n  set responseMessages(value: Intent.Message[] | undefined) {\n    this._responseMessages = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateResponseMessagesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateResponseMessagesRequest.AsObject {\n    return {\n      responseMessages: (this.responseMessages || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateResponseMessagesRequest.AsProtobufJSON {\n    return {\n      responseMessages: (this.responseMessages || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module BatchUpdateResponseMessagesRequest {\n  /**\n   * Standard JavaScript object representation for BatchUpdateResponseMessagesRequest\n   */\n  export interface AsObject {\n    responseMessages?: Intent.Message.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateResponseMessagesRequest\n   */\n  export interface AsProtobufJSON {\n    responseMessages: Intent.Message.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchGetResponseMessagesRequest\n */\nexport class BatchGetResponseMessagesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchGetResponseMessagesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchGetResponseMessagesRequest();\n    BatchGetResponseMessagesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchGetResponseMessagesRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchGetResponseMessagesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchGetResponseMessagesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchGetResponseMessagesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchGetResponseMessagesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchGetResponseMessagesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchGetResponseMessagesRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchGetResponseMessagesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchGetResponseMessagesRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchGetResponseMessagesRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchGetResponseMessagesRequest {\n  /**\n   * Standard JavaScript object representation for BatchGetResponseMessagesRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchGetResponseMessagesRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteResponseMessagesRequest\n */\nexport class BatchDeleteResponseMessagesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteResponseMessagesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteResponseMessagesRequest();\n    BatchDeleteResponseMessagesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteResponseMessagesRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteResponseMessagesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteResponseMessagesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteResponseMessagesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteResponseMessagesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchDeleteResponseMessagesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchDeleteResponseMessagesRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteResponseMessagesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteResponseMessagesRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteResponseMessagesRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchDeleteResponseMessagesRequest {\n  /**\n   * Standard JavaScript object representation for BatchDeleteResponseMessagesRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteResponseMessagesRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteResponseMessagesResponse\n */\nexport class BatchDeleteResponseMessagesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteResponseMessagesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteResponseMessagesResponse();\n    BatchDeleteResponseMessagesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteResponseMessagesResponse) {\n    _instance.deleteStatuses = _instance.deleteStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteResponseMessagesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus\n              .deserializeBinaryFromReader\n          );\n          (_instance.deleteStatuses = _instance.deleteStatuses || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteResponseMessagesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteResponseMessagesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.deleteStatuses && _instance.deleteStatuses.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.deleteStatuses as any,\n        BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _deleteStatuses?: BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteResponseMessagesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchDeleteResponseMessagesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.deleteStatuses = (_value.deleteStatuses || []).map(\n      m =>\n        new BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchDeleteResponseMessagesResponse.refineValues(this);\n  }\n  get deleteStatuses():\n    | BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus[]\n    | undefined {\n    return this._deleteStatuses;\n  }\n  set deleteStatuses(\n    value:\n      | BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus[]\n      | undefined\n  ) {\n    this._deleteStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteResponseMessagesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteResponseMessagesResponse.AsObject {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m => m.toObject()),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteResponseMessagesResponse.AsProtobufJSON {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchDeleteResponseMessagesResponse {\n  /**\n   * Standard JavaScript object representation for BatchDeleteResponseMessagesResponse\n   */\n  export interface AsObject {\n    deleteStatuses?: BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteResponseMessagesResponse\n   */\n  export interface AsProtobufJSON {\n    deleteStatuses:\n      | BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus.AsProtobufJSON[]\n      | null;\n    hasErrors: boolean;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus\n   */\n  export class DeleteResponseMessageStatus implements GrpcMessage {\n    static id =\n      'ondewo.nlu.BatchDeleteResponseMessagesResponse.DeleteResponseMessageStatus';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new DeleteResponseMessageStatus();\n      DeleteResponseMessageStatus.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: DeleteResponseMessageStatus) {}\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: DeleteResponseMessageStatus,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.successfullyDeleted = new googleProtobuf003.Empty();\n            _reader.readMessage(\n              _instance.successfullyDeleted,\n              googleProtobuf003.Empty.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            _instance.errorMessage = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      DeleteResponseMessageStatus.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: DeleteResponseMessageStatus,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.successfullyDeleted) {\n        _writer.writeMessage(\n          1,\n          _instance.successfullyDeleted as any,\n          googleProtobuf003.Empty.serializeBinaryToWriter\n        );\n      }\n      if (_instance.errorMessage || _instance.errorMessage === '') {\n        _writer.writeString(2, _instance.errorMessage);\n      }\n    }\n\n    private _successfullyDeleted?: googleProtobuf003.Empty;\n    private _errorMessage: string;\n\n    private _deleteStatus: DeleteResponseMessageStatus.DeleteStatusCase =\n      DeleteResponseMessageStatus.DeleteStatusCase.none;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of DeleteResponseMessageStatus to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<DeleteResponseMessageStatus.AsObject>\n    ) {\n      _value = _value || {};\n      this.successfullyDeleted = _value.successfullyDeleted\n        ? new googleProtobuf003.Empty(_value.successfullyDeleted)\n        : undefined;\n      this.errorMessage = _value.errorMessage;\n      DeleteResponseMessageStatus.refineValues(this);\n    }\n    get successfullyDeleted(): googleProtobuf003.Empty | undefined {\n      return this._successfullyDeleted;\n    }\n    set successfullyDeleted(value: googleProtobuf003.Empty | undefined) {\n      if (value !== undefined && value !== null) {\n        this._errorMessage = undefined;\n        this._deleteStatus =\n          DeleteResponseMessageStatus.DeleteStatusCase.successfullyDeleted;\n      }\n      this._successfullyDeleted = value;\n    }\n    get errorMessage(): string {\n      return this._errorMessage;\n    }\n    set errorMessage(value: string) {\n      if (value !== undefined && value !== null) {\n        this._successfullyDeleted = undefined;\n        this._deleteStatus =\n          DeleteResponseMessageStatus.DeleteStatusCase.errorMessage;\n      }\n      this._errorMessage = value;\n    }\n    get deleteStatus() {\n      return this._deleteStatus;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      DeleteResponseMessageStatus.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): DeleteResponseMessageStatus.AsObject {\n      return {\n        successfullyDeleted: this.successfullyDeleted\n          ? this.successfullyDeleted.toObject()\n          : undefined,\n        errorMessage: this.errorMessage\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): DeleteResponseMessageStatus.AsProtobufJSON {\n      return {\n        successfullyDeleted: this.successfullyDeleted\n          ? this.successfullyDeleted.toProtobufJSON(options)\n          : null,\n        errorMessage:\n          this.errorMessage === null || this.errorMessage === undefined\n            ? null\n            : this.errorMessage\n      };\n    }\n  }\n  export module DeleteResponseMessageStatus {\n    /**\n     * Standard JavaScript object representation for DeleteResponseMessageStatus\n     */\n    export interface AsObject {\n      successfullyDeleted?: googleProtobuf003.Empty.AsObject;\n      errorMessage: string;\n    }\n\n    /**\n     * Protobuf JSON representation for DeleteResponseMessageStatus\n     */\n    export interface AsProtobufJSON {\n      successfullyDeleted: googleProtobuf003.Empty.AsProtobufJSON | null;\n      errorMessage: string | null;\n    }\n    export enum DeleteStatusCase {\n      none = 0,\n      successfullyDeleted = 1,\n      errorMessage = 2\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListResponseMessagesRequest\n */\nexport class ListResponseMessagesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListResponseMessagesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListResponseMessagesRequest();\n    ListResponseMessagesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListResponseMessagesRequest) {\n    _instance.intentName = _instance.intentName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListResponseMessagesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intentName = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListResponseMessagesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListResponseMessagesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentName) {\n      _writer.writeString(1, _instance.intentName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n  }\n\n  private _intentName: string;\n  private _languageCode: string;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListResponseMessagesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListResponseMessagesRequest.AsObject>) {\n    _value = _value || {};\n    this.intentName = _value.intentName;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    ListResponseMessagesRequest.refineValues(this);\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListResponseMessagesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListResponseMessagesRequest.AsObject {\n    return {\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListResponseMessagesRequest.AsProtobufJSON {\n    return {\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListResponseMessagesRequest {\n  /**\n   * Standard JavaScript object representation for ListResponseMessagesRequest\n   */\n  export interface AsObject {\n    intentName: string;\n    languageCode: string;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListResponseMessagesRequest\n   */\n  export interface AsProtobufJSON {\n    intentName: string;\n    languageCode: string;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListResponseMessagesResponse\n */\nexport class ListResponseMessagesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListResponseMessagesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListResponseMessagesResponse();\n    ListResponseMessagesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListResponseMessagesResponse) {\n    _instance.responseMessages = _instance.responseMessages || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListResponseMessagesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent.Message();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.Message.deserializeBinaryFromReader\n          );\n          (_instance.responseMessages = _instance.responseMessages || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListResponseMessagesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListResponseMessagesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.responseMessages && _instance.responseMessages.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.responseMessages as any,\n        Intent.Message.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _responseMessages?: Intent.Message[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListResponseMessagesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListResponseMessagesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.responseMessages = (_value.responseMessages || []).map(\n      m => new Intent.Message(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListResponseMessagesResponse.refineValues(this);\n  }\n  get responseMessages(): Intent.Message[] | undefined {\n    return this._responseMessages;\n  }\n  set responseMessages(value: Intent.Message[] | undefined) {\n    this._responseMessages = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListResponseMessagesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListResponseMessagesResponse.AsObject {\n    return {\n      responseMessages: (this.responseMessages || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListResponseMessagesResponse.AsProtobufJSON {\n    return {\n      responseMessages: (this.responseMessages || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListResponseMessagesResponse {\n  /**\n   * Standard JavaScript object representation for ListResponseMessagesResponse\n   */\n  export interface AsObject {\n    responseMessages?: Intent.Message.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListResponseMessagesResponse\n   */\n  export interface AsProtobufJSON {\n    responseMessages: Intent.Message.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchParametersStatusResponse\n */\nexport class BatchParametersStatusResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchParametersStatusResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchParametersStatusResponse();\n    BatchParametersStatusResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchParametersStatusResponse) {\n    _instance.parameterStatuses = _instance.parameterStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchParametersStatusResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchParametersStatusResponse.ParameterStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchParametersStatusResponse.ParameterStatus\n              .deserializeBinaryFromReader\n          );\n          (_instance.parameterStatuses =\n            _instance.parameterStatuses || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchParametersStatusResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchParametersStatusResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parameterStatuses && _instance.parameterStatuses.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.parameterStatuses as any,\n        BatchParametersStatusResponse.ParameterStatus.serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _parameterStatuses?: BatchParametersStatusResponse.ParameterStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchParametersStatusResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchParametersStatusResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.parameterStatuses = (_value.parameterStatuses || []).map(\n      m => new BatchParametersStatusResponse.ParameterStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchParametersStatusResponse.refineValues(this);\n  }\n  get parameterStatuses():\n    | BatchParametersStatusResponse.ParameterStatus[]\n    | undefined {\n    return this._parameterStatuses;\n  }\n  set parameterStatuses(\n    value: BatchParametersStatusResponse.ParameterStatus[] | undefined\n  ) {\n    this._parameterStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchParametersStatusResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchParametersStatusResponse.AsObject {\n    return {\n      parameterStatuses: (this.parameterStatuses || []).map(m => m.toObject()),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchParametersStatusResponse.AsProtobufJSON {\n    return {\n      parameterStatuses: (this.parameterStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchParametersStatusResponse {\n  /**\n   * Standard JavaScript object representation for BatchParametersStatusResponse\n   */\n  export interface AsObject {\n    parameterStatuses?: BatchParametersStatusResponse.ParameterStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchParametersStatusResponse\n   */\n  export interface AsProtobufJSON {\n    parameterStatuses:\n      | BatchParametersStatusResponse.ParameterStatus.AsProtobufJSON[]\n      | null;\n    hasErrors: boolean;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchParametersStatusResponse.ParameterStatus\n   */\n  export class ParameterStatus implements GrpcMessage {\n    static id = 'ondewo.nlu.BatchParametersStatusResponse.ParameterStatus';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new ParameterStatus();\n      ParameterStatus.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: ParameterStatus) {}\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: ParameterStatus,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.parameter = new Intent.Parameter();\n            _reader.readMessage(\n              _instance.parameter,\n              Intent.Parameter.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            _instance.errorMessage = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      ParameterStatus.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: ParameterStatus,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.parameter) {\n        _writer.writeMessage(\n          1,\n          _instance.parameter as any,\n          Intent.Parameter.serializeBinaryToWriter\n        );\n      }\n      if (_instance.errorMessage || _instance.errorMessage === '') {\n        _writer.writeString(2, _instance.errorMessage);\n      }\n    }\n\n    private _parameter?: Intent.Parameter;\n    private _errorMessage: string;\n\n    private _phraseOrStatus: ParameterStatus.PhraseOrStatusCase =\n      ParameterStatus.PhraseOrStatusCase.none;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of ParameterStatus to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<ParameterStatus.AsObject>) {\n      _value = _value || {};\n      this.parameter = _value.parameter\n        ? new Intent.Parameter(_value.parameter)\n        : undefined;\n      this.errorMessage = _value.errorMessage;\n      ParameterStatus.refineValues(this);\n    }\n    get parameter(): Intent.Parameter | undefined {\n      return this._parameter;\n    }\n    set parameter(value: Intent.Parameter | undefined) {\n      if (value !== undefined && value !== null) {\n        this._errorMessage = undefined;\n        this._phraseOrStatus = ParameterStatus.PhraseOrStatusCase.parameter;\n      }\n      this._parameter = value;\n    }\n    get errorMessage(): string {\n      return this._errorMessage;\n    }\n    set errorMessage(value: string) {\n      if (value !== undefined && value !== null) {\n        this._parameter = undefined;\n        this._phraseOrStatus = ParameterStatus.PhraseOrStatusCase.errorMessage;\n      }\n      this._errorMessage = value;\n    }\n    get phraseOrStatus() {\n      return this._phraseOrStatus;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      ParameterStatus.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): ParameterStatus.AsObject {\n      return {\n        parameter: this.parameter ? this.parameter.toObject() : undefined,\n        errorMessage: this.errorMessage\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): ParameterStatus.AsProtobufJSON {\n      return {\n        parameter: this.parameter\n          ? this.parameter.toProtobufJSON(options)\n          : null,\n        errorMessage:\n          this.errorMessage === null || this.errorMessage === undefined\n            ? null\n            : this.errorMessage\n      };\n    }\n  }\n  export module ParameterStatus {\n    /**\n     * Standard JavaScript object representation for ParameterStatus\n     */\n    export interface AsObject {\n      parameter?: Intent.Parameter.AsObject;\n      errorMessage: string;\n    }\n\n    /**\n     * Protobuf JSON representation for ParameterStatus\n     */\n    export interface AsProtobufJSON {\n      parameter: Intent.Parameter.AsProtobufJSON | null;\n      errorMessage: string | null;\n    }\n    export enum PhraseOrStatusCase {\n      none = 0,\n      parameter = 1,\n      errorMessage = 2\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchCreateParametersRequest\n */\nexport class BatchCreateParametersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchCreateParametersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchCreateParametersRequest();\n    BatchCreateParametersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchCreateParametersRequest) {\n    _instance.parameterRequests = _instance.parameterRequests || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchCreateParametersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchCreateParametersRequest.CreateParameterRequest();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchCreateParametersRequest.CreateParameterRequest\n              .deserializeBinaryFromReader\n          );\n          (_instance.parameterRequests =\n            _instance.parameterRequests || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchCreateParametersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchCreateParametersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parameterRequests && _instance.parameterRequests.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.parameterRequests as any,\n        BatchCreateParametersRequest.CreateParameterRequest\n          .serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parameterRequests?: BatchCreateParametersRequest.CreateParameterRequest[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchCreateParametersRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchCreateParametersRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parameterRequests = (_value.parameterRequests || []).map(\n      m => new BatchCreateParametersRequest.CreateParameterRequest(m)\n    );\n    BatchCreateParametersRequest.refineValues(this);\n  }\n  get parameterRequests():\n    | BatchCreateParametersRequest.CreateParameterRequest[]\n    | undefined {\n    return this._parameterRequests;\n  }\n  set parameterRequests(\n    value: BatchCreateParametersRequest.CreateParameterRequest[] | undefined\n  ) {\n    this._parameterRequests = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchCreateParametersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchCreateParametersRequest.AsObject {\n    return {\n      parameterRequests: (this.parameterRequests || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchCreateParametersRequest.AsProtobufJSON {\n    return {\n      parameterRequests: (this.parameterRequests || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module BatchCreateParametersRequest {\n  /**\n   * Standard JavaScript object representation for BatchCreateParametersRequest\n   */\n  export interface AsObject {\n    parameterRequests?: BatchCreateParametersRequest.CreateParameterRequest.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchCreateParametersRequest\n   */\n  export interface AsProtobufJSON {\n    parameterRequests:\n      | BatchCreateParametersRequest.CreateParameterRequest.AsProtobufJSON[]\n      | null;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchCreateParametersRequest.CreateParameterRequest\n   */\n  export class CreateParameterRequest implements GrpcMessage {\n    static id =\n      'ondewo.nlu.BatchCreateParametersRequest.CreateParameterRequest';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new CreateParameterRequest();\n      CreateParameterRequest.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: CreateParameterRequest) {\n      _instance.intentName = _instance.intentName || '';\n      _instance.parameter = _instance.parameter || undefined;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: CreateParameterRequest,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.intentName = _reader.readString();\n            break;\n          case 2:\n            _instance.parameter = new Intent.Parameter();\n            _reader.readMessage(\n              _instance.parameter,\n              Intent.Parameter.deserializeBinaryFromReader\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      CreateParameterRequest.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: CreateParameterRequest,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.intentName) {\n        _writer.writeString(1, _instance.intentName);\n      }\n      if (_instance.parameter) {\n        _writer.writeMessage(\n          2,\n          _instance.parameter as any,\n          Intent.Parameter.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _intentName: string;\n    private _parameter?: Intent.Parameter;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of CreateParameterRequest to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<CreateParameterRequest.AsObject>) {\n      _value = _value || {};\n      this.intentName = _value.intentName;\n      this.parameter = _value.parameter\n        ? new Intent.Parameter(_value.parameter)\n        : undefined;\n      CreateParameterRequest.refineValues(this);\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get parameter(): Intent.Parameter | undefined {\n      return this._parameter;\n    }\n    set parameter(value: Intent.Parameter | undefined) {\n      this._parameter = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      CreateParameterRequest.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): CreateParameterRequest.AsObject {\n      return {\n        intentName: this.intentName,\n        parameter: this.parameter ? this.parameter.toObject() : undefined\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): CreateParameterRequest.AsProtobufJSON {\n      return {\n        intentName: this.intentName,\n        parameter: this.parameter\n          ? this.parameter.toProtobufJSON(options)\n          : null\n      };\n    }\n  }\n  export module CreateParameterRequest {\n    /**\n     * Standard JavaScript object representation for CreateParameterRequest\n     */\n    export interface AsObject {\n      intentName: string;\n      parameter?: Intent.Parameter.AsObject;\n    }\n\n    /**\n     * Protobuf JSON representation for CreateParameterRequest\n     */\n    export interface AsProtobufJSON {\n      intentName: string;\n      parameter: Intent.Parameter.AsProtobufJSON | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateParametersRequest\n */\nexport class BatchUpdateParametersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateParametersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateParametersRequest();\n    BatchUpdateParametersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateParametersRequest) {\n    _instance.parameters = _instance.parameters || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateParametersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent.Parameter();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.Parameter.deserializeBinaryFromReader\n          );\n          (_instance.parameters = _instance.parameters || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateParametersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateParametersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parameters && _instance.parameters.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.parameters as any,\n        Intent.Parameter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parameters?: Intent.Parameter[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateParametersRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchUpdateParametersRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parameters = (_value.parameters || []).map(\n      m => new Intent.Parameter(m)\n    );\n    BatchUpdateParametersRequest.refineValues(this);\n  }\n  get parameters(): Intent.Parameter[] | undefined {\n    return this._parameters;\n  }\n  set parameters(value: Intent.Parameter[] | undefined) {\n    this._parameters = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateParametersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateParametersRequest.AsObject {\n    return {\n      parameters: (this.parameters || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateParametersRequest.AsProtobufJSON {\n    return {\n      parameters: (this.parameters || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module BatchUpdateParametersRequest {\n  /**\n   * Standard JavaScript object representation for BatchUpdateParametersRequest\n   */\n  export interface AsObject {\n    parameters?: Intent.Parameter.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateParametersRequest\n   */\n  export interface AsProtobufJSON {\n    parameters: Intent.Parameter.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchGetParametersRequest\n */\nexport class BatchGetParametersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchGetParametersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchGetParametersRequest();\n    BatchGetParametersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchGetParametersRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchGetParametersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchGetParametersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchGetParametersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchGetParametersRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchGetParametersRequest.AsObject>) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchGetParametersRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchGetParametersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchGetParametersRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchGetParametersRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchGetParametersRequest {\n  /**\n   * Standard JavaScript object representation for BatchGetParametersRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchGetParametersRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteParametersRequest\n */\nexport class BatchDeleteParametersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteParametersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteParametersRequest();\n    BatchDeleteParametersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteParametersRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteParametersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteParametersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteParametersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteParametersRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchDeleteParametersRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchDeleteParametersRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteParametersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteParametersRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteParametersRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchDeleteParametersRequest {\n  /**\n   * Standard JavaScript object representation for BatchDeleteParametersRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteParametersRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteParametersResponse\n */\nexport class BatchDeleteParametersResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteParametersResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteParametersResponse();\n    BatchDeleteParametersResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteParametersResponse) {\n    _instance.deleteStatuses = _instance.deleteStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteParametersResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new BatchDeleteParametersResponse.DeleteParameterStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            BatchDeleteParametersResponse.DeleteParameterStatus\n              .deserializeBinaryFromReader\n          );\n          (_instance.deleteStatuses = _instance.deleteStatuses || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteParametersResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteParametersResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.deleteStatuses && _instance.deleteStatuses.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.deleteStatuses as any,\n        BatchDeleteParametersResponse.DeleteParameterStatus\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _deleteStatuses?: BatchDeleteParametersResponse.DeleteParameterStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteParametersResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchDeleteParametersResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.deleteStatuses = (_value.deleteStatuses || []).map(\n      m => new BatchDeleteParametersResponse.DeleteParameterStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchDeleteParametersResponse.refineValues(this);\n  }\n  get deleteStatuses():\n    | BatchDeleteParametersResponse.DeleteParameterStatus[]\n    | undefined {\n    return this._deleteStatuses;\n  }\n  set deleteStatuses(\n    value: BatchDeleteParametersResponse.DeleteParameterStatus[] | undefined\n  ) {\n    this._deleteStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteParametersResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteParametersResponse.AsObject {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m => m.toObject()),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteParametersResponse.AsProtobufJSON {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchDeleteParametersResponse {\n  /**\n   * Standard JavaScript object representation for BatchDeleteParametersResponse\n   */\n  export interface AsObject {\n    deleteStatuses?: BatchDeleteParametersResponse.DeleteParameterStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteParametersResponse\n   */\n  export interface AsProtobufJSON {\n    deleteStatuses:\n      | BatchDeleteParametersResponse.DeleteParameterStatus.AsProtobufJSON[]\n      | null;\n    hasErrors: boolean;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.BatchDeleteParametersResponse.DeleteParameterStatus\n   */\n  export class DeleteParameterStatus implements GrpcMessage {\n    static id =\n      'ondewo.nlu.BatchDeleteParametersResponse.DeleteParameterStatus';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new DeleteParameterStatus();\n      DeleteParameterStatus.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: DeleteParameterStatus) {}\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: DeleteParameterStatus,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.successfullyDeleted = new googleProtobuf003.Empty();\n            _reader.readMessage(\n              _instance.successfullyDeleted,\n              googleProtobuf003.Empty.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            _instance.errorMessage = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      DeleteParameterStatus.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: DeleteParameterStatus,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.successfullyDeleted) {\n        _writer.writeMessage(\n          1,\n          _instance.successfullyDeleted as any,\n          googleProtobuf003.Empty.serializeBinaryToWriter\n        );\n      }\n      if (_instance.errorMessage || _instance.errorMessage === '') {\n        _writer.writeString(2, _instance.errorMessage);\n      }\n    }\n\n    private _successfullyDeleted?: googleProtobuf003.Empty;\n    private _errorMessage: string;\n\n    private _deleteStatus: DeleteParameterStatus.DeleteStatusCase =\n      DeleteParameterStatus.DeleteStatusCase.none;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of DeleteParameterStatus to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<DeleteParameterStatus.AsObject>) {\n      _value = _value || {};\n      this.successfullyDeleted = _value.successfullyDeleted\n        ? new googleProtobuf003.Empty(_value.successfullyDeleted)\n        : undefined;\n      this.errorMessage = _value.errorMessage;\n      DeleteParameterStatus.refineValues(this);\n    }\n    get successfullyDeleted(): googleProtobuf003.Empty | undefined {\n      return this._successfullyDeleted;\n    }\n    set successfullyDeleted(value: googleProtobuf003.Empty | undefined) {\n      if (value !== undefined && value !== null) {\n        this._errorMessage = undefined;\n        this._deleteStatus =\n          DeleteParameterStatus.DeleteStatusCase.successfullyDeleted;\n      }\n      this._successfullyDeleted = value;\n    }\n    get errorMessage(): string {\n      return this._errorMessage;\n    }\n    set errorMessage(value: string) {\n      if (value !== undefined && value !== null) {\n        this._successfullyDeleted = undefined;\n        this._deleteStatus =\n          DeleteParameterStatus.DeleteStatusCase.errorMessage;\n      }\n      this._errorMessage = value;\n    }\n    get deleteStatus() {\n      return this._deleteStatus;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      DeleteParameterStatus.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): DeleteParameterStatus.AsObject {\n      return {\n        successfullyDeleted: this.successfullyDeleted\n          ? this.successfullyDeleted.toObject()\n          : undefined,\n        errorMessage: this.errorMessage\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): DeleteParameterStatus.AsProtobufJSON {\n      return {\n        successfullyDeleted: this.successfullyDeleted\n          ? this.successfullyDeleted.toProtobufJSON(options)\n          : null,\n        errorMessage:\n          this.errorMessage === null || this.errorMessage === undefined\n            ? null\n            : this.errorMessage\n      };\n    }\n  }\n  export module DeleteParameterStatus {\n    /**\n     * Standard JavaScript object representation for DeleteParameterStatus\n     */\n    export interface AsObject {\n      successfullyDeleted?: googleProtobuf003.Empty.AsObject;\n      errorMessage: string;\n    }\n\n    /**\n     * Protobuf JSON representation for DeleteParameterStatus\n     */\n    export interface AsProtobufJSON {\n      successfullyDeleted: googleProtobuf003.Empty.AsProtobufJSON | null;\n      errorMessage: string | null;\n    }\n    export enum DeleteStatusCase {\n      none = 0,\n      successfullyDeleted = 1,\n      errorMessage = 2\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListParametersRequest\n */\nexport class ListParametersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListParametersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListParametersRequest();\n    ListParametersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListParametersRequest) {\n    _instance.intentName = _instance.intentName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListParametersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intentName = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListParametersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListParametersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentName) {\n      _writer.writeString(1, _instance.intentName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n  }\n\n  private _intentName: string;\n  private _languageCode: string;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListParametersRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListParametersRequest.AsObject>) {\n    _value = _value || {};\n    this.intentName = _value.intentName;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    ListParametersRequest.refineValues(this);\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListParametersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListParametersRequest.AsObject {\n    return {\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListParametersRequest.AsProtobufJSON {\n    return {\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListParametersRequest {\n  /**\n   * Standard JavaScript object representation for ListParametersRequest\n   */\n  export interface AsObject {\n    intentName: string;\n    languageCode: string;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListParametersRequest\n   */\n  export interface AsProtobufJSON {\n    intentName: string;\n    languageCode: string;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListParametersResponse\n */\nexport class ListParametersResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListParametersResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListParametersResponse();\n    ListParametersResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListParametersResponse) {\n    _instance.parameters = _instance.parameters || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListParametersResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Intent.Parameter();\n          _reader.readMessage(\n            messageInitializer1,\n            Intent.Parameter.deserializeBinaryFromReader\n          );\n          (_instance.parameters = _instance.parameters || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListParametersResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListParametersResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parameters && _instance.parameters.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.parameters as any,\n        Intent.Parameter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _parameters?: Intent.Parameter[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListParametersResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListParametersResponse.AsObject>) {\n    _value = _value || {};\n    this.parameters = (_value.parameters || []).map(\n      m => new Intent.Parameter(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListParametersResponse.refineValues(this);\n  }\n  get parameters(): Intent.Parameter[] | undefined {\n    return this._parameters;\n  }\n  set parameters(value: Intent.Parameter[] | undefined) {\n    this._parameters = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListParametersResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListParametersResponse.AsObject {\n    return {\n      parameters: (this.parameters || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListParametersResponse.AsProtobufJSON {\n    return {\n      parameters: (this.parameters || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListParametersResponse {\n  /**\n   * Standard JavaScript object representation for ListParametersResponse\n   */\n  export interface AsObject {\n    parameters?: Intent.Parameter.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListParametersResponse\n   */\n  export interface AsProtobufJSON {\n    parameters: Intent.Parameter.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListTrainingPhrasesofIntentsWithEnrichmentRequest\n */\nexport class ListTrainingPhrasesofIntentsWithEnrichmentRequest\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.ListTrainingPhrasesofIntentsWithEnrichmentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListTrainingPhrasesofIntentsWithEnrichmentRequest();\n    ListTrainingPhrasesofIntentsWithEnrichmentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: ListTrainingPhrasesofIntentsWithEnrichmentRequest\n  ) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentIds = _instance.intentIds || [];\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListTrainingPhrasesofIntentsWithEnrichmentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          (_instance.intentIds = _instance.intentIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListTrainingPhrasesofIntentsWithEnrichmentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListTrainingPhrasesofIntentsWithEnrichmentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.intentIds && _instance.intentIds.length) {\n      _writer.writeRepeatedString(3, _instance.intentIds);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentIds: string[];\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListTrainingPhrasesofIntentsWithEnrichmentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListTrainingPhrasesofIntentsWithEnrichmentRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentIds = (_value.intentIds || []).slice();\n    this.pageToken = _value.pageToken;\n    ListTrainingPhrasesofIntentsWithEnrichmentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentIds(): string[] {\n    return this._intentIds;\n  }\n  set intentIds(value: string[]) {\n    this._intentIds = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListTrainingPhrasesofIntentsWithEnrichmentRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListTrainingPhrasesofIntentsWithEnrichmentRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentIds: (this.intentIds || []).slice(),\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListTrainingPhrasesofIntentsWithEnrichmentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentIds: (this.intentIds || []).slice(),\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListTrainingPhrasesofIntentsWithEnrichmentRequest {\n  /**\n   * Standard JavaScript object representation for ListTrainingPhrasesofIntentsWithEnrichmentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentIds: string[];\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListTrainingPhrasesofIntentsWithEnrichmentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentIds: string[];\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListTrainingPhrasesofIntentsWithEnrichmentResponse\n */\nexport class ListTrainingPhrasesofIntentsWithEnrichmentResponse\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.ListTrainingPhrasesofIntentsWithEnrichmentResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListTrainingPhrasesofIntentsWithEnrichmentResponse();\n    ListTrainingPhrasesofIntentsWithEnrichmentResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: ListTrainingPhrasesofIntentsWithEnrichmentResponse\n  ) {\n    _instance.trainingPhrases = _instance.trainingPhrases || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListTrainingPhrasesofIntentsWithEnrichmentResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.trainingPhrases = _instance.trainingPhrases || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListTrainingPhrasesofIntentsWithEnrichmentResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListTrainingPhrasesofIntentsWithEnrichmentResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.trainingPhrases && _instance.trainingPhrases.length) {\n      _writer.writeRepeatedString(1, _instance.trainingPhrases);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _trainingPhrases: string[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListTrainingPhrasesofIntentsWithEnrichmentResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListTrainingPhrasesofIntentsWithEnrichmentResponse.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.trainingPhrases = (_value.trainingPhrases || []).slice();\n    this.nextPageToken = _value.nextPageToken;\n    ListTrainingPhrasesofIntentsWithEnrichmentResponse.refineValues(this);\n  }\n  get trainingPhrases(): string[] {\n    return this._trainingPhrases;\n  }\n  set trainingPhrases(value: string[]) {\n    this._trainingPhrases = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListTrainingPhrasesofIntentsWithEnrichmentResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListTrainingPhrasesofIntentsWithEnrichmentResponse.AsObject {\n    return {\n      trainingPhrases: (this.trainingPhrases || []).slice(),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListTrainingPhrasesofIntentsWithEnrichmentResponse.AsProtobufJSON {\n    return {\n      trainingPhrases: (this.trainingPhrases || []).slice(),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListTrainingPhrasesofIntentsWithEnrichmentResponse {\n  /**\n   * Standard JavaScript object representation for ListTrainingPhrasesofIntentsWithEnrichmentResponse\n   */\n  export interface AsObject {\n    trainingPhrases: string[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListTrainingPhrasesofIntentsWithEnrichmentResponse\n   */\n  export interface AsProtobufJSON {\n    trainingPhrases: string[];\n    nextPageToken: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions,\n  uint8ArrayToBase64\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu007 from '../../ondewo/nlu/project-role.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/common.pb';\nexport enum DefaultServerRole {\n  SERVER_UNSPECIFIED = 0,\n  SERVER_USER = 1,\n  SERVER_MANAGER = 2,\n  SERVER_ADMIN = 3,\n  SERVER_INACTIVE = 4\n}\n/**\n * Message implementation for ondewo.nlu.User\n */\nexport class User implements GrpcMessage {\n  static id = 'ondewo.nlu.User';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new User();\n    User.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: User) {\n    _instance.userId = _instance.userId || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.serverRoleId = _instance.serverRoleId || 0;\n    _instance.userEmail = _instance.userEmail || '';\n    _instance.userProfilePicture =\n      _instance.userProfilePicture || new Uint8Array();\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(_instance: User, _reader: BinaryReader) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 2:\n          _instance.userId = _reader.readString();\n          break;\n        case 3:\n          _instance.displayName = _reader.readString();\n          break;\n        case 6:\n          _instance.serverRoleId = _reader.readUint32();\n          break;\n        case 7:\n          _instance.userEmail = _reader.readString();\n          break;\n        case 8:\n          _instance.userProfilePicture = _reader.readBytes();\n          break;\n        case 9:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 12:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    User.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: User, _writer: BinaryWriter) {\n    if (_instance.userId) {\n      _writer.writeString(2, _instance.userId);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(3, _instance.displayName);\n    }\n    if (_instance.serverRoleId) {\n      _writer.writeUint32(6, _instance.serverRoleId);\n    }\n    if (_instance.userEmail) {\n      _writer.writeString(7, _instance.userEmail);\n    }\n    if (_instance.userProfilePicture && _instance.userProfilePicture.length) {\n      _writer.writeBytes(8, _instance.userProfilePicture);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        9,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(11, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(12, _instance.modifiedBy);\n    }\n  }\n\n  private _userId: string;\n  private _displayName: string;\n  private _serverRoleId: number;\n  private _userEmail: string;\n  private _userProfilePicture: Uint8Array;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of User to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<User.AsObject>) {\n    _value = _value || {};\n    this.userId = _value.userId;\n    this.displayName = _value.displayName;\n    this.serverRoleId = _value.serverRoleId;\n    this.userEmail = _value.userEmail;\n    this.userProfilePicture = _value.userProfilePicture;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    User.refineValues(this);\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get serverRoleId(): number {\n    return this._serverRoleId;\n  }\n  set serverRoleId(value: number) {\n    this._serverRoleId = value;\n  }\n  get userEmail(): string {\n    return this._userEmail;\n  }\n  set userEmail(value: string) {\n    this._userEmail = value;\n  }\n  get userProfilePicture(): Uint8Array {\n    return this._userProfilePicture;\n  }\n  set userProfilePicture(value: Uint8Array) {\n    this._userProfilePicture = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    User.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): User.AsObject {\n    return {\n      userId: this.userId,\n      displayName: this.displayName,\n      serverRoleId: this.serverRoleId,\n      userEmail: this.userEmail,\n      userProfilePicture: this.userProfilePicture\n        ? this.userProfilePicture.subarray(0)\n        : new Uint8Array(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): User.AsProtobufJSON {\n    return {\n      userId: this.userId,\n      displayName: this.displayName,\n      serverRoleId: this.serverRoleId,\n      userEmail: this.userEmail,\n      userProfilePicture: this.userProfilePicture\n        ? uint8ArrayToBase64(this.userProfilePicture)\n        : '',\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module User {\n  /**\n   * Standard JavaScript object representation for User\n   */\n  export interface AsObject {\n    userId: string;\n    displayName: string;\n    serverRoleId: number;\n    userEmail: string;\n    userProfilePicture: Uint8Array;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for User\n   */\n  export interface AsProtobufJSON {\n    userId: string;\n    displayName: string;\n    serverRoleId: number;\n    userEmail: string;\n    userProfilePicture: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UserInfo\n */\nexport class UserInfo implements GrpcMessage {\n  static id = 'ondewo.nlu.UserInfo';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UserInfo();\n    UserInfo.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UserInfo) {\n    _instance.user = _instance.user || undefined;\n    _instance.projectRoles = _instance.projectRoles || {};\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UserInfo,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.user = new User();\n          _reader.readMessage(_instance.user, User.deserializeBinaryFromReader);\n          break;\n        case 2:\n          const msg_2 = {} as any;\n          _reader.readMessage(\n            msg_2,\n            UserInfo.ProjectRolesEntry.deserializeBinaryFromReader\n          );\n          _instance.projectRoles = _instance.projectRoles || {};\n          _instance.projectRoles[msg_2.key] = msg_2.value;\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UserInfo.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: UserInfo, _writer: BinaryWriter) {\n    if (_instance.user) {\n      _writer.writeMessage(\n        1,\n        _instance.user as any,\n        User.serializeBinaryToWriter\n      );\n    }\n    if (!!_instance.projectRoles) {\n      const keys_2 = Object.keys(_instance.projectRoles as any);\n\n      if (keys_2.length) {\n        const repeated_2 = keys_2\n          .map(key => ({\n            key: key,\n            value: (_instance.projectRoles as any)[key]\n          }))\n          .reduce((r, v) => [...r, v], [] as any[]);\n\n        _writer.writeRepeatedMessage(\n          2,\n          repeated_2,\n          UserInfo.ProjectRolesEntry.serializeBinaryToWriter\n        );\n      }\n    }\n  }\n\n  private _user?: User;\n  private _projectRoles: { [prop: string]: ondewoNlu007.ProjectRole };\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UserInfo to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UserInfo.AsObject>) {\n    _value = _value || {};\n    this.user = _value.user ? new User(_value.user) : undefined;\n    (this.projectRoles = _value!.projectRoles\n      ? Object.keys(_value!.projectRoles).reduce(\n          (r, k) => ({\n            ...r,\n            [k]: _value!.projectRoles![k]\n              ? new ondewoNlu007.ProjectRole(_value!.projectRoles![k])\n              : undefined\n          }),\n          {}\n        )\n      : {}),\n      UserInfo.refineValues(this);\n  }\n  get user(): User | undefined {\n    return this._user;\n  }\n  set user(value: User | undefined) {\n    this._user = value;\n  }\n  get projectRoles(): { [prop: string]: ondewoNlu007.ProjectRole } {\n    return this._projectRoles;\n  }\n  set projectRoles(value: { [prop: string]: ondewoNlu007.ProjectRole }) {\n    this._projectRoles = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UserInfo.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UserInfo.AsObject {\n    return {\n      user: this.user ? this.user.toObject() : undefined,\n      projectRoles: this.projectRoles\n        ? Object.keys(this.projectRoles).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.projectRoles![k]\n                ? this.projectRoles![k].toObject()\n                : undefined\n            }),\n            {}\n          )\n        : {}\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UserInfo.AsProtobufJSON {\n    return {\n      user: this.user ? this.user.toProtobufJSON(options) : null,\n      projectRoles: this.projectRoles\n        ? Object.keys(this.projectRoles).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.projectRoles![k] ? this.projectRoles![k].toJSON() : null\n            }),\n            {}\n          )\n        : {}\n    };\n  }\n}\nexport module UserInfo {\n  /**\n   * Standard JavaScript object representation for UserInfo\n   */\n  export interface AsObject {\n    user?: User.AsObject;\n    projectRoles: { [prop: string]: ondewoNlu007.ProjectRole };\n  }\n\n  /**\n   * Protobuf JSON representation for UserInfo\n   */\n  export interface AsProtobufJSON {\n    user: User.AsProtobufJSON | null;\n    projectRoles: { [prop: string]: ondewoNlu007.ProjectRole };\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.UserInfo.ProjectRolesEntry\n   */\n  export class ProjectRolesEntry implements GrpcMessage {\n    static id = 'ondewo.nlu.UserInfo.ProjectRolesEntry';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new ProjectRolesEntry();\n      ProjectRolesEntry.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: ProjectRolesEntry) {\n      _instance.key = _instance.key || '';\n      _instance.value = _instance.value || undefined;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: ProjectRolesEntry,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.key = _reader.readString();\n            break;\n          case 2:\n            _instance.value = new ondewoNlu007.ProjectRole();\n            _reader.readMessage(\n              _instance.value,\n              ondewoNlu007.ProjectRole.deserializeBinaryFromReader\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      ProjectRolesEntry.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: ProjectRolesEntry,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.key) {\n        _writer.writeString(1, _instance.key);\n      }\n      if (_instance.value) {\n        _writer.writeMessage(\n          2,\n          _instance.value as any,\n          ondewoNlu007.ProjectRole.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _key: string;\n    private _value?: ondewoNlu007.ProjectRole;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of ProjectRolesEntry to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<ProjectRolesEntry.AsObject>) {\n      _value = _value || {};\n      this.key = _value.key;\n      this.value = _value.value\n        ? new ondewoNlu007.ProjectRole(_value.value)\n        : undefined;\n      ProjectRolesEntry.refineValues(this);\n    }\n    get key(): string {\n      return this._key;\n    }\n    set key(value: string) {\n      this._key = value;\n    }\n    get value(): ondewoNlu007.ProjectRole | undefined {\n      return this._value;\n    }\n    set value(value: ondewoNlu007.ProjectRole | undefined) {\n      this._value = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      ProjectRolesEntry.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): ProjectRolesEntry.AsObject {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toObject() : undefined\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): ProjectRolesEntry.AsProtobufJSON {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toProtobufJSON(options) : null\n      };\n    }\n  }\n  export module ProjectRolesEntry {\n    /**\n     * Standard JavaScript object representation for ProjectRolesEntry\n     */\n    export interface AsObject {\n      key: string;\n      value?: ondewoNlu007.ProjectRole.AsObject;\n    }\n\n    /**\n     * Protobuf JSON representation for ProjectRolesEntry\n     */\n    export interface AsProtobufJSON {\n      key: string;\n      value: ondewoNlu007.ProjectRole.AsProtobufJSON | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateUserRequest\n */\nexport class CreateUserRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateUserRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateUserRequest();\n    CreateUserRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateUserRequest) {\n    _instance.user = _instance.user || undefined;\n    _instance.password = _instance.password || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateUserRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.user = new User();\n          _reader.readMessage(_instance.user, User.deserializeBinaryFromReader);\n          break;\n        case 3:\n          _instance.password = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateUserRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateUserRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.user) {\n      _writer.writeMessage(\n        1,\n        _instance.user as any,\n        User.serializeBinaryToWriter\n      );\n    }\n    if (_instance.password) {\n      _writer.writeString(3, _instance.password);\n    }\n  }\n\n  private _user?: User;\n  private _password: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateUserRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateUserRequest.AsObject>) {\n    _value = _value || {};\n    this.user = _value.user ? new User(_value.user) : undefined;\n    this.password = _value.password;\n    CreateUserRequest.refineValues(this);\n  }\n  get user(): User | undefined {\n    return this._user;\n  }\n  set user(value: User | undefined) {\n    this._user = value;\n  }\n  get password(): string {\n    return this._password;\n  }\n  set password(value: string) {\n    this._password = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateUserRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateUserRequest.AsObject {\n    return {\n      user: this.user ? this.user.toObject() : undefined,\n      password: this.password\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateUserRequest.AsProtobufJSON {\n    return {\n      user: this.user ? this.user.toProtobufJSON(options) : null,\n      password: this.password\n    };\n  }\n}\nexport module CreateUserRequest {\n  /**\n   * Standard JavaScript object representation for CreateUserRequest\n   */\n  export interface AsObject {\n    user?: User.AsObject;\n    password: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateUserRequest\n   */\n  export interface AsProtobufJSON {\n    user: User.AsProtobufJSON | null;\n    password: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateUserRequest\n */\nexport class UpdateUserRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateUserRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateUserRequest();\n    UpdateUserRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateUserRequest) {\n    _instance.user = _instance.user || undefined;\n    _instance.password = _instance.password || '';\n    _instance.updateMask = _instance.updateMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateUserRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.user = new User();\n          _reader.readMessage(_instance.user, User.deserializeBinaryFromReader);\n          break;\n        case 4:\n          _instance.password = _reader.readString();\n          break;\n        case 5:\n          _instance.updateMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateUserRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateUserRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.user) {\n      _writer.writeMessage(\n        1,\n        _instance.user as any,\n        User.serializeBinaryToWriter\n      );\n    }\n    if (_instance.password) {\n      _writer.writeString(4, _instance.password);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        5,\n        _instance.updateMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _user?: User;\n  private _password: string;\n  private _updateMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateUserRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateUserRequest.AsObject>) {\n    _value = _value || {};\n    this.user = _value.user ? new User(_value.user) : undefined;\n    this.password = _value.password;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf004.FieldMask(_value.updateMask)\n      : undefined;\n    UpdateUserRequest.refineValues(this);\n  }\n  get user(): User | undefined {\n    return this._user;\n  }\n  set user(value: User | undefined) {\n    this._user = value;\n  }\n  get password(): string {\n    return this._password;\n  }\n  set password(value: string) {\n    this._password = value;\n  }\n  get updateMask(): googleProtobuf004.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateUserRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateUserRequest.AsObject {\n    return {\n      user: this.user ? this.user.toObject() : undefined,\n      password: this.password,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateUserRequest.AsProtobufJSON {\n    return {\n      user: this.user ? this.user.toProtobufJSON(options) : null,\n      password: this.password,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module UpdateUserRequest {\n  /**\n   * Standard JavaScript object representation for UpdateUserRequest\n   */\n  export interface AsObject {\n    user?: User.AsObject;\n    password: string;\n    updateMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateUserRequest\n   */\n  export interface AsProtobufJSON {\n    user: User.AsProtobufJSON | null;\n    password: string;\n    updateMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetUserRequest\n */\nexport class GetUserRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetUserRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetUserRequest();\n    GetUserRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetUserRequest) {\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetUserRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userId = _reader.readString();\n          break;\n        case 3:\n          _instance.userEmail = _reader.readString();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetUserRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetUserRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userId || _instance.userId === '') {\n      _writer.writeString(1, _instance.userId);\n    }\n    if (_instance.userEmail || _instance.userEmail === '') {\n      _writer.writeString(3, _instance.userEmail);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _userId: string;\n  private _userEmail: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  private _userIdentifier: GetUserRequest.UserIdentifierCase =\n    GetUserRequest.UserIdentifierCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetUserRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetUserRequest.AsObject>) {\n    _value = _value || {};\n    this.userId = _value.userId;\n    this.userEmail = _value.userEmail;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    GetUserRequest.refineValues(this);\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    if (value !== undefined && value !== null) {\n      this._userEmail = undefined;\n      this._userIdentifier = GetUserRequest.UserIdentifierCase.userId;\n    }\n    this._userId = value;\n  }\n  get userEmail(): string {\n    return this._userEmail;\n  }\n  set userEmail(value: string) {\n    if (value !== undefined && value !== null) {\n      this._userId = undefined;\n      this._userIdentifier = GetUserRequest.UserIdentifierCase.userEmail;\n    }\n    this._userEmail = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get userIdentifier() {\n    return this._userIdentifier;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetUserRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetUserRequest.AsObject {\n    return {\n      userId: this.userId,\n      userEmail: this.userEmail,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetUserRequest.AsProtobufJSON {\n    return {\n      userId:\n        this.userId === null || this.userId === undefined ? null : this.userId,\n      userEmail:\n        this.userEmail === null || this.userEmail === undefined\n          ? null\n          : this.userEmail,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetUserRequest {\n  /**\n   * Standard JavaScript object representation for GetUserRequest\n   */\n  export interface AsObject {\n    userId: string;\n    userEmail: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetUserRequest\n   */\n  export interface AsProtobufJSON {\n    userId: string | null;\n    userEmail: string | null;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n  export enum UserIdentifierCase {\n    none = 0,\n    userId = 1,\n    userEmail = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteUserRequest\n */\nexport class DeleteUserRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteUserRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteUserRequest();\n    DeleteUserRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteUserRequest) {\n    _instance.userId = _instance.userId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteUserRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteUserRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteUserRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userId) {\n      _writer.writeString(1, _instance.userId);\n    }\n  }\n\n  private _userId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteUserRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteUserRequest.AsObject>) {\n    _value = _value || {};\n    this.userId = _value.userId;\n    DeleteUserRequest.refineValues(this);\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteUserRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteUserRequest.AsObject {\n    return {\n      userId: this.userId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteUserRequest.AsProtobufJSON {\n    return {\n      userId: this.userId\n    };\n  }\n}\nexport module DeleteUserRequest {\n  /**\n   * Standard JavaScript object representation for DeleteUserRequest\n   */\n  export interface AsObject {\n    userId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteUserRequest\n   */\n  export interface AsProtobufJSON {\n    userId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUsersRequest\n */\nexport class ListUsersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUsersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUsersRequest();\n    ListUsersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUsersRequest) {\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUsersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUsersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUsersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.pageToken) {\n      _writer.writeString(1, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUsersRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUsersRequest.AsObject>) {\n    _value = _value || {};\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    ListUsersRequest.refineValues(this);\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUsersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUsersRequest.AsObject {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUsersRequest.AsProtobufJSON {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListUsersRequest {\n  /**\n   * Standard JavaScript object representation for ListUsersRequest\n   */\n  export interface AsObject {\n    pageToken: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUsersRequest\n   */\n  export interface AsProtobufJSON {\n    pageToken: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUsersResponse\n */\nexport class ListUsersResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUsersResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUsersResponse();\n    ListUsersResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUsersResponse) {\n    _instance.users = _instance.users || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUsersResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new User();\n          _reader.readMessage(\n            messageInitializer1,\n            User.deserializeBinaryFromReader\n          );\n          (_instance.users = _instance.users || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUsersResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUsersResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.users && _instance.users.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.users as any,\n        User.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _users?: User[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUsersResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUsersResponse.AsObject>) {\n    _value = _value || {};\n    this.users = (_value.users || []).map(m => new User(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListUsersResponse.refineValues(this);\n  }\n  get users(): User[] | undefined {\n    return this._users;\n  }\n  set users(value: User[] | undefined) {\n    this._users = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUsersResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUsersResponse.AsObject {\n    return {\n      users: (this.users || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUsersResponse.AsProtobufJSON {\n    return {\n      users: (this.users || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListUsersResponse {\n  /**\n   * Standard JavaScript object representation for ListUsersResponse\n   */\n  export interface AsObject {\n    users?: User.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUsersResponse\n   */\n  export interface AsProtobufJSON {\n    users: User.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUserInfosResponse\n */\nexport class ListUserInfosResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUserInfosResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUserInfosResponse();\n    ListUserInfosResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUserInfosResponse) {\n    _instance.users = _instance.users || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUserInfosResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new UserInfo();\n          _reader.readMessage(\n            messageInitializer1,\n            UserInfo.deserializeBinaryFromReader\n          );\n          (_instance.users = _instance.users || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUserInfosResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUserInfosResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.users && _instance.users.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.users as any,\n        UserInfo.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _users?: UserInfo[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUserInfosResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUserInfosResponse.AsObject>) {\n    _value = _value || {};\n    this.users = (_value.users || []).map(m => new UserInfo(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListUserInfosResponse.refineValues(this);\n  }\n  get users(): UserInfo[] | undefined {\n    return this._users;\n  }\n  set users(value: UserInfo[] | undefined) {\n    this._users = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUserInfosResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUserInfosResponse.AsObject {\n    return {\n      users: (this.users || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUserInfosResponse.AsProtobufJSON {\n    return {\n      users: (this.users || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListUserInfosResponse {\n  /**\n   * Standard JavaScript object representation for ListUserInfosResponse\n   */\n  export interface AsObject {\n    users?: UserInfo.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUserInfosResponse\n   */\n  export interface AsProtobufJSON {\n    users: UserInfo.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ServerRole\n */\nexport class ServerRole implements GrpcMessage {\n  static id = 'ondewo.nlu.ServerRole';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ServerRole();\n    ServerRole.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ServerRole) {\n    _instance.roleId = _instance.roleId || 0;\n    _instance.name = _instance.name || '';\n    _instance.permissions = _instance.permissions || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ServerRole,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.roleId = _reader.readUint32();\n          break;\n        case 2:\n          _instance.name = _reader.readString();\n          break;\n        case 3:\n          (_instance.permissions = _instance.permissions || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ServerRole.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: ServerRole, _writer: BinaryWriter) {\n    if (_instance.roleId) {\n      _writer.writeUint32(1, _instance.roleId);\n    }\n    if (_instance.name) {\n      _writer.writeString(2, _instance.name);\n    }\n    if (_instance.permissions && _instance.permissions.length) {\n      _writer.writeRepeatedString(3, _instance.permissions);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        4,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        5,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(7, _instance.modifiedBy);\n    }\n  }\n\n  private _roleId: number;\n  private _name: string;\n  private _permissions: string[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ServerRole to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ServerRole.AsObject>) {\n    _value = _value || {};\n    this.roleId = _value.roleId;\n    this.name = _value.name;\n    this.permissions = (_value.permissions || []).slice();\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    ServerRole.refineValues(this);\n  }\n  get roleId(): number {\n    return this._roleId;\n  }\n  set roleId(value: number) {\n    this._roleId = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get permissions(): string[] {\n    return this._permissions;\n  }\n  set permissions(value: string[]) {\n    this._permissions = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ServerRole.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ServerRole.AsObject {\n    return {\n      roleId: this.roleId,\n      name: this.name,\n      permissions: (this.permissions || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ServerRole.AsProtobufJSON {\n    return {\n      roleId: this.roleId,\n      name: this.name,\n      permissions: (this.permissions || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module ServerRole {\n  /**\n   * Standard JavaScript object representation for ServerRole\n   */\n  export interface AsObject {\n    roleId: number;\n    name: string;\n    permissions: string[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ServerRole\n   */\n  export interface AsProtobufJSON {\n    roleId: number;\n    name: string;\n    permissions: string[];\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateServerRoleRequest\n */\nexport class CreateServerRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateServerRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateServerRoleRequest();\n    CreateServerRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateServerRoleRequest) {\n    _instance.role = _instance.role || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateServerRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.role = new ServerRole();\n          _reader.readMessage(\n            _instance.role,\n            ServerRole.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateServerRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateServerRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.role) {\n      _writer.writeMessage(\n        1,\n        _instance.role as any,\n        ServerRole.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _role?: ServerRole;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateServerRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateServerRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.role = _value.role ? new ServerRole(_value.role) : undefined;\n    CreateServerRoleRequest.refineValues(this);\n  }\n  get role(): ServerRole | undefined {\n    return this._role;\n  }\n  set role(value: ServerRole | undefined) {\n    this._role = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateServerRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateServerRoleRequest.AsObject {\n    return {\n      role: this.role ? this.role.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateServerRoleRequest.AsProtobufJSON {\n    return {\n      role: this.role ? this.role.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module CreateServerRoleRequest {\n  /**\n   * Standard JavaScript object representation for CreateServerRoleRequest\n   */\n  export interface AsObject {\n    role?: ServerRole.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateServerRoleRequest\n   */\n  export interface AsProtobufJSON {\n    role: ServerRole.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateServerRoleRequest\n */\nexport class UpdateServerRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateServerRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateServerRoleRequest();\n    UpdateServerRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateServerRoleRequest) {\n    _instance.role = _instance.role || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateServerRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.role = new ServerRole();\n          _reader.readMessage(\n            _instance.role,\n            ServerRole.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateServerRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateServerRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.role) {\n      _writer.writeMessage(\n        1,\n        _instance.role as any,\n        ServerRole.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _role?: ServerRole;\n  private _updateMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateServerRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateServerRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.role = _value.role ? new ServerRole(_value.role) : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf004.FieldMask(_value.updateMask)\n      : undefined;\n    UpdateServerRoleRequest.refineValues(this);\n  }\n  get role(): ServerRole | undefined {\n    return this._role;\n  }\n  set role(value: ServerRole | undefined) {\n    this._role = value;\n  }\n  get updateMask(): googleProtobuf004.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateServerRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateServerRoleRequest.AsObject {\n    return {\n      role: this.role ? this.role.toObject() : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateServerRoleRequest.AsProtobufJSON {\n    return {\n      role: this.role ? this.role.toProtobufJSON(options) : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module UpdateServerRoleRequest {\n  /**\n   * Standard JavaScript object representation for UpdateServerRoleRequest\n   */\n  export interface AsObject {\n    role?: ServerRole.AsObject;\n    updateMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateServerRoleRequest\n   */\n  export interface AsProtobufJSON {\n    role: ServerRole.AsProtobufJSON | null;\n    updateMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteServerRoleRequest\n */\nexport class DeleteServerRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteServerRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteServerRoleRequest();\n    DeleteServerRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteServerRoleRequest) {\n    _instance.roleId = _instance.roleId || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteServerRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.roleId = _reader.readUint32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteServerRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteServerRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.roleId) {\n      _writer.writeUint32(1, _instance.roleId);\n    }\n  }\n\n  private _roleId: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteServerRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteServerRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.roleId = _value.roleId;\n    DeleteServerRoleRequest.refineValues(this);\n  }\n  get roleId(): number {\n    return this._roleId;\n  }\n  set roleId(value: number) {\n    this._roleId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteServerRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteServerRoleRequest.AsObject {\n    return {\n      roleId: this.roleId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteServerRoleRequest.AsProtobufJSON {\n    return {\n      roleId: this.roleId\n    };\n  }\n}\nexport module DeleteServerRoleRequest {\n  /**\n   * Standard JavaScript object representation for DeleteServerRoleRequest\n   */\n  export interface AsObject {\n    roleId: number;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteServerRoleRequest\n   */\n  export interface AsProtobufJSON {\n    roleId: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetServerRoleRequest\n */\nexport class GetServerRoleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetServerRoleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetServerRoleRequest();\n    GetServerRoleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetServerRoleRequest) {\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetServerRoleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.roleId = _reader.readUint32();\n          break;\n        case 2:\n          _instance.roleName = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetServerRoleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetServerRoleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.roleId || _instance.roleId === 0) {\n      _writer.writeUint32(1, _instance.roleId);\n    }\n    if (_instance.roleName || _instance.roleName === '') {\n      _writer.writeString(2, _instance.roleName);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _roleId: number;\n  private _roleName: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  private _serverRoleIdentifier: GetServerRoleRequest.ServerRoleIdentifierCase =\n    GetServerRoleRequest.ServerRoleIdentifierCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetServerRoleRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetServerRoleRequest.AsObject>) {\n    _value = _value || {};\n    this.roleId = _value.roleId;\n    this.roleName = _value.roleName;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    GetServerRoleRequest.refineValues(this);\n  }\n  get roleId(): number {\n    return this._roleId;\n  }\n  set roleId(value: number) {\n    if (value !== undefined && value !== null) {\n      this._roleName = undefined;\n      this._serverRoleIdentifier =\n        GetServerRoleRequest.ServerRoleIdentifierCase.roleId;\n    }\n    this._roleId = value;\n  }\n  get roleName(): string {\n    return this._roleName;\n  }\n  set roleName(value: string) {\n    if (value !== undefined && value !== null) {\n      this._roleId = undefined;\n      this._serverRoleIdentifier =\n        GetServerRoleRequest.ServerRoleIdentifierCase.roleName;\n    }\n    this._roleName = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get serverRoleIdentifier() {\n    return this._serverRoleIdentifier;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetServerRoleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetServerRoleRequest.AsObject {\n    return {\n      roleId: this.roleId,\n      roleName: this.roleName,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetServerRoleRequest.AsProtobufJSON {\n    return {\n      roleId:\n        this.roleId === null || this.roleId === undefined ? null : this.roleId,\n      roleName:\n        this.roleName === null || this.roleName === undefined\n          ? null\n          : this.roleName,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetServerRoleRequest {\n  /**\n   * Standard JavaScript object representation for GetServerRoleRequest\n   */\n  export interface AsObject {\n    roleId: number;\n    roleName: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetServerRoleRequest\n   */\n  export interface AsProtobufJSON {\n    roleId: number | null;\n    roleName: string | null;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n  export enum ServerRoleIdentifierCase {\n    none = 0,\n    roleId = 1,\n    roleName = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListServerRolesRequest\n */\nexport class ListServerRolesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListServerRolesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListServerRolesRequest();\n    ListServerRolesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListServerRolesRequest) {\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListServerRolesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListServerRolesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListServerRolesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.pageToken) {\n      _writer.writeString(1, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListServerRolesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListServerRolesRequest.AsObject>) {\n    _value = _value || {};\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    ListServerRolesRequest.refineValues(this);\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListServerRolesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListServerRolesRequest.AsObject {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListServerRolesRequest.AsProtobufJSON {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListServerRolesRequest {\n  /**\n   * Standard JavaScript object representation for ListServerRolesRequest\n   */\n  export interface AsObject {\n    pageToken: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListServerRolesRequest\n   */\n  export interface AsProtobufJSON {\n    pageToken: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListServerRolesResponse\n */\nexport class ListServerRolesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListServerRolesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListServerRolesResponse();\n    ListServerRolesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListServerRolesResponse) {\n    _instance.serverRoles = _instance.serverRoles || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListServerRolesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ServerRole();\n          _reader.readMessage(\n            messageInitializer1,\n            ServerRole.deserializeBinaryFromReader\n          );\n          (_instance.serverRoles = _instance.serverRoles || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListServerRolesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListServerRolesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.serverRoles && _instance.serverRoles.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.serverRoles as any,\n        ServerRole.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _serverRoles?: ServerRole[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListServerRolesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListServerRolesResponse.AsObject>) {\n    _value = _value || {};\n    this.serverRoles = (_value.serverRoles || []).map(m => new ServerRole(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListServerRolesResponse.refineValues(this);\n  }\n  get serverRoles(): ServerRole[] | undefined {\n    return this._serverRoles;\n  }\n  set serverRoles(value: ServerRole[] | undefined) {\n    this._serverRoles = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListServerRolesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListServerRolesResponse.AsObject {\n    return {\n      serverRoles: (this.serverRoles || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListServerRolesResponse.AsProtobufJSON {\n    return {\n      serverRoles: (this.serverRoles || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListServerRolesResponse {\n  /**\n   * Standard JavaScript object representation for ListServerRolesResponse\n   */\n  export interface AsObject {\n    serverRoles?: ServerRole.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListServerRolesResponse\n   */\n  export interface AsProtobufJSON {\n    serverRoles: ServerRole.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListServerPermissionsRequest\n */\nexport class ListServerPermissionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListServerPermissionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListServerPermissionsRequest();\n    ListServerPermissionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListServerPermissionsRequest) {\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListServerPermissionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListServerPermissionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListServerPermissionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.pageToken) {\n      _writer.writeString(1, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListServerPermissionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListServerPermissionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    ListServerPermissionsRequest.refineValues(this);\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListServerPermissionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListServerPermissionsRequest.AsObject {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListServerPermissionsRequest.AsProtobufJSON {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListServerPermissionsRequest {\n  /**\n   * Standard JavaScript object representation for ListServerPermissionsRequest\n   */\n  export interface AsObject {\n    pageToken: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListServerPermissionsRequest\n   */\n  export interface AsProtobufJSON {\n    pageToken: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListServerPermissionsResponse\n */\nexport class ListServerPermissionsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListServerPermissionsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListServerPermissionsResponse();\n    ListServerPermissionsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListServerPermissionsResponse) {\n    _instance.permissions = _instance.permissions || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListServerPermissionsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.permissions = _instance.permissions || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListServerPermissionsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListServerPermissionsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.permissions && _instance.permissions.length) {\n      _writer.writeRepeatedString(1, _instance.permissions);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _permissions: string[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListServerPermissionsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListServerPermissionsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.permissions = (_value.permissions || []).slice();\n    this.nextPageToken = _value.nextPageToken;\n    ListServerPermissionsResponse.refineValues(this);\n  }\n  get permissions(): string[] {\n    return this._permissions;\n  }\n  set permissions(value: string[]) {\n    this._permissions = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListServerPermissionsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListServerPermissionsResponse.AsObject {\n    return {\n      permissions: (this.permissions || []).slice(),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListServerPermissionsResponse.AsProtobufJSON {\n    return {\n      permissions: (this.permissions || []).slice(),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListServerPermissionsResponse {\n  /**\n   * Standard JavaScript object representation for ListServerPermissionsResponse\n   */\n  export interface AsObject {\n    permissions: string[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListServerPermissionsResponse\n   */\n  export interface AsProtobufJSON {\n    permissions: string[];\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetUserPreferencesRequest\n */\nexport class GetUserPreferencesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetUserPreferencesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetUserPreferencesRequest();\n    GetUserPreferencesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetUserPreferencesRequest) {\n    _instance.userName = _instance.userName || '';\n    _instance.keys = _instance.keys || [];\n    _instance.regexInclude = _instance.regexInclude || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetUserPreferencesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          (_instance.keys = _instance.keys || []).push(_reader.readString());\n          break;\n        case 3:\n          _instance.regexInclude = _reader.readString();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetUserPreferencesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetUserPreferencesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.keys && _instance.keys.length) {\n      _writer.writeRepeatedString(2, _instance.keys);\n    }\n    if (_instance.regexInclude) {\n      _writer.writeString(3, _instance.regexInclude);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _userName: string;\n  private _keys: string[];\n  private _regexInclude: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetUserPreferencesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetUserPreferencesRequest.AsObject>) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.keys = (_value.keys || []).slice();\n    this.regexInclude = _value.regexInclude;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    GetUserPreferencesRequest.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get keys(): string[] {\n    return this._keys;\n  }\n  set keys(value: string[]) {\n    this._keys = value;\n  }\n  get regexInclude(): string {\n    return this._regexInclude;\n  }\n  set regexInclude(value: string) {\n    this._regexInclude = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetUserPreferencesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetUserPreferencesRequest.AsObject {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      regexInclude: this.regexInclude,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetUserPreferencesRequest.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      regexInclude: this.regexInclude,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetUserPreferencesRequest {\n  /**\n   * Standard JavaScript object representation for GetUserPreferencesRequest\n   */\n  export interface AsObject {\n    userName: string;\n    keys: string[];\n    regexInclude: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetUserPreferencesRequest\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    keys: string[];\n    regexInclude: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetUserPreferencesResponse\n */\nexport class GetUserPreferencesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetUserPreferencesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetUserPreferencesResponse();\n    GetUserPreferencesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetUserPreferencesResponse) {\n    _instance.userName = _instance.userName || '';\n    _instance.keyValuePairs = _instance.keyValuePairs || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetUserPreferencesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu008.KeyValuePair();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu008.KeyValuePair.deserializeBinaryFromReader\n          );\n          (_instance.keyValuePairs = _instance.keyValuePairs || []).push(\n            messageInitializer2\n          );\n          break;\n        case 3:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetUserPreferencesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetUserPreferencesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.keyValuePairs && _instance.keyValuePairs.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.keyValuePairs as any,\n        ondewoNlu008.KeyValuePair.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(3, _instance.errorMessage);\n    }\n  }\n\n  private _userName: string;\n  private _keyValuePairs?: ondewoNlu008.KeyValuePair[];\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetUserPreferencesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetUserPreferencesResponse.AsObject>) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.keyValuePairs = (_value.keyValuePairs || []).map(\n      m => new ondewoNlu008.KeyValuePair(m)\n    );\n    this.errorMessage = _value.errorMessage;\n    GetUserPreferencesResponse.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get keyValuePairs(): ondewoNlu008.KeyValuePair[] | undefined {\n    return this._keyValuePairs;\n  }\n  set keyValuePairs(value: ondewoNlu008.KeyValuePair[] | undefined) {\n    this._keyValuePairs = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetUserPreferencesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetUserPreferencesResponse.AsObject {\n    return {\n      userName: this.userName,\n      keyValuePairs: (this.keyValuePairs || []).map(m => m.toObject()),\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetUserPreferencesResponse.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      keyValuePairs: (this.keyValuePairs || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module GetUserPreferencesResponse {\n  /**\n   * Standard JavaScript object representation for GetUserPreferencesResponse\n   */\n  export interface AsObject {\n    userName: string;\n    keyValuePairs?: ondewoNlu008.KeyValuePair.AsObject[];\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetUserPreferencesResponse\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    keyValuePairs: ondewoNlu008.KeyValuePair.AsProtobufJSON[] | null;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SetUserPreferencesRequest\n */\nexport class SetUserPreferencesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.SetUserPreferencesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SetUserPreferencesRequest();\n    SetUserPreferencesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SetUserPreferencesRequest) {\n    _instance.userName = _instance.userName || '';\n    _instance.keyValuePairs = _instance.keyValuePairs || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SetUserPreferencesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu008.KeyValuePair();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu008.KeyValuePair.deserializeBinaryFromReader\n          );\n          (_instance.keyValuePairs = _instance.keyValuePairs || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SetUserPreferencesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SetUserPreferencesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.keyValuePairs && _instance.keyValuePairs.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.keyValuePairs as any,\n        ondewoNlu008.KeyValuePair.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _userName: string;\n  private _keyValuePairs?: ondewoNlu008.KeyValuePair[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SetUserPreferencesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SetUserPreferencesRequest.AsObject>) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.keyValuePairs = (_value.keyValuePairs || []).map(\n      m => new ondewoNlu008.KeyValuePair(m)\n    );\n    SetUserPreferencesRequest.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get keyValuePairs(): ondewoNlu008.KeyValuePair[] | undefined {\n    return this._keyValuePairs;\n  }\n  set keyValuePairs(value: ondewoNlu008.KeyValuePair[] | undefined) {\n    this._keyValuePairs = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SetUserPreferencesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SetUserPreferencesRequest.AsObject {\n    return {\n      userName: this.userName,\n      keyValuePairs: (this.keyValuePairs || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SetUserPreferencesRequest.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      keyValuePairs: (this.keyValuePairs || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module SetUserPreferencesRequest {\n  /**\n   * Standard JavaScript object representation for SetUserPreferencesRequest\n   */\n  export interface AsObject {\n    userName: string;\n    keyValuePairs?: ondewoNlu008.KeyValuePair.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for SetUserPreferencesRequest\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    keyValuePairs: ondewoNlu008.KeyValuePair.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SetUserPreferencesResponse\n */\nexport class SetUserPreferencesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.SetUserPreferencesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SetUserPreferencesResponse();\n    SetUserPreferencesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SetUserPreferencesResponse) {\n    _instance.userName = _instance.userName || '';\n    _instance.keys = _instance.keys || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SetUserPreferencesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          (_instance.keys = _instance.keys || []).push(_reader.readString());\n          break;\n        case 3:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SetUserPreferencesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SetUserPreferencesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.keys && _instance.keys.length) {\n      _writer.writeRepeatedString(2, _instance.keys);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(3, _instance.errorMessage);\n    }\n  }\n\n  private _userName: string;\n  private _keys: string[];\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SetUserPreferencesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SetUserPreferencesResponse.AsObject>) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.keys = (_value.keys || []).slice();\n    this.errorMessage = _value.errorMessage;\n    SetUserPreferencesResponse.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get keys(): string[] {\n    return this._keys;\n  }\n  set keys(value: string[]) {\n    this._keys = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SetUserPreferencesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SetUserPreferencesResponse.AsObject {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SetUserPreferencesResponse.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module SetUserPreferencesResponse {\n  /**\n   * Standard JavaScript object representation for SetUserPreferencesResponse\n   */\n  export interface AsObject {\n    userName: string;\n    keys: string[];\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for SetUserPreferencesResponse\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    keys: string[];\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteUserPreferencesRequest\n */\nexport class DeleteUserPreferencesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteUserPreferencesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteUserPreferencesRequest();\n    DeleteUserPreferencesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteUserPreferencesRequest) {\n    _instance.userName = _instance.userName || '';\n    _instance.keys = _instance.keys || [];\n    _instance.regexInclude = _instance.regexInclude || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteUserPreferencesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          (_instance.keys = _instance.keys || []).push(_reader.readString());\n          break;\n        case 3:\n          _instance.regexInclude = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteUserPreferencesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteUserPreferencesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.keys && _instance.keys.length) {\n      _writer.writeRepeatedString(2, _instance.keys);\n    }\n    if (_instance.regexInclude) {\n      _writer.writeString(3, _instance.regexInclude);\n    }\n  }\n\n  private _userName: string;\n  private _keys: string[];\n  private _regexInclude: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteUserPreferencesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteUserPreferencesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.keys = (_value.keys || []).slice();\n    this.regexInclude = _value.regexInclude;\n    DeleteUserPreferencesRequest.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get keys(): string[] {\n    return this._keys;\n  }\n  set keys(value: string[]) {\n    this._keys = value;\n  }\n  get regexInclude(): string {\n    return this._regexInclude;\n  }\n  set regexInclude(value: string) {\n    this._regexInclude = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteUserPreferencesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteUserPreferencesRequest.AsObject {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      regexInclude: this.regexInclude\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteUserPreferencesRequest.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      regexInclude: this.regexInclude\n    };\n  }\n}\nexport module DeleteUserPreferencesRequest {\n  /**\n   * Standard JavaScript object representation for DeleteUserPreferencesRequest\n   */\n  export interface AsObject {\n    userName: string;\n    keys: string[];\n    regexInclude: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteUserPreferencesRequest\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    keys: string[];\n    regexInclude: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteUserPreferencesResponse\n */\nexport class DeleteUserPreferencesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteUserPreferencesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteUserPreferencesResponse();\n    DeleteUserPreferencesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteUserPreferencesResponse) {\n    _instance.userName = _instance.userName || '';\n    _instance.keys = _instance.keys || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteUserPreferencesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          (_instance.keys = _instance.keys || []).push(_reader.readString());\n          break;\n        case 3:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteUserPreferencesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteUserPreferencesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.keys && _instance.keys.length) {\n      _writer.writeRepeatedString(2, _instance.keys);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(3, _instance.errorMessage);\n    }\n  }\n\n  private _userName: string;\n  private _keys: string[];\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteUserPreferencesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteUserPreferencesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.keys = (_value.keys || []).slice();\n    this.errorMessage = _value.errorMessage;\n    DeleteUserPreferencesResponse.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get keys(): string[] {\n    return this._keys;\n  }\n  set keys(value: string[]) {\n    this._keys = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteUserPreferencesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteUserPreferencesResponse.AsObject {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteUserPreferencesResponse.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      keys: (this.keys || []).slice(),\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module DeleteUserPreferencesResponse {\n  /**\n   * Standard JavaScript object representation for DeleteUserPreferencesResponse\n   */\n  export interface AsObject {\n    userName: string;\n    keys: string[];\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteUserPreferencesResponse\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    keys: string[];\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteAllUserPreferencesRequest\n */\nexport class DeleteAllUserPreferencesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteAllUserPreferencesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteAllUserPreferencesRequest();\n    DeleteAllUserPreferencesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteAllUserPreferencesRequest) {\n    _instance.userName = _instance.userName || '';\n    _instance.regexFilter = _instance.regexFilter || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteAllUserPreferencesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          _instance.regexFilter = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteAllUserPreferencesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteAllUserPreferencesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.regexFilter) {\n      _writer.writeString(2, _instance.regexFilter);\n    }\n  }\n\n  private _userName: string;\n  private _regexFilter: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteAllUserPreferencesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteAllUserPreferencesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.regexFilter = _value.regexFilter;\n    DeleteAllUserPreferencesRequest.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get regexFilter(): string {\n    return this._regexFilter;\n  }\n  set regexFilter(value: string) {\n    this._regexFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteAllUserPreferencesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteAllUserPreferencesRequest.AsObject {\n    return {\n      userName: this.userName,\n      regexFilter: this.regexFilter\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteAllUserPreferencesRequest.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      regexFilter: this.regexFilter\n    };\n  }\n}\nexport module DeleteAllUserPreferencesRequest {\n  /**\n   * Standard JavaScript object representation for DeleteAllUserPreferencesRequest\n   */\n  export interface AsObject {\n    userName: string;\n    regexFilter: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteAllUserPreferencesRequest\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    regexFilter: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUserPreferencesRequest\n */\nexport class ListUserPreferencesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUserPreferencesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUserPreferencesRequest();\n    ListUserPreferencesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUserPreferencesRequest) {\n    _instance.userName = _instance.userName || '';\n    _instance.regexFilter = _instance.regexFilter || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUserPreferencesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          _instance.regexFilter = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUserPreferencesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUserPreferencesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.regexFilter) {\n      _writer.writeString(2, _instance.regexFilter);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _userName: string;\n  private _regexFilter: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUserPreferencesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUserPreferencesRequest.AsObject>) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.regexFilter = _value.regexFilter;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    ListUserPreferencesRequest.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get regexFilter(): string {\n    return this._regexFilter;\n  }\n  set regexFilter(value: string) {\n    this._regexFilter = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUserPreferencesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUserPreferencesRequest.AsObject {\n    return {\n      userName: this.userName,\n      regexFilter: this.regexFilter,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUserPreferencesRequest.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      regexFilter: this.regexFilter,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListUserPreferencesRequest {\n  /**\n   * Standard JavaScript object representation for ListUserPreferencesRequest\n   */\n  export interface AsObject {\n    userName: string;\n    regexFilter: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUserPreferencesRequest\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    regexFilter: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUserPreferencesResponse\n */\nexport class ListUserPreferencesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUserPreferencesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUserPreferencesResponse();\n    ListUserPreferencesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUserPreferencesResponse) {\n    _instance.userName = _instance.userName || '';\n    _instance.keyValuePairs = _instance.keyValuePairs || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUserPreferencesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userName = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu008.KeyValuePair();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu008.KeyValuePair.deserializeBinaryFromReader\n          );\n          (_instance.keyValuePairs = _instance.keyValuePairs || []).push(\n            messageInitializer2\n          );\n          break;\n        case 3:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUserPreferencesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUserPreferencesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userName) {\n      _writer.writeString(1, _instance.userName);\n    }\n    if (_instance.keyValuePairs && _instance.keyValuePairs.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.keyValuePairs as any,\n        ondewoNlu008.KeyValuePair.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(3, _instance.errorMessage);\n    }\n  }\n\n  private _userName: string;\n  private _keyValuePairs?: ondewoNlu008.KeyValuePair[];\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUserPreferencesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUserPreferencesResponse.AsObject>) {\n    _value = _value || {};\n    this.userName = _value.userName;\n    this.keyValuePairs = (_value.keyValuePairs || []).map(\n      m => new ondewoNlu008.KeyValuePair(m)\n    );\n    this.errorMessage = _value.errorMessage;\n    ListUserPreferencesResponse.refineValues(this);\n  }\n  get userName(): string {\n    return this._userName;\n  }\n  set userName(value: string) {\n    this._userName = value;\n  }\n  get keyValuePairs(): ondewoNlu008.KeyValuePair[] | undefined {\n    return this._keyValuePairs;\n  }\n  set keyValuePairs(value: ondewoNlu008.KeyValuePair[] | undefined) {\n    this._keyValuePairs = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUserPreferencesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUserPreferencesResponse.AsObject {\n    return {\n      userName: this.userName,\n      keyValuePairs: (this.keyValuePairs || []).map(m => m.toObject()),\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUserPreferencesResponse.AsProtobufJSON {\n    return {\n      userName: this.userName,\n      keyValuePairs: (this.keyValuePairs || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module ListUserPreferencesResponse {\n  /**\n   * Standard JavaScript object representation for ListUserPreferencesResponse\n   */\n  export interface AsObject {\n    userName: string;\n    keyValuePairs?: ondewoNlu008.KeyValuePair.AsObject[];\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUserPreferencesResponse\n   */\n  export interface AsProtobufJSON {\n    userName: string;\n    keyValuePairs: ondewoNlu008.KeyValuePair.AsProtobufJSON[] | null;\n    errorMessage: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleApi005 from '../../google/api/annotations.pb';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleRpc008 from '../../google/rpc/status.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/operations.pb';\nexport enum EntityTypeView {\n  ENTITY_TYPE_VIEW_UNSPECIFIED = 0,\n  ENTITY_TYPE_VIEW_FULL = 1,\n  ENTITY_TYPE_VIEW_PARTIAL = 2,\n  ENTITY_TYPE_VIEW_SHALLOW = 3,\n  ENTITY_TYPE_VIEW_MINIMUM = 4\n}\nexport enum EntityTypeCategory {\n  ALL_ENTITY_TYPES = 0,\n  DEFAULT_ENTITY_TYPES = 1,\n  USER_DEFINED_ENTITY_TYPES = 2\n}\n/**\n * Message implementation for ondewo.nlu.EntityType\n */\nexport class EntityType implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityType';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityType();\n    EntityType.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityType) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.kind = _instance.kind || 0;\n    _instance.autoExpansionMode = _instance.autoExpansionMode || 0;\n    _instance.entities = _instance.entities || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n    _instance.entityCount = _instance.entityCount || 0;\n    _instance.status = _instance.status || 0;\n    _instance.synonymCount = _instance.synonymCount || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityType,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.kind = _reader.readEnum();\n          break;\n        case 4:\n          _instance.autoExpansionMode = _reader.readEnum();\n          break;\n        case 6:\n          const messageInitializer6 = new EntityType.Entity();\n          _reader.readMessage(\n            messageInitializer6,\n            EntityType.Entity.deserializeBinaryFromReader\n          );\n          (_instance.entities = _instance.entities || []).push(\n            messageInitializer6\n          );\n          break;\n        case 10:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        case 11:\n          _instance.entityCount = _reader.readInt32();\n          break;\n        case 12:\n          _instance.status = _reader.readEnum();\n          break;\n        case 13:\n          _instance.synonymCount = _reader.readInt32();\n          break;\n        case 14:\n          _instance.createdAt = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 15:\n          _instance.modifiedAt = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 16:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 17:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityType.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: EntityType, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.kind) {\n      _writer.writeEnum(3, _instance.kind);\n    }\n    if (_instance.autoExpansionMode) {\n      _writer.writeEnum(4, _instance.autoExpansionMode);\n    }\n    if (_instance.entities && _instance.entities.length) {\n      _writer.writeRepeatedMessage(\n        6,\n        _instance.entities as any,\n        EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(10, _instance.nextPageToken);\n    }\n    if (_instance.entityCount) {\n      _writer.writeInt32(11, _instance.entityCount);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(12, _instance.status);\n    }\n    if (_instance.synonymCount) {\n      _writer.writeInt32(13, _instance.synonymCount);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        14,\n        _instance.createdAt as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        15,\n        _instance.modifiedAt as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(16, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(17, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _kind: EntityType.Kind;\n  private _autoExpansionMode: EntityType.AutoExpansionMode;\n  private _entities?: EntityType.Entity[];\n  private _nextPageToken: string;\n  private _entityCount: number;\n  private _status: EntityType.EntityTypeStatus;\n  private _synonymCount: number;\n  private _createdAt?: googleProtobuf004.Timestamp;\n  private _modifiedAt?: googleProtobuf004.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityType to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityType.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.kind = _value.kind;\n    this.autoExpansionMode = _value.autoExpansionMode;\n    this.entities = (_value.entities || []).map(m => new EntityType.Entity(m));\n    this.nextPageToken = _value.nextPageToken;\n    this.entityCount = _value.entityCount;\n    this.status = _value.status;\n    this.synonymCount = _value.synonymCount;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf004.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    EntityType.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get kind(): EntityType.Kind {\n    return this._kind;\n  }\n  set kind(value: EntityType.Kind) {\n    this._kind = value;\n  }\n  get autoExpansionMode(): EntityType.AutoExpansionMode {\n    return this._autoExpansionMode;\n  }\n  set autoExpansionMode(value: EntityType.AutoExpansionMode) {\n    this._autoExpansionMode = value;\n  }\n  get entities(): EntityType.Entity[] | undefined {\n    return this._entities;\n  }\n  set entities(value: EntityType.Entity[] | undefined) {\n    this._entities = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n  get entityCount(): number {\n    return this._entityCount;\n  }\n  set entityCount(value: number) {\n    this._entityCount = value;\n  }\n  get status(): EntityType.EntityTypeStatus {\n    return this._status;\n  }\n  set status(value: EntityType.EntityTypeStatus) {\n    this._status = value;\n  }\n  get synonymCount(): number {\n    return this._synonymCount;\n  }\n  set synonymCount(value: number) {\n    this._synonymCount = value;\n  }\n  get createdAt(): googleProtobuf004.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityType.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityType.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      kind: this.kind,\n      autoExpansionMode: this.autoExpansionMode,\n      entities: (this.entities || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken,\n      entityCount: this.entityCount,\n      status: this.status,\n      synonymCount: this.synonymCount,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityType.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      kind:\n        EntityType.Kind[\n          this.kind === null || this.kind === undefined ? 0 : this.kind\n        ],\n      autoExpansionMode:\n        EntityType.AutoExpansionMode[\n          this.autoExpansionMode === null ||\n          this.autoExpansionMode === undefined\n            ? 0\n            : this.autoExpansionMode\n        ],\n      entities: (this.entities || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken,\n      entityCount: this.entityCount,\n      status:\n        EntityType.EntityTypeStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      synonymCount: this.synonymCount,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module EntityType {\n  /**\n   * Standard JavaScript object representation for EntityType\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    kind: EntityType.Kind;\n    autoExpansionMode: EntityType.AutoExpansionMode;\n    entities?: EntityType.Entity.AsObject[];\n    nextPageToken: string;\n    entityCount: number;\n    status: EntityType.EntityTypeStatus;\n    synonymCount: number;\n    createdAt?: googleProtobuf004.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for EntityType\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    kind: string;\n    autoExpansionMode: string;\n    entities: EntityType.Entity.AsProtobufJSON[] | null;\n    nextPageToken: string;\n    entityCount: number;\n    status: string;\n    synonymCount: number;\n    createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n  export enum Kind {\n    KIND_UNSPECIFIED = 0,\n    KIND_MAP = 1,\n    KIND_LIST = 2\n  }\n  export enum EntityTypeStatus {\n    ACTIVE = 0,\n    INACTIVE = 1\n  }\n  export enum AutoExpansionMode {\n    AUTO_EXPANSION_MODE_UNSPECIFIED = 0,\n    AUTO_EXPANSION_MODE_DEFAULT = 1\n  }\n  /**\n   * Message implementation for ondewo.nlu.EntityType.Entity\n   */\n  export class Entity implements GrpcMessage {\n    static id = 'ondewo.nlu.EntityType.Entity';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new Entity();\n      Entity.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: Entity) {\n      _instance.value = _instance.value || '';\n      _instance.synonyms = _instance.synonyms || [];\n      _instance.name = _instance.name || '';\n      _instance.displayName = _instance.displayName || '';\n      _instance.synonymCount = _instance.synonymCount || 0;\n      _instance.languageCode = _instance.languageCode || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: Entity,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.value = _reader.readString();\n            break;\n          case 2:\n            (_instance.synonyms = _instance.synonyms || []).push(\n              _reader.readString()\n            );\n            break;\n          case 3:\n            _instance.name = _reader.readString();\n            break;\n          case 4:\n            _instance.displayName = _reader.readString();\n            break;\n          case 5:\n            _instance.synonymCount = _reader.readInt32();\n            break;\n          case 6:\n            _instance.languageCode = _reader.readString();\n            break;\n          case 7:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 9:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 10:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      Entity.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(_instance: Entity, _writer: BinaryWriter) {\n      if (_instance.value) {\n        _writer.writeString(1, _instance.value);\n      }\n      if (_instance.synonyms && _instance.synonyms.length) {\n        _writer.writeRepeatedString(2, _instance.synonyms);\n      }\n      if (_instance.name) {\n        _writer.writeString(3, _instance.name);\n      }\n      if (_instance.displayName) {\n        _writer.writeString(4, _instance.displayName);\n      }\n      if (_instance.synonymCount) {\n        _writer.writeInt32(5, _instance.synonymCount);\n      }\n      if (_instance.languageCode) {\n        _writer.writeString(6, _instance.languageCode);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          7,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          8,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(9, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(10, _instance.modifiedBy);\n      }\n    }\n\n    private _value: string;\n    private _synonyms: string[];\n    private _name: string;\n    private _displayName: string;\n    private _synonymCount: number;\n    private _languageCode: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of Entity to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<Entity.AsObject>) {\n      _value = _value || {};\n      this.value = _value.value;\n      this.synonyms = (_value.synonyms || []).slice();\n      this.name = _value.name;\n      this.displayName = _value.displayName;\n      this.synonymCount = _value.synonymCount;\n      this.languageCode = _value.languageCode;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      Entity.refineValues(this);\n    }\n    get value(): string {\n      return this._value;\n    }\n    set value(value: string) {\n      this._value = value;\n    }\n    get synonyms(): string[] {\n      return this._synonyms;\n    }\n    set synonyms(value: string[]) {\n      this._synonyms = value;\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get displayName(): string {\n      return this._displayName;\n    }\n    set displayName(value: string) {\n      this._displayName = value;\n    }\n    get synonymCount(): number {\n      return this._synonymCount;\n    }\n    set synonymCount(value: number) {\n      this._synonymCount = value;\n    }\n    get languageCode(): string {\n      return this._languageCode;\n    }\n    set languageCode(value: string) {\n      this._languageCode = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      Entity.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): Entity.AsObject {\n      return {\n        value: this.value,\n        synonyms: (this.synonyms || []).slice(),\n        name: this.name,\n        displayName: this.displayName,\n        synonymCount: this.synonymCount,\n        languageCode: this.languageCode,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): Entity.AsProtobufJSON {\n      return {\n        value: this.value,\n        synonyms: (this.synonyms || []).slice(),\n        name: this.name,\n        displayName: this.displayName,\n        synonymCount: this.synonymCount,\n        languageCode: this.languageCode,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module Entity {\n    /**\n     * Standard JavaScript object representation for Entity\n     */\n    export interface AsObject {\n      value: string;\n      synonyms: string[];\n      name: string;\n      displayName: string;\n      synonymCount: number;\n      languageCode: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for Entity\n     */\n    export interface AsProtobufJSON {\n      value: string;\n      synonyms: string[];\n      name: string;\n      displayName: string;\n      synonymCount: number;\n      languageCode: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListEntityTypesRequest\n */\nexport class ListEntityTypesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListEntityTypesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListEntityTypesRequest();\n    ListEntityTypesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListEntityTypesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.entityTypeView = _instance.entityTypeView || 0;\n    _instance.filterByCategory = _instance.filterByCategory || 0;\n    _instance.sortByField = _instance.sortByField || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListEntityTypesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.entityTypeView = _reader.readEnum();\n          break;\n        case 6:\n          _instance.filterByCategory = _reader.readEnum();\n          break;\n        case 7:\n          _instance.sortByField = new EntityTypeSorting();\n          _reader.readMessage(\n            _instance.sortByField,\n            EntityTypeSorting.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListEntityTypesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListEntityTypesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.entityTypeView) {\n      _writer.writeEnum(5, _instance.entityTypeView);\n    }\n    if (_instance.filterByCategory) {\n      _writer.writeEnum(6, _instance.filterByCategory);\n    }\n    if (_instance.sortByField) {\n      _writer.writeMessage(\n        7,\n        _instance.sortByField as any,\n        EntityTypeSorting.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _pageToken: string;\n  private _entityTypeView: EntityTypeView;\n  private _filterByCategory: EntityTypeCategory;\n  private _sortByField?: EntityTypeSorting;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListEntityTypesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListEntityTypesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    this.entityTypeView = _value.entityTypeView;\n    this.filterByCategory = _value.filterByCategory;\n    this.sortByField = _value.sortByField\n      ? new EntityTypeSorting(_value.sortByField)\n      : undefined;\n    ListEntityTypesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get entityTypeView(): EntityTypeView {\n    return this._entityTypeView;\n  }\n  set entityTypeView(value: EntityTypeView) {\n    this._entityTypeView = value;\n  }\n  get filterByCategory(): EntityTypeCategory {\n    return this._filterByCategory;\n  }\n  set filterByCategory(value: EntityTypeCategory) {\n    this._filterByCategory = value;\n  }\n  get sortByField(): EntityTypeSorting | undefined {\n    return this._sortByField;\n  }\n  set sortByField(value: EntityTypeSorting | undefined) {\n    this._sortByField = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListEntityTypesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListEntityTypesRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      entityTypeView: this.entityTypeView,\n      filterByCategory: this.filterByCategory,\n      sortByField: this.sortByField ? this.sortByField.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListEntityTypesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      entityTypeView:\n        EntityTypeView[\n          this.entityTypeView === null || this.entityTypeView === undefined\n            ? 0\n            : this.entityTypeView\n        ],\n      filterByCategory:\n        EntityTypeCategory[\n          this.filterByCategory === null || this.filterByCategory === undefined\n            ? 0\n            : this.filterByCategory\n        ],\n      sortByField: this.sortByField\n        ? this.sortByField.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListEntityTypesRequest {\n  /**\n   * Standard JavaScript object representation for ListEntityTypesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    pageToken: string;\n    entityTypeView: EntityTypeView;\n    filterByCategory: EntityTypeCategory;\n    sortByField?: EntityTypeSorting.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListEntityTypesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    pageToken: string;\n    entityTypeView: string;\n    filterByCategory: string;\n    sortByField: EntityTypeSorting.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListEntityTypesResponse\n */\nexport class ListEntityTypesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListEntityTypesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListEntityTypesResponse();\n    ListEntityTypesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListEntityTypesResponse) {\n    _instance.entityTypes = _instance.entityTypes || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListEntityTypesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new EntityType();\n          _reader.readMessage(\n            messageInitializer1,\n            EntityType.deserializeBinaryFromReader\n          );\n          (_instance.entityTypes = _instance.entityTypes || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListEntityTypesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListEntityTypesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityTypes && _instance.entityTypes.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.entityTypes as any,\n        EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _entityTypes?: EntityType[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListEntityTypesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListEntityTypesResponse.AsObject>) {\n    _value = _value || {};\n    this.entityTypes = (_value.entityTypes || []).map(m => new EntityType(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListEntityTypesResponse.refineValues(this);\n  }\n  get entityTypes(): EntityType[] | undefined {\n    return this._entityTypes;\n  }\n  set entityTypes(value: EntityType[] | undefined) {\n    this._entityTypes = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListEntityTypesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListEntityTypesResponse.AsObject {\n    return {\n      entityTypes: (this.entityTypes || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListEntityTypesResponse.AsProtobufJSON {\n    return {\n      entityTypes: (this.entityTypes || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListEntityTypesResponse {\n  /**\n   * Standard JavaScript object representation for ListEntityTypesResponse\n   */\n  export interface AsObject {\n    entityTypes?: EntityType.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListEntityTypesResponse\n   */\n  export interface AsProtobufJSON {\n    entityTypes: EntityType.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetEntityTypeRequest\n */\nexport class GetEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetEntityTypeRequest();\n    GetEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetEntityTypeRequest) {\n    _instance.name = _instance.name || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.entityTypeView = _instance.entityTypeView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 6:\n          _instance.entityTypeView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(5, _instance.pageToken);\n    }\n    if (_instance.entityTypeView) {\n      _writer.writeEnum(6, _instance.entityTypeView);\n    }\n  }\n\n  private _name: string;\n  private _languageCode: string;\n  private _pageToken: string;\n  private _entityTypeView: EntityTypeView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetEntityTypeRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetEntityTypeRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    this.entityTypeView = _value.entityTypeView;\n    GetEntityTypeRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get entityTypeView(): EntityTypeView {\n    return this._entityTypeView;\n  }\n  set entityTypeView(value: EntityTypeView) {\n    this._entityTypeView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetEntityTypeRequest.AsObject {\n    return {\n      name: this.name,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      entityTypeView: this.entityTypeView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetEntityTypeRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      entityTypeView:\n        EntityTypeView[\n          this.entityTypeView === null || this.entityTypeView === undefined\n            ? 0\n            : this.entityTypeView\n        ]\n    };\n  }\n}\nexport module GetEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for GetEntityTypeRequest\n   */\n  export interface AsObject {\n    name: string;\n    languageCode: string;\n    pageToken: string;\n    entityTypeView: EntityTypeView;\n  }\n\n  /**\n   * Protobuf JSON representation for GetEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    languageCode: string;\n    pageToken: string;\n    entityTypeView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateEntityTypeRequest\n */\nexport class CreateEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateEntityTypeRequest();\n    CreateEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateEntityTypeRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.entityType = _instance.entityType || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.entityTypeView = _instance.entityTypeView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.entityType = new EntityType();\n          _reader.readMessage(\n            _instance.entityType,\n            EntityType.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 6:\n          _instance.entityTypeView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.entityType) {\n      _writer.writeMessage(\n        2,\n        _instance.entityType as any,\n        EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.entityTypeView) {\n      _writer.writeEnum(6, _instance.entityTypeView);\n    }\n  }\n\n  private _parent: string;\n  private _entityType?: EntityType;\n  private _languageCode: string;\n  private _entityTypeView: EntityTypeView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateEntityTypeRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateEntityTypeRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.entityType = _value.entityType\n      ? new EntityType(_value.entityType)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.entityTypeView = _value.entityTypeView;\n    CreateEntityTypeRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get entityType(): EntityType | undefined {\n    return this._entityType;\n  }\n  set entityType(value: EntityType | undefined) {\n    this._entityType = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get entityTypeView(): EntityTypeView {\n    return this._entityTypeView;\n  }\n  set entityTypeView(value: EntityTypeView) {\n    this._entityTypeView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateEntityTypeRequest.AsObject {\n    return {\n      parent: this.parent,\n      entityType: this.entityType ? this.entityType.toObject() : undefined,\n      languageCode: this.languageCode,\n      entityTypeView: this.entityTypeView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateEntityTypeRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      entityType: this.entityType\n        ? this.entityType.toProtobufJSON(options)\n        : null,\n      languageCode: this.languageCode,\n      entityTypeView:\n        EntityTypeView[\n          this.entityTypeView === null || this.entityTypeView === undefined\n            ? 0\n            : this.entityTypeView\n        ]\n    };\n  }\n}\nexport module CreateEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for CreateEntityTypeRequest\n   */\n  export interface AsObject {\n    parent: string;\n    entityType?: EntityType.AsObject;\n    languageCode: string;\n    entityTypeView: EntityTypeView;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    entityType: EntityType.AsProtobufJSON | null;\n    languageCode: string;\n    entityTypeView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateEntityTypeRequest\n */\nexport class UpdateEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateEntityTypeRequest();\n    UpdateEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateEntityTypeRequest) {\n    _instance.entityType = _instance.entityType || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.entityTypeView = _instance.entityTypeView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entityType = new EntityType();\n          _reader.readMessage(\n            _instance.entityType,\n            EntityType.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.updateMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.entityTypeView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityType) {\n      _writer.writeMessage(\n        1,\n        _instance.entityType as any,\n        EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        3,\n        _instance.updateMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.entityTypeView) {\n      _writer.writeEnum(6, _instance.entityTypeView);\n    }\n  }\n\n  private _entityType?: EntityType;\n  private _languageCode: string;\n  private _updateMask?: googleProtobuf002.FieldMask;\n  private _entityTypeView: EntityTypeView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateEntityTypeRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateEntityTypeRequest.AsObject>) {\n    _value = _value || {};\n    this.entityType = _value.entityType\n      ? new EntityType(_value.entityType)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf002.FieldMask(_value.updateMask)\n      : undefined;\n    this.entityTypeView = _value.entityTypeView;\n    UpdateEntityTypeRequest.refineValues(this);\n  }\n  get entityType(): EntityType | undefined {\n    return this._entityType;\n  }\n  set entityType(value: EntityType | undefined) {\n    this._entityType = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get updateMask(): googleProtobuf002.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get entityTypeView(): EntityTypeView {\n    return this._entityTypeView;\n  }\n  set entityTypeView(value: EntityTypeView) {\n    this._entityTypeView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateEntityTypeRequest.AsObject {\n    return {\n      entityType: this.entityType ? this.entityType.toObject() : undefined,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      entityTypeView: this.entityTypeView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateEntityTypeRequest.AsProtobufJSON {\n    return {\n      entityType: this.entityType\n        ? this.entityType.toProtobufJSON(options)\n        : null,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      entityTypeView:\n        EntityTypeView[\n          this.entityTypeView === null || this.entityTypeView === undefined\n            ? 0\n            : this.entityTypeView\n        ]\n    };\n  }\n}\nexport module UpdateEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for UpdateEntityTypeRequest\n   */\n  export interface AsObject {\n    entityType?: EntityType.AsObject;\n    languageCode: string;\n    updateMask?: googleProtobuf002.FieldMask.AsObject;\n    entityTypeView: EntityTypeView;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    entityType: EntityType.AsProtobufJSON | null;\n    languageCode: string;\n    updateMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n    entityTypeView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteEntityTypeRequest\n */\nexport class DeleteEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteEntityTypeRequest();\n    DeleteEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteEntityTypeRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteEntityTypeRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteEntityTypeRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteEntityTypeRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteEntityTypeRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteEntityTypeRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for DeleteEntityTypeRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateEntityTypesRequest\n */\nexport class BatchUpdateEntityTypesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateEntityTypesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateEntityTypesRequest();\n    BatchUpdateEntityTypesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateEntityTypesRequest) {\n    _instance.parent = _instance.parent || '';\n\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.updateMask = _instance.updateMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateEntityTypesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.entityTypeBatchUri = _reader.readString();\n          break;\n        case 3:\n          _instance.entityTypeBatchInline = new EntityTypeBatch();\n          _reader.readMessage(\n            _instance.entityTypeBatchInline,\n            EntityTypeBatch.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.updateMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateEntityTypesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateEntityTypesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.entityTypeBatchUri || _instance.entityTypeBatchUri === '') {\n      _writer.writeString(2, _instance.entityTypeBatchUri);\n    }\n    if (_instance.entityTypeBatchInline) {\n      _writer.writeMessage(\n        3,\n        _instance.entityTypeBatchInline as any,\n        EntityTypeBatch.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        5,\n        _instance.updateMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _entityTypeBatchUri: string;\n  private _entityTypeBatchInline?: EntityTypeBatch;\n  private _languageCode: string;\n  private _updateMask?: googleProtobuf002.FieldMask;\n\n  private _entityTypeBatch: BatchUpdateEntityTypesRequest.EntityTypeBatchCase =\n    BatchUpdateEntityTypesRequest.EntityTypeBatchCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateEntityTypesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchUpdateEntityTypesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.entityTypeBatchUri = _value.entityTypeBatchUri;\n    this.entityTypeBatchInline = _value.entityTypeBatchInline\n      ? new EntityTypeBatch(_value.entityTypeBatchInline)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf002.FieldMask(_value.updateMask)\n      : undefined;\n    BatchUpdateEntityTypesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get entityTypeBatchUri(): string {\n    return this._entityTypeBatchUri;\n  }\n  set entityTypeBatchUri(value: string) {\n    if (value !== undefined && value !== null) {\n      this._entityTypeBatchInline = undefined;\n      this._entityTypeBatch =\n        BatchUpdateEntityTypesRequest.EntityTypeBatchCase.entityTypeBatchUri;\n    }\n    this._entityTypeBatchUri = value;\n  }\n  get entityTypeBatchInline(): EntityTypeBatch | undefined {\n    return this._entityTypeBatchInline;\n  }\n  set entityTypeBatchInline(value: EntityTypeBatch | undefined) {\n    if (value !== undefined && value !== null) {\n      this._entityTypeBatchUri = undefined;\n      this._entityTypeBatch =\n        BatchUpdateEntityTypesRequest.EntityTypeBatchCase.entityTypeBatchInline;\n    }\n    this._entityTypeBatchInline = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get updateMask(): googleProtobuf002.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get entityTypeBatch() {\n    return this._entityTypeBatch;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateEntityTypesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateEntityTypesRequest.AsObject {\n    return {\n      parent: this.parent,\n      entityTypeBatchUri: this.entityTypeBatchUri,\n      entityTypeBatchInline: this.entityTypeBatchInline\n        ? this.entityTypeBatchInline.toObject()\n        : undefined,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateEntityTypesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      entityTypeBatchUri:\n        this.entityTypeBatchUri === null ||\n        this.entityTypeBatchUri === undefined\n          ? null\n          : this.entityTypeBatchUri,\n      entityTypeBatchInline: this.entityTypeBatchInline\n        ? this.entityTypeBatchInline.toProtobufJSON(options)\n        : null,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module BatchUpdateEntityTypesRequest {\n  /**\n   * Standard JavaScript object representation for BatchUpdateEntityTypesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    entityTypeBatchUri: string;\n    entityTypeBatchInline?: EntityTypeBatch.AsObject;\n    languageCode: string;\n    updateMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateEntityTypesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    entityTypeBatchUri: string | null;\n    entityTypeBatchInline: EntityTypeBatch.AsProtobufJSON | null;\n    languageCode: string;\n    updateMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n  export enum EntityTypeBatchCase {\n    none = 0,\n    entityTypeBatchUri = 1,\n    entityTypeBatchInline = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateEntityTypesResponse\n */\nexport class BatchUpdateEntityTypesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateEntityTypesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateEntityTypesResponse();\n    BatchUpdateEntityTypesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateEntityTypesResponse) {\n    _instance.entityTypes = _instance.entityTypes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateEntityTypesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new EntityType();\n          _reader.readMessage(\n            messageInitializer1,\n            EntityType.deserializeBinaryFromReader\n          );\n          (_instance.entityTypes = _instance.entityTypes || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateEntityTypesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateEntityTypesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityTypes && _instance.entityTypes.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.entityTypes as any,\n        EntityType.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entityTypes?: EntityType[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateEntityTypesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchUpdateEntityTypesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.entityTypes = (_value.entityTypes || []).map(m => new EntityType(m));\n    BatchUpdateEntityTypesResponse.refineValues(this);\n  }\n  get entityTypes(): EntityType[] | undefined {\n    return this._entityTypes;\n  }\n  set entityTypes(value: EntityType[] | undefined) {\n    this._entityTypes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateEntityTypesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateEntityTypesResponse.AsObject {\n    return {\n      entityTypes: (this.entityTypes || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateEntityTypesResponse.AsProtobufJSON {\n    return {\n      entityTypes: (this.entityTypes || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module BatchUpdateEntityTypesResponse {\n  /**\n   * Standard JavaScript object representation for BatchUpdateEntityTypesResponse\n   */\n  export interface AsObject {\n    entityTypes?: EntityType.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateEntityTypesResponse\n   */\n  export interface AsProtobufJSON {\n    entityTypes: EntityType.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteEntityTypesRequest\n */\nexport class BatchDeleteEntityTypesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteEntityTypesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteEntityTypesRequest();\n    BatchDeleteEntityTypesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteEntityTypesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.entityTypeNames = _instance.entityTypeNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteEntityTypesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          (_instance.entityTypeNames = _instance.entityTypeNames || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteEntityTypesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteEntityTypesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.entityTypeNames && _instance.entityTypeNames.length) {\n      _writer.writeRepeatedString(2, _instance.entityTypeNames);\n    }\n  }\n\n  private _parent: string;\n  private _entityTypeNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteEntityTypesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<BatchDeleteEntityTypesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.entityTypeNames = (_value.entityTypeNames || []).slice();\n    BatchDeleteEntityTypesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get entityTypeNames(): string[] {\n    return this._entityTypeNames;\n  }\n  set entityTypeNames(value: string[]) {\n    this._entityTypeNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteEntityTypesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteEntityTypesRequest.AsObject {\n    return {\n      parent: this.parent,\n      entityTypeNames: (this.entityTypeNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteEntityTypesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      entityTypeNames: (this.entityTypeNames || []).slice()\n    };\n  }\n}\nexport module BatchDeleteEntityTypesRequest {\n  /**\n   * Standard JavaScript object representation for BatchDeleteEntityTypesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    entityTypeNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteEntityTypesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    entityTypeNames: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityTypeBatch\n */\nexport class EntityTypeBatch implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityTypeBatch';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityTypeBatch();\n    EntityTypeBatch.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityTypeBatch) {\n    _instance.entityTypes = _instance.entityTypes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityTypeBatch,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new EntityType();\n          _reader.readMessage(\n            messageInitializer1,\n            EntityType.deserializeBinaryFromReader\n          );\n          (_instance.entityTypes = _instance.entityTypes || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityTypeBatch.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityTypeBatch,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityTypes && _instance.entityTypes.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.entityTypes as any,\n        EntityType.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entityTypes?: EntityType[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityTypeBatch to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityTypeBatch.AsObject>) {\n    _value = _value || {};\n    this.entityTypes = (_value.entityTypes || []).map(m => new EntityType(m));\n    EntityTypeBatch.refineValues(this);\n  }\n  get entityTypes(): EntityType[] | undefined {\n    return this._entityTypes;\n  }\n  set entityTypes(value: EntityType[] | undefined) {\n    this._entityTypes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityTypeBatch.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityTypeBatch.AsObject {\n    return {\n      entityTypes: (this.entityTypes || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityTypeBatch.AsProtobufJSON {\n    return {\n      entityTypes: (this.entityTypes || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module EntityTypeBatch {\n  /**\n   * Standard JavaScript object representation for EntityTypeBatch\n   */\n  export interface AsObject {\n    entityTypes?: EntityType.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for EntityTypeBatch\n   */\n  export interface AsProtobufJSON {\n    entityTypes: EntityType.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityTypeSorting\n */\nexport class EntityTypeSorting implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityTypeSorting';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityTypeSorting();\n    EntityTypeSorting.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityTypeSorting) {\n    _instance.sortingField = _instance.sortingField || 0;\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityTypeSorting,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sortingField = _reader.readEnum();\n          break;\n        case 2:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityTypeSorting.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityTypeSorting,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sortingField) {\n      _writer.writeEnum(1, _instance.sortingField);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(2, _instance.sortingMode);\n    }\n  }\n\n  private _sortingField: EntityTypeSorting.EntityTypeSortingField;\n  private _sortingMode: ondewoNlu010.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityTypeSorting to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityTypeSorting.AsObject>) {\n    _value = _value || {};\n    this.sortingField = _value.sortingField;\n    this.sortingMode = _value.sortingMode;\n    EntityTypeSorting.refineValues(this);\n  }\n  get sortingField(): EntityTypeSorting.EntityTypeSortingField {\n    return this._sortingField;\n  }\n  set sortingField(value: EntityTypeSorting.EntityTypeSortingField) {\n    this._sortingField = value;\n  }\n  get sortingMode(): ondewoNlu010.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu010.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityTypeSorting.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityTypeSorting.AsObject {\n    return {\n      sortingField: this.sortingField,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityTypeSorting.AsProtobufJSON {\n    return {\n      sortingField:\n        EntityTypeSorting.EntityTypeSortingField[\n          this.sortingField === null || this.sortingField === undefined\n            ? 0\n            : this.sortingField\n        ],\n      sortingMode:\n        ondewoNlu010.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module EntityTypeSorting {\n  /**\n   * Standard JavaScript object representation for EntityTypeSorting\n   */\n  export interface AsObject {\n    sortingField: EntityTypeSorting.EntityTypeSortingField;\n    sortingMode: ondewoNlu010.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for EntityTypeSorting\n   */\n  export interface AsProtobufJSON {\n    sortingField: string;\n    sortingMode: string;\n  }\n  export enum EntityTypeSortingField {\n    NO_ENTITY_TYPE_SORTING = 0,\n    SORT_ENTITY_TYPE_BY_NAME = 1,\n    SORT_ENTITY_TYPE_BY_CREATION_DATE = 2,\n    SORT_ENTITY_TYPE_BY_LAST_UPDATED = 3,\n    SORT_ENTITY_TYPE_BY_ENTITY_VALUE_COUNT = 4,\n    SORT_ENTITY_TYPE_BY_SYNONYM_COUNT = 5\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityStatus\n */\nexport class EntityStatus implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityStatus';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityStatus();\n    EntityStatus.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityStatus) {}\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityStatus,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entity = new EntityType.Entity();\n          _reader.readMessage(\n            _instance.entity,\n            EntityType.Entity.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityStatus.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityStatus,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entity) {\n      _writer.writeMessage(\n        1,\n        _instance.entity as any,\n        EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage || _instance.errorMessage === '') {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _entity?: EntityType.Entity;\n  private _errorMessage: string;\n\n  private _entityOrStatus: EntityStatus.EntityOrStatusCase =\n    EntityStatus.EntityOrStatusCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityStatus to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityStatus.AsObject>) {\n    _value = _value || {};\n    this.entity = _value.entity\n      ? new EntityType.Entity(_value.entity)\n      : undefined;\n    this.errorMessage = _value.errorMessage;\n    EntityStatus.refineValues(this);\n  }\n  get entity(): EntityType.Entity | undefined {\n    return this._entity;\n  }\n  set entity(value: EntityType.Entity | undefined) {\n    if (value !== undefined && value !== null) {\n      this._errorMessage = undefined;\n      this._entityOrStatus = EntityStatus.EntityOrStatusCase.entity;\n    }\n    this._entity = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    if (value !== undefined && value !== null) {\n      this._entity = undefined;\n      this._entityOrStatus = EntityStatus.EntityOrStatusCase.errorMessage;\n    }\n    this._errorMessage = value;\n  }\n  get entityOrStatus() {\n    return this._entityOrStatus;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityStatus.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityStatus.AsObject {\n    return {\n      entity: this.entity ? this.entity.toObject() : undefined,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityStatus.AsProtobufJSON {\n    return {\n      entity: this.entity ? this.entity.toProtobufJSON(options) : null,\n      errorMessage:\n        this.errorMessage === null || this.errorMessage === undefined\n          ? null\n          : this.errorMessage\n    };\n  }\n}\nexport module EntityStatus {\n  /**\n   * Standard JavaScript object representation for EntityStatus\n   */\n  export interface AsObject {\n    entity?: EntityType.Entity.AsObject;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for EntityStatus\n   */\n  export interface AsProtobufJSON {\n    entity: EntityType.Entity.AsProtobufJSON | null;\n    errorMessage: string | null;\n  }\n  export enum EntityOrStatusCase {\n    none = 0,\n    entity = 1,\n    errorMessage = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchEntitiesResponse\n */\nexport class BatchEntitiesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchEntitiesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchEntitiesResponse();\n    BatchEntitiesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchEntitiesResponse) {\n    _instance.entityStatuses = _instance.entityStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchEntitiesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new EntityStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            EntityStatus.deserializeBinaryFromReader\n          );\n          (_instance.entityStatuses = _instance.entityStatuses || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchEntitiesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchEntitiesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityStatuses && _instance.entityStatuses.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.entityStatuses as any,\n        EntityStatus.serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _entityStatuses?: EntityStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchEntitiesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchEntitiesResponse.AsObject>) {\n    _value = _value || {};\n    this.entityStatuses = (_value.entityStatuses || []).map(\n      m => new EntityStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchEntitiesResponse.refineValues(this);\n  }\n  get entityStatuses(): EntityStatus[] | undefined {\n    return this._entityStatuses;\n  }\n  set entityStatuses(value: EntityStatus[] | undefined) {\n    this._entityStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchEntitiesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchEntitiesResponse.AsObject {\n    return {\n      entityStatuses: (this.entityStatuses || []).map(m => m.toObject()),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchEntitiesResponse.AsProtobufJSON {\n    return {\n      entityStatuses: (this.entityStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchEntitiesResponse {\n  /**\n   * Standard JavaScript object representation for BatchEntitiesResponse\n   */\n  export interface AsObject {\n    entityStatuses?: EntityStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchEntitiesResponse\n   */\n  export interface AsProtobufJSON {\n    entityStatuses: EntityStatus.AsProtobufJSON[] | null;\n    hasErrors: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateEntityRequest\n */\nexport class CreateEntityRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateEntityRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateEntityRequest();\n    CreateEntityRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateEntityRequest) {\n    _instance.entityTypeName = _instance.entityTypeName || '';\n    _instance.entity = _instance.entity || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateEntityRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entityTypeName = _reader.readString();\n          break;\n        case 2:\n          _instance.entity = new EntityType.Entity();\n          _reader.readMessage(\n            _instance.entity,\n            EntityType.Entity.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateEntityRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateEntityRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityTypeName) {\n      _writer.writeString(1, _instance.entityTypeName);\n    }\n    if (_instance.entity) {\n      _writer.writeMessage(\n        2,\n        _instance.entity as any,\n        EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entityTypeName: string;\n  private _entity?: EntityType.Entity;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateEntityRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateEntityRequest.AsObject>) {\n    _value = _value || {};\n    this.entityTypeName = _value.entityTypeName;\n    this.entity = _value.entity\n      ? new EntityType.Entity(_value.entity)\n      : undefined;\n    CreateEntityRequest.refineValues(this);\n  }\n  get entityTypeName(): string {\n    return this._entityTypeName;\n  }\n  set entityTypeName(value: string) {\n    this._entityTypeName = value;\n  }\n  get entity(): EntityType.Entity | undefined {\n    return this._entity;\n  }\n  set entity(value: EntityType.Entity | undefined) {\n    this._entity = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateEntityRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateEntityRequest.AsObject {\n    return {\n      entityTypeName: this.entityTypeName,\n      entity: this.entity ? this.entity.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateEntityRequest.AsProtobufJSON {\n    return {\n      entityTypeName: this.entityTypeName,\n      entity: this.entity ? this.entity.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module CreateEntityRequest {\n  /**\n   * Standard JavaScript object representation for CreateEntityRequest\n   */\n  export interface AsObject {\n    entityTypeName: string;\n    entity?: EntityType.Entity.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateEntityRequest\n   */\n  export interface AsProtobufJSON {\n    entityTypeName: string;\n    entity: EntityType.Entity.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchCreateEntitiesRequest\n */\nexport class BatchCreateEntitiesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchCreateEntitiesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchCreateEntitiesRequest();\n    BatchCreateEntitiesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchCreateEntitiesRequest) {\n    _instance.createEntityRequests = _instance.createEntityRequests || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchCreateEntitiesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new CreateEntityRequest();\n          _reader.readMessage(\n            messageInitializer1,\n            CreateEntityRequest.deserializeBinaryFromReader\n          );\n          (_instance.createEntityRequests =\n            _instance.createEntityRequests || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchCreateEntitiesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchCreateEntitiesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.createEntityRequests &&\n      _instance.createEntityRequests.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.createEntityRequests as any,\n        CreateEntityRequest.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _createEntityRequests?: CreateEntityRequest[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchCreateEntitiesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchCreateEntitiesRequest.AsObject>) {\n    _value = _value || {};\n    this.createEntityRequests = (_value.createEntityRequests || []).map(\n      m => new CreateEntityRequest(m)\n    );\n    BatchCreateEntitiesRequest.refineValues(this);\n  }\n  get createEntityRequests(): CreateEntityRequest[] | undefined {\n    return this._createEntityRequests;\n  }\n  set createEntityRequests(value: CreateEntityRequest[] | undefined) {\n    this._createEntityRequests = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchCreateEntitiesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchCreateEntitiesRequest.AsObject {\n    return {\n      createEntityRequests: (this.createEntityRequests || []).map(m =>\n        m.toObject()\n      )\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchCreateEntitiesRequest.AsProtobufJSON {\n    return {\n      createEntityRequests: (this.createEntityRequests || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module BatchCreateEntitiesRequest {\n  /**\n   * Standard JavaScript object representation for BatchCreateEntitiesRequest\n   */\n  export interface AsObject {\n    createEntityRequests?: CreateEntityRequest.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchCreateEntitiesRequest\n   */\n  export interface AsProtobufJSON {\n    createEntityRequests: CreateEntityRequest.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchUpdateEntitiesRequest\n */\nexport class BatchUpdateEntitiesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchUpdateEntitiesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchUpdateEntitiesRequest();\n    BatchUpdateEntitiesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchUpdateEntitiesRequest) {\n    _instance.entities = _instance.entities || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchUpdateEntitiesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new EntityType.Entity();\n          _reader.readMessage(\n            messageInitializer1,\n            EntityType.Entity.deserializeBinaryFromReader\n          );\n          (_instance.entities = _instance.entities || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchUpdateEntitiesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchUpdateEntitiesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entities && _instance.entities.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.entities as any,\n        EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entities?: EntityType.Entity[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchUpdateEntitiesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchUpdateEntitiesRequest.AsObject>) {\n    _value = _value || {};\n    this.entities = (_value.entities || []).map(m => new EntityType.Entity(m));\n    BatchUpdateEntitiesRequest.refineValues(this);\n  }\n  get entities(): EntityType.Entity[] | undefined {\n    return this._entities;\n  }\n  set entities(value: EntityType.Entity[] | undefined) {\n    this._entities = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchUpdateEntitiesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchUpdateEntitiesRequest.AsObject {\n    return {\n      entities: (this.entities || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchUpdateEntitiesRequest.AsProtobufJSON {\n    return {\n      entities: (this.entities || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module BatchUpdateEntitiesRequest {\n  /**\n   * Standard JavaScript object representation for BatchUpdateEntitiesRequest\n   */\n  export interface AsObject {\n    entities?: EntityType.Entity.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchUpdateEntitiesRequest\n   */\n  export interface AsProtobufJSON {\n    entities: EntityType.Entity.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateEntityRequest\n */\nexport class UpdateEntityRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateEntityRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateEntityRequest();\n    UpdateEntityRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateEntityRequest) {\n    _instance.entity = _instance.entity || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateEntityRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entity = new EntityType.Entity();\n          _reader.readMessage(\n            _instance.entity,\n            EntityType.Entity.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateEntityRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateEntityRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entity) {\n      _writer.writeMessage(\n        1,\n        _instance.entity as any,\n        EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entity?: EntityType.Entity;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateEntityRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateEntityRequest.AsObject>) {\n    _value = _value || {};\n    this.entity = _value.entity\n      ? new EntityType.Entity(_value.entity)\n      : undefined;\n    UpdateEntityRequest.refineValues(this);\n  }\n  get entity(): EntityType.Entity | undefined {\n    return this._entity;\n  }\n  set entity(value: EntityType.Entity | undefined) {\n    this._entity = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateEntityRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateEntityRequest.AsObject {\n    return {\n      entity: this.entity ? this.entity.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateEntityRequest.AsProtobufJSON {\n    return {\n      entity: this.entity ? this.entity.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module UpdateEntityRequest {\n  /**\n   * Standard JavaScript object representation for UpdateEntityRequest\n   */\n  export interface AsObject {\n    entity?: EntityType.Entity.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateEntityRequest\n   */\n  export interface AsProtobufJSON {\n    entity: EntityType.Entity.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetEntityRequest\n */\nexport class GetEntityRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetEntityRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetEntityRequest();\n    GetEntityRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetEntityRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetEntityRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetEntityRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetEntityRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetEntityRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetEntityRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    GetEntityRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetEntityRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetEntityRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetEntityRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module GetEntityRequest {\n  /**\n   * Standard JavaScript object representation for GetEntityRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetEntityRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchGetEntitiesRequest\n */\nexport class BatchGetEntitiesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchGetEntitiesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchGetEntitiesRequest();\n    BatchGetEntitiesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchGetEntitiesRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchGetEntitiesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchGetEntitiesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchGetEntitiesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchGetEntitiesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchGetEntitiesRequest.AsObject>) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchGetEntitiesRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchGetEntitiesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchGetEntitiesRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchGetEntitiesRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchGetEntitiesRequest {\n  /**\n   * Standard JavaScript object representation for BatchGetEntitiesRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchGetEntitiesRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteEntitiesRequest\n */\nexport class BatchDeleteEntitiesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteEntitiesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteEntitiesRequest();\n    BatchDeleteEntitiesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteEntitiesRequest) {\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteEntitiesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteEntitiesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteEntitiesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n  }\n\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteEntitiesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchDeleteEntitiesRequest.AsObject>) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    BatchDeleteEntitiesRequest.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteEntitiesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteEntitiesRequest.AsObject {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteEntitiesRequest.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module BatchDeleteEntitiesRequest {\n  /**\n   * Standard JavaScript object representation for BatchDeleteEntitiesRequest\n   */\n  export interface AsObject {\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteEntitiesRequest\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteEntityRequest\n */\nexport class DeleteEntityRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteEntityRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteEntityRequest();\n    DeleteEntityRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteEntityRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteEntityRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteEntityRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteEntityRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteEntityRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteEntityRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteEntityRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteEntityRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteEntityRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteEntityRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteEntityRequest {\n  /**\n   * Standard JavaScript object representation for DeleteEntityRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteEntityRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteEntityStatus\n */\nexport class DeleteEntityStatus implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteEntityStatus';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteEntityStatus();\n    DeleteEntityStatus.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteEntityStatus) {}\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteEntityStatus,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.successfullyDeleted = new googleProtobuf007.Empty();\n          _reader.readMessage(\n            _instance.successfullyDeleted,\n            googleProtobuf007.Empty.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteEntityStatus.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteEntityStatus,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.successfullyDeleted) {\n      _writer.writeMessage(\n        1,\n        _instance.successfullyDeleted as any,\n        googleProtobuf007.Empty.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage || _instance.errorMessage === '') {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _successfullyDeleted?: googleProtobuf007.Empty;\n  private _errorMessage: string;\n\n  private _deleteStatus: DeleteEntityStatus.DeleteStatusCase =\n    DeleteEntityStatus.DeleteStatusCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteEntityStatus to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteEntityStatus.AsObject>) {\n    _value = _value || {};\n    this.successfullyDeleted = _value.successfullyDeleted\n      ? new googleProtobuf007.Empty(_value.successfullyDeleted)\n      : undefined;\n    this.errorMessage = _value.errorMessage;\n    DeleteEntityStatus.refineValues(this);\n  }\n  get successfullyDeleted(): googleProtobuf007.Empty | undefined {\n    return this._successfullyDeleted;\n  }\n  set successfullyDeleted(value: googleProtobuf007.Empty | undefined) {\n    if (value !== undefined && value !== null) {\n      this._errorMessage = undefined;\n      this._deleteStatus =\n        DeleteEntityStatus.DeleteStatusCase.successfullyDeleted;\n    }\n    this._successfullyDeleted = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    if (value !== undefined && value !== null) {\n      this._successfullyDeleted = undefined;\n      this._deleteStatus = DeleteEntityStatus.DeleteStatusCase.errorMessage;\n    }\n    this._errorMessage = value;\n  }\n  get deleteStatus() {\n    return this._deleteStatus;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteEntityStatus.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteEntityStatus.AsObject {\n    return {\n      successfullyDeleted: this.successfullyDeleted\n        ? this.successfullyDeleted.toObject()\n        : undefined,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteEntityStatus.AsProtobufJSON {\n    return {\n      successfullyDeleted: this.successfullyDeleted\n        ? this.successfullyDeleted.toProtobufJSON(options)\n        : null,\n      errorMessage:\n        this.errorMessage === null || this.errorMessage === undefined\n          ? null\n          : this.errorMessage\n    };\n  }\n}\nexport module DeleteEntityStatus {\n  /**\n   * Standard JavaScript object representation for DeleteEntityStatus\n   */\n  export interface AsObject {\n    successfullyDeleted?: googleProtobuf007.Empty.AsObject;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteEntityStatus\n   */\n  export interface AsProtobufJSON {\n    successfullyDeleted: googleProtobuf007.Empty.AsProtobufJSON | null;\n    errorMessage: string | null;\n  }\n  export enum DeleteStatusCase {\n    none = 0,\n    successfullyDeleted = 1,\n    errorMessage = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BatchDeleteEntitiesResponse\n */\nexport class BatchDeleteEntitiesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.BatchDeleteEntitiesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BatchDeleteEntitiesResponse();\n    BatchDeleteEntitiesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BatchDeleteEntitiesResponse) {\n    _instance.deleteStatuses = _instance.deleteStatuses || [];\n    _instance.hasErrors = _instance.hasErrors || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BatchDeleteEntitiesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new DeleteEntityStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            DeleteEntityStatus.deserializeBinaryFromReader\n          );\n          (_instance.deleteStatuses = _instance.deleteStatuses || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.hasErrors = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BatchDeleteEntitiesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BatchDeleteEntitiesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.deleteStatuses && _instance.deleteStatuses.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.deleteStatuses as any,\n        DeleteEntityStatus.serializeBinaryToWriter\n      );\n    }\n    if (_instance.hasErrors) {\n      _writer.writeBool(2, _instance.hasErrors);\n    }\n  }\n\n  private _deleteStatuses?: DeleteEntityStatus[];\n  private _hasErrors: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BatchDeleteEntitiesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BatchDeleteEntitiesResponse.AsObject>) {\n    _value = _value || {};\n    this.deleteStatuses = (_value.deleteStatuses || []).map(\n      m => new DeleteEntityStatus(m)\n    );\n    this.hasErrors = _value.hasErrors;\n    BatchDeleteEntitiesResponse.refineValues(this);\n  }\n  get deleteStatuses(): DeleteEntityStatus[] | undefined {\n    return this._deleteStatuses;\n  }\n  set deleteStatuses(value: DeleteEntityStatus[] | undefined) {\n    this._deleteStatuses = value;\n  }\n  get hasErrors(): boolean {\n    return this._hasErrors;\n  }\n  set hasErrors(value: boolean) {\n    this._hasErrors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BatchDeleteEntitiesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BatchDeleteEntitiesResponse.AsObject {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m => m.toObject()),\n      hasErrors: this.hasErrors\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BatchDeleteEntitiesResponse.AsProtobufJSON {\n    return {\n      deleteStatuses: (this.deleteStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      hasErrors: this.hasErrors\n    };\n  }\n}\nexport module BatchDeleteEntitiesResponse {\n  /**\n   * Standard JavaScript object representation for BatchDeleteEntitiesResponse\n   */\n  export interface AsObject {\n    deleteStatuses?: DeleteEntityStatus.AsObject[];\n    hasErrors: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for BatchDeleteEntitiesResponse\n   */\n  export interface AsProtobufJSON {\n    deleteStatuses: DeleteEntityStatus.AsProtobufJSON[] | null;\n    hasErrors: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListEntitiesRequest\n */\nexport class ListEntitiesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListEntitiesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListEntitiesRequest();\n    ListEntitiesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListEntitiesRequest) {\n    _instance.entityTypeName = _instance.entityTypeName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.sortByField = _instance.sortByField || undefined;\n    _instance.searchByPattern = _instance.searchByPattern || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListEntitiesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entityTypeName = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.sortByField = new EntityValueSorting();\n          _reader.readMessage(\n            _instance.sortByField,\n            EntityValueSorting.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.searchByPattern = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListEntitiesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListEntitiesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityTypeName) {\n      _writer.writeString(1, _instance.entityTypeName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n    if (_instance.sortByField) {\n      _writer.writeMessage(\n        5,\n        _instance.sortByField as any,\n        EntityValueSorting.serializeBinaryToWriter\n      );\n    }\n    if (_instance.searchByPattern) {\n      _writer.writeString(6, _instance.searchByPattern);\n    }\n  }\n\n  private _entityTypeName: string;\n  private _languageCode: string;\n  private _pageToken: string;\n  private _sortByField?: EntityValueSorting;\n  private _searchByPattern: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListEntitiesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListEntitiesRequest.AsObject>) {\n    _value = _value || {};\n    this.entityTypeName = _value.entityTypeName;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    this.sortByField = _value.sortByField\n      ? new EntityValueSorting(_value.sortByField)\n      : undefined;\n    this.searchByPattern = _value.searchByPattern;\n    ListEntitiesRequest.refineValues(this);\n  }\n  get entityTypeName(): string {\n    return this._entityTypeName;\n  }\n  set entityTypeName(value: string) {\n    this._entityTypeName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get sortByField(): EntityValueSorting | undefined {\n    return this._sortByField;\n  }\n  set sortByField(value: EntityValueSorting | undefined) {\n    this._sortByField = value;\n  }\n  get searchByPattern(): string {\n    return this._searchByPattern;\n  }\n  set searchByPattern(value: string) {\n    this._searchByPattern = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListEntitiesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListEntitiesRequest.AsObject {\n    return {\n      entityTypeName: this.entityTypeName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      sortByField: this.sortByField ? this.sortByField.toObject() : undefined,\n      searchByPattern: this.searchByPattern\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListEntitiesRequest.AsProtobufJSON {\n    return {\n      entityTypeName: this.entityTypeName,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      sortByField: this.sortByField\n        ? this.sortByField.toProtobufJSON(options)\n        : null,\n      searchByPattern: this.searchByPattern\n    };\n  }\n}\nexport module ListEntitiesRequest {\n  /**\n   * Standard JavaScript object representation for ListEntitiesRequest\n   */\n  export interface AsObject {\n    entityTypeName: string;\n    languageCode: string;\n    pageToken: string;\n    sortByField?: EntityValueSorting.AsObject;\n    searchByPattern: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListEntitiesRequest\n   */\n  export interface AsProtobufJSON {\n    entityTypeName: string;\n    languageCode: string;\n    pageToken: string;\n    sortByField: EntityValueSorting.AsProtobufJSON | null;\n    searchByPattern: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListEntitiesResponse\n */\nexport class ListEntitiesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListEntitiesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListEntitiesResponse();\n    ListEntitiesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListEntitiesResponse) {\n    _instance.entities = _instance.entities || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListEntitiesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new EntityType.Entity();\n          _reader.readMessage(\n            messageInitializer1,\n            EntityType.Entity.deserializeBinaryFromReader\n          );\n          (_instance.entities = _instance.entities || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListEntitiesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListEntitiesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entities && _instance.entities.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.entities as any,\n        EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _entities?: EntityType.Entity[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListEntitiesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListEntitiesResponse.AsObject>) {\n    _value = _value || {};\n    this.entities = (_value.entities || []).map(m => new EntityType.Entity(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListEntitiesResponse.refineValues(this);\n  }\n  get entities(): EntityType.Entity[] | undefined {\n    return this._entities;\n  }\n  set entities(value: EntityType.Entity[] | undefined) {\n    this._entities = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListEntitiesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListEntitiesResponse.AsObject {\n    return {\n      entities: (this.entities || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListEntitiesResponse.AsProtobufJSON {\n    return {\n      entities: (this.entities || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListEntitiesResponse {\n  /**\n   * Standard JavaScript object representation for ListEntitiesResponse\n   */\n  export interface AsObject {\n    entities?: EntityType.Entity.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListEntitiesResponse\n   */\n  export interface AsProtobufJSON {\n    entities: EntityType.Entity.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityValueSorting\n */\nexport class EntityValueSorting implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityValueSorting';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityValueSorting();\n    EntityValueSorting.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityValueSorting) {\n    _instance.sortingField = _instance.sortingField || 0;\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityValueSorting,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 7:\n          _instance.sortingField = _reader.readEnum();\n          break;\n        case 8:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityValueSorting.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityValueSorting,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sortingField) {\n      _writer.writeEnum(7, _instance.sortingField);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(8, _instance.sortingMode);\n    }\n  }\n\n  private _sortingField: EntityValueSorting.EntityValueSortingField;\n  private _sortingMode: ondewoNlu010.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityValueSorting to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityValueSorting.AsObject>) {\n    _value = _value || {};\n    this.sortingField = _value.sortingField;\n    this.sortingMode = _value.sortingMode;\n    EntityValueSorting.refineValues(this);\n  }\n  get sortingField(): EntityValueSorting.EntityValueSortingField {\n    return this._sortingField;\n  }\n  set sortingField(value: EntityValueSorting.EntityValueSortingField) {\n    this._sortingField = value;\n  }\n  get sortingMode(): ondewoNlu010.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu010.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityValueSorting.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityValueSorting.AsObject {\n    return {\n      sortingField: this.sortingField,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityValueSorting.AsProtobufJSON {\n    return {\n      sortingField:\n        EntityValueSorting.EntityValueSortingField[\n          this.sortingField === null || this.sortingField === undefined\n            ? 0\n            : this.sortingField\n        ],\n      sortingMode:\n        ondewoNlu010.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module EntityValueSorting {\n  /**\n   * Standard JavaScript object representation for EntityValueSorting\n   */\n  export interface AsObject {\n    sortingField: EntityValueSorting.EntityValueSortingField;\n    sortingMode: ondewoNlu010.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for EntityValueSorting\n   */\n  export interface AsProtobufJSON {\n    sortingField: string;\n    sortingMode: string;\n  }\n  export enum EntityValueSortingField {\n    NO_ENTITY_VALUE_SORTING = 0,\n    SORT_ENTITY_VALUE_BY_DISPLAY_NAME = 1,\n    SORT_ENTITY_VALUE_BY_VALUE = 2,\n    SORT_ENTITY_VALUE_BY_SYNONYM_COUNT = 3\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions,\n  uint8ArrayToBase64\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/annotations.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleRpc004 from '../../google/rpc/status.pb';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu006 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/common.pb';\nimport * as googleProtobuf008 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operations.pb';\nexport enum LlmEvaluationExperimentStatus {\n  LLM_EVALUATION_EXPERIMENT_STATUS_UNSPECIFIED = 0,\n  LLM_EVALUATION_EXPERIMENT_STATUS_PENDING = 1,\n  LLM_EVALUATION_EXPERIMENT_STATUS_RUNNING = 2,\n  LLM_EVALUATION_EXPERIMENT_STATUS_SUCCEEDED = 3,\n  LLM_EVALUATION_EXPERIMENT_STATUS_FAILED = 4,\n  LLM_EVALUATION_EXPERIMENT_STATUS_CANCELLED = 5\n}\nexport enum LlmEvaluationEvaluatorType {\n  LLM_EVALUATION_EVALUATOR_TYPE_UNSPECIFIED = 0,\n  LLM_EVALUATION_EVALUATOR_TYPE_LLM_AS_JUDGE = 1,\n  LLM_EVALUATION_EVALUATOR_TYPE_HUMAN = 2,\n  LLM_EVALUATION_EVALUATOR_TYPE_HEURISTIC = 3,\n  LLM_EVALUATION_EVALUATOR_TYPE_CUSTOM_CODE = 4,\n  LLM_EVALUATION_EVALUATOR_TYPE_PAIRWISE = 5\n}\nexport enum LlmEvaluationDatasetType {\n  LLM_EVALUATION_DATASET_TYPE_UNSPECIFIED = 0,\n  LLM_EVALUATION_DATASET_TYPE_SINGLE_TURN = 1,\n  LLM_EVALUATION_DATASET_TYPE_FLOW = 2,\n  LLM_EVALUATION_DATASET_TYPE_RAG = 3,\n  LLM_EVALUATION_DATASET_TYPE_RED_TEAM = 4,\n  LLM_EVALUATION_DATASET_TYPE_SIMULATED = 5\n}\nexport enum LlmEvaluationExperimentKind {\n  LLM_EVALUATION_EXPERIMENT_KIND_UNSPECIFIED = 0,\n  LLM_EVALUATION_EXPERIMENT_KIND_STANDARD = 1,\n  LLM_EVALUATION_EXPERIMENT_KIND_FLOW = 2,\n  LLM_EVALUATION_EXPERIMENT_KIND_RED_TEAM = 3,\n  LLM_EVALUATION_EXPERIMENT_KIND_GATE_CANDIDATE = 4,\n  LLM_EVALUATION_EXPERIMENT_KIND_GATE_SAFETY = 5,\n  LLM_EVALUATION_EXPERIMENT_KIND_SCHEDULED = 6\n}\nexport enum LlmEvaluationReleaseGateVerdict {\n  LLM_EVALUATION_RELEASE_GATE_VERDICT_UNSPECIFIED = 0,\n  LLM_EVALUATION_RELEASE_GATE_VERDICT_PENDING = 1,\n  LLM_EVALUATION_RELEASE_GATE_VERDICT_PASS = 2,\n  LLM_EVALUATION_RELEASE_GATE_VERDICT_FAIL = 3,\n  LLM_EVALUATION_RELEASE_GATE_VERDICT_STALE = 4\n}\nexport enum LlmEvaluationEvaluatorCategory {\n  LLM_EVALUATION_EVALUATOR_CATEGORY_UNSPECIFIED = 0,\n  LLM_EVALUATION_EVALUATOR_CATEGORY_RAG = 1,\n  LLM_EVALUATION_EVALUATOR_CATEGORY_AGENTIC = 2,\n  LLM_EVALUATION_EVALUATOR_CATEGORY_CONVERSATIONAL = 3,\n  LLM_EVALUATION_EVALUATOR_CATEGORY_SAFETY = 4,\n  LLM_EVALUATION_EVALUATOR_CATEGORY_HEURISTIC = 5,\n  LLM_EVALUATION_EVALUATOR_CATEGORY_CUSTOM = 6\n}\nexport enum LlmEvaluationExampleExtractionMode {\n  LLM_EVALUATION_EXAMPLE_EXTRACTION_MODE_UNSPECIFIED = 0,\n  LLM_EVALUATION_EXAMPLE_EXTRACTION_MODE_SINGLE_TURN = 1,\n  LLM_EVALUATION_EXAMPLE_EXTRACTION_MODE_MULTI_TURN_FLOW = 2\n}\nexport enum LlmEvaluationSimulationKind {\n  LLM_EVALUATION_SIMULATION_KIND_UNSPECIFIED = 0,\n  LLM_EVALUATION_SIMULATION_KIND_STANDARD = 1,\n  LLM_EVALUATION_SIMULATION_KIND_ADVERSARIAL = 2\n}\nexport enum LlmEvaluationScheduleAction {\n  LLM_EVALUATION_SCHEDULE_ACTION_UNSPECIFIED = 0,\n  LLM_EVALUATION_SCHEDULE_ACTION_RUN_EXPERIMENT = 1,\n  LLM_EVALUATION_SCHEDULE_ACTION_RUN_RELEASE_GATE = 2\n}\nexport enum LlmEvaluationAbExperimentStatus {\n  LLM_EVALUATION_AB_EXPERIMENT_STATUS_UNSPECIFIED = 0,\n  LLM_EVALUATION_AB_EXPERIMENT_STATUS_DRAFT = 1,\n  LLM_EVALUATION_AB_EXPERIMENT_STATUS_RUNNING = 2,\n  LLM_EVALUATION_AB_EXPERIMENT_STATUS_STOPPED = 3,\n  LLM_EVALUATION_AB_EXPERIMENT_STATUS_ARCHIVED = 4\n}\nexport enum LlmEvaluationAbOptimizeMetric {\n  LLM_EVALUATION_AB_OPTIMIZE_METRIC_UNSPECIFIED = 0,\n  LLM_EVALUATION_AB_OPTIMIZE_METRIC_PASS_RATE = 1,\n  LLM_EVALUATION_AB_OPTIMIZE_METRIC_ERROR_RATE = 2,\n  LLM_EVALUATION_AB_OPTIMIZE_METRIC_MEAN_LATENCY = 3,\n  LLM_EVALUATION_AB_OPTIMIZE_METRIC_CRITERION_SCORE = 4,\n  LLM_EVALUATION_AB_OPTIMIZE_METRIC_SAFETY_SCORE = 5\n}\nexport enum LlmEvaluationAnnotationStatus {\n  LLM_EVALUATION_ANNOTATION_STATUS_UNSPECIFIED = 0,\n  LLM_EVALUATION_ANNOTATION_STATUS_PENDING = 1,\n  LLM_EVALUATION_ANNOTATION_STATUS_REVIEWED = 2,\n  LLM_EVALUATION_ANNOTATION_STATUS_PROMOTED = 3,\n  LLM_EVALUATION_ANNOTATION_STATUS_DISMISSED = 4\n}\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationDataset\n */\nexport class LlmEvaluationDataset implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationDataset';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationDataset();\n    LlmEvaluationDataset.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationDataset) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.llmEvaluationExamples = _instance.llmEvaluationExamples || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.tags = _instance.tags || [];\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationDatasetType =\n      _instance.llmEvaluationDatasetType || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationDataset,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          const messageInitializer4 = new LlmEvaluationExample();\n          _reader.readMessage(\n            messageInitializer4,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExamples =\n            _instance.llmEvaluationExamples || []).push(messageInitializer4);\n          break;\n        case 5:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          (_instance.tags = _instance.tags || []).push(_reader.readString());\n          break;\n        case 8:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 10:\n          _instance.parent = _reader.readString();\n          break;\n        case 11:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 12:\n          _instance.llmEvaluationDatasetType = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationDataset.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationDataset,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (\n      _instance.llmEvaluationExamples &&\n      _instance.llmEvaluationExamples.length\n    ) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.llmEvaluationExamples as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        5,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.tags && _instance.tags.length) {\n      _writer.writeRepeatedString(7, _instance.tags);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        8,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(9, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(10, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(11, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationDatasetType) {\n      _writer.writeEnum(12, _instance.llmEvaluationDatasetType);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _llmEvaluationExamples?: LlmEvaluationExample[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _tags: string[];\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n  private _llmEvaluationDatasetType: LlmEvaluationDatasetType;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationDataset to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationDataset.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.llmEvaluationExamples = (_value.llmEvaluationExamples || []).map(\n      m => new LlmEvaluationExample(m)\n    );\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.tags = (_value.tags || []).slice();\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationDatasetType = _value.llmEvaluationDatasetType;\n    LlmEvaluationDataset.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get llmEvaluationExamples(): LlmEvaluationExample[] | undefined {\n    return this._llmEvaluationExamples;\n  }\n  set llmEvaluationExamples(value: LlmEvaluationExample[] | undefined) {\n    this._llmEvaluationExamples = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get tags(): string[] {\n    return this._tags;\n  }\n  set tags(value: string[]) {\n    this._tags = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationDatasetType(): LlmEvaluationDatasetType {\n    return this._llmEvaluationDatasetType;\n  }\n  set llmEvaluationDatasetType(value: LlmEvaluationDatasetType) {\n    this._llmEvaluationDatasetType = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationDataset.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationDataset.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toObject()\n      ),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      tags: (this.tags || []).slice(),\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationDatasetType: this.llmEvaluationDatasetType\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationDataset.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      tags: (this.tags || []).slice(),\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationDatasetType:\n        LlmEvaluationDatasetType[\n          this.llmEvaluationDatasetType === null ||\n          this.llmEvaluationDatasetType === undefined\n            ? 0\n            : this.llmEvaluationDatasetType\n        ]\n    };\n  }\n}\nexport module LlmEvaluationDataset {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationDataset\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    llmEvaluationExamples?: LlmEvaluationExample.AsObject[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    tags: string[];\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n    llmEvaluationDatasetType: LlmEvaluationDatasetType;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationDataset\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    llmEvaluationExamples: LlmEvaluationExample.AsProtobufJSON[] | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    tags: string[];\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n    llmEvaluationDatasetType: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationExample\n */\nexport class LlmEvaluationExample implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationExample';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationExample();\n    LlmEvaluationExample.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationExample) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.inputs = _instance.inputs || undefined;\n    _instance.expectedOutputs = _instance.expectedOutputs || undefined;\n    _instance.metadata = _instance.metadata || undefined;\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationExample,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.inputs = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.inputs,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.expectedOutputs = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.expectedOutputs,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.metadata = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.metadata,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 8:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 10:\n          _instance.parent = _reader.readString();\n          break;\n        case 11:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 12:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationExample.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationExample,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.inputs) {\n      _writer.writeMessage(\n        4,\n        _instance.inputs as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.expectedOutputs) {\n      _writer.writeMessage(\n        5,\n        _instance.expectedOutputs as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.metadata) {\n      _writer.writeMessage(\n        6,\n        _instance.metadata as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(7, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        8,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(9, _instance.createdBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(10, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(11, _instance.languageCode);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        12,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(13, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _inputs?: googleProtobuf008.Struct;\n  private _expectedOutputs?: googleProtobuf008.Struct;\n  private _metadata?: googleProtobuf008.Struct;\n  private _llmEvaluationDatasetName: string;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _parent: string;\n  private _languageCode: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationExample to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationExample.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.inputs = _value.inputs\n      ? new googleProtobuf008.Struct(_value.inputs)\n      : undefined;\n    this.expectedOutputs = _value.expectedOutputs\n      ? new googleProtobuf008.Struct(_value.expectedOutputs)\n      : undefined;\n    this.metadata = _value.metadata\n      ? new googleProtobuf008.Struct(_value.metadata)\n      : undefined;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    LlmEvaluationExample.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get inputs(): googleProtobuf008.Struct | undefined {\n    return this._inputs;\n  }\n  set inputs(value: googleProtobuf008.Struct | undefined) {\n    this._inputs = value;\n  }\n  get expectedOutputs(): googleProtobuf008.Struct | undefined {\n    return this._expectedOutputs;\n  }\n  set expectedOutputs(value: googleProtobuf008.Struct | undefined) {\n    this._expectedOutputs = value;\n  }\n  get metadata(): googleProtobuf008.Struct | undefined {\n    return this._metadata;\n  }\n  set metadata(value: googleProtobuf008.Struct | undefined) {\n    this._metadata = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationExample.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationExample.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      inputs: this.inputs ? this.inputs.toObject() : undefined,\n      expectedOutputs: this.expectedOutputs\n        ? this.expectedOutputs.toObject()\n        : undefined,\n      metadata: this.metadata ? this.metadata.toObject() : undefined,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationExample.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      inputs: this.inputs ? this.inputs.toProtobufJSON(options) : null,\n      expectedOutputs: this.expectedOutputs\n        ? this.expectedOutputs.toProtobufJSON(options)\n        : null,\n      metadata: this.metadata ? this.metadata.toProtobufJSON(options) : null,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module LlmEvaluationExample {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationExample\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    inputs?: googleProtobuf008.Struct.AsObject;\n    expectedOutputs?: googleProtobuf008.Struct.AsObject;\n    metadata?: googleProtobuf008.Struct.AsObject;\n    llmEvaluationDatasetName: string;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    parent: string;\n    languageCode: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationExample\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    inputs: googleProtobuf008.Struct.AsProtobufJSON | null;\n    expectedOutputs: googleProtobuf008.Struct.AsProtobufJSON | null;\n    metadata: googleProtobuf008.Struct.AsProtobufJSON | null;\n    llmEvaluationDatasetName: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    parent: string;\n    languageCode: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationExperiment\n */\nexport class LlmEvaluationExperiment implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationExperiment';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationExperiment();\n    LlmEvaluationExperiment.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationExperiment) {\n    _instance.name = _instance.name || '';\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.gitSha = _instance.gitSha || '';\n    _instance.promptVersion = _instance.promptVersion || '';\n    _instance.modelName = _instance.modelName || '';\n    _instance.config = _instance.config || undefined;\n    _instance.llmEvaluationEvaluatorRuns =\n      _instance.llmEvaluationEvaluatorRuns || [];\n    _instance.startedAt = _instance.startedAt || undefined;\n    _instance.finishedAt = _instance.finishedAt || undefined;\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.nExamples = _instance.nExamples || 0;\n    _instance.nPassed = _instance.nPassed || 0;\n    _instance.nFailed = _instance.nFailed || 0;\n    _instance.llmEvaluationBaselineExperimentName =\n      _instance.llmEvaluationBaselineExperimentName || '';\n    _instance.parent = _instance.parent || '';\n    _instance.llmEvaluationExperimentStatus =\n      _instance.llmEvaluationExperimentStatus || 0;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.ccaiServiceNames = _instance.ccaiServiceNames || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.repetitions = _instance.repetitions || 0;\n    _instance.llmEvaluationScheduleName =\n      _instance.llmEvaluationScheduleName || '';\n    _instance.llmEvaluationExperimentKind =\n      _instance.llmEvaluationExperimentKind || 0;\n    _instance.llmEvaluationReleaseGateRunName =\n      _instance.llmEvaluationReleaseGateRunName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationExperiment,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 3:\n          _instance.displayName = _reader.readString();\n          break;\n        case 4:\n          _instance.description = _reader.readString();\n          break;\n        case 5:\n          _instance.gitSha = _reader.readString();\n          break;\n        case 6:\n          _instance.promptVersion = _reader.readString();\n          break;\n        case 7:\n          _instance.modelName = _reader.readString();\n          break;\n        case 8:\n          _instance.config = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.config,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          const messageInitializer9 = new LlmEvaluationEvaluatorRun();\n          _reader.readMessage(\n            messageInitializer9,\n            LlmEvaluationEvaluatorRun.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationEvaluatorRuns =\n            _instance.llmEvaluationEvaluatorRuns || []).push(\n            messageInitializer9\n          );\n          break;\n        case 10:\n          _instance.startedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.finishedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.finishedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.durationInS = _reader.readDouble();\n          break;\n        case 13:\n          _instance.nExamples = _reader.readInt32();\n          break;\n        case 14:\n          _instance.nPassed = _reader.readInt32();\n          break;\n        case 15:\n          _instance.nFailed = _reader.readInt32();\n          break;\n        case 16:\n          _instance.llmEvaluationBaselineExperimentName = _reader.readString();\n          break;\n        case 17:\n          _instance.parent = _reader.readString();\n          break;\n        case 18:\n          _instance.llmEvaluationExperimentStatus = _reader.readEnum();\n          break;\n        case 19:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 20:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 21:\n          (_instance.ccaiServiceNames = _instance.ccaiServiceNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 22:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 23:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 24:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 25:\n          _instance.repetitions = _reader.readInt32();\n          break;\n        case 26:\n          _instance.llmEvaluationScheduleName = _reader.readString();\n          break;\n        case 27:\n          _instance.llmEvaluationExperimentKind = _reader.readEnum();\n          break;\n        case 28:\n          _instance.llmEvaluationReleaseGateRunName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationExperiment.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationExperiment,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(2, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(3, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(4, _instance.description);\n    }\n    if (_instance.gitSha) {\n      _writer.writeString(5, _instance.gitSha);\n    }\n    if (_instance.promptVersion) {\n      _writer.writeString(6, _instance.promptVersion);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(7, _instance.modelName);\n    }\n    if (_instance.config) {\n      _writer.writeMessage(\n        8,\n        _instance.config as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (\n      _instance.llmEvaluationEvaluatorRuns &&\n      _instance.llmEvaluationEvaluatorRuns.length\n    ) {\n      _writer.writeRepeatedMessage(\n        9,\n        _instance.llmEvaluationEvaluatorRuns as any,\n        LlmEvaluationEvaluatorRun.serializeBinaryToWriter\n      );\n    }\n    if (_instance.startedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.startedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.finishedAt) {\n      _writer.writeMessage(\n        11,\n        _instance.finishedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeDouble(12, _instance.durationInS);\n    }\n    if (_instance.nExamples) {\n      _writer.writeInt32(13, _instance.nExamples);\n    }\n    if (_instance.nPassed) {\n      _writer.writeInt32(14, _instance.nPassed);\n    }\n    if (_instance.nFailed) {\n      _writer.writeInt32(15, _instance.nFailed);\n    }\n    if (_instance.llmEvaluationBaselineExperimentName) {\n      _writer.writeString(16, _instance.llmEvaluationBaselineExperimentName);\n    }\n    if (_instance.parent) {\n      _writer.writeString(17, _instance.parent);\n    }\n    if (_instance.llmEvaluationExperimentStatus) {\n      _writer.writeEnum(18, _instance.llmEvaluationExperimentStatus);\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(19, _instance.createdBy);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(20, _instance.languageCode);\n    }\n    if (_instance.ccaiServiceNames && _instance.ccaiServiceNames.length) {\n      _writer.writeRepeatedString(21, _instance.ccaiServiceNames);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        22,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        23,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(24, _instance.modifiedBy);\n    }\n    if (_instance.repetitions) {\n      _writer.writeInt32(25, _instance.repetitions);\n    }\n    if (_instance.llmEvaluationScheduleName) {\n      _writer.writeString(26, _instance.llmEvaluationScheduleName);\n    }\n    if (_instance.llmEvaluationExperimentKind) {\n      _writer.writeEnum(27, _instance.llmEvaluationExperimentKind);\n    }\n    if (_instance.llmEvaluationReleaseGateRunName) {\n      _writer.writeString(28, _instance.llmEvaluationReleaseGateRunName);\n    }\n  }\n\n  private _name: string;\n  private _llmEvaluationDatasetName: string;\n  private _displayName: string;\n  private _description: string;\n  private _gitSha: string;\n  private _promptVersion: string;\n  private _modelName: string;\n  private _config?: googleProtobuf008.Struct;\n  private _llmEvaluationEvaluatorRuns?: LlmEvaluationEvaluatorRun[];\n  private _startedAt?: googleProtobuf005.Timestamp;\n  private _finishedAt?: googleProtobuf005.Timestamp;\n  private _durationInS: number;\n  private _nExamples: number;\n  private _nPassed: number;\n  private _nFailed: number;\n  private _llmEvaluationBaselineExperimentName: string;\n  private _parent: string;\n  private _llmEvaluationExperimentStatus: LlmEvaluationExperimentStatus;\n  private _createdBy: string;\n  private _languageCode: string;\n  private _ccaiServiceNames: string[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _repetitions: number;\n  private _llmEvaluationScheduleName: string;\n  private _llmEvaluationExperimentKind: LlmEvaluationExperimentKind;\n  private _llmEvaluationReleaseGateRunName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationExperiment to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationExperiment.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.gitSha = _value.gitSha;\n    this.promptVersion = _value.promptVersion;\n    this.modelName = _value.modelName;\n    this.config = _value.config\n      ? new googleProtobuf008.Struct(_value.config)\n      : undefined;\n    this.llmEvaluationEvaluatorRuns = (\n      _value.llmEvaluationEvaluatorRuns || []\n    ).map(m => new LlmEvaluationEvaluatorRun(m));\n    this.startedAt = _value.startedAt\n      ? new googleProtobuf005.Timestamp(_value.startedAt)\n      : undefined;\n    this.finishedAt = _value.finishedAt\n      ? new googleProtobuf005.Timestamp(_value.finishedAt)\n      : undefined;\n    this.durationInS = _value.durationInS;\n    this.nExamples = _value.nExamples;\n    this.nPassed = _value.nPassed;\n    this.nFailed = _value.nFailed;\n    this.llmEvaluationBaselineExperimentName =\n      _value.llmEvaluationBaselineExperimentName;\n    this.parent = _value.parent;\n    this.llmEvaluationExperimentStatus = _value.llmEvaluationExperimentStatus;\n    this.createdBy = _value.createdBy;\n    this.languageCode = _value.languageCode;\n    this.ccaiServiceNames = (_value.ccaiServiceNames || []).slice();\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.repetitions = _value.repetitions;\n    this.llmEvaluationScheduleName = _value.llmEvaluationScheduleName;\n    this.llmEvaluationExperimentKind = _value.llmEvaluationExperimentKind;\n    this.llmEvaluationReleaseGateRunName =\n      _value.llmEvaluationReleaseGateRunName;\n    LlmEvaluationExperiment.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get gitSha(): string {\n    return this._gitSha;\n  }\n  set gitSha(value: string) {\n    this._gitSha = value;\n  }\n  get promptVersion(): string {\n    return this._promptVersion;\n  }\n  set promptVersion(value: string) {\n    this._promptVersion = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get config(): googleProtobuf008.Struct | undefined {\n    return this._config;\n  }\n  set config(value: googleProtobuf008.Struct | undefined) {\n    this._config = value;\n  }\n  get llmEvaluationEvaluatorRuns(): LlmEvaluationEvaluatorRun[] | undefined {\n    return this._llmEvaluationEvaluatorRuns;\n  }\n  set llmEvaluationEvaluatorRuns(\n    value: LlmEvaluationEvaluatorRun[] | undefined\n  ) {\n    this._llmEvaluationEvaluatorRuns = value;\n  }\n  get startedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._startedAt;\n  }\n  set startedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._startedAt = value;\n  }\n  get finishedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._finishedAt;\n  }\n  set finishedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._finishedAt = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get nExamples(): number {\n    return this._nExamples;\n  }\n  set nExamples(value: number) {\n    this._nExamples = value;\n  }\n  get nPassed(): number {\n    return this._nPassed;\n  }\n  set nPassed(value: number) {\n    this._nPassed = value;\n  }\n  get nFailed(): number {\n    return this._nFailed;\n  }\n  set nFailed(value: number) {\n    this._nFailed = value;\n  }\n  get llmEvaluationBaselineExperimentName(): string {\n    return this._llmEvaluationBaselineExperimentName;\n  }\n  set llmEvaluationBaselineExperimentName(value: string) {\n    this._llmEvaluationBaselineExperimentName = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get llmEvaluationExperimentStatus(): LlmEvaluationExperimentStatus {\n    return this._llmEvaluationExperimentStatus;\n  }\n  set llmEvaluationExperimentStatus(value: LlmEvaluationExperimentStatus) {\n    this._llmEvaluationExperimentStatus = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get ccaiServiceNames(): string[] {\n    return this._ccaiServiceNames;\n  }\n  set ccaiServiceNames(value: string[]) {\n    this._ccaiServiceNames = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get repetitions(): number {\n    return this._repetitions;\n  }\n  set repetitions(value: number) {\n    this._repetitions = value;\n  }\n  get llmEvaluationScheduleName(): string {\n    return this._llmEvaluationScheduleName;\n  }\n  set llmEvaluationScheduleName(value: string) {\n    this._llmEvaluationScheduleName = value;\n  }\n  get llmEvaluationExperimentKind(): LlmEvaluationExperimentKind {\n    return this._llmEvaluationExperimentKind;\n  }\n  set llmEvaluationExperimentKind(value: LlmEvaluationExperimentKind) {\n    this._llmEvaluationExperimentKind = value;\n  }\n  get llmEvaluationReleaseGateRunName(): string {\n    return this._llmEvaluationReleaseGateRunName;\n  }\n  set llmEvaluationReleaseGateRunName(value: string) {\n    this._llmEvaluationReleaseGateRunName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationExperiment.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationExperiment.AsObject {\n    return {\n      name: this.name,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      displayName: this.displayName,\n      description: this.description,\n      gitSha: this.gitSha,\n      promptVersion: this.promptVersion,\n      modelName: this.modelName,\n      config: this.config ? this.config.toObject() : undefined,\n      llmEvaluationEvaluatorRuns: (\n        this.llmEvaluationEvaluatorRuns || []\n      ).map(m => m.toObject()),\n      startedAt: this.startedAt ? this.startedAt.toObject() : undefined,\n      finishedAt: this.finishedAt ? this.finishedAt.toObject() : undefined,\n      durationInS: this.durationInS,\n      nExamples: this.nExamples,\n      nPassed: this.nPassed,\n      nFailed: this.nFailed,\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      parent: this.parent,\n      llmEvaluationExperimentStatus: this.llmEvaluationExperimentStatus,\n      createdBy: this.createdBy,\n      languageCode: this.languageCode,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      repetitions: this.repetitions,\n      llmEvaluationScheduleName: this.llmEvaluationScheduleName,\n      llmEvaluationExperimentKind: this.llmEvaluationExperimentKind,\n      llmEvaluationReleaseGateRunName: this.llmEvaluationReleaseGateRunName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationExperiment.AsProtobufJSON {\n    return {\n      name: this.name,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      displayName: this.displayName,\n      description: this.description,\n      gitSha: this.gitSha,\n      promptVersion: this.promptVersion,\n      modelName: this.modelName,\n      config: this.config ? this.config.toProtobufJSON(options) : null,\n      llmEvaluationEvaluatorRuns: (\n        this.llmEvaluationEvaluatorRuns || []\n      ).map(m => m.toProtobufJSON(options)),\n      startedAt: this.startedAt ? this.startedAt.toProtobufJSON(options) : null,\n      finishedAt: this.finishedAt\n        ? this.finishedAt.toProtobufJSON(options)\n        : null,\n      durationInS: this.durationInS,\n      nExamples: this.nExamples,\n      nPassed: this.nPassed,\n      nFailed: this.nFailed,\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      parent: this.parent,\n      llmEvaluationExperimentStatus:\n        LlmEvaluationExperimentStatus[\n          this.llmEvaluationExperimentStatus === null ||\n          this.llmEvaluationExperimentStatus === undefined\n            ? 0\n            : this.llmEvaluationExperimentStatus\n        ],\n      createdBy: this.createdBy,\n      languageCode: this.languageCode,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      repetitions: this.repetitions,\n      llmEvaluationScheduleName: this.llmEvaluationScheduleName,\n      llmEvaluationExperimentKind:\n        LlmEvaluationExperimentKind[\n          this.llmEvaluationExperimentKind === null ||\n          this.llmEvaluationExperimentKind === undefined\n            ? 0\n            : this.llmEvaluationExperimentKind\n        ],\n      llmEvaluationReleaseGateRunName: this.llmEvaluationReleaseGateRunName\n    };\n  }\n}\nexport module LlmEvaluationExperiment {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationExperiment\n   */\n  export interface AsObject {\n    name: string;\n    llmEvaluationDatasetName: string;\n    displayName: string;\n    description: string;\n    gitSha: string;\n    promptVersion: string;\n    modelName: string;\n    config?: googleProtobuf008.Struct.AsObject;\n    llmEvaluationEvaluatorRuns?: LlmEvaluationEvaluatorRun.AsObject[];\n    startedAt?: googleProtobuf005.Timestamp.AsObject;\n    finishedAt?: googleProtobuf005.Timestamp.AsObject;\n    durationInS: number;\n    nExamples: number;\n    nPassed: number;\n    nFailed: number;\n    llmEvaluationBaselineExperimentName: string;\n    parent: string;\n    llmEvaluationExperimentStatus: LlmEvaluationExperimentStatus;\n    createdBy: string;\n    languageCode: string;\n    ccaiServiceNames: string[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    repetitions: number;\n    llmEvaluationScheduleName: string;\n    llmEvaluationExperimentKind: LlmEvaluationExperimentKind;\n    llmEvaluationReleaseGateRunName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationExperiment\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    llmEvaluationDatasetName: string;\n    displayName: string;\n    description: string;\n    gitSha: string;\n    promptVersion: string;\n    modelName: string;\n    config: googleProtobuf008.Struct.AsProtobufJSON | null;\n    llmEvaluationEvaluatorRuns:\n      | LlmEvaluationEvaluatorRun.AsProtobufJSON[]\n      | null;\n    startedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    finishedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    durationInS: number;\n    nExamples: number;\n    nPassed: number;\n    nFailed: number;\n    llmEvaluationBaselineExperimentName: string;\n    parent: string;\n    llmEvaluationExperimentStatus: string;\n    createdBy: string;\n    languageCode: string;\n    ccaiServiceNames: string[];\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    repetitions: number;\n    llmEvaluationScheduleName: string;\n    llmEvaluationExperimentKind: string;\n    llmEvaluationReleaseGateRunName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationEvaluatorRun\n */\nexport class LlmEvaluationEvaluatorRun implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationEvaluatorRun';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationEvaluatorRun();\n    LlmEvaluationEvaluatorRun.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationEvaluatorRun) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.llmEvaluationExampleName =\n      _instance.llmEvaluationExampleName || '';\n    _instance.llmTelemetryRunId = _instance.llmTelemetryRunId || '';\n    _instance.llmEvaluationEvaluatorType =\n      _instance.llmEvaluationEvaluatorType || 0;\n    _instance.evaluatorName = _instance.evaluatorName || '';\n    _instance.llmEvaluationFeedbacks = _instance.llmEvaluationFeedbacks || [];\n    _instance.llmEvaluationExperimentName =\n      _instance.llmEvaluationExperimentName || '';\n    _instance.startedAt = _instance.startedAt || undefined;\n    _instance.finishedAt = _instance.finishedAt || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.llmEvaluationTurnResults =\n      _instance.llmEvaluationTurnResults || [];\n    _instance.repetitionIndex = _instance.repetitionIndex || 0;\n    _instance.actualOutput = _instance.actualOutput || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationEvaluatorRun,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.llmEvaluationExampleName = _reader.readString();\n          break;\n        case 4:\n          _instance.llmTelemetryRunId = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationEvaluatorType = _reader.readEnum();\n          break;\n        case 6:\n          _instance.evaluatorName = _reader.readString();\n          break;\n        case 7:\n          const messageInitializer7 = new LlmEvaluationFeedback();\n          _reader.readMessage(\n            messageInitializer7,\n            LlmEvaluationFeedback.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationFeedbacks =\n            _instance.llmEvaluationFeedbacks || []).push(messageInitializer7);\n          break;\n        case 8:\n          _instance.llmEvaluationExperimentName = _reader.readString();\n          break;\n        case 9:\n          _instance.startedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.finishedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.finishedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 14:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 15:\n          const messageInitializer15 = new LlmEvaluationTurnResult();\n          _reader.readMessage(\n            messageInitializer15,\n            LlmEvaluationTurnResult.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationTurnResults =\n            _instance.llmEvaluationTurnResults || []).push(\n            messageInitializer15\n          );\n          break;\n        case 16:\n          _instance.repetitionIndex = _reader.readInt32();\n          break;\n        case 17:\n          _instance.actualOutput = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.actualOutput,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationEvaluatorRun.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationEvaluatorRun,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.llmEvaluationExampleName) {\n      _writer.writeString(3, _instance.llmEvaluationExampleName);\n    }\n    if (_instance.llmTelemetryRunId) {\n      _writer.writeString(4, _instance.llmTelemetryRunId);\n    }\n    if (_instance.llmEvaluationEvaluatorType) {\n      _writer.writeEnum(5, _instance.llmEvaluationEvaluatorType);\n    }\n    if (_instance.evaluatorName) {\n      _writer.writeString(6, _instance.evaluatorName);\n    }\n    if (\n      _instance.llmEvaluationFeedbacks &&\n      _instance.llmEvaluationFeedbacks.length\n    ) {\n      _writer.writeRepeatedMessage(\n        7,\n        _instance.llmEvaluationFeedbacks as any,\n        LlmEvaluationFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEvaluationExperimentName) {\n      _writer.writeString(8, _instance.llmEvaluationExperimentName);\n    }\n    if (_instance.startedAt) {\n      _writer.writeMessage(\n        9,\n        _instance.startedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.finishedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.finishedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        11,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        12,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(13, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(14, _instance.modifiedBy);\n    }\n    if (\n      _instance.llmEvaluationTurnResults &&\n      _instance.llmEvaluationTurnResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        15,\n        _instance.llmEvaluationTurnResults as any,\n        LlmEvaluationTurnResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.repetitionIndex) {\n      _writer.writeInt32(16, _instance.repetitionIndex);\n    }\n    if (_instance.actualOutput) {\n      _writer.writeMessage(\n        17,\n        _instance.actualOutput as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _llmEvaluationExampleName: string;\n  private _llmTelemetryRunId: string;\n  private _llmEvaluationEvaluatorType: LlmEvaluationEvaluatorType;\n  private _evaluatorName: string;\n  private _llmEvaluationFeedbacks?: LlmEvaluationFeedback[];\n  private _llmEvaluationExperimentName: string;\n  private _startedAt?: googleProtobuf005.Timestamp;\n  private _finishedAt?: googleProtobuf005.Timestamp;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _llmEvaluationTurnResults?: LlmEvaluationTurnResult[];\n  private _repetitionIndex: number;\n  private _actualOutput?: googleProtobuf008.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationEvaluatorRun to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationEvaluatorRun.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.llmEvaluationExampleName = _value.llmEvaluationExampleName;\n    this.llmTelemetryRunId = _value.llmTelemetryRunId;\n    this.llmEvaluationEvaluatorType = _value.llmEvaluationEvaluatorType;\n    this.evaluatorName = _value.evaluatorName;\n    this.llmEvaluationFeedbacks = (_value.llmEvaluationFeedbacks || []).map(\n      m => new LlmEvaluationFeedback(m)\n    );\n    this.llmEvaluationExperimentName = _value.llmEvaluationExperimentName;\n    this.startedAt = _value.startedAt\n      ? new googleProtobuf005.Timestamp(_value.startedAt)\n      : undefined;\n    this.finishedAt = _value.finishedAt\n      ? new googleProtobuf005.Timestamp(_value.finishedAt)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.llmEvaluationTurnResults = (_value.llmEvaluationTurnResults || []).map(\n      m => new LlmEvaluationTurnResult(m)\n    );\n    this.repetitionIndex = _value.repetitionIndex;\n    this.actualOutput = _value.actualOutput\n      ? new googleProtobuf008.Struct(_value.actualOutput)\n      : undefined;\n    LlmEvaluationEvaluatorRun.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get llmEvaluationExampleName(): string {\n    return this._llmEvaluationExampleName;\n  }\n  set llmEvaluationExampleName(value: string) {\n    this._llmEvaluationExampleName = value;\n  }\n  get llmTelemetryRunId(): string {\n    return this._llmTelemetryRunId;\n  }\n  set llmTelemetryRunId(value: string) {\n    this._llmTelemetryRunId = value;\n  }\n  get llmEvaluationEvaluatorType(): LlmEvaluationEvaluatorType {\n    return this._llmEvaluationEvaluatorType;\n  }\n  set llmEvaluationEvaluatorType(value: LlmEvaluationEvaluatorType) {\n    this._llmEvaluationEvaluatorType = value;\n  }\n  get evaluatorName(): string {\n    return this._evaluatorName;\n  }\n  set evaluatorName(value: string) {\n    this._evaluatorName = value;\n  }\n  get llmEvaluationFeedbacks(): LlmEvaluationFeedback[] | undefined {\n    return this._llmEvaluationFeedbacks;\n  }\n  set llmEvaluationFeedbacks(value: LlmEvaluationFeedback[] | undefined) {\n    this._llmEvaluationFeedbacks = value;\n  }\n  get llmEvaluationExperimentName(): string {\n    return this._llmEvaluationExperimentName;\n  }\n  set llmEvaluationExperimentName(value: string) {\n    this._llmEvaluationExperimentName = value;\n  }\n  get startedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._startedAt;\n  }\n  set startedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._startedAt = value;\n  }\n  get finishedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._finishedAt;\n  }\n  set finishedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._finishedAt = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get llmEvaluationTurnResults(): LlmEvaluationTurnResult[] | undefined {\n    return this._llmEvaluationTurnResults;\n  }\n  set llmEvaluationTurnResults(value: LlmEvaluationTurnResult[] | undefined) {\n    this._llmEvaluationTurnResults = value;\n  }\n  get repetitionIndex(): number {\n    return this._repetitionIndex;\n  }\n  set repetitionIndex(value: number) {\n    this._repetitionIndex = value;\n  }\n  get actualOutput(): googleProtobuf008.Struct | undefined {\n    return this._actualOutput;\n  }\n  set actualOutput(value: googleProtobuf008.Struct | undefined) {\n    this._actualOutput = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationEvaluatorRun.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationEvaluatorRun.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      llmTelemetryRunId: this.llmTelemetryRunId,\n      llmEvaluationEvaluatorType: this.llmEvaluationEvaluatorType,\n      evaluatorName: this.evaluatorName,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toObject()\n      ),\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      startedAt: this.startedAt ? this.startedAt.toObject() : undefined,\n      finishedAt: this.finishedAt ? this.finishedAt.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      llmEvaluationTurnResults: (this.llmEvaluationTurnResults || []).map(m =>\n        m.toObject()\n      ),\n      repetitionIndex: this.repetitionIndex,\n      actualOutput: this.actualOutput ? this.actualOutput.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationEvaluatorRun.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      llmTelemetryRunId: this.llmTelemetryRunId,\n      llmEvaluationEvaluatorType:\n        LlmEvaluationEvaluatorType[\n          this.llmEvaluationEvaluatorType === null ||\n          this.llmEvaluationEvaluatorType === undefined\n            ? 0\n            : this.llmEvaluationEvaluatorType\n        ],\n      evaluatorName: this.evaluatorName,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      startedAt: this.startedAt ? this.startedAt.toProtobufJSON(options) : null,\n      finishedAt: this.finishedAt\n        ? this.finishedAt.toProtobufJSON(options)\n        : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      llmEvaluationTurnResults: (this.llmEvaluationTurnResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      repetitionIndex: this.repetitionIndex,\n      actualOutput: this.actualOutput\n        ? this.actualOutput.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmEvaluationEvaluatorRun {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationEvaluatorRun\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    llmEvaluationExampleName: string;\n    llmTelemetryRunId: string;\n    llmEvaluationEvaluatorType: LlmEvaluationEvaluatorType;\n    evaluatorName: string;\n    llmEvaluationFeedbacks?: LlmEvaluationFeedback.AsObject[];\n    llmEvaluationExperimentName: string;\n    startedAt?: googleProtobuf005.Timestamp.AsObject;\n    finishedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    llmEvaluationTurnResults?: LlmEvaluationTurnResult.AsObject[];\n    repetitionIndex: number;\n    actualOutput?: googleProtobuf008.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationEvaluatorRun\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    llmEvaluationExampleName: string;\n    llmTelemetryRunId: string;\n    llmEvaluationEvaluatorType: string;\n    evaluatorName: string;\n    llmEvaluationFeedbacks: LlmEvaluationFeedback.AsProtobufJSON[] | null;\n    llmEvaluationExperimentName: string;\n    startedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    finishedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    llmEvaluationTurnResults: LlmEvaluationTurnResult.AsProtobufJSON[] | null;\n    repetitionIndex: number;\n    actualOutput: googleProtobuf008.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationFeedback\n */\nexport class LlmEvaluationFeedback implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationFeedback';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationFeedback();\n    LlmEvaluationFeedback.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationFeedback) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.criterion = _instance.criterion || '';\n    _instance.score = _instance.score || 0;\n    _instance.categoricalValue = _instance.categoricalValue || '';\n    _instance.comment = _instance.comment || '';\n    _instance.annotatorUserId = _instance.annotatorUserId || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.raw = _instance.raw || undefined;\n    _instance.llmEvaluationEvaluatorRunName =\n      _instance.llmEvaluationEvaluatorRunName || '';\n    _instance.llmEvaluationExperimentName =\n      _instance.llmEvaluationExperimentName || '';\n    _instance.llmEvaluationExampleName =\n      _instance.llmEvaluationExampleName || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationFeedback,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.criterion = _reader.readString();\n          break;\n        case 4:\n          _instance.score = _reader.readDouble();\n          break;\n        case 5:\n          _instance.categoricalValue = _reader.readString();\n          break;\n        case 6:\n          _instance.comment = _reader.readString();\n          break;\n        case 7:\n          _instance.annotatorUserId = _reader.readString();\n          break;\n        case 8:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.raw = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.raw,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.llmEvaluationEvaluatorRunName = _reader.readString();\n          break;\n        case 11:\n          _instance.llmEvaluationExperimentName = _reader.readString();\n          break;\n        case 12:\n          _instance.llmEvaluationExampleName = _reader.readString();\n          break;\n        case 13:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 14:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 15:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationFeedback.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationFeedback,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.criterion) {\n      _writer.writeString(3, _instance.criterion);\n    }\n    if (_instance.score) {\n      _writer.writeDouble(4, _instance.score);\n    }\n    if (_instance.categoricalValue) {\n      _writer.writeString(5, _instance.categoricalValue);\n    }\n    if (_instance.comment) {\n      _writer.writeString(6, _instance.comment);\n    }\n    if (_instance.annotatorUserId) {\n      _writer.writeString(7, _instance.annotatorUserId);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        8,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.raw) {\n      _writer.writeMessage(\n        9,\n        _instance.raw as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEvaluationEvaluatorRunName) {\n      _writer.writeString(10, _instance.llmEvaluationEvaluatorRunName);\n    }\n    if (_instance.llmEvaluationExperimentName) {\n      _writer.writeString(11, _instance.llmEvaluationExperimentName);\n    }\n    if (_instance.llmEvaluationExampleName) {\n      _writer.writeString(12, _instance.llmEvaluationExampleName);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        13,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(14, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(15, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _criterion: string;\n  private _score: number;\n  private _categoricalValue: string;\n  private _comment: string;\n  private _annotatorUserId: string;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _raw?: googleProtobuf008.Struct;\n  private _llmEvaluationEvaluatorRunName: string;\n  private _llmEvaluationExperimentName: string;\n  private _llmEvaluationExampleName: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationFeedback to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationFeedback.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.criterion = _value.criterion;\n    this.score = _value.score;\n    this.categoricalValue = _value.categoricalValue;\n    this.comment = _value.comment;\n    this.annotatorUserId = _value.annotatorUserId;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.raw = _value.raw\n      ? new googleProtobuf008.Struct(_value.raw)\n      : undefined;\n    this.llmEvaluationEvaluatorRunName = _value.llmEvaluationEvaluatorRunName;\n    this.llmEvaluationExperimentName = _value.llmEvaluationExperimentName;\n    this.llmEvaluationExampleName = _value.llmEvaluationExampleName;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    LlmEvaluationFeedback.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get criterion(): string {\n    return this._criterion;\n  }\n  set criterion(value: string) {\n    this._criterion = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n  get categoricalValue(): string {\n    return this._categoricalValue;\n  }\n  set categoricalValue(value: string) {\n    this._categoricalValue = value;\n  }\n  get comment(): string {\n    return this._comment;\n  }\n  set comment(value: string) {\n    this._comment = value;\n  }\n  get annotatorUserId(): string {\n    return this._annotatorUserId;\n  }\n  set annotatorUserId(value: string) {\n    this._annotatorUserId = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get raw(): googleProtobuf008.Struct | undefined {\n    return this._raw;\n  }\n  set raw(value: googleProtobuf008.Struct | undefined) {\n    this._raw = value;\n  }\n  get llmEvaluationEvaluatorRunName(): string {\n    return this._llmEvaluationEvaluatorRunName;\n  }\n  set llmEvaluationEvaluatorRunName(value: string) {\n    this._llmEvaluationEvaluatorRunName = value;\n  }\n  get llmEvaluationExperimentName(): string {\n    return this._llmEvaluationExperimentName;\n  }\n  set llmEvaluationExperimentName(value: string) {\n    this._llmEvaluationExperimentName = value;\n  }\n  get llmEvaluationExampleName(): string {\n    return this._llmEvaluationExampleName;\n  }\n  set llmEvaluationExampleName(value: string) {\n    this._llmEvaluationExampleName = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationFeedback.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationFeedback.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      criterion: this.criterion,\n      score: this.score,\n      categoricalValue: this.categoricalValue,\n      comment: this.comment,\n      annotatorUserId: this.annotatorUserId,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      raw: this.raw ? this.raw.toObject() : undefined,\n      llmEvaluationEvaluatorRunName: this.llmEvaluationEvaluatorRunName,\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationFeedback.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      criterion: this.criterion,\n      score: this.score,\n      categoricalValue: this.categoricalValue,\n      comment: this.comment,\n      annotatorUserId: this.annotatorUserId,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      raw: this.raw ? this.raw.toProtobufJSON(options) : null,\n      llmEvaluationEvaluatorRunName: this.llmEvaluationEvaluatorRunName,\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module LlmEvaluationFeedback {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationFeedback\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    criterion: string;\n    score: number;\n    categoricalValue: string;\n    comment: string;\n    annotatorUserId: string;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    raw?: googleProtobuf008.Struct.AsObject;\n    llmEvaluationEvaluatorRunName: string;\n    llmEvaluationExperimentName: string;\n    llmEvaluationExampleName: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationFeedback\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    criterion: string;\n    score: number;\n    categoricalValue: string;\n    comment: string;\n    annotatorUserId: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    raw: googleProtobuf008.Struct.AsProtobufJSON | null;\n    llmEvaluationEvaluatorRunName: string;\n    llmEvaluationExperimentName: string;\n    llmEvaluationExampleName: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationComparison\n */\nexport class LlmEvaluationComparison implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationComparison';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationComparison();\n    LlmEvaluationComparison.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationComparison) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.llmEvaluationExperimentNames =\n      _instance.llmEvaluationExperimentNames || [];\n    _instance.llmEvaluationBaselineExperimentName =\n      _instance.llmEvaluationBaselineExperimentName || '';\n    _instance.llmEvaluationPairwiseResults =\n      _instance.llmEvaluationPairwiseResults || [];\n    _instance.aggregate = _instance.aggregate || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationComparison,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          (_instance.llmEvaluationExperimentNames =\n            _instance.llmEvaluationExperimentNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.llmEvaluationBaselineExperimentName = _reader.readString();\n          break;\n        case 5:\n          const messageInitializer5 = new LlmEvaluationPairwiseResult();\n          _reader.readMessage(\n            messageInitializer5,\n            LlmEvaluationPairwiseResult.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationPairwiseResults =\n            _instance.llmEvaluationPairwiseResults || []).push(\n            messageInitializer5\n          );\n          break;\n        case 6:\n          _instance.aggregate = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.aggregate,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 10:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationComparison.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationComparison,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (\n      _instance.llmEvaluationExperimentNames &&\n      _instance.llmEvaluationExperimentNames.length\n    ) {\n      _writer.writeRepeatedString(3, _instance.llmEvaluationExperimentNames);\n    }\n    if (_instance.llmEvaluationBaselineExperimentName) {\n      _writer.writeString(4, _instance.llmEvaluationBaselineExperimentName);\n    }\n    if (\n      _instance.llmEvaluationPairwiseResults &&\n      _instance.llmEvaluationPairwiseResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        5,\n        _instance.llmEvaluationPairwiseResults as any,\n        LlmEvaluationPairwiseResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.aggregate) {\n      _writer.writeMessage(\n        6,\n        _instance.aggregate as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        7,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        8,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(9, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(10, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _llmEvaluationExperimentNames: string[];\n  private _llmEvaluationBaselineExperimentName: string;\n  private _llmEvaluationPairwiseResults?: LlmEvaluationPairwiseResult[];\n  private _aggregate?: googleProtobuf008.Struct;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationComparison to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationComparison.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.llmEvaluationExperimentNames = (\n      _value.llmEvaluationExperimentNames || []\n    ).slice();\n    this.llmEvaluationBaselineExperimentName =\n      _value.llmEvaluationBaselineExperimentName;\n    this.llmEvaluationPairwiseResults = (\n      _value.llmEvaluationPairwiseResults || []\n    ).map(m => new LlmEvaluationPairwiseResult(m));\n    this.aggregate = _value.aggregate\n      ? new googleProtobuf008.Struct(_value.aggregate)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    LlmEvaluationComparison.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get llmEvaluationExperimentNames(): string[] {\n    return this._llmEvaluationExperimentNames;\n  }\n  set llmEvaluationExperimentNames(value: string[]) {\n    this._llmEvaluationExperimentNames = value;\n  }\n  get llmEvaluationBaselineExperimentName(): string {\n    return this._llmEvaluationBaselineExperimentName;\n  }\n  set llmEvaluationBaselineExperimentName(value: string) {\n    this._llmEvaluationBaselineExperimentName = value;\n  }\n  get llmEvaluationPairwiseResults():\n    | LlmEvaluationPairwiseResult[]\n    | undefined {\n    return this._llmEvaluationPairwiseResults;\n  }\n  set llmEvaluationPairwiseResults(\n    value: LlmEvaluationPairwiseResult[] | undefined\n  ) {\n    this._llmEvaluationPairwiseResults = value;\n  }\n  get aggregate(): googleProtobuf008.Struct | undefined {\n    return this._aggregate;\n  }\n  set aggregate(value: googleProtobuf008.Struct | undefined) {\n    this._aggregate = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationComparison.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationComparison.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      llmEvaluationExperimentNames: (\n        this.llmEvaluationExperimentNames || []\n      ).slice(),\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      llmEvaluationPairwiseResults: (\n        this.llmEvaluationPairwiseResults || []\n      ).map(m => m.toObject()),\n      aggregate: this.aggregate ? this.aggregate.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationComparison.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      llmEvaluationExperimentNames: (\n        this.llmEvaluationExperimentNames || []\n      ).slice(),\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      llmEvaluationPairwiseResults: (\n        this.llmEvaluationPairwiseResults || []\n      ).map(m => m.toProtobufJSON(options)),\n      aggregate: this.aggregate ? this.aggregate.toProtobufJSON(options) : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module LlmEvaluationComparison {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationComparison\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    llmEvaluationExperimentNames: string[];\n    llmEvaluationBaselineExperimentName: string;\n    llmEvaluationPairwiseResults?: LlmEvaluationPairwiseResult.AsObject[];\n    aggregate?: googleProtobuf008.Struct.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationComparison\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    llmEvaluationExperimentNames: string[];\n    llmEvaluationBaselineExperimentName: string;\n    llmEvaluationPairwiseResults:\n      | LlmEvaluationPairwiseResult.AsProtobufJSON[]\n      | null;\n    aggregate: googleProtobuf008.Struct.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationPairwiseResult\n */\nexport class LlmEvaluationPairwiseResult implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationPairwiseResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationPairwiseResult();\n    LlmEvaluationPairwiseResult.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationPairwiseResult) {\n    _instance.llmEvaluationExampleName =\n      _instance.llmEvaluationExampleName || '';\n    _instance.llmEvaluationWinnerExperimentName =\n      _instance.llmEvaluationWinnerExperimentName || '';\n    _instance.scoreDelta = _instance.scoreDelta || 0;\n    _instance.reason = _instance.reason || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationPairwiseResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationExampleName = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationWinnerExperimentName = _reader.readString();\n          break;\n        case 3:\n          _instance.scoreDelta = _reader.readDouble();\n          break;\n        case 4:\n          _instance.reason = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationPairwiseResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationPairwiseResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationExampleName) {\n      _writer.writeString(1, _instance.llmEvaluationExampleName);\n    }\n    if (_instance.llmEvaluationWinnerExperimentName) {\n      _writer.writeString(2, _instance.llmEvaluationWinnerExperimentName);\n    }\n    if (_instance.scoreDelta) {\n      _writer.writeDouble(3, _instance.scoreDelta);\n    }\n    if (_instance.reason) {\n      _writer.writeString(4, _instance.reason);\n    }\n  }\n\n  private _llmEvaluationExampleName: string;\n  private _llmEvaluationWinnerExperimentName: string;\n  private _scoreDelta: number;\n  private _reason: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationPairwiseResult to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationPairwiseResult.AsObject>) {\n    _value = _value || {};\n    this.llmEvaluationExampleName = _value.llmEvaluationExampleName;\n    this.llmEvaluationWinnerExperimentName =\n      _value.llmEvaluationWinnerExperimentName;\n    this.scoreDelta = _value.scoreDelta;\n    this.reason = _value.reason;\n    LlmEvaluationPairwiseResult.refineValues(this);\n  }\n  get llmEvaluationExampleName(): string {\n    return this._llmEvaluationExampleName;\n  }\n  set llmEvaluationExampleName(value: string) {\n    this._llmEvaluationExampleName = value;\n  }\n  get llmEvaluationWinnerExperimentName(): string {\n    return this._llmEvaluationWinnerExperimentName;\n  }\n  set llmEvaluationWinnerExperimentName(value: string) {\n    this._llmEvaluationWinnerExperimentName = value;\n  }\n  get scoreDelta(): number {\n    return this._scoreDelta;\n  }\n  set scoreDelta(value: number) {\n    this._scoreDelta = value;\n  }\n  get reason(): string {\n    return this._reason;\n  }\n  set reason(value: string) {\n    this._reason = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationPairwiseResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationPairwiseResult.AsObject {\n    return {\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      llmEvaluationWinnerExperimentName: this.llmEvaluationWinnerExperimentName,\n      scoreDelta: this.scoreDelta,\n      reason: this.reason\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationPairwiseResult.AsProtobufJSON {\n    return {\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      llmEvaluationWinnerExperimentName: this.llmEvaluationWinnerExperimentName,\n      scoreDelta: this.scoreDelta,\n      reason: this.reason\n    };\n  }\n}\nexport module LlmEvaluationPairwiseResult {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationPairwiseResult\n   */\n  export interface AsObject {\n    llmEvaluationExampleName: string;\n    llmEvaluationWinnerExperimentName: string;\n    scoreDelta: number;\n    reason: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationPairwiseResult\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExampleName: string;\n    llmEvaluationWinnerExperimentName: string;\n    scoreDelta: number;\n    reason: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationDatasetRequest\n */\nexport class CreateLlmEvaluationDatasetRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationDatasetRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationDatasetRequest();\n    CreateLlmEvaluationDatasetRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateLlmEvaluationDatasetRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.llmEvaluationExamples = _instance.llmEvaluationExamples || [];\n    _instance.tags = _instance.tags || [];\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationDatasetRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          const messageInitializer4 = new LlmEvaluationExample();\n          _reader.readMessage(\n            messageInitializer4,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExamples =\n            _instance.llmEvaluationExamples || []).push(messageInitializer4);\n          break;\n        case 5:\n          (_instance.tags = _instance.tags || []).push(_reader.readString());\n          break;\n        case 6:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationDatasetRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationDatasetRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (\n      _instance.llmEvaluationExamples &&\n      _instance.llmEvaluationExamples.length\n    ) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.llmEvaluationExamples as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n    if (_instance.tags && _instance.tags.length) {\n      _writer.writeRepeatedString(5, _instance.tags);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(6, _instance.languageCode);\n    }\n  }\n\n  private _parent: string;\n  private _displayName: string;\n  private _description: string;\n  private _llmEvaluationExamples?: LlmEvaluationExample[];\n  private _tags: string[];\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationDatasetRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateLlmEvaluationDatasetRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.llmEvaluationExamples = (_value.llmEvaluationExamples || []).map(\n      m => new LlmEvaluationExample(m)\n    );\n    this.tags = (_value.tags || []).slice();\n    this.languageCode = _value.languageCode;\n    CreateLlmEvaluationDatasetRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get llmEvaluationExamples(): LlmEvaluationExample[] | undefined {\n    return this._llmEvaluationExamples;\n  }\n  set llmEvaluationExamples(value: LlmEvaluationExample[] | undefined) {\n    this._llmEvaluationExamples = value;\n  }\n  get tags(): string[] {\n    return this._tags;\n  }\n  set tags(value: string[]) {\n    this._tags = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationDatasetRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationDatasetRequest.AsObject {\n    return {\n      parent: this.parent,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toObject()\n      ),\n      tags: (this.tags || []).slice(),\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationDatasetRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      tags: (this.tags || []).slice(),\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CreateLlmEvaluationDatasetRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationDatasetRequest\n   */\n  export interface AsObject {\n    parent: string;\n    displayName: string;\n    description: string;\n    llmEvaluationExamples?: LlmEvaluationExample.AsObject[];\n    tags: string[];\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationDatasetRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    displayName: string;\n    description: string;\n    llmEvaluationExamples: LlmEvaluationExample.AsProtobufJSON[] | null;\n    tags: string[];\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationDatasetRequest\n */\nexport class GetLlmEvaluationDatasetRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationDatasetRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationDatasetRequest();\n    GetLlmEvaluationDatasetRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationDatasetRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationDatasetRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationDatasetRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationDatasetRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationDatasetRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationDatasetRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationDatasetRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationDatasetRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationDatasetRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationDatasetRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationDatasetRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationDatasetRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationDatasetRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationDatasetFilter\n */\nexport class LlmEvaluationDatasetFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationDatasetFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationDatasetFilter();\n    LlmEvaluationDatasetFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationDatasetFilter) {\n    _instance.displayName = _instance.displayName || '';\n    _instance.tags = _instance.tags || [];\n    _instance.llmEvaluationDatasetType =\n      _instance.llmEvaluationDatasetType || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationDatasetFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        case 2:\n          (_instance.tags = _instance.tags || []).push(_reader.readString());\n          break;\n        case 3:\n          _instance.llmEvaluationDatasetType = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationDatasetFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationDatasetFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n    if (_instance.tags && _instance.tags.length) {\n      _writer.writeRepeatedString(2, _instance.tags);\n    }\n    if (_instance.llmEvaluationDatasetType) {\n      _writer.writeEnum(3, _instance.llmEvaluationDatasetType);\n    }\n  }\n\n  private _displayName: string;\n  private _tags: string[];\n  private _llmEvaluationDatasetType: LlmEvaluationDatasetType;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationDatasetFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationDatasetFilter.AsObject>) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    this.tags = (_value.tags || []).slice();\n    this.llmEvaluationDatasetType = _value.llmEvaluationDatasetType;\n    LlmEvaluationDatasetFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get tags(): string[] {\n    return this._tags;\n  }\n  set tags(value: string[]) {\n    this._tags = value;\n  }\n  get llmEvaluationDatasetType(): LlmEvaluationDatasetType {\n    return this._llmEvaluationDatasetType;\n  }\n  set llmEvaluationDatasetType(value: LlmEvaluationDatasetType) {\n    this._llmEvaluationDatasetType = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationDatasetFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationDatasetFilter.AsObject {\n    return {\n      displayName: this.displayName,\n      tags: (this.tags || []).slice(),\n      llmEvaluationDatasetType: this.llmEvaluationDatasetType\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationDatasetFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName,\n      tags: (this.tags || []).slice(),\n      llmEvaluationDatasetType:\n        LlmEvaluationDatasetType[\n          this.llmEvaluationDatasetType === null ||\n          this.llmEvaluationDatasetType === undefined\n            ? 0\n            : this.llmEvaluationDatasetType\n        ]\n    };\n  }\n}\nexport module LlmEvaluationDatasetFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationDatasetFilter\n   */\n  export interface AsObject {\n    displayName: string;\n    tags: string[];\n    llmEvaluationDatasetType: LlmEvaluationDatasetType;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationDatasetFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n    tags: string[];\n    llmEvaluationDatasetType: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationDatasetsRequest\n */\nexport class ListLlmEvaluationDatasetsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationDatasetsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationDatasetsRequest();\n    ListLlmEvaluationDatasetsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationDatasetsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationDatasetFilter =\n      _instance.llmEvaluationDatasetFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationDatasetsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationDatasetFilter = new LlmEvaluationDatasetFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationDatasetFilter,\n            LlmEvaluationDatasetFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationDatasetsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationDatasetsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationDatasetFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationDatasetFilter as any,\n        LlmEvaluationDatasetFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationDatasetFilter?: LlmEvaluationDatasetFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationDatasetsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationDatasetsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationDatasetFilter = _value.llmEvaluationDatasetFilter\n      ? new LlmEvaluationDatasetFilter(_value.llmEvaluationDatasetFilter)\n      : undefined;\n    ListLlmEvaluationDatasetsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationDatasetFilter(): LlmEvaluationDatasetFilter | undefined {\n    return this._llmEvaluationDatasetFilter;\n  }\n  set llmEvaluationDatasetFilter(\n    value: LlmEvaluationDatasetFilter | undefined\n  ) {\n    this._llmEvaluationDatasetFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationDatasetsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationDatasetsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationDatasetFilter: this.llmEvaluationDatasetFilter\n        ? this.llmEvaluationDatasetFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationDatasetsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationDatasetFilter: this.llmEvaluationDatasetFilter\n        ? this.llmEvaluationDatasetFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationDatasetsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationDatasetsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationDatasetFilter?: LlmEvaluationDatasetFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationDatasetsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationDatasetFilter: LlmEvaluationDatasetFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationDatasetsResponse\n */\nexport class ListLlmEvaluationDatasetsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationDatasetsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationDatasetsResponse();\n    ListLlmEvaluationDatasetsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationDatasetsResponse) {\n    _instance.llmEvaluationDatasets = _instance.llmEvaluationDatasets || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationDatasetsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationDataset();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationDataset.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationDatasets =\n            _instance.llmEvaluationDatasets || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationDatasetsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationDatasetsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationDatasets &&\n      _instance.llmEvaluationDatasets.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationDatasets as any,\n        LlmEvaluationDataset.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationDatasets?: LlmEvaluationDataset[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationDatasetsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationDatasetsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationDatasets = (_value.llmEvaluationDatasets || []).map(\n      m => new LlmEvaluationDataset(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationDatasetsResponse.refineValues(this);\n  }\n  get llmEvaluationDatasets(): LlmEvaluationDataset[] | undefined {\n    return this._llmEvaluationDatasets;\n  }\n  set llmEvaluationDatasets(value: LlmEvaluationDataset[] | undefined) {\n    this._llmEvaluationDatasets = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationDatasetsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationDatasetsResponse.AsObject {\n    return {\n      llmEvaluationDatasets: (this.llmEvaluationDatasets || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationDatasetsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationDatasets: (this.llmEvaluationDatasets || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationDatasetsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationDatasetsResponse\n   */\n  export interface AsObject {\n    llmEvaluationDatasets?: LlmEvaluationDataset.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationDatasetsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationDatasets: LlmEvaluationDataset.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationDatasetRequest\n */\nexport class UpdateLlmEvaluationDatasetRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationDatasetRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationDatasetRequest();\n    UpdateLlmEvaluationDatasetRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationDatasetRequest) {\n    _instance.llmEvaluationDataset =\n      _instance.llmEvaluationDataset || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationDatasetRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationDataset = new LlmEvaluationDataset();\n          _reader.readMessage(\n            _instance.llmEvaluationDataset,\n            LlmEvaluationDataset.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationDatasetRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationDatasetRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationDataset) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationDataset as any,\n        LlmEvaluationDataset.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationDataset?: LlmEvaluationDataset;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationDatasetRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationDatasetRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationDataset = _value.llmEvaluationDataset\n      ? new LlmEvaluationDataset(_value.llmEvaluationDataset)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationDatasetRequest.refineValues(this);\n  }\n  get llmEvaluationDataset(): LlmEvaluationDataset | undefined {\n    return this._llmEvaluationDataset;\n  }\n  set llmEvaluationDataset(value: LlmEvaluationDataset | undefined) {\n    this._llmEvaluationDataset = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationDatasetRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationDatasetRequest.AsObject {\n    return {\n      llmEvaluationDataset: this.llmEvaluationDataset\n        ? this.llmEvaluationDataset.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationDatasetRequest.AsProtobufJSON {\n    return {\n      llmEvaluationDataset: this.llmEvaluationDataset\n        ? this.llmEvaluationDataset.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationDatasetRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationDatasetRequest\n   */\n  export interface AsObject {\n    llmEvaluationDataset?: LlmEvaluationDataset.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationDatasetRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationDataset: LlmEvaluationDataset.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationDatasetRequest\n */\nexport class DeleteLlmEvaluationDatasetRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationDatasetRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationDatasetRequest();\n    DeleteLlmEvaluationDatasetRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationDatasetRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationDatasetRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationDatasetRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationDatasetRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationDatasetRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationDatasetRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationDatasetRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationDatasetRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationDatasetRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationDatasetRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationDatasetRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationDatasetRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationDatasetRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddLlmEvaluationExampleRequest\n */\nexport class AddLlmEvaluationExampleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddLlmEvaluationExampleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddLlmEvaluationExampleRequest();\n    AddLlmEvaluationExampleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddLlmEvaluationExampleRequest) {\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.llmEvaluationExample =\n      _instance.llmEvaluationExample || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddLlmEvaluationExampleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationExample = new LlmEvaluationExample();\n          _reader.readMessage(\n            _instance.llmEvaluationExample,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddLlmEvaluationExampleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddLlmEvaluationExampleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(1, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.llmEvaluationExample) {\n      _writer.writeMessage(\n        2,\n        _instance.llmEvaluationExample as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationDatasetName: string;\n  private _llmEvaluationExample?: LlmEvaluationExample;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddLlmEvaluationExampleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<AddLlmEvaluationExampleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.llmEvaluationExample = _value.llmEvaluationExample\n      ? new LlmEvaluationExample(_value.llmEvaluationExample)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    AddLlmEvaluationExampleRequest.refineValues(this);\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get llmEvaluationExample(): LlmEvaluationExample | undefined {\n    return this._llmEvaluationExample;\n  }\n  set llmEvaluationExample(value: LlmEvaluationExample | undefined) {\n    this._llmEvaluationExample = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddLlmEvaluationExampleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddLlmEvaluationExampleRequest.AsObject {\n    return {\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationExample: this.llmEvaluationExample\n        ? this.llmEvaluationExample.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddLlmEvaluationExampleRequest.AsProtobufJSON {\n    return {\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationExample: this.llmEvaluationExample\n        ? this.llmEvaluationExample.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module AddLlmEvaluationExampleRequest {\n  /**\n   * Standard JavaScript object representation for AddLlmEvaluationExampleRequest\n   */\n  export interface AsObject {\n    llmEvaluationDatasetName: string;\n    llmEvaluationExample?: LlmEvaluationExample.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for AddLlmEvaluationExampleRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationDatasetName: string;\n    llmEvaluationExample: LlmEvaluationExample.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddLlmEvaluationExamplesRequest\n */\nexport class AddLlmEvaluationExamplesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddLlmEvaluationExamplesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddLlmEvaluationExamplesRequest();\n    AddLlmEvaluationExamplesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddLlmEvaluationExamplesRequest) {\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.llmEvaluationExamples = _instance.llmEvaluationExamples || [];\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddLlmEvaluationExamplesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new LlmEvaluationExample();\n          _reader.readMessage(\n            messageInitializer2,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExamples =\n            _instance.llmEvaluationExamples || []).push(messageInitializer2);\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddLlmEvaluationExamplesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddLlmEvaluationExamplesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(1, _instance.llmEvaluationDatasetName);\n    }\n    if (\n      _instance.llmEvaluationExamples &&\n      _instance.llmEvaluationExamples.length\n    ) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.llmEvaluationExamples as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationDatasetName: string;\n  private _llmEvaluationExamples?: LlmEvaluationExample[];\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddLlmEvaluationExamplesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<AddLlmEvaluationExamplesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.llmEvaluationExamples = (_value.llmEvaluationExamples || []).map(\n      m => new LlmEvaluationExample(m)\n    );\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    AddLlmEvaluationExamplesRequest.refineValues(this);\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get llmEvaluationExamples(): LlmEvaluationExample[] | undefined {\n    return this._llmEvaluationExamples;\n  }\n  set llmEvaluationExamples(value: LlmEvaluationExample[] | undefined) {\n    this._llmEvaluationExamples = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddLlmEvaluationExamplesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddLlmEvaluationExamplesRequest.AsObject {\n    return {\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toObject()\n      ),\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddLlmEvaluationExamplesRequest.AsProtobufJSON {\n    return {\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module AddLlmEvaluationExamplesRequest {\n  /**\n   * Standard JavaScript object representation for AddLlmEvaluationExamplesRequest\n   */\n  export interface AsObject {\n    llmEvaluationDatasetName: string;\n    llmEvaluationExamples?: LlmEvaluationExample.AsObject[];\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for AddLlmEvaluationExamplesRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationDatasetName: string;\n    llmEvaluationExamples: LlmEvaluationExample.AsProtobufJSON[] | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddLlmEvaluationExamplesResponse\n */\nexport class AddLlmEvaluationExamplesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.AddLlmEvaluationExamplesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddLlmEvaluationExamplesResponse();\n    AddLlmEvaluationExamplesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddLlmEvaluationExamplesResponse) {\n    _instance.llmEvaluationExamples = _instance.llmEvaluationExamples || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddLlmEvaluationExamplesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationExample();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExamples =\n            _instance.llmEvaluationExamples || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddLlmEvaluationExamplesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddLlmEvaluationExamplesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationExamples &&\n      _instance.llmEvaluationExamples.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationExamples as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmEvaluationExamples?: LlmEvaluationExample[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddLlmEvaluationExamplesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<AddLlmEvaluationExamplesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExamples = (_value.llmEvaluationExamples || []).map(\n      m => new LlmEvaluationExample(m)\n    );\n    AddLlmEvaluationExamplesResponse.refineValues(this);\n  }\n  get llmEvaluationExamples(): LlmEvaluationExample[] | undefined {\n    return this._llmEvaluationExamples;\n  }\n  set llmEvaluationExamples(value: LlmEvaluationExample[] | undefined) {\n    this._llmEvaluationExamples = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddLlmEvaluationExamplesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddLlmEvaluationExamplesResponse.AsObject {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toObject()\n      )\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddLlmEvaluationExamplesResponse.AsProtobufJSON {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module AddLlmEvaluationExamplesResponse {\n  /**\n   * Standard JavaScript object representation for AddLlmEvaluationExamplesResponse\n   */\n  export interface AsObject {\n    llmEvaluationExamples?: LlmEvaluationExample.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for AddLlmEvaluationExamplesResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExamples: LlmEvaluationExample.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationExampleRequest\n */\nexport class GetLlmEvaluationExampleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationExampleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationExampleRequest();\n    GetLlmEvaluationExampleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationExampleRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationExampleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationExampleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationExampleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationExampleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationExampleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationExampleRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationExampleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationExampleRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationExampleRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationExampleRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationExampleRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationExampleRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationExampleFilter\n */\nexport class LlmEvaluationExampleFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationExampleFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationExampleFilter();\n    LlmEvaluationExampleFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationExampleFilter) {\n    _instance.displayName = _instance.displayName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationExampleFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationExampleFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationExampleFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n  }\n\n  private _displayName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationExampleFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationExampleFilter.AsObject>) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    LlmEvaluationExampleFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationExampleFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationExampleFilter.AsObject {\n    return {\n      displayName: this.displayName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationExampleFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName\n    };\n  }\n}\nexport module LlmEvaluationExampleFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationExampleFilter\n   */\n  export interface AsObject {\n    displayName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationExampleFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationExamplesRequest\n */\nexport class ListLlmEvaluationExamplesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationExamplesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationExamplesRequest();\n    ListLlmEvaluationExamplesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationExamplesRequest) {\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationExampleFilter =\n      _instance.llmEvaluationExampleFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationExamplesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 6:\n          _instance.llmEvaluationExampleFilter = new LlmEvaluationExampleFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationExampleFilter,\n            LlmEvaluationExampleFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationExamplesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationExamplesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(1, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationExampleFilter) {\n      _writer.writeMessage(\n        6,\n        _instance.llmEvaluationExampleFilter as any,\n        LlmEvaluationExampleFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmEvaluationDatasetName: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n  private _llmEvaluationExampleFilter?: LlmEvaluationExampleFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationExamplesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationExamplesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationExampleFilter = _value.llmEvaluationExampleFilter\n      ? new LlmEvaluationExampleFilter(_value.llmEvaluationExampleFilter)\n      : undefined;\n    ListLlmEvaluationExamplesRequest.refineValues(this);\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationExampleFilter(): LlmEvaluationExampleFilter | undefined {\n    return this._llmEvaluationExampleFilter;\n  }\n  set llmEvaluationExampleFilter(\n    value: LlmEvaluationExampleFilter | undefined\n  ) {\n    this._llmEvaluationExampleFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationExamplesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationExamplesRequest.AsObject {\n    return {\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationExampleFilter: this.llmEvaluationExampleFilter\n        ? this.llmEvaluationExampleFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationExamplesRequest.AsProtobufJSON {\n    return {\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationExampleFilter: this.llmEvaluationExampleFilter\n        ? this.llmEvaluationExampleFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationExamplesRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationExamplesRequest\n   */\n  export interface AsObject {\n    llmEvaluationDatasetName: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n    llmEvaluationExampleFilter?: LlmEvaluationExampleFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationExamplesRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationDatasetName: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n    llmEvaluationExampleFilter: LlmEvaluationExampleFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationExamplesResponse\n */\nexport class ListLlmEvaluationExamplesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationExamplesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationExamplesResponse();\n    ListLlmEvaluationExamplesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationExamplesResponse) {\n    _instance.llmEvaluationExamples = _instance.llmEvaluationExamples || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationExamplesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationExample();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExamples =\n            _instance.llmEvaluationExamples || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationExamplesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationExamplesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationExamples &&\n      _instance.llmEvaluationExamples.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationExamples as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationExamples?: LlmEvaluationExample[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationExamplesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationExamplesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExamples = (_value.llmEvaluationExamples || []).map(\n      m => new LlmEvaluationExample(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationExamplesResponse.refineValues(this);\n  }\n  get llmEvaluationExamples(): LlmEvaluationExample[] | undefined {\n    return this._llmEvaluationExamples;\n  }\n  set llmEvaluationExamples(value: LlmEvaluationExample[] | undefined) {\n    this._llmEvaluationExamples = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationExamplesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationExamplesResponse.AsObject {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationExamplesResponse.AsProtobufJSON {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationExamplesResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationExamplesResponse\n   */\n  export interface AsObject {\n    llmEvaluationExamples?: LlmEvaluationExample.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationExamplesResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExamples: LlmEvaluationExample.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationExampleRequest\n */\nexport class UpdateLlmEvaluationExampleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationExampleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationExampleRequest();\n    UpdateLlmEvaluationExampleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationExampleRequest) {\n    _instance.llmEvaluationExample =\n      _instance.llmEvaluationExample || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationExampleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationExample = new LlmEvaluationExample();\n          _reader.readMessage(\n            _instance.llmEvaluationExample,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationExampleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationExampleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationExample) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationExample as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationExample?: LlmEvaluationExample;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationExampleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationExampleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExample = _value.llmEvaluationExample\n      ? new LlmEvaluationExample(_value.llmEvaluationExample)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationExampleRequest.refineValues(this);\n  }\n  get llmEvaluationExample(): LlmEvaluationExample | undefined {\n    return this._llmEvaluationExample;\n  }\n  set llmEvaluationExample(value: LlmEvaluationExample | undefined) {\n    this._llmEvaluationExample = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationExampleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationExampleRequest.AsObject {\n    return {\n      llmEvaluationExample: this.llmEvaluationExample\n        ? this.llmEvaluationExample.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationExampleRequest.AsProtobufJSON {\n    return {\n      llmEvaluationExample: this.llmEvaluationExample\n        ? this.llmEvaluationExample.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationExampleRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationExampleRequest\n   */\n  export interface AsObject {\n    llmEvaluationExample?: LlmEvaluationExample.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationExampleRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExample: LlmEvaluationExample.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationExampleRequest\n */\nexport class DeleteLlmEvaluationExampleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationExampleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationExampleRequest();\n    DeleteLlmEvaluationExampleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationExampleRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationExampleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationExampleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationExampleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationExampleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationExampleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationExampleRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationExampleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationExampleRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationExampleRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationExampleRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationExampleRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationExampleRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RunLlmEvaluationExperimentRequest\n */\nexport class RunLlmEvaluationExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RunLlmEvaluationExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RunLlmEvaluationExperimentRequest();\n    RunLlmEvaluationExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RunLlmEvaluationExperimentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.gitSha = _instance.gitSha || '';\n    _instance.promptVersion = _instance.promptVersion || '';\n    _instance.modelName = _instance.modelName || '';\n    _instance.config = _instance.config || undefined;\n    _instance.llmEvaluationEvaluatorNames =\n      _instance.llmEvaluationEvaluatorNames || [];\n    _instance.llmEvaluationBaselineExperimentName =\n      _instance.llmEvaluationBaselineExperimentName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.ccaiServiceNames = _instance.ccaiServiceNames || [];\n    _instance.repetitions = _instance.repetitions || 0;\n    _instance.llmEvaluationExperimentKind =\n      _instance.llmEvaluationExperimentKind || 0;\n    _instance.evaluatorConfigs = _instance.evaluatorConfigs || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RunLlmEvaluationExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 3:\n          _instance.displayName = _reader.readString();\n          break;\n        case 4:\n          _instance.gitSha = _reader.readString();\n          break;\n        case 5:\n          _instance.promptVersion = _reader.readString();\n          break;\n        case 6:\n          _instance.modelName = _reader.readString();\n          break;\n        case 7:\n          _instance.config = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.config,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          (_instance.llmEvaluationEvaluatorNames =\n            _instance.llmEvaluationEvaluatorNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          _instance.llmEvaluationBaselineExperimentName = _reader.readString();\n          break;\n        case 10:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 11:\n          (_instance.ccaiServiceNames = _instance.ccaiServiceNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 12:\n          _instance.repetitions = _reader.readInt32();\n          break;\n        case 13:\n          _instance.llmEvaluationExperimentKind = _reader.readEnum();\n          break;\n        case 14:\n          _instance.evaluatorConfigs = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.evaluatorConfigs,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RunLlmEvaluationExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RunLlmEvaluationExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(2, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(3, _instance.displayName);\n    }\n    if (_instance.gitSha) {\n      _writer.writeString(4, _instance.gitSha);\n    }\n    if (_instance.promptVersion) {\n      _writer.writeString(5, _instance.promptVersion);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(6, _instance.modelName);\n    }\n    if (_instance.config) {\n      _writer.writeMessage(\n        7,\n        _instance.config as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (\n      _instance.llmEvaluationEvaluatorNames &&\n      _instance.llmEvaluationEvaluatorNames.length\n    ) {\n      _writer.writeRepeatedString(8, _instance.llmEvaluationEvaluatorNames);\n    }\n    if (_instance.llmEvaluationBaselineExperimentName) {\n      _writer.writeString(9, _instance.llmEvaluationBaselineExperimentName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(10, _instance.languageCode);\n    }\n    if (_instance.ccaiServiceNames && _instance.ccaiServiceNames.length) {\n      _writer.writeRepeatedString(11, _instance.ccaiServiceNames);\n    }\n    if (_instance.repetitions) {\n      _writer.writeInt32(12, _instance.repetitions);\n    }\n    if (_instance.llmEvaluationExperimentKind) {\n      _writer.writeEnum(13, _instance.llmEvaluationExperimentKind);\n    }\n    if (_instance.evaluatorConfigs) {\n      _writer.writeMessage(\n        14,\n        _instance.evaluatorConfigs as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _llmEvaluationDatasetName: string;\n  private _displayName: string;\n  private _gitSha: string;\n  private _promptVersion: string;\n  private _modelName: string;\n  private _config?: googleProtobuf008.Struct;\n  private _llmEvaluationEvaluatorNames: string[];\n  private _llmEvaluationBaselineExperimentName: string;\n  private _languageCode: string;\n  private _ccaiServiceNames: string[];\n  private _repetitions: number;\n  private _llmEvaluationExperimentKind: LlmEvaluationExperimentKind;\n  private _evaluatorConfigs?: googleProtobuf008.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RunLlmEvaluationExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RunLlmEvaluationExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.displayName = _value.displayName;\n    this.gitSha = _value.gitSha;\n    this.promptVersion = _value.promptVersion;\n    this.modelName = _value.modelName;\n    this.config = _value.config\n      ? new googleProtobuf008.Struct(_value.config)\n      : undefined;\n    this.llmEvaluationEvaluatorNames = (\n      _value.llmEvaluationEvaluatorNames || []\n    ).slice();\n    this.llmEvaluationBaselineExperimentName =\n      _value.llmEvaluationBaselineExperimentName;\n    this.languageCode = _value.languageCode;\n    this.ccaiServiceNames = (_value.ccaiServiceNames || []).slice();\n    this.repetitions = _value.repetitions;\n    this.llmEvaluationExperimentKind = _value.llmEvaluationExperimentKind;\n    this.evaluatorConfigs = _value.evaluatorConfigs\n      ? new googleProtobuf008.Struct(_value.evaluatorConfigs)\n      : undefined;\n    RunLlmEvaluationExperimentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get gitSha(): string {\n    return this._gitSha;\n  }\n  set gitSha(value: string) {\n    this._gitSha = value;\n  }\n  get promptVersion(): string {\n    return this._promptVersion;\n  }\n  set promptVersion(value: string) {\n    this._promptVersion = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get config(): googleProtobuf008.Struct | undefined {\n    return this._config;\n  }\n  set config(value: googleProtobuf008.Struct | undefined) {\n    this._config = value;\n  }\n  get llmEvaluationEvaluatorNames(): string[] {\n    return this._llmEvaluationEvaluatorNames;\n  }\n  set llmEvaluationEvaluatorNames(value: string[]) {\n    this._llmEvaluationEvaluatorNames = value;\n  }\n  get llmEvaluationBaselineExperimentName(): string {\n    return this._llmEvaluationBaselineExperimentName;\n  }\n  set llmEvaluationBaselineExperimentName(value: string) {\n    this._llmEvaluationBaselineExperimentName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get ccaiServiceNames(): string[] {\n    return this._ccaiServiceNames;\n  }\n  set ccaiServiceNames(value: string[]) {\n    this._ccaiServiceNames = value;\n  }\n  get repetitions(): number {\n    return this._repetitions;\n  }\n  set repetitions(value: number) {\n    this._repetitions = value;\n  }\n  get llmEvaluationExperimentKind(): LlmEvaluationExperimentKind {\n    return this._llmEvaluationExperimentKind;\n  }\n  set llmEvaluationExperimentKind(value: LlmEvaluationExperimentKind) {\n    this._llmEvaluationExperimentKind = value;\n  }\n  get evaluatorConfigs(): googleProtobuf008.Struct | undefined {\n    return this._evaluatorConfigs;\n  }\n  set evaluatorConfigs(value: googleProtobuf008.Struct | undefined) {\n    this._evaluatorConfigs = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RunLlmEvaluationExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RunLlmEvaluationExperimentRequest.AsObject {\n    return {\n      parent: this.parent,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      displayName: this.displayName,\n      gitSha: this.gitSha,\n      promptVersion: this.promptVersion,\n      modelName: this.modelName,\n      config: this.config ? this.config.toObject() : undefined,\n      llmEvaluationEvaluatorNames: (\n        this.llmEvaluationEvaluatorNames || []\n      ).slice(),\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      languageCode: this.languageCode,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      repetitions: this.repetitions,\n      llmEvaluationExperimentKind: this.llmEvaluationExperimentKind,\n      evaluatorConfigs: this.evaluatorConfigs\n        ? this.evaluatorConfigs.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RunLlmEvaluationExperimentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      displayName: this.displayName,\n      gitSha: this.gitSha,\n      promptVersion: this.promptVersion,\n      modelName: this.modelName,\n      config: this.config ? this.config.toProtobufJSON(options) : null,\n      llmEvaluationEvaluatorNames: (\n        this.llmEvaluationEvaluatorNames || []\n      ).slice(),\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      languageCode: this.languageCode,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      repetitions: this.repetitions,\n      llmEvaluationExperimentKind:\n        LlmEvaluationExperimentKind[\n          this.llmEvaluationExperimentKind === null ||\n          this.llmEvaluationExperimentKind === undefined\n            ? 0\n            : this.llmEvaluationExperimentKind\n        ],\n      evaluatorConfigs: this.evaluatorConfigs\n        ? this.evaluatorConfigs.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module RunLlmEvaluationExperimentRequest {\n  /**\n   * Standard JavaScript object representation for RunLlmEvaluationExperimentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    llmEvaluationDatasetName: string;\n    displayName: string;\n    gitSha: string;\n    promptVersion: string;\n    modelName: string;\n    config?: googleProtobuf008.Struct.AsObject;\n    llmEvaluationEvaluatorNames: string[];\n    llmEvaluationBaselineExperimentName: string;\n    languageCode: string;\n    ccaiServiceNames: string[];\n    repetitions: number;\n    llmEvaluationExperimentKind: LlmEvaluationExperimentKind;\n    evaluatorConfigs?: googleProtobuf008.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RunLlmEvaluationExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    llmEvaluationDatasetName: string;\n    displayName: string;\n    gitSha: string;\n    promptVersion: string;\n    modelName: string;\n    config: googleProtobuf008.Struct.AsProtobufJSON | null;\n    llmEvaluationEvaluatorNames: string[];\n    llmEvaluationBaselineExperimentName: string;\n    languageCode: string;\n    ccaiServiceNames: string[];\n    repetitions: number;\n    llmEvaluationExperimentKind: string;\n    evaluatorConfigs: googleProtobuf008.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationExperimentRequest\n */\nexport class GetLlmEvaluationExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationExperimentRequest();\n    GetLlmEvaluationExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationExperimentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationExperimentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationExperimentRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationExperimentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationExperimentRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationExperimentRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationExperimentFilter\n */\nexport class LlmEvaluationExperimentFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationExperimentFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationExperimentFilter();\n    LlmEvaluationExperimentFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationExperimentFilter) {\n    _instance.displayName = _instance.displayName || '';\n    _instance.llmEvaluationExperimentStatus =\n      _instance.llmEvaluationExperimentStatus || 0;\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.modelName = _instance.modelName || '';\n    _instance.llmEvaluationScheduleName =\n      _instance.llmEvaluationScheduleName || '';\n    _instance.llmEvaluationExperimentKind =\n      _instance.llmEvaluationExperimentKind || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationExperimentFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationExperimentStatus = _reader.readEnum();\n          break;\n        case 3:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 4:\n          _instance.modelName = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationScheduleName = _reader.readString();\n          break;\n        case 6:\n          _instance.llmEvaluationExperimentKind = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationExperimentFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationExperimentFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n    if (_instance.llmEvaluationExperimentStatus) {\n      _writer.writeEnum(2, _instance.llmEvaluationExperimentStatus);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(3, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(4, _instance.modelName);\n    }\n    if (_instance.llmEvaluationScheduleName) {\n      _writer.writeString(5, _instance.llmEvaluationScheduleName);\n    }\n    if (_instance.llmEvaluationExperimentKind) {\n      _writer.writeEnum(6, _instance.llmEvaluationExperimentKind);\n    }\n  }\n\n  private _displayName: string;\n  private _llmEvaluationExperimentStatus: LlmEvaluationExperimentStatus;\n  private _llmEvaluationDatasetName: string;\n  private _modelName: string;\n  private _llmEvaluationScheduleName: string;\n  private _llmEvaluationExperimentKind: LlmEvaluationExperimentKind;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationExperimentFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationExperimentFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    this.llmEvaluationExperimentStatus = _value.llmEvaluationExperimentStatus;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.modelName = _value.modelName;\n    this.llmEvaluationScheduleName = _value.llmEvaluationScheduleName;\n    this.llmEvaluationExperimentKind = _value.llmEvaluationExperimentKind;\n    LlmEvaluationExperimentFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get llmEvaluationExperimentStatus(): LlmEvaluationExperimentStatus {\n    return this._llmEvaluationExperimentStatus;\n  }\n  set llmEvaluationExperimentStatus(value: LlmEvaluationExperimentStatus) {\n    this._llmEvaluationExperimentStatus = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get llmEvaluationScheduleName(): string {\n    return this._llmEvaluationScheduleName;\n  }\n  set llmEvaluationScheduleName(value: string) {\n    this._llmEvaluationScheduleName = value;\n  }\n  get llmEvaluationExperimentKind(): LlmEvaluationExperimentKind {\n    return this._llmEvaluationExperimentKind;\n  }\n  set llmEvaluationExperimentKind(value: LlmEvaluationExperimentKind) {\n    this._llmEvaluationExperimentKind = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationExperimentFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationExperimentFilter.AsObject {\n    return {\n      displayName: this.displayName,\n      llmEvaluationExperimentStatus: this.llmEvaluationExperimentStatus,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      modelName: this.modelName,\n      llmEvaluationScheduleName: this.llmEvaluationScheduleName,\n      llmEvaluationExperimentKind: this.llmEvaluationExperimentKind\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationExperimentFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName,\n      llmEvaluationExperimentStatus:\n        LlmEvaluationExperimentStatus[\n          this.llmEvaluationExperimentStatus === null ||\n          this.llmEvaluationExperimentStatus === undefined\n            ? 0\n            : this.llmEvaluationExperimentStatus\n        ],\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      modelName: this.modelName,\n      llmEvaluationScheduleName: this.llmEvaluationScheduleName,\n      llmEvaluationExperimentKind:\n        LlmEvaluationExperimentKind[\n          this.llmEvaluationExperimentKind === null ||\n          this.llmEvaluationExperimentKind === undefined\n            ? 0\n            : this.llmEvaluationExperimentKind\n        ]\n    };\n  }\n}\nexport module LlmEvaluationExperimentFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationExperimentFilter\n   */\n  export interface AsObject {\n    displayName: string;\n    llmEvaluationExperimentStatus: LlmEvaluationExperimentStatus;\n    llmEvaluationDatasetName: string;\n    modelName: string;\n    llmEvaluationScheduleName: string;\n    llmEvaluationExperimentKind: LlmEvaluationExperimentKind;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationExperimentFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n    llmEvaluationExperimentStatus: string;\n    llmEvaluationDatasetName: string;\n    modelName: string;\n    llmEvaluationScheduleName: string;\n    llmEvaluationExperimentKind: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationExperimentsRequest\n */\nexport class ListLlmEvaluationExperimentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationExperimentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationExperimentsRequest();\n    ListLlmEvaluationExperimentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationExperimentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationExperimentFilter =\n      _instance.llmEvaluationExperimentFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationExperimentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationExperimentFilter = new LlmEvaluationExperimentFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationExperimentFilter,\n            LlmEvaluationExperimentFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationExperimentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationExperimentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationExperimentFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationExperimentFilter as any,\n        LlmEvaluationExperimentFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationExperimentFilter?: LlmEvaluationExperimentFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationExperimentsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationExperimentsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationExperimentFilter = _value.llmEvaluationExperimentFilter\n      ? new LlmEvaluationExperimentFilter(_value.llmEvaluationExperimentFilter)\n      : undefined;\n    ListLlmEvaluationExperimentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationExperimentFilter():\n    | LlmEvaluationExperimentFilter\n    | undefined {\n    return this._llmEvaluationExperimentFilter;\n  }\n  set llmEvaluationExperimentFilter(\n    value: LlmEvaluationExperimentFilter | undefined\n  ) {\n    this._llmEvaluationExperimentFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationExperimentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationExperimentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationExperimentFilter: this.llmEvaluationExperimentFilter\n        ? this.llmEvaluationExperimentFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationExperimentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationExperimentFilter: this.llmEvaluationExperimentFilter\n        ? this.llmEvaluationExperimentFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationExperimentsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationExperimentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationExperimentFilter?: LlmEvaluationExperimentFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationExperimentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationExperimentFilter: LlmEvaluationExperimentFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationExperimentsResponse\n */\nexport class ListLlmEvaluationExperimentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationExperimentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationExperimentsResponse();\n    ListLlmEvaluationExperimentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationExperimentsResponse) {\n    _instance.llmEvaluationExperiments =\n      _instance.llmEvaluationExperiments || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationExperimentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationExperiment();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationExperiment.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExperiments =\n            _instance.llmEvaluationExperiments || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationExperimentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationExperimentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationExperiments &&\n      _instance.llmEvaluationExperiments.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationExperiments as any,\n        LlmEvaluationExperiment.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationExperiments?: LlmEvaluationExperiment[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationExperimentsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationExperimentsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExperiments = (_value.llmEvaluationExperiments || []).map(\n      m => new LlmEvaluationExperiment(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationExperimentsResponse.refineValues(this);\n  }\n  get llmEvaluationExperiments(): LlmEvaluationExperiment[] | undefined {\n    return this._llmEvaluationExperiments;\n  }\n  set llmEvaluationExperiments(value: LlmEvaluationExperiment[] | undefined) {\n    this._llmEvaluationExperiments = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationExperimentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationExperimentsResponse.AsObject {\n    return {\n      llmEvaluationExperiments: (this.llmEvaluationExperiments || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationExperimentsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationExperiments: (this.llmEvaluationExperiments || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationExperimentsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationExperimentsResponse\n   */\n  export interface AsObject {\n    llmEvaluationExperiments?: LlmEvaluationExperiment.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationExperimentsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExperiments: LlmEvaluationExperiment.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationExperimentRequest\n */\nexport class UpdateLlmEvaluationExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationExperimentRequest();\n    UpdateLlmEvaluationExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationExperimentRequest) {\n    _instance.llmEvaluationExperiment =\n      _instance.llmEvaluationExperiment || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationExperiment = new LlmEvaluationExperiment();\n          _reader.readMessage(\n            _instance.llmEvaluationExperiment,\n            LlmEvaluationExperiment.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationExperiment) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationExperiment as any,\n        LlmEvaluationExperiment.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationExperiment?: LlmEvaluationExperiment;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExperiment = _value.llmEvaluationExperiment\n      ? new LlmEvaluationExperiment(_value.llmEvaluationExperiment)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationExperimentRequest.refineValues(this);\n  }\n  get llmEvaluationExperiment(): LlmEvaluationExperiment | undefined {\n    return this._llmEvaluationExperiment;\n  }\n  set llmEvaluationExperiment(value: LlmEvaluationExperiment | undefined) {\n    this._llmEvaluationExperiment = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationExperimentRequest.AsObject {\n    return {\n      llmEvaluationExperiment: this.llmEvaluationExperiment\n        ? this.llmEvaluationExperiment.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationExperimentRequest.AsProtobufJSON {\n    return {\n      llmEvaluationExperiment: this.llmEvaluationExperiment\n        ? this.llmEvaluationExperiment.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationExperimentRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationExperimentRequest\n   */\n  export interface AsObject {\n    llmEvaluationExperiment?: LlmEvaluationExperiment.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExperiment: LlmEvaluationExperiment.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationExperimentRequest\n */\nexport class DeleteLlmEvaluationExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationExperimentRequest();\n    DeleteLlmEvaluationExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationExperimentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationExperimentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationExperimentRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationExperimentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationExperimentRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationExperimentRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CancelLlmEvaluationExperimentRequest\n */\nexport class CancelLlmEvaluationExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CancelLlmEvaluationExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CancelLlmEvaluationExperimentRequest();\n    CancelLlmEvaluationExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CancelLlmEvaluationExperimentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CancelLlmEvaluationExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CancelLlmEvaluationExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CancelLlmEvaluationExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CancelLlmEvaluationExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CancelLlmEvaluationExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CancelLlmEvaluationExperimentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CancelLlmEvaluationExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CancelLlmEvaluationExperimentRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CancelLlmEvaluationExperimentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CancelLlmEvaluationExperimentRequest {\n  /**\n   * Standard JavaScript object representation for CancelLlmEvaluationExperimentRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CancelLlmEvaluationExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CompareLlmEvaluationExperimentsRequest\n */\nexport class CompareLlmEvaluationExperimentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CompareLlmEvaluationExperimentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CompareLlmEvaluationExperimentsRequest();\n    CompareLlmEvaluationExperimentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CompareLlmEvaluationExperimentsRequest) {\n    _instance.llmEvaluationExperimentNames =\n      _instance.llmEvaluationExperimentNames || [];\n    _instance.llmEvaluationBaselineExperimentName =\n      _instance.llmEvaluationBaselineExperimentName || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CompareLlmEvaluationExperimentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.llmEvaluationExperimentNames =\n            _instance.llmEvaluationExperimentNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _instance.llmEvaluationBaselineExperimentName = _reader.readString();\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CompareLlmEvaluationExperimentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CompareLlmEvaluationExperimentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationExperimentNames &&\n      _instance.llmEvaluationExperimentNames.length\n    ) {\n      _writer.writeRepeatedString(1, _instance.llmEvaluationExperimentNames);\n    }\n    if (_instance.llmEvaluationBaselineExperimentName) {\n      _writer.writeString(2, _instance.llmEvaluationBaselineExperimentName);\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationExperimentNames: string[];\n  private _llmEvaluationBaselineExperimentName: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CompareLlmEvaluationExperimentsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CompareLlmEvaluationExperimentsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExperimentNames = (\n      _value.llmEvaluationExperimentNames || []\n    ).slice();\n    this.llmEvaluationBaselineExperimentName =\n      _value.llmEvaluationBaselineExperimentName;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CompareLlmEvaluationExperimentsRequest.refineValues(this);\n  }\n  get llmEvaluationExperimentNames(): string[] {\n    return this._llmEvaluationExperimentNames;\n  }\n  set llmEvaluationExperimentNames(value: string[]) {\n    this._llmEvaluationExperimentNames = value;\n  }\n  get llmEvaluationBaselineExperimentName(): string {\n    return this._llmEvaluationBaselineExperimentName;\n  }\n  set llmEvaluationBaselineExperimentName(value: string) {\n    this._llmEvaluationBaselineExperimentName = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CompareLlmEvaluationExperimentsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CompareLlmEvaluationExperimentsRequest.AsObject {\n    return {\n      llmEvaluationExperimentNames: (\n        this.llmEvaluationExperimentNames || []\n      ).slice(),\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CompareLlmEvaluationExperimentsRequest.AsProtobufJSON {\n    return {\n      llmEvaluationExperimentNames: (\n        this.llmEvaluationExperimentNames || []\n      ).slice(),\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CompareLlmEvaluationExperimentsRequest {\n  /**\n   * Standard JavaScript object representation for CompareLlmEvaluationExperimentsRequest\n   */\n  export interface AsObject {\n    llmEvaluationExperimentNames: string[];\n    llmEvaluationBaselineExperimentName: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CompareLlmEvaluationExperimentsRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExperimentNames: string[];\n    llmEvaluationBaselineExperimentName: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SubmitLlmEvaluationFeedbackRequest\n */\nexport class SubmitLlmEvaluationFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.SubmitLlmEvaluationFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SubmitLlmEvaluationFeedbackRequest();\n    SubmitLlmEvaluationFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SubmitLlmEvaluationFeedbackRequest) {\n    _instance.llmEvaluationExperimentName =\n      _instance.llmEvaluationExperimentName || '';\n    _instance.llmEvaluationEvaluatorRunName =\n      _instance.llmEvaluationEvaluatorRunName || '';\n    _instance.llmEvaluationFeedback =\n      _instance.llmEvaluationFeedback || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SubmitLlmEvaluationFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationExperimentName = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationEvaluatorRunName = _reader.readString();\n          break;\n        case 3:\n          _instance.llmEvaluationFeedback = new LlmEvaluationFeedback();\n          _reader.readMessage(\n            _instance.llmEvaluationFeedback,\n            LlmEvaluationFeedback.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SubmitLlmEvaluationFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SubmitLlmEvaluationFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationExperimentName) {\n      _writer.writeString(1, _instance.llmEvaluationExperimentName);\n    }\n    if (_instance.llmEvaluationEvaluatorRunName) {\n      _writer.writeString(2, _instance.llmEvaluationEvaluatorRunName);\n    }\n    if (_instance.llmEvaluationFeedback) {\n      _writer.writeMessage(\n        3,\n        _instance.llmEvaluationFeedback as any,\n        LlmEvaluationFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationExperimentName: string;\n  private _llmEvaluationEvaluatorRunName: string;\n  private _llmEvaluationFeedback?: LlmEvaluationFeedback;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SubmitLlmEvaluationFeedbackRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<SubmitLlmEvaluationFeedbackRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExperimentName = _value.llmEvaluationExperimentName;\n    this.llmEvaluationEvaluatorRunName = _value.llmEvaluationEvaluatorRunName;\n    this.llmEvaluationFeedback = _value.llmEvaluationFeedback\n      ? new LlmEvaluationFeedback(_value.llmEvaluationFeedback)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    SubmitLlmEvaluationFeedbackRequest.refineValues(this);\n  }\n  get llmEvaluationExperimentName(): string {\n    return this._llmEvaluationExperimentName;\n  }\n  set llmEvaluationExperimentName(value: string) {\n    this._llmEvaluationExperimentName = value;\n  }\n  get llmEvaluationEvaluatorRunName(): string {\n    return this._llmEvaluationEvaluatorRunName;\n  }\n  set llmEvaluationEvaluatorRunName(value: string) {\n    this._llmEvaluationEvaluatorRunName = value;\n  }\n  get llmEvaluationFeedback(): LlmEvaluationFeedback | undefined {\n    return this._llmEvaluationFeedback;\n  }\n  set llmEvaluationFeedback(value: LlmEvaluationFeedback | undefined) {\n    this._llmEvaluationFeedback = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SubmitLlmEvaluationFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SubmitLlmEvaluationFeedbackRequest.AsObject {\n    return {\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationEvaluatorRunName: this.llmEvaluationEvaluatorRunName,\n      llmEvaluationFeedback: this.llmEvaluationFeedback\n        ? this.llmEvaluationFeedback.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SubmitLlmEvaluationFeedbackRequest.AsProtobufJSON {\n    return {\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationEvaluatorRunName: this.llmEvaluationEvaluatorRunName,\n      llmEvaluationFeedback: this.llmEvaluationFeedback\n        ? this.llmEvaluationFeedback.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module SubmitLlmEvaluationFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for SubmitLlmEvaluationFeedbackRequest\n   */\n  export interface AsObject {\n    llmEvaluationExperimentName: string;\n    llmEvaluationEvaluatorRunName: string;\n    llmEvaluationFeedback?: LlmEvaluationFeedback.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for SubmitLlmEvaluationFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExperimentName: string;\n    llmEvaluationEvaluatorRunName: string;\n    llmEvaluationFeedback: LlmEvaluationFeedback.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationFeedbackFilter\n */\nexport class LlmEvaluationFeedbackFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationFeedbackFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationFeedbackFilter();\n    LlmEvaluationFeedbackFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationFeedbackFilter) {\n    _instance.llmEvaluationExperimentName =\n      _instance.llmEvaluationExperimentName || '';\n    _instance.llmEvaluationExampleName =\n      _instance.llmEvaluationExampleName || '';\n    _instance.llmEvaluationEvaluatorRunName =\n      _instance.llmEvaluationEvaluatorRunName || '';\n    _instance.criterion = _instance.criterion || '';\n    _instance.categoricalValue = _instance.categoricalValue || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationFeedbackFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationExperimentName = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationExampleName = _reader.readString();\n          break;\n        case 3:\n          _instance.llmEvaluationEvaluatorRunName = _reader.readString();\n          break;\n        case 4:\n          _instance.criterion = _reader.readString();\n          break;\n        case 5:\n          _instance.categoricalValue = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationFeedbackFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationFeedbackFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationExperimentName) {\n      _writer.writeString(1, _instance.llmEvaluationExperimentName);\n    }\n    if (_instance.llmEvaluationExampleName) {\n      _writer.writeString(2, _instance.llmEvaluationExampleName);\n    }\n    if (_instance.llmEvaluationEvaluatorRunName) {\n      _writer.writeString(3, _instance.llmEvaluationEvaluatorRunName);\n    }\n    if (_instance.criterion) {\n      _writer.writeString(4, _instance.criterion);\n    }\n    if (_instance.categoricalValue) {\n      _writer.writeString(5, _instance.categoricalValue);\n    }\n  }\n\n  private _llmEvaluationExperimentName: string;\n  private _llmEvaluationExampleName: string;\n  private _llmEvaluationEvaluatorRunName: string;\n  private _criterion: string;\n  private _categoricalValue: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationFeedbackFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationFeedbackFilter.AsObject>) {\n    _value = _value || {};\n    this.llmEvaluationExperimentName = _value.llmEvaluationExperimentName;\n    this.llmEvaluationExampleName = _value.llmEvaluationExampleName;\n    this.llmEvaluationEvaluatorRunName = _value.llmEvaluationEvaluatorRunName;\n    this.criterion = _value.criterion;\n    this.categoricalValue = _value.categoricalValue;\n    LlmEvaluationFeedbackFilter.refineValues(this);\n  }\n  get llmEvaluationExperimentName(): string {\n    return this._llmEvaluationExperimentName;\n  }\n  set llmEvaluationExperimentName(value: string) {\n    this._llmEvaluationExperimentName = value;\n  }\n  get llmEvaluationExampleName(): string {\n    return this._llmEvaluationExampleName;\n  }\n  set llmEvaluationExampleName(value: string) {\n    this._llmEvaluationExampleName = value;\n  }\n  get llmEvaluationEvaluatorRunName(): string {\n    return this._llmEvaluationEvaluatorRunName;\n  }\n  set llmEvaluationEvaluatorRunName(value: string) {\n    this._llmEvaluationEvaluatorRunName = value;\n  }\n  get criterion(): string {\n    return this._criterion;\n  }\n  set criterion(value: string) {\n    this._criterion = value;\n  }\n  get categoricalValue(): string {\n    return this._categoricalValue;\n  }\n  set categoricalValue(value: string) {\n    this._categoricalValue = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationFeedbackFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationFeedbackFilter.AsObject {\n    return {\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      llmEvaluationEvaluatorRunName: this.llmEvaluationEvaluatorRunName,\n      criterion: this.criterion,\n      categoricalValue: this.categoricalValue\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationFeedbackFilter.AsProtobufJSON {\n    return {\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationExampleName: this.llmEvaluationExampleName,\n      llmEvaluationEvaluatorRunName: this.llmEvaluationEvaluatorRunName,\n      criterion: this.criterion,\n      categoricalValue: this.categoricalValue\n    };\n  }\n}\nexport module LlmEvaluationFeedbackFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationFeedbackFilter\n   */\n  export interface AsObject {\n    llmEvaluationExperimentName: string;\n    llmEvaluationExampleName: string;\n    llmEvaluationEvaluatorRunName: string;\n    criterion: string;\n    categoricalValue: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationFeedbackFilter\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExperimentName: string;\n    llmEvaluationExampleName: string;\n    llmEvaluationEvaluatorRunName: string;\n    criterion: string;\n    categoricalValue: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationFeedbackRequest\n */\nexport class ListLlmEvaluationFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationFeedbackRequest();\n    ListLlmEvaluationFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationFeedbackRequest) {\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationFeedbackFilter =\n      _instance.llmEvaluationFeedbackFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationFeedbackFilter = new LlmEvaluationFeedbackFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationFeedbackFilter,\n            LlmEvaluationFeedbackFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.pageToken) {\n      _writer.writeString(1, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationFeedbackFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationFeedbackFilter as any,\n        LlmEvaluationFeedbackFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n  private _llmEvaluationFeedbackFilter?: LlmEvaluationFeedbackFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationFeedbackRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationFeedbackRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationFeedbackFilter = _value.llmEvaluationFeedbackFilter\n      ? new LlmEvaluationFeedbackFilter(_value.llmEvaluationFeedbackFilter)\n      : undefined;\n    ListLlmEvaluationFeedbackRequest.refineValues(this);\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationFeedbackFilter(): LlmEvaluationFeedbackFilter | undefined {\n    return this._llmEvaluationFeedbackFilter;\n  }\n  set llmEvaluationFeedbackFilter(\n    value: LlmEvaluationFeedbackFilter | undefined\n  ) {\n    this._llmEvaluationFeedbackFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationFeedbackRequest.AsObject {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationFeedbackFilter: this.llmEvaluationFeedbackFilter\n        ? this.llmEvaluationFeedbackFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationFeedbackRequest.AsProtobufJSON {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationFeedbackFilter: this.llmEvaluationFeedbackFilter\n        ? this.llmEvaluationFeedbackFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationFeedbackRequest\n   */\n  export interface AsObject {\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n    llmEvaluationFeedbackFilter?: LlmEvaluationFeedbackFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n    llmEvaluationFeedbackFilter: LlmEvaluationFeedbackFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationFeedbackResponse\n */\nexport class ListLlmEvaluationFeedbackResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationFeedbackResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationFeedbackResponse();\n    ListLlmEvaluationFeedbackResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationFeedbackResponse) {\n    _instance.llmEvaluationFeedbacks = _instance.llmEvaluationFeedbacks || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationFeedbackResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationFeedback();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationFeedback.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationFeedbacks =\n            _instance.llmEvaluationFeedbacks || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationFeedbackResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationFeedbackResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationFeedbacks &&\n      _instance.llmEvaluationFeedbacks.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationFeedbacks as any,\n        LlmEvaluationFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationFeedbacks?: LlmEvaluationFeedback[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationFeedbackResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationFeedbackResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationFeedbacks = (_value.llmEvaluationFeedbacks || []).map(\n      m => new LlmEvaluationFeedback(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationFeedbackResponse.refineValues(this);\n  }\n  get llmEvaluationFeedbacks(): LlmEvaluationFeedback[] | undefined {\n    return this._llmEvaluationFeedbacks;\n  }\n  set llmEvaluationFeedbacks(value: LlmEvaluationFeedback[] | undefined) {\n    this._llmEvaluationFeedbacks = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationFeedbackResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationFeedbackResponse.AsObject {\n    return {\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationFeedbackResponse.AsProtobufJSON {\n    return {\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationFeedbackResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationFeedbackResponse\n   */\n  export interface AsObject {\n    llmEvaluationFeedbacks?: LlmEvaluationFeedback.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationFeedbackResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationFeedbacks: LlmEvaluationFeedback.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationFeedbackRequest\n */\nexport class DeleteLlmEvaluationFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationFeedbackRequest();\n    DeleteLlmEvaluationFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationFeedbackRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationFeedbackRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationFeedbackRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationFeedbackRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationFeedbackRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationFeedbackRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationFeedbackRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationFeedbackRequest\n */\nexport class UpdateLlmEvaluationFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationFeedbackRequest();\n    UpdateLlmEvaluationFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationFeedbackRequest) {\n    _instance.llmEvaluationFeedback =\n      _instance.llmEvaluationFeedback || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationFeedback = new LlmEvaluationFeedback();\n          _reader.readMessage(\n            _instance.llmEvaluationFeedback,\n            LlmEvaluationFeedback.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationFeedback) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationFeedback as any,\n        LlmEvaluationFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationFeedback?: LlmEvaluationFeedback;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationFeedbackRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationFeedbackRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationFeedback = _value.llmEvaluationFeedback\n      ? new LlmEvaluationFeedback(_value.llmEvaluationFeedback)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationFeedbackRequest.refineValues(this);\n  }\n  get llmEvaluationFeedback(): LlmEvaluationFeedback | undefined {\n    return this._llmEvaluationFeedback;\n  }\n  set llmEvaluationFeedback(value: LlmEvaluationFeedback | undefined) {\n    this._llmEvaluationFeedback = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationFeedbackRequest.AsObject {\n    return {\n      llmEvaluationFeedback: this.llmEvaluationFeedback\n        ? this.llmEvaluationFeedback.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationFeedbackRequest.AsProtobufJSON {\n    return {\n      llmEvaluationFeedback: this.llmEvaluationFeedback\n        ? this.llmEvaluationFeedback.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationFeedbackRequest\n   */\n  export interface AsObject {\n    llmEvaluationFeedback?: LlmEvaluationFeedback.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationFeedback: LlmEvaluationFeedback.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationTurnResult\n */\nexport class LlmEvaluationTurnResult implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationTurnResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationTurnResult();\n    LlmEvaluationTurnResult.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationTurnResult) {\n    _instance.turnIndex = _instance.turnIndex || 0;\n    _instance.userInput = _instance.userInput || undefined;\n    _instance.expectedOutput = _instance.expectedOutput || undefined;\n    _instance.actualOutput = _instance.actualOutput || undefined;\n    _instance.llmTelemetryRunId = _instance.llmTelemetryRunId || '';\n    _instance.sessionStepName = _instance.sessionStepName || '';\n    _instance.llmEvaluationFeedbacks = _instance.llmEvaluationFeedbacks || [];\n    _instance.durationInS = _instance.durationInS || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationTurnResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.turnIndex = _reader.readInt32();\n          break;\n        case 2:\n          _instance.userInput = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.userInput,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.expectedOutput = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.expectedOutput,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.actualOutput = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.actualOutput,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.llmTelemetryRunId = _reader.readString();\n          break;\n        case 6:\n          _instance.sessionStepName = _reader.readString();\n          break;\n        case 7:\n          const messageInitializer7 = new LlmEvaluationFeedback();\n          _reader.readMessage(\n            messageInitializer7,\n            LlmEvaluationFeedback.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationFeedbacks =\n            _instance.llmEvaluationFeedbacks || []).push(messageInitializer7);\n          break;\n        case 8:\n          _instance.durationInS = _reader.readDouble();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationTurnResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationTurnResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.turnIndex) {\n      _writer.writeInt32(1, _instance.turnIndex);\n    }\n    if (_instance.userInput) {\n      _writer.writeMessage(\n        2,\n        _instance.userInput as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.expectedOutput) {\n      _writer.writeMessage(\n        3,\n        _instance.expectedOutput as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.actualOutput) {\n      _writer.writeMessage(\n        4,\n        _instance.actualOutput as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmTelemetryRunId) {\n      _writer.writeString(5, _instance.llmTelemetryRunId);\n    }\n    if (_instance.sessionStepName) {\n      _writer.writeString(6, _instance.sessionStepName);\n    }\n    if (\n      _instance.llmEvaluationFeedbacks &&\n      _instance.llmEvaluationFeedbacks.length\n    ) {\n      _writer.writeRepeatedMessage(\n        7,\n        _instance.llmEvaluationFeedbacks as any,\n        LlmEvaluationFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeDouble(8, _instance.durationInS);\n    }\n  }\n\n  private _turnIndex: number;\n  private _userInput?: googleProtobuf008.Struct;\n  private _expectedOutput?: googleProtobuf008.Struct;\n  private _actualOutput?: googleProtobuf008.Struct;\n  private _llmTelemetryRunId: string;\n  private _sessionStepName: string;\n  private _llmEvaluationFeedbacks?: LlmEvaluationFeedback[];\n  private _durationInS: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationTurnResult to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationTurnResult.AsObject>) {\n    _value = _value || {};\n    this.turnIndex = _value.turnIndex;\n    this.userInput = _value.userInput\n      ? new googleProtobuf008.Struct(_value.userInput)\n      : undefined;\n    this.expectedOutput = _value.expectedOutput\n      ? new googleProtobuf008.Struct(_value.expectedOutput)\n      : undefined;\n    this.actualOutput = _value.actualOutput\n      ? new googleProtobuf008.Struct(_value.actualOutput)\n      : undefined;\n    this.llmTelemetryRunId = _value.llmTelemetryRunId;\n    this.sessionStepName = _value.sessionStepName;\n    this.llmEvaluationFeedbacks = (_value.llmEvaluationFeedbacks || []).map(\n      m => new LlmEvaluationFeedback(m)\n    );\n    this.durationInS = _value.durationInS;\n    LlmEvaluationTurnResult.refineValues(this);\n  }\n  get turnIndex(): number {\n    return this._turnIndex;\n  }\n  set turnIndex(value: number) {\n    this._turnIndex = value;\n  }\n  get userInput(): googleProtobuf008.Struct | undefined {\n    return this._userInput;\n  }\n  set userInput(value: googleProtobuf008.Struct | undefined) {\n    this._userInput = value;\n  }\n  get expectedOutput(): googleProtobuf008.Struct | undefined {\n    return this._expectedOutput;\n  }\n  set expectedOutput(value: googleProtobuf008.Struct | undefined) {\n    this._expectedOutput = value;\n  }\n  get actualOutput(): googleProtobuf008.Struct | undefined {\n    return this._actualOutput;\n  }\n  set actualOutput(value: googleProtobuf008.Struct | undefined) {\n    this._actualOutput = value;\n  }\n  get llmTelemetryRunId(): string {\n    return this._llmTelemetryRunId;\n  }\n  set llmTelemetryRunId(value: string) {\n    this._llmTelemetryRunId = value;\n  }\n  get sessionStepName(): string {\n    return this._sessionStepName;\n  }\n  set sessionStepName(value: string) {\n    this._sessionStepName = value;\n  }\n  get llmEvaluationFeedbacks(): LlmEvaluationFeedback[] | undefined {\n    return this._llmEvaluationFeedbacks;\n  }\n  set llmEvaluationFeedbacks(value: LlmEvaluationFeedback[] | undefined) {\n    this._llmEvaluationFeedbacks = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationTurnResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationTurnResult.AsObject {\n    return {\n      turnIndex: this.turnIndex,\n      userInput: this.userInput ? this.userInput.toObject() : undefined,\n      expectedOutput: this.expectedOutput\n        ? this.expectedOutput.toObject()\n        : undefined,\n      actualOutput: this.actualOutput\n        ? this.actualOutput.toObject()\n        : undefined,\n      llmTelemetryRunId: this.llmTelemetryRunId,\n      sessionStepName: this.sessionStepName,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toObject()\n      ),\n      durationInS: this.durationInS\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationTurnResult.AsProtobufJSON {\n    return {\n      turnIndex: this.turnIndex,\n      userInput: this.userInput ? this.userInput.toProtobufJSON(options) : null,\n      expectedOutput: this.expectedOutput\n        ? this.expectedOutput.toProtobufJSON(options)\n        : null,\n      actualOutput: this.actualOutput\n        ? this.actualOutput.toProtobufJSON(options)\n        : null,\n      llmTelemetryRunId: this.llmTelemetryRunId,\n      sessionStepName: this.sessionStepName,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      durationInS: this.durationInS\n    };\n  }\n}\nexport module LlmEvaluationTurnResult {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationTurnResult\n   */\n  export interface AsObject {\n    turnIndex: number;\n    userInput?: googleProtobuf008.Struct.AsObject;\n    expectedOutput?: googleProtobuf008.Struct.AsObject;\n    actualOutput?: googleProtobuf008.Struct.AsObject;\n    llmTelemetryRunId: string;\n    sessionStepName: string;\n    llmEvaluationFeedbacks?: LlmEvaluationFeedback.AsObject[];\n    durationInS: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationTurnResult\n   */\n  export interface AsProtobufJSON {\n    turnIndex: number;\n    userInput: googleProtobuf008.Struct.AsProtobufJSON | null;\n    expectedOutput: googleProtobuf008.Struct.AsProtobufJSON | null;\n    actualOutput: googleProtobuf008.Struct.AsProtobufJSON | null;\n    llmTelemetryRunId: string;\n    sessionStepName: string;\n    llmEvaluationFeedbacks: LlmEvaluationFeedback.AsProtobufJSON[] | null;\n    durationInS: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReleaseGateThresholds\n */\nexport class LlmEvaluationReleaseGateThresholds implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReleaseGateThresholds';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReleaseGateThresholds();\n    LlmEvaluationReleaseGateThresholds.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReleaseGateThresholds) {\n    _instance.minPassRate = _instance.minPassRate || 0;\n    _instance.maxRegressionPerCriterion =\n      _instance.maxRegressionPerCriterion || 0;\n    _instance.maxP95LatencySeconds = _instance.maxP95LatencySeconds || 0;\n    _instance.acceptanceMustPass = _instance.acceptanceMustPass || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReleaseGateThresholds,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.minPassRate = _reader.readDouble();\n          break;\n        case 2:\n          _instance.maxRegressionPerCriterion = _reader.readDouble();\n          break;\n        case 3:\n          _instance.maxP95LatencySeconds = _reader.readDouble();\n          break;\n        case 4:\n          _instance.acceptanceMustPass = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReleaseGateThresholds.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReleaseGateThresholds,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.minPassRate) {\n      _writer.writeDouble(1, _instance.minPassRate);\n    }\n    if (_instance.maxRegressionPerCriterion) {\n      _writer.writeDouble(2, _instance.maxRegressionPerCriterion);\n    }\n    if (_instance.maxP95LatencySeconds) {\n      _writer.writeDouble(3, _instance.maxP95LatencySeconds);\n    }\n    if (_instance.acceptanceMustPass) {\n      _writer.writeBool(4, _instance.acceptanceMustPass);\n    }\n  }\n\n  private _minPassRate: number;\n  private _maxRegressionPerCriterion: number;\n  private _maxP95LatencySeconds: number;\n  private _acceptanceMustPass: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReleaseGateThresholds to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationReleaseGateThresholds.AsObject>\n  ) {\n    _value = _value || {};\n    this.minPassRate = _value.minPassRate;\n    this.maxRegressionPerCriterion = _value.maxRegressionPerCriterion;\n    this.maxP95LatencySeconds = _value.maxP95LatencySeconds;\n    this.acceptanceMustPass = _value.acceptanceMustPass;\n    LlmEvaluationReleaseGateThresholds.refineValues(this);\n  }\n  get minPassRate(): number {\n    return this._minPassRate;\n  }\n  set minPassRate(value: number) {\n    this._minPassRate = value;\n  }\n  get maxRegressionPerCriterion(): number {\n    return this._maxRegressionPerCriterion;\n  }\n  set maxRegressionPerCriterion(value: number) {\n    this._maxRegressionPerCriterion = value;\n  }\n  get maxP95LatencySeconds(): number {\n    return this._maxP95LatencySeconds;\n  }\n  set maxP95LatencySeconds(value: number) {\n    this._maxP95LatencySeconds = value;\n  }\n  get acceptanceMustPass(): boolean {\n    return this._acceptanceMustPass;\n  }\n  set acceptanceMustPass(value: boolean) {\n    this._acceptanceMustPass = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReleaseGateThresholds.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReleaseGateThresholds.AsObject {\n    return {\n      minPassRate: this.minPassRate,\n      maxRegressionPerCriterion: this.maxRegressionPerCriterion,\n      maxP95LatencySeconds: this.maxP95LatencySeconds,\n      acceptanceMustPass: this.acceptanceMustPass\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReleaseGateThresholds.AsProtobufJSON {\n    return {\n      minPassRate: this.minPassRate,\n      maxRegressionPerCriterion: this.maxRegressionPerCriterion,\n      maxP95LatencySeconds: this.maxP95LatencySeconds,\n      acceptanceMustPass: this.acceptanceMustPass\n    };\n  }\n}\nexport module LlmEvaluationReleaseGateThresholds {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReleaseGateThresholds\n   */\n  export interface AsObject {\n    minPassRate: number;\n    maxRegressionPerCriterion: number;\n    maxP95LatencySeconds: number;\n    acceptanceMustPass: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReleaseGateThresholds\n   */\n  export interface AsProtobufJSON {\n    minPassRate: number;\n    maxRegressionPerCriterion: number;\n    maxP95LatencySeconds: number;\n    acceptanceMustPass: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReleaseGateSafetyConfig\n */\nexport class LlmEvaluationReleaseGateSafetyConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReleaseGateSafetyConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReleaseGateSafetyConfig();\n    LlmEvaluationReleaseGateSafetyConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReleaseGateSafetyConfig) {\n    _instance.enabled = _instance.enabled || false;\n    _instance.adversarialDatasetName = _instance.adversarialDatasetName || '';\n    _instance.evaluatorNames = _instance.evaluatorNames || [];\n    _instance.maxToxicity = _instance.maxToxicity || 0;\n    _instance.maxBias = _instance.maxBias || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReleaseGateSafetyConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.enabled = _reader.readBool();\n          break;\n        case 2:\n          _instance.adversarialDatasetName = _reader.readString();\n          break;\n        case 3:\n          (_instance.evaluatorNames = _instance.evaluatorNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.maxToxicity = _reader.readDouble();\n          break;\n        case 5:\n          _instance.maxBias = _reader.readDouble();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReleaseGateSafetyConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReleaseGateSafetyConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.enabled) {\n      _writer.writeBool(1, _instance.enabled);\n    }\n    if (_instance.adversarialDatasetName) {\n      _writer.writeString(2, _instance.adversarialDatasetName);\n    }\n    if (_instance.evaluatorNames && _instance.evaluatorNames.length) {\n      _writer.writeRepeatedString(3, _instance.evaluatorNames);\n    }\n    if (_instance.maxToxicity) {\n      _writer.writeDouble(4, _instance.maxToxicity);\n    }\n    if (_instance.maxBias) {\n      _writer.writeDouble(5, _instance.maxBias);\n    }\n  }\n\n  private _enabled: boolean;\n  private _adversarialDatasetName: string;\n  private _evaluatorNames: string[];\n  private _maxToxicity: number;\n  private _maxBias: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReleaseGateSafetyConfig to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationReleaseGateSafetyConfig.AsObject>\n  ) {\n    _value = _value || {};\n    this.enabled = _value.enabled;\n    this.adversarialDatasetName = _value.adversarialDatasetName;\n    this.evaluatorNames = (_value.evaluatorNames || []).slice();\n    this.maxToxicity = _value.maxToxicity;\n    this.maxBias = _value.maxBias;\n    LlmEvaluationReleaseGateSafetyConfig.refineValues(this);\n  }\n  get enabled(): boolean {\n    return this._enabled;\n  }\n  set enabled(value: boolean) {\n    this._enabled = value;\n  }\n  get adversarialDatasetName(): string {\n    return this._adversarialDatasetName;\n  }\n  set adversarialDatasetName(value: string) {\n    this._adversarialDatasetName = value;\n  }\n  get evaluatorNames(): string[] {\n    return this._evaluatorNames;\n  }\n  set evaluatorNames(value: string[]) {\n    this._evaluatorNames = value;\n  }\n  get maxToxicity(): number {\n    return this._maxToxicity;\n  }\n  set maxToxicity(value: number) {\n    this._maxToxicity = value;\n  }\n  get maxBias(): number {\n    return this._maxBias;\n  }\n  set maxBias(value: number) {\n    this._maxBias = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReleaseGateSafetyConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReleaseGateSafetyConfig.AsObject {\n    return {\n      enabled: this.enabled,\n      adversarialDatasetName: this.adversarialDatasetName,\n      evaluatorNames: (this.evaluatorNames || []).slice(),\n      maxToxicity: this.maxToxicity,\n      maxBias: this.maxBias\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReleaseGateSafetyConfig.AsProtobufJSON {\n    return {\n      enabled: this.enabled,\n      adversarialDatasetName: this.adversarialDatasetName,\n      evaluatorNames: (this.evaluatorNames || []).slice(),\n      maxToxicity: this.maxToxicity,\n      maxBias: this.maxBias\n    };\n  }\n}\nexport module LlmEvaluationReleaseGateSafetyConfig {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReleaseGateSafetyConfig\n   */\n  export interface AsObject {\n    enabled: boolean;\n    adversarialDatasetName: string;\n    evaluatorNames: string[];\n    maxToxicity: number;\n    maxBias: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReleaseGateSafetyConfig\n   */\n  export interface AsProtobufJSON {\n    enabled: boolean;\n    adversarialDatasetName: string;\n    evaluatorNames: string[];\n    maxToxicity: number;\n    maxBias: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReleaseGate\n */\nexport class LlmEvaluationReleaseGate implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReleaseGate';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReleaseGate();\n    LlmEvaluationReleaseGate.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReleaseGate) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.revision = _instance.revision || 0;\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.llmEvaluationBaselineExperimentName =\n      _instance.llmEvaluationBaselineExperimentName || '';\n    _instance.llmEvaluationEvaluatorNames =\n      _instance.llmEvaluationEvaluatorNames || [];\n    _instance.thresholds = _instance.thresholds || undefined;\n    _instance.safety = _instance.safety || undefined;\n    _instance.weights = _instance.weights || undefined;\n    _instance.passCutoffScore = _instance.passCutoffScore || 0;\n    _instance.stalenessWindowDays = _instance.stalenessWindowDays || 0;\n    _instance.ccaiServiceNames = _instance.ccaiServiceNames || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReleaseGate,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.revision = _reader.readInt32();\n          break;\n        case 5:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 6:\n          _instance.llmEvaluationBaselineExperimentName = _reader.readString();\n          break;\n        case 7:\n          (_instance.llmEvaluationEvaluatorNames =\n            _instance.llmEvaluationEvaluatorNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 8:\n          _instance.thresholds = new LlmEvaluationReleaseGateThresholds();\n          _reader.readMessage(\n            _instance.thresholds,\n            LlmEvaluationReleaseGateThresholds.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.safety = new LlmEvaluationReleaseGateSafetyConfig();\n          _reader.readMessage(\n            _instance.safety,\n            LlmEvaluationReleaseGateSafetyConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.weights = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.weights,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.passCutoffScore = _reader.readDouble();\n          break;\n        case 12:\n          _instance.stalenessWindowDays = _reader.readInt32();\n          break;\n        case 13:\n          (_instance.ccaiServiceNames = _instance.ccaiServiceNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 14:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 15:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 16:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 17:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 18:\n          _instance.parent = _reader.readString();\n          break;\n        case 19:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReleaseGate.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReleaseGate,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.revision) {\n      _writer.writeInt32(4, _instance.revision);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(5, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.llmEvaluationBaselineExperimentName) {\n      _writer.writeString(6, _instance.llmEvaluationBaselineExperimentName);\n    }\n    if (\n      _instance.llmEvaluationEvaluatorNames &&\n      _instance.llmEvaluationEvaluatorNames.length\n    ) {\n      _writer.writeRepeatedString(7, _instance.llmEvaluationEvaluatorNames);\n    }\n    if (_instance.thresholds) {\n      _writer.writeMessage(\n        8,\n        _instance.thresholds as any,\n        LlmEvaluationReleaseGateThresholds.serializeBinaryToWriter\n      );\n    }\n    if (_instance.safety) {\n      _writer.writeMessage(\n        9,\n        _instance.safety as any,\n        LlmEvaluationReleaseGateSafetyConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.weights) {\n      _writer.writeMessage(\n        10,\n        _instance.weights as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.passCutoffScore) {\n      _writer.writeDouble(11, _instance.passCutoffScore);\n    }\n    if (_instance.stalenessWindowDays) {\n      _writer.writeInt32(12, _instance.stalenessWindowDays);\n    }\n    if (_instance.ccaiServiceNames && _instance.ccaiServiceNames.length) {\n      _writer.writeRepeatedString(13, _instance.ccaiServiceNames);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        14,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(15, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        16,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(17, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(18, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(19, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _revision: number;\n  private _llmEvaluationDatasetName: string;\n  private _llmEvaluationBaselineExperimentName: string;\n  private _llmEvaluationEvaluatorNames: string[];\n  private _thresholds?: LlmEvaluationReleaseGateThresholds;\n  private _safety?: LlmEvaluationReleaseGateSafetyConfig;\n  private _weights?: googleProtobuf008.Struct;\n  private _passCutoffScore: number;\n  private _stalenessWindowDays: number;\n  private _ccaiServiceNames: string[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReleaseGate to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationReleaseGate.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.revision = _value.revision;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.llmEvaluationBaselineExperimentName =\n      _value.llmEvaluationBaselineExperimentName;\n    this.llmEvaluationEvaluatorNames = (\n      _value.llmEvaluationEvaluatorNames || []\n    ).slice();\n    this.thresholds = _value.thresholds\n      ? new LlmEvaluationReleaseGateThresholds(_value.thresholds)\n      : undefined;\n    this.safety = _value.safety\n      ? new LlmEvaluationReleaseGateSafetyConfig(_value.safety)\n      : undefined;\n    this.weights = _value.weights\n      ? new googleProtobuf008.Struct(_value.weights)\n      : undefined;\n    this.passCutoffScore = _value.passCutoffScore;\n    this.stalenessWindowDays = _value.stalenessWindowDays;\n    this.ccaiServiceNames = (_value.ccaiServiceNames || []).slice();\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationReleaseGate.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get revision(): number {\n    return this._revision;\n  }\n  set revision(value: number) {\n    this._revision = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get llmEvaluationBaselineExperimentName(): string {\n    return this._llmEvaluationBaselineExperimentName;\n  }\n  set llmEvaluationBaselineExperimentName(value: string) {\n    this._llmEvaluationBaselineExperimentName = value;\n  }\n  get llmEvaluationEvaluatorNames(): string[] {\n    return this._llmEvaluationEvaluatorNames;\n  }\n  set llmEvaluationEvaluatorNames(value: string[]) {\n    this._llmEvaluationEvaluatorNames = value;\n  }\n  get thresholds(): LlmEvaluationReleaseGateThresholds | undefined {\n    return this._thresholds;\n  }\n  set thresholds(value: LlmEvaluationReleaseGateThresholds | undefined) {\n    this._thresholds = value;\n  }\n  get safety(): LlmEvaluationReleaseGateSafetyConfig | undefined {\n    return this._safety;\n  }\n  set safety(value: LlmEvaluationReleaseGateSafetyConfig | undefined) {\n    this._safety = value;\n  }\n  get weights(): googleProtobuf008.Struct | undefined {\n    return this._weights;\n  }\n  set weights(value: googleProtobuf008.Struct | undefined) {\n    this._weights = value;\n  }\n  get passCutoffScore(): number {\n    return this._passCutoffScore;\n  }\n  set passCutoffScore(value: number) {\n    this._passCutoffScore = value;\n  }\n  get stalenessWindowDays(): number {\n    return this._stalenessWindowDays;\n  }\n  set stalenessWindowDays(value: number) {\n    this._stalenessWindowDays = value;\n  }\n  get ccaiServiceNames(): string[] {\n    return this._ccaiServiceNames;\n  }\n  set ccaiServiceNames(value: string[]) {\n    this._ccaiServiceNames = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReleaseGate.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReleaseGate.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      revision: this.revision,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      llmEvaluationEvaluatorNames: (\n        this.llmEvaluationEvaluatorNames || []\n      ).slice(),\n      thresholds: this.thresholds ? this.thresholds.toObject() : undefined,\n      safety: this.safety ? this.safety.toObject() : undefined,\n      weights: this.weights ? this.weights.toObject() : undefined,\n      passCutoffScore: this.passCutoffScore,\n      stalenessWindowDays: this.stalenessWindowDays,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReleaseGate.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      revision: this.revision,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      llmEvaluationEvaluatorNames: (\n        this.llmEvaluationEvaluatorNames || []\n      ).slice(),\n      thresholds: this.thresholds\n        ? this.thresholds.toProtobufJSON(options)\n        : null,\n      safety: this.safety ? this.safety.toProtobufJSON(options) : null,\n      weights: this.weights ? this.weights.toProtobufJSON(options) : null,\n      passCutoffScore: this.passCutoffScore,\n      stalenessWindowDays: this.stalenessWindowDays,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationReleaseGate {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReleaseGate\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    revision: number;\n    llmEvaluationDatasetName: string;\n    llmEvaluationBaselineExperimentName: string;\n    llmEvaluationEvaluatorNames: string[];\n    thresholds?: LlmEvaluationReleaseGateThresholds.AsObject;\n    safety?: LlmEvaluationReleaseGateSafetyConfig.AsObject;\n    weights?: googleProtobuf008.Struct.AsObject;\n    passCutoffScore: number;\n    stalenessWindowDays: number;\n    ccaiServiceNames: string[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReleaseGate\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    revision: number;\n    llmEvaluationDatasetName: string;\n    llmEvaluationBaselineExperimentName: string;\n    llmEvaluationEvaluatorNames: string[];\n    thresholds: LlmEvaluationReleaseGateThresholds.AsProtobufJSON | null;\n    safety: LlmEvaluationReleaseGateSafetyConfig.AsProtobufJSON | null;\n    weights: googleProtobuf008.Struct.AsProtobufJSON | null;\n    passCutoffScore: number;\n    stalenessWindowDays: number;\n    ccaiServiceNames: string[];\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReleaseGateCheck\n */\nexport class LlmEvaluationReleaseGateCheck implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReleaseGateCheck';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReleaseGateCheck();\n    LlmEvaluationReleaseGateCheck.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReleaseGateCheck) {\n    _instance.id = _instance.id || '';\n    _instance.threshold = _instance.threshold || 0;\n    _instance.actual = _instance.actual || 0;\n    _instance.actualAvailable = _instance.actualAvailable || false;\n    _instance.passed = _instance.passed || false;\n    _instance.partial = _instance.partial || false;\n    _instance.provenance = _instance.provenance || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReleaseGateCheck,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.id = _reader.readString();\n          break;\n        case 2:\n          _instance.threshold = _reader.readDouble();\n          break;\n        case 3:\n          _instance.actual = _reader.readDouble();\n          break;\n        case 4:\n          _instance.actualAvailable = _reader.readBool();\n          break;\n        case 5:\n          _instance.passed = _reader.readBool();\n          break;\n        case 6:\n          _instance.partial = _reader.readBool();\n          break;\n        case 7:\n          _instance.provenance = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReleaseGateCheck.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReleaseGateCheck,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.id) {\n      _writer.writeString(1, _instance.id);\n    }\n    if (_instance.threshold) {\n      _writer.writeDouble(2, _instance.threshold);\n    }\n    if (_instance.actual) {\n      _writer.writeDouble(3, _instance.actual);\n    }\n    if (_instance.actualAvailable) {\n      _writer.writeBool(4, _instance.actualAvailable);\n    }\n    if (_instance.passed) {\n      _writer.writeBool(5, _instance.passed);\n    }\n    if (_instance.partial) {\n      _writer.writeBool(6, _instance.partial);\n    }\n    if (_instance.provenance) {\n      _writer.writeString(7, _instance.provenance);\n    }\n  }\n\n  private _id: string;\n  private _threshold: number;\n  private _actual: number;\n  private _actualAvailable: boolean;\n  private _passed: boolean;\n  private _partial: boolean;\n  private _provenance: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReleaseGateCheck to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationReleaseGateCheck.AsObject>\n  ) {\n    _value = _value || {};\n    this.id = _value.id;\n    this.threshold = _value.threshold;\n    this.actual = _value.actual;\n    this.actualAvailable = _value.actualAvailable;\n    this.passed = _value.passed;\n    this.partial = _value.partial;\n    this.provenance = _value.provenance;\n    LlmEvaluationReleaseGateCheck.refineValues(this);\n  }\n  get id(): string {\n    return this._id;\n  }\n  set id(value: string) {\n    this._id = value;\n  }\n  get threshold(): number {\n    return this._threshold;\n  }\n  set threshold(value: number) {\n    this._threshold = value;\n  }\n  get actual(): number {\n    return this._actual;\n  }\n  set actual(value: number) {\n    this._actual = value;\n  }\n  get actualAvailable(): boolean {\n    return this._actualAvailable;\n  }\n  set actualAvailable(value: boolean) {\n    this._actualAvailable = value;\n  }\n  get passed(): boolean {\n    return this._passed;\n  }\n  set passed(value: boolean) {\n    this._passed = value;\n  }\n  get partial(): boolean {\n    return this._partial;\n  }\n  set partial(value: boolean) {\n    this._partial = value;\n  }\n  get provenance(): string {\n    return this._provenance;\n  }\n  set provenance(value: string) {\n    this._provenance = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReleaseGateCheck.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReleaseGateCheck.AsObject {\n    return {\n      id: this.id,\n      threshold: this.threshold,\n      actual: this.actual,\n      actualAvailable: this.actualAvailable,\n      passed: this.passed,\n      partial: this.partial,\n      provenance: this.provenance\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReleaseGateCheck.AsProtobufJSON {\n    return {\n      id: this.id,\n      threshold: this.threshold,\n      actual: this.actual,\n      actualAvailable: this.actualAvailable,\n      passed: this.passed,\n      partial: this.partial,\n      provenance: this.provenance\n    };\n  }\n}\nexport module LlmEvaluationReleaseGateCheck {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReleaseGateCheck\n   */\n  export interface AsObject {\n    id: string;\n    threshold: number;\n    actual: number;\n    actualAvailable: boolean;\n    passed: boolean;\n    partial: boolean;\n    provenance: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReleaseGateCheck\n   */\n  export interface AsProtobufJSON {\n    id: string;\n    threshold: number;\n    actual: number;\n    actualAvailable: boolean;\n    passed: boolean;\n    partial: boolean;\n    provenance: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReleaseGateRun\n */\nexport class LlmEvaluationReleaseGateRun implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReleaseGateRun';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReleaseGateRun();\n    LlmEvaluationReleaseGateRun.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReleaseGateRun) {\n    _instance.name = _instance.name || '';\n    _instance.llmEvaluationReleaseGateName =\n      _instance.llmEvaluationReleaseGateName || '';\n    _instance.gateRevision = _instance.gateRevision || 0;\n    _instance.gateSnapshot = _instance.gateSnapshot || undefined;\n    _instance.llmEvaluationExperimentName =\n      _instance.llmEvaluationExperimentName || '';\n    _instance.llmEvaluationSafetyExperimentName =\n      _instance.llmEvaluationSafetyExperimentName || '';\n    _instance.llmEvaluationBaselineExperimentName =\n      _instance.llmEvaluationBaselineExperimentName || '';\n    _instance.llmEvaluationReleaseGateVerdict =\n      _instance.llmEvaluationReleaseGateVerdict || 0;\n    _instance.checks = _instance.checks || [];\n    _instance.startedAt = _instance.startedAt || undefined;\n    _instance.finishedAt = _instance.finishedAt || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReleaseGateRun,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationReleaseGateName = _reader.readString();\n          break;\n        case 3:\n          _instance.gateRevision = _reader.readInt32();\n          break;\n        case 4:\n          _instance.gateSnapshot = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.gateSnapshot,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.llmEvaluationExperimentName = _reader.readString();\n          break;\n        case 6:\n          _instance.llmEvaluationSafetyExperimentName = _reader.readString();\n          break;\n        case 7:\n          _instance.llmEvaluationBaselineExperimentName = _reader.readString();\n          break;\n        case 8:\n          _instance.llmEvaluationReleaseGateVerdict = _reader.readEnum();\n          break;\n        case 9:\n          const messageInitializer9 = new LlmEvaluationReleaseGateCheck();\n          _reader.readMessage(\n            messageInitializer9,\n            LlmEvaluationReleaseGateCheck.deserializeBinaryFromReader\n          );\n          (_instance.checks = _instance.checks || []).push(messageInitializer9);\n          break;\n        case 10:\n          _instance.startedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.finishedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.finishedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 14:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 15:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 16:\n          _instance.parent = _reader.readString();\n          break;\n        case 17:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReleaseGateRun.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReleaseGateRun,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.llmEvaluationReleaseGateName) {\n      _writer.writeString(2, _instance.llmEvaluationReleaseGateName);\n    }\n    if (_instance.gateRevision) {\n      _writer.writeInt32(3, _instance.gateRevision);\n    }\n    if (_instance.gateSnapshot) {\n      _writer.writeMessage(\n        4,\n        _instance.gateSnapshot as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEvaluationExperimentName) {\n      _writer.writeString(5, _instance.llmEvaluationExperimentName);\n    }\n    if (_instance.llmEvaluationSafetyExperimentName) {\n      _writer.writeString(6, _instance.llmEvaluationSafetyExperimentName);\n    }\n    if (_instance.llmEvaluationBaselineExperimentName) {\n      _writer.writeString(7, _instance.llmEvaluationBaselineExperimentName);\n    }\n    if (_instance.llmEvaluationReleaseGateVerdict) {\n      _writer.writeEnum(8, _instance.llmEvaluationReleaseGateVerdict);\n    }\n    if (_instance.checks && _instance.checks.length) {\n      _writer.writeRepeatedMessage(\n        9,\n        _instance.checks as any,\n        LlmEvaluationReleaseGateCheck.serializeBinaryToWriter\n      );\n    }\n    if (_instance.startedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.startedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.finishedAt) {\n      _writer.writeMessage(\n        11,\n        _instance.finishedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        12,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(13, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        14,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(15, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(16, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(17, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _llmEvaluationReleaseGateName: string;\n  private _gateRevision: number;\n  private _gateSnapshot?: googleProtobuf008.Struct;\n  private _llmEvaluationExperimentName: string;\n  private _llmEvaluationSafetyExperimentName: string;\n  private _llmEvaluationBaselineExperimentName: string;\n  private _llmEvaluationReleaseGateVerdict: LlmEvaluationReleaseGateVerdict;\n  private _checks?: LlmEvaluationReleaseGateCheck[];\n  private _startedAt?: googleProtobuf005.Timestamp;\n  private _finishedAt?: googleProtobuf005.Timestamp;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReleaseGateRun to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationReleaseGateRun.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.llmEvaluationReleaseGateName = _value.llmEvaluationReleaseGateName;\n    this.gateRevision = _value.gateRevision;\n    this.gateSnapshot = _value.gateSnapshot\n      ? new googleProtobuf008.Struct(_value.gateSnapshot)\n      : undefined;\n    this.llmEvaluationExperimentName = _value.llmEvaluationExperimentName;\n    this.llmEvaluationSafetyExperimentName =\n      _value.llmEvaluationSafetyExperimentName;\n    this.llmEvaluationBaselineExperimentName =\n      _value.llmEvaluationBaselineExperimentName;\n    this.llmEvaluationReleaseGateVerdict =\n      _value.llmEvaluationReleaseGateVerdict;\n    this.checks = (_value.checks || []).map(\n      m => new LlmEvaluationReleaseGateCheck(m)\n    );\n    this.startedAt = _value.startedAt\n      ? new googleProtobuf005.Timestamp(_value.startedAt)\n      : undefined;\n    this.finishedAt = _value.finishedAt\n      ? new googleProtobuf005.Timestamp(_value.finishedAt)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationReleaseGateRun.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get llmEvaluationReleaseGateName(): string {\n    return this._llmEvaluationReleaseGateName;\n  }\n  set llmEvaluationReleaseGateName(value: string) {\n    this._llmEvaluationReleaseGateName = value;\n  }\n  get gateRevision(): number {\n    return this._gateRevision;\n  }\n  set gateRevision(value: number) {\n    this._gateRevision = value;\n  }\n  get gateSnapshot(): googleProtobuf008.Struct | undefined {\n    return this._gateSnapshot;\n  }\n  set gateSnapshot(value: googleProtobuf008.Struct | undefined) {\n    this._gateSnapshot = value;\n  }\n  get llmEvaluationExperimentName(): string {\n    return this._llmEvaluationExperimentName;\n  }\n  set llmEvaluationExperimentName(value: string) {\n    this._llmEvaluationExperimentName = value;\n  }\n  get llmEvaluationSafetyExperimentName(): string {\n    return this._llmEvaluationSafetyExperimentName;\n  }\n  set llmEvaluationSafetyExperimentName(value: string) {\n    this._llmEvaluationSafetyExperimentName = value;\n  }\n  get llmEvaluationBaselineExperimentName(): string {\n    return this._llmEvaluationBaselineExperimentName;\n  }\n  set llmEvaluationBaselineExperimentName(value: string) {\n    this._llmEvaluationBaselineExperimentName = value;\n  }\n  get llmEvaluationReleaseGateVerdict(): LlmEvaluationReleaseGateVerdict {\n    return this._llmEvaluationReleaseGateVerdict;\n  }\n  set llmEvaluationReleaseGateVerdict(value: LlmEvaluationReleaseGateVerdict) {\n    this._llmEvaluationReleaseGateVerdict = value;\n  }\n  get checks(): LlmEvaluationReleaseGateCheck[] | undefined {\n    return this._checks;\n  }\n  set checks(value: LlmEvaluationReleaseGateCheck[] | undefined) {\n    this._checks = value;\n  }\n  get startedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._startedAt;\n  }\n  set startedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._startedAt = value;\n  }\n  get finishedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._finishedAt;\n  }\n  set finishedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._finishedAt = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReleaseGateRun.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReleaseGateRun.AsObject {\n    return {\n      name: this.name,\n      llmEvaluationReleaseGateName: this.llmEvaluationReleaseGateName,\n      gateRevision: this.gateRevision,\n      gateSnapshot: this.gateSnapshot\n        ? this.gateSnapshot.toObject()\n        : undefined,\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationSafetyExperimentName: this.llmEvaluationSafetyExperimentName,\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      llmEvaluationReleaseGateVerdict: this.llmEvaluationReleaseGateVerdict,\n      checks: (this.checks || []).map(m => m.toObject()),\n      startedAt: this.startedAt ? this.startedAt.toObject() : undefined,\n      finishedAt: this.finishedAt ? this.finishedAt.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReleaseGateRun.AsProtobufJSON {\n    return {\n      name: this.name,\n      llmEvaluationReleaseGateName: this.llmEvaluationReleaseGateName,\n      gateRevision: this.gateRevision,\n      gateSnapshot: this.gateSnapshot\n        ? this.gateSnapshot.toProtobufJSON(options)\n        : null,\n      llmEvaluationExperimentName: this.llmEvaluationExperimentName,\n      llmEvaluationSafetyExperimentName: this.llmEvaluationSafetyExperimentName,\n      llmEvaluationBaselineExperimentName: this\n        .llmEvaluationBaselineExperimentName,\n      llmEvaluationReleaseGateVerdict:\n        LlmEvaluationReleaseGateVerdict[\n          this.llmEvaluationReleaseGateVerdict === null ||\n          this.llmEvaluationReleaseGateVerdict === undefined\n            ? 0\n            : this.llmEvaluationReleaseGateVerdict\n        ],\n      checks: (this.checks || []).map(m => m.toProtobufJSON(options)),\n      startedAt: this.startedAt ? this.startedAt.toProtobufJSON(options) : null,\n      finishedAt: this.finishedAt\n        ? this.finishedAt.toProtobufJSON(options)\n        : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationReleaseGateRun {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReleaseGateRun\n   */\n  export interface AsObject {\n    name: string;\n    llmEvaluationReleaseGateName: string;\n    gateRevision: number;\n    gateSnapshot?: googleProtobuf008.Struct.AsObject;\n    llmEvaluationExperimentName: string;\n    llmEvaluationSafetyExperimentName: string;\n    llmEvaluationBaselineExperimentName: string;\n    llmEvaluationReleaseGateVerdict: LlmEvaluationReleaseGateVerdict;\n    checks?: LlmEvaluationReleaseGateCheck.AsObject[];\n    startedAt?: googleProtobuf005.Timestamp.AsObject;\n    finishedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReleaseGateRun\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    llmEvaluationReleaseGateName: string;\n    gateRevision: number;\n    gateSnapshot: googleProtobuf008.Struct.AsProtobufJSON | null;\n    llmEvaluationExperimentName: string;\n    llmEvaluationSafetyExperimentName: string;\n    llmEvaluationBaselineExperimentName: string;\n    llmEvaluationReleaseGateVerdict: string;\n    checks: LlmEvaluationReleaseGateCheck.AsProtobufJSON[] | null;\n    startedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    finishedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationReleaseGateRequest\n */\nexport class CreateLlmEvaluationReleaseGateRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationReleaseGateRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationReleaseGateRequest();\n    CreateLlmEvaluationReleaseGateRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateLlmEvaluationReleaseGateRequest) {\n    _instance.llmEvaluationReleaseGate =\n      _instance.llmEvaluationReleaseGate || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationReleaseGateRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationReleaseGate = new LlmEvaluationReleaseGate();\n          _reader.readMessage(\n            _instance.llmEvaluationReleaseGate,\n            LlmEvaluationReleaseGate.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationReleaseGateRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationReleaseGateRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationReleaseGate) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationReleaseGate as any,\n        LlmEvaluationReleaseGate.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationReleaseGate?: LlmEvaluationReleaseGate;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationReleaseGateRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateLlmEvaluationReleaseGateRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationReleaseGate = _value.llmEvaluationReleaseGate\n      ? new LlmEvaluationReleaseGate(_value.llmEvaluationReleaseGate)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CreateLlmEvaluationReleaseGateRequest.refineValues(this);\n  }\n  get llmEvaluationReleaseGate(): LlmEvaluationReleaseGate | undefined {\n    return this._llmEvaluationReleaseGate;\n  }\n  set llmEvaluationReleaseGate(value: LlmEvaluationReleaseGate | undefined) {\n    this._llmEvaluationReleaseGate = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationReleaseGateRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationReleaseGateRequest.AsObject {\n    return {\n      llmEvaluationReleaseGate: this.llmEvaluationReleaseGate\n        ? this.llmEvaluationReleaseGate.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationReleaseGateRequest.AsProtobufJSON {\n    return {\n      llmEvaluationReleaseGate: this.llmEvaluationReleaseGate\n        ? this.llmEvaluationReleaseGate.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CreateLlmEvaluationReleaseGateRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationReleaseGateRequest\n   */\n  export interface AsObject {\n    llmEvaluationReleaseGate?: LlmEvaluationReleaseGate.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationReleaseGateRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationReleaseGate: LlmEvaluationReleaseGate.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationReleaseGateRequest\n */\nexport class GetLlmEvaluationReleaseGateRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationReleaseGateRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationReleaseGateRequest();\n    GetLlmEvaluationReleaseGateRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationReleaseGateRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationReleaseGateRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationReleaseGateRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationReleaseGateRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationReleaseGateRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationReleaseGateRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationReleaseGateRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationReleaseGateRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationReleaseGateRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationReleaseGateRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationReleaseGateRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationReleaseGateRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationReleaseGateRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReleaseGateFilter\n */\nexport class LlmEvaluationReleaseGateFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReleaseGateFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReleaseGateFilter();\n    LlmEvaluationReleaseGateFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReleaseGateFilter) {\n    _instance.displayName = _instance.displayName || '';\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReleaseGateFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReleaseGateFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReleaseGateFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(2, _instance.llmEvaluationDatasetName);\n    }\n  }\n\n  private _displayName: string;\n  private _llmEvaluationDatasetName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReleaseGateFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationReleaseGateFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    LlmEvaluationReleaseGateFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReleaseGateFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReleaseGateFilter.AsObject {\n    return {\n      displayName: this.displayName,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReleaseGateFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName\n    };\n  }\n}\nexport module LlmEvaluationReleaseGateFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReleaseGateFilter\n   */\n  export interface AsObject {\n    displayName: string;\n    llmEvaluationDatasetName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReleaseGateFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n    llmEvaluationDatasetName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationReleaseGatesRequest\n */\nexport class ListLlmEvaluationReleaseGatesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationReleaseGatesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationReleaseGatesRequest();\n    ListLlmEvaluationReleaseGatesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationReleaseGatesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationReleaseGateFilter =\n      _instance.llmEvaluationReleaseGateFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationReleaseGatesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationReleaseGateFilter = new LlmEvaluationReleaseGateFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationReleaseGateFilter,\n            LlmEvaluationReleaseGateFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationReleaseGatesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationReleaseGatesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationReleaseGateFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationReleaseGateFilter as any,\n        LlmEvaluationReleaseGateFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationReleaseGateFilter?: LlmEvaluationReleaseGateFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationReleaseGatesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationReleaseGatesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationReleaseGateFilter = _value.llmEvaluationReleaseGateFilter\n      ? new LlmEvaluationReleaseGateFilter(\n          _value.llmEvaluationReleaseGateFilter\n        )\n      : undefined;\n    ListLlmEvaluationReleaseGatesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationReleaseGateFilter():\n    | LlmEvaluationReleaseGateFilter\n    | undefined {\n    return this._llmEvaluationReleaseGateFilter;\n  }\n  set llmEvaluationReleaseGateFilter(\n    value: LlmEvaluationReleaseGateFilter | undefined\n  ) {\n    this._llmEvaluationReleaseGateFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationReleaseGatesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationReleaseGatesRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationReleaseGateFilter: this.llmEvaluationReleaseGateFilter\n        ? this.llmEvaluationReleaseGateFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationReleaseGatesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationReleaseGateFilter: this.llmEvaluationReleaseGateFilter\n        ? this.llmEvaluationReleaseGateFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationReleaseGatesRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationReleaseGatesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationReleaseGateFilter?: LlmEvaluationReleaseGateFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationReleaseGatesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationReleaseGateFilter: LlmEvaluationReleaseGateFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationReleaseGatesResponse\n */\nexport class ListLlmEvaluationReleaseGatesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationReleaseGatesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationReleaseGatesResponse();\n    ListLlmEvaluationReleaseGatesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationReleaseGatesResponse) {\n    _instance.llmEvaluationReleaseGates =\n      _instance.llmEvaluationReleaseGates || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationReleaseGatesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationReleaseGate();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationReleaseGate.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationReleaseGates =\n            _instance.llmEvaluationReleaseGates || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationReleaseGatesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationReleaseGatesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationReleaseGates &&\n      _instance.llmEvaluationReleaseGates.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationReleaseGates as any,\n        LlmEvaluationReleaseGate.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationReleaseGates?: LlmEvaluationReleaseGate[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationReleaseGatesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationReleaseGatesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationReleaseGates = (\n      _value.llmEvaluationReleaseGates || []\n    ).map(m => new LlmEvaluationReleaseGate(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationReleaseGatesResponse.refineValues(this);\n  }\n  get llmEvaluationReleaseGates(): LlmEvaluationReleaseGate[] | undefined {\n    return this._llmEvaluationReleaseGates;\n  }\n  set llmEvaluationReleaseGates(value: LlmEvaluationReleaseGate[] | undefined) {\n    this._llmEvaluationReleaseGates = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationReleaseGatesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationReleaseGatesResponse.AsObject {\n    return {\n      llmEvaluationReleaseGates: (this.llmEvaluationReleaseGates || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationReleaseGatesResponse.AsProtobufJSON {\n    return {\n      llmEvaluationReleaseGates: (this.llmEvaluationReleaseGates || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationReleaseGatesResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationReleaseGatesResponse\n   */\n  export interface AsObject {\n    llmEvaluationReleaseGates?: LlmEvaluationReleaseGate.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationReleaseGatesResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationReleaseGates: LlmEvaluationReleaseGate.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationReleaseGateRequest\n */\nexport class UpdateLlmEvaluationReleaseGateRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationReleaseGateRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationReleaseGateRequest();\n    UpdateLlmEvaluationReleaseGateRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationReleaseGateRequest) {\n    _instance.llmEvaluationReleaseGate =\n      _instance.llmEvaluationReleaseGate || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationReleaseGateRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationReleaseGate = new LlmEvaluationReleaseGate();\n          _reader.readMessage(\n            _instance.llmEvaluationReleaseGate,\n            LlmEvaluationReleaseGate.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationReleaseGateRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationReleaseGateRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationReleaseGate) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationReleaseGate as any,\n        LlmEvaluationReleaseGate.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationReleaseGate?: LlmEvaluationReleaseGate;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationReleaseGateRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationReleaseGateRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationReleaseGate = _value.llmEvaluationReleaseGate\n      ? new LlmEvaluationReleaseGate(_value.llmEvaluationReleaseGate)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationReleaseGateRequest.refineValues(this);\n  }\n  get llmEvaluationReleaseGate(): LlmEvaluationReleaseGate | undefined {\n    return this._llmEvaluationReleaseGate;\n  }\n  set llmEvaluationReleaseGate(value: LlmEvaluationReleaseGate | undefined) {\n    this._llmEvaluationReleaseGate = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationReleaseGateRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationReleaseGateRequest.AsObject {\n    return {\n      llmEvaluationReleaseGate: this.llmEvaluationReleaseGate\n        ? this.llmEvaluationReleaseGate.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationReleaseGateRequest.AsProtobufJSON {\n    return {\n      llmEvaluationReleaseGate: this.llmEvaluationReleaseGate\n        ? this.llmEvaluationReleaseGate.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationReleaseGateRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationReleaseGateRequest\n   */\n  export interface AsObject {\n    llmEvaluationReleaseGate?: LlmEvaluationReleaseGate.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationReleaseGateRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationReleaseGate: LlmEvaluationReleaseGate.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationReleaseGateRequest\n */\nexport class DeleteLlmEvaluationReleaseGateRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationReleaseGateRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationReleaseGateRequest();\n    DeleteLlmEvaluationReleaseGateRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationReleaseGateRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationReleaseGateRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationReleaseGateRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationReleaseGateRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationReleaseGateRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationReleaseGateRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationReleaseGateRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationReleaseGateRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationReleaseGateRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationReleaseGateRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationReleaseGateRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationReleaseGateRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationReleaseGateRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RunLlmEvaluationReleaseGateRequest\n */\nexport class RunLlmEvaluationReleaseGateRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RunLlmEvaluationReleaseGateRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RunLlmEvaluationReleaseGateRequest();\n    RunLlmEvaluationReleaseGateRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RunLlmEvaluationReleaseGateRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.ccaiServiceNames = _instance.ccaiServiceNames || [];\n    _instance.gitSha = _instance.gitSha || '';\n    _instance.promptVersion = _instance.promptVersion || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RunLlmEvaluationReleaseGateRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          (_instance.ccaiServiceNames = _instance.ccaiServiceNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 5:\n          _instance.gitSha = _reader.readString();\n          break;\n        case 6:\n          _instance.promptVersion = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RunLlmEvaluationReleaseGateRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RunLlmEvaluationReleaseGateRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.ccaiServiceNames && _instance.ccaiServiceNames.length) {\n      _writer.writeRepeatedString(4, _instance.ccaiServiceNames);\n    }\n    if (_instance.gitSha) {\n      _writer.writeString(5, _instance.gitSha);\n    }\n    if (_instance.promptVersion) {\n      _writer.writeString(6, _instance.promptVersion);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n  private _ccaiServiceNames: string[];\n  private _gitSha: string;\n  private _promptVersion: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RunLlmEvaluationReleaseGateRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RunLlmEvaluationReleaseGateRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.ccaiServiceNames = (_value.ccaiServiceNames || []).slice();\n    this.gitSha = _value.gitSha;\n    this.promptVersion = _value.promptVersion;\n    RunLlmEvaluationReleaseGateRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get ccaiServiceNames(): string[] {\n    return this._ccaiServiceNames;\n  }\n  set ccaiServiceNames(value: string[]) {\n    this._ccaiServiceNames = value;\n  }\n  get gitSha(): string {\n    return this._gitSha;\n  }\n  set gitSha(value: string) {\n    this._gitSha = value;\n  }\n  get promptVersion(): string {\n    return this._promptVersion;\n  }\n  set promptVersion(value: string) {\n    this._promptVersion = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RunLlmEvaluationReleaseGateRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RunLlmEvaluationReleaseGateRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      gitSha: this.gitSha,\n      promptVersion: this.promptVersion\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RunLlmEvaluationReleaseGateRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      gitSha: this.gitSha,\n      promptVersion: this.promptVersion\n    };\n  }\n}\nexport module RunLlmEvaluationReleaseGateRequest {\n  /**\n   * Standard JavaScript object representation for RunLlmEvaluationReleaseGateRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n    ccaiServiceNames: string[];\n    gitSha: string;\n    promptVersion: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RunLlmEvaluationReleaseGateRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n    ccaiServiceNames: string[];\n    gitSha: string;\n    promptVersion: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationReleaseGateRunRequest\n */\nexport class GetLlmEvaluationReleaseGateRunRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationReleaseGateRunRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationReleaseGateRunRequest();\n    GetLlmEvaluationReleaseGateRunRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationReleaseGateRunRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationReleaseGateRunRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationReleaseGateRunRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationReleaseGateRunRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationReleaseGateRunRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationReleaseGateRunRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationReleaseGateRunRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationReleaseGateRunRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationReleaseGateRunRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationReleaseGateRunRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationReleaseGateRunRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationReleaseGateRunRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationReleaseGateRunRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReleaseGateRunFilter\n */\nexport class LlmEvaluationReleaseGateRunFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReleaseGateRunFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReleaseGateRunFilter();\n    LlmEvaluationReleaseGateRunFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReleaseGateRunFilter) {\n    _instance.llmEvaluationReleaseGateName =\n      _instance.llmEvaluationReleaseGateName || '';\n    _instance.llmEvaluationReleaseGateVerdict =\n      _instance.llmEvaluationReleaseGateVerdict || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReleaseGateRunFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationReleaseGateName = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationReleaseGateVerdict = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReleaseGateRunFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReleaseGateRunFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationReleaseGateName) {\n      _writer.writeString(1, _instance.llmEvaluationReleaseGateName);\n    }\n    if (_instance.llmEvaluationReleaseGateVerdict) {\n      _writer.writeEnum(2, _instance.llmEvaluationReleaseGateVerdict);\n    }\n  }\n\n  private _llmEvaluationReleaseGateName: string;\n  private _llmEvaluationReleaseGateVerdict: LlmEvaluationReleaseGateVerdict;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReleaseGateRunFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationReleaseGateRunFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationReleaseGateName = _value.llmEvaluationReleaseGateName;\n    this.llmEvaluationReleaseGateVerdict =\n      _value.llmEvaluationReleaseGateVerdict;\n    LlmEvaluationReleaseGateRunFilter.refineValues(this);\n  }\n  get llmEvaluationReleaseGateName(): string {\n    return this._llmEvaluationReleaseGateName;\n  }\n  set llmEvaluationReleaseGateName(value: string) {\n    this._llmEvaluationReleaseGateName = value;\n  }\n  get llmEvaluationReleaseGateVerdict(): LlmEvaluationReleaseGateVerdict {\n    return this._llmEvaluationReleaseGateVerdict;\n  }\n  set llmEvaluationReleaseGateVerdict(value: LlmEvaluationReleaseGateVerdict) {\n    this._llmEvaluationReleaseGateVerdict = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReleaseGateRunFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReleaseGateRunFilter.AsObject {\n    return {\n      llmEvaluationReleaseGateName: this.llmEvaluationReleaseGateName,\n      llmEvaluationReleaseGateVerdict: this.llmEvaluationReleaseGateVerdict\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReleaseGateRunFilter.AsProtobufJSON {\n    return {\n      llmEvaluationReleaseGateName: this.llmEvaluationReleaseGateName,\n      llmEvaluationReleaseGateVerdict:\n        LlmEvaluationReleaseGateVerdict[\n          this.llmEvaluationReleaseGateVerdict === null ||\n          this.llmEvaluationReleaseGateVerdict === undefined\n            ? 0\n            : this.llmEvaluationReleaseGateVerdict\n        ]\n    };\n  }\n}\nexport module LlmEvaluationReleaseGateRunFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReleaseGateRunFilter\n   */\n  export interface AsObject {\n    llmEvaluationReleaseGateName: string;\n    llmEvaluationReleaseGateVerdict: LlmEvaluationReleaseGateVerdict;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReleaseGateRunFilter\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationReleaseGateName: string;\n    llmEvaluationReleaseGateVerdict: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationReleaseGateRunsRequest\n */\nexport class ListLlmEvaluationReleaseGateRunsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationReleaseGateRunsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationReleaseGateRunsRequest();\n    ListLlmEvaluationReleaseGateRunsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationReleaseGateRunsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationReleaseGateRunFilter =\n      _instance.llmEvaluationReleaseGateRunFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationReleaseGateRunsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationReleaseGateRunFilter = new LlmEvaluationReleaseGateRunFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationReleaseGateRunFilter,\n            LlmEvaluationReleaseGateRunFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationReleaseGateRunsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationReleaseGateRunsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationReleaseGateRunFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationReleaseGateRunFilter as any,\n        LlmEvaluationReleaseGateRunFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationReleaseGateRunFilter?: LlmEvaluationReleaseGateRunFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationReleaseGateRunsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationReleaseGateRunsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationReleaseGateRunFilter = _value.llmEvaluationReleaseGateRunFilter\n      ? new LlmEvaluationReleaseGateRunFilter(\n          _value.llmEvaluationReleaseGateRunFilter\n        )\n      : undefined;\n    ListLlmEvaluationReleaseGateRunsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationReleaseGateRunFilter():\n    | LlmEvaluationReleaseGateRunFilter\n    | undefined {\n    return this._llmEvaluationReleaseGateRunFilter;\n  }\n  set llmEvaluationReleaseGateRunFilter(\n    value: LlmEvaluationReleaseGateRunFilter | undefined\n  ) {\n    this._llmEvaluationReleaseGateRunFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationReleaseGateRunsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationReleaseGateRunsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationReleaseGateRunFilter: this.llmEvaluationReleaseGateRunFilter\n        ? this.llmEvaluationReleaseGateRunFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationReleaseGateRunsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationReleaseGateRunFilter: this.llmEvaluationReleaseGateRunFilter\n        ? this.llmEvaluationReleaseGateRunFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationReleaseGateRunsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationReleaseGateRunsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationReleaseGateRunFilter?: LlmEvaluationReleaseGateRunFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationReleaseGateRunsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationReleaseGateRunFilter: LlmEvaluationReleaseGateRunFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationReleaseGateRunsResponse\n */\nexport class ListLlmEvaluationReleaseGateRunsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationReleaseGateRunsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationReleaseGateRunsResponse();\n    ListLlmEvaluationReleaseGateRunsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationReleaseGateRunsResponse) {\n    _instance.llmEvaluationReleaseGateRuns =\n      _instance.llmEvaluationReleaseGateRuns || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationReleaseGateRunsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationReleaseGateRun();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationReleaseGateRun.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationReleaseGateRuns =\n            _instance.llmEvaluationReleaseGateRuns || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationReleaseGateRunsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationReleaseGateRunsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationReleaseGateRuns &&\n      _instance.llmEvaluationReleaseGateRuns.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationReleaseGateRuns as any,\n        LlmEvaluationReleaseGateRun.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationReleaseGateRuns?: LlmEvaluationReleaseGateRun[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationReleaseGateRunsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationReleaseGateRunsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationReleaseGateRuns = (\n      _value.llmEvaluationReleaseGateRuns || []\n    ).map(m => new LlmEvaluationReleaseGateRun(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationReleaseGateRunsResponse.refineValues(this);\n  }\n  get llmEvaluationReleaseGateRuns():\n    | LlmEvaluationReleaseGateRun[]\n    | undefined {\n    return this._llmEvaluationReleaseGateRuns;\n  }\n  set llmEvaluationReleaseGateRuns(\n    value: LlmEvaluationReleaseGateRun[] | undefined\n  ) {\n    this._llmEvaluationReleaseGateRuns = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationReleaseGateRunsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationReleaseGateRunsResponse.AsObject {\n    return {\n      llmEvaluationReleaseGateRuns: (\n        this.llmEvaluationReleaseGateRuns || []\n      ).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationReleaseGateRunsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationReleaseGateRuns: (\n        this.llmEvaluationReleaseGateRuns || []\n      ).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationReleaseGateRunsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationReleaseGateRunsResponse\n   */\n  export interface AsObject {\n    llmEvaluationReleaseGateRuns?: LlmEvaluationReleaseGateRun.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationReleaseGateRunsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationReleaseGateRuns:\n      | LlmEvaluationReleaseGateRun.AsProtobufJSON[]\n      | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationScorecardComponent\n */\nexport class LlmEvaluationScorecardComponent implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationScorecardComponent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationScorecardComponent();\n    LlmEvaluationScorecardComponent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationScorecardComponent) {\n    _instance.criterion = _instance.criterion || '';\n    _instance.weight = _instance.weight || 0;\n    _instance.targetScore = _instance.targetScore || 0;\n    _instance.evaluatorName = _instance.evaluatorName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationScorecardComponent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.criterion = _reader.readString();\n          break;\n        case 2:\n          _instance.weight = _reader.readDouble();\n          break;\n        case 3:\n          _instance.targetScore = _reader.readDouble();\n          break;\n        case 4:\n          _instance.evaluatorName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationScorecardComponent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationScorecardComponent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.criterion) {\n      _writer.writeString(1, _instance.criterion);\n    }\n    if (_instance.weight) {\n      _writer.writeDouble(2, _instance.weight);\n    }\n    if (_instance.targetScore) {\n      _writer.writeDouble(3, _instance.targetScore);\n    }\n    if (_instance.evaluatorName) {\n      _writer.writeString(4, _instance.evaluatorName);\n    }\n  }\n\n  private _criterion: string;\n  private _weight: number;\n  private _targetScore: number;\n  private _evaluatorName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationScorecardComponent to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationScorecardComponent.AsObject>\n  ) {\n    _value = _value || {};\n    this.criterion = _value.criterion;\n    this.weight = _value.weight;\n    this.targetScore = _value.targetScore;\n    this.evaluatorName = _value.evaluatorName;\n    LlmEvaluationScorecardComponent.refineValues(this);\n  }\n  get criterion(): string {\n    return this._criterion;\n  }\n  set criterion(value: string) {\n    this._criterion = value;\n  }\n  get weight(): number {\n    return this._weight;\n  }\n  set weight(value: number) {\n    this._weight = value;\n  }\n  get targetScore(): number {\n    return this._targetScore;\n  }\n  set targetScore(value: number) {\n    this._targetScore = value;\n  }\n  get evaluatorName(): string {\n    return this._evaluatorName;\n  }\n  set evaluatorName(value: string) {\n    this._evaluatorName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationScorecardComponent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationScorecardComponent.AsObject {\n    return {\n      criterion: this.criterion,\n      weight: this.weight,\n      targetScore: this.targetScore,\n      evaluatorName: this.evaluatorName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationScorecardComponent.AsProtobufJSON {\n    return {\n      criterion: this.criterion,\n      weight: this.weight,\n      targetScore: this.targetScore,\n      evaluatorName: this.evaluatorName\n    };\n  }\n}\nexport module LlmEvaluationScorecardComponent {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationScorecardComponent\n   */\n  export interface AsObject {\n    criterion: string;\n    weight: number;\n    targetScore: number;\n    evaluatorName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationScorecardComponent\n   */\n  export interface AsProtobufJSON {\n    criterion: string;\n    weight: number;\n    targetScore: number;\n    evaluatorName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationScorecard\n */\nexport class LlmEvaluationScorecard implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationScorecard';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationScorecard();\n    LlmEvaluationScorecard.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationScorecard) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.llmEvaluationScorecardComponents =\n      _instance.llmEvaluationScorecardComponents || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationScorecard,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          const messageInitializer4 = new LlmEvaluationScorecardComponent();\n          _reader.readMessage(\n            messageInitializer4,\n            LlmEvaluationScorecardComponent.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationScorecardComponents =\n            _instance.llmEvaluationScorecardComponents || []).push(\n            messageInitializer4\n          );\n          break;\n        case 5:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 9:\n          _instance.parent = _reader.readString();\n          break;\n        case 10:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationScorecard.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationScorecard,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (\n      _instance.llmEvaluationScorecardComponents &&\n      _instance.llmEvaluationScorecardComponents.length\n    ) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.llmEvaluationScorecardComponents as any,\n        LlmEvaluationScorecardComponent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        5,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        7,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(8, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(9, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(10, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _llmEvaluationScorecardComponents?: LlmEvaluationScorecardComponent[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationScorecard to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationScorecard.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.llmEvaluationScorecardComponents = (\n      _value.llmEvaluationScorecardComponents || []\n    ).map(m => new LlmEvaluationScorecardComponent(m));\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationScorecard.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get llmEvaluationScorecardComponents():\n    | LlmEvaluationScorecardComponent[]\n    | undefined {\n    return this._llmEvaluationScorecardComponents;\n  }\n  set llmEvaluationScorecardComponents(\n    value: LlmEvaluationScorecardComponent[] | undefined\n  ) {\n    this._llmEvaluationScorecardComponents = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationScorecard.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationScorecard.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationScorecardComponents: (\n        this.llmEvaluationScorecardComponents || []\n      ).map(m => m.toObject()),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationScorecard.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationScorecardComponents: (\n        this.llmEvaluationScorecardComponents || []\n      ).map(m => m.toProtobufJSON(options)),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationScorecard {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationScorecard\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    llmEvaluationScorecardComponents?: LlmEvaluationScorecardComponent.AsObject[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationScorecard\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    llmEvaluationScorecardComponents:\n      | LlmEvaluationScorecardComponent.AsProtobufJSON[]\n      | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationScorecardRequest\n */\nexport class CreateLlmEvaluationScorecardRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationScorecardRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationScorecardRequest();\n    CreateLlmEvaluationScorecardRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateLlmEvaluationScorecardRequest) {\n    _instance.llmEvaluationScorecard =\n      _instance.llmEvaluationScorecard || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationScorecardRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationScorecard = new LlmEvaluationScorecard();\n          _reader.readMessage(\n            _instance.llmEvaluationScorecard,\n            LlmEvaluationScorecard.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationScorecardRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationScorecardRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationScorecard) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationScorecard as any,\n        LlmEvaluationScorecard.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationScorecard?: LlmEvaluationScorecard;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationScorecardRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateLlmEvaluationScorecardRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationScorecard = _value.llmEvaluationScorecard\n      ? new LlmEvaluationScorecard(_value.llmEvaluationScorecard)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CreateLlmEvaluationScorecardRequest.refineValues(this);\n  }\n  get llmEvaluationScorecard(): LlmEvaluationScorecard | undefined {\n    return this._llmEvaluationScorecard;\n  }\n  set llmEvaluationScorecard(value: LlmEvaluationScorecard | undefined) {\n    this._llmEvaluationScorecard = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationScorecardRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationScorecardRequest.AsObject {\n    return {\n      llmEvaluationScorecard: this.llmEvaluationScorecard\n        ? this.llmEvaluationScorecard.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationScorecardRequest.AsProtobufJSON {\n    return {\n      llmEvaluationScorecard: this.llmEvaluationScorecard\n        ? this.llmEvaluationScorecard.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CreateLlmEvaluationScorecardRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationScorecardRequest\n   */\n  export interface AsObject {\n    llmEvaluationScorecard?: LlmEvaluationScorecard.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationScorecardRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationScorecard: LlmEvaluationScorecard.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationScorecardRequest\n */\nexport class GetLlmEvaluationScorecardRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationScorecardRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationScorecardRequest();\n    GetLlmEvaluationScorecardRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationScorecardRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationScorecardRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationScorecardRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationScorecardRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationScorecardRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationScorecardRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationScorecardRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationScorecardRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationScorecardRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationScorecardRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationScorecardRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationScorecardRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationScorecardRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationScorecardFilter\n */\nexport class LlmEvaluationScorecardFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationScorecardFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationScorecardFilter();\n    LlmEvaluationScorecardFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationScorecardFilter) {\n    _instance.displayName = _instance.displayName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationScorecardFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationScorecardFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationScorecardFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n  }\n\n  private _displayName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationScorecardFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationScorecardFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    LlmEvaluationScorecardFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationScorecardFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationScorecardFilter.AsObject {\n    return {\n      displayName: this.displayName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationScorecardFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName\n    };\n  }\n}\nexport module LlmEvaluationScorecardFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationScorecardFilter\n   */\n  export interface AsObject {\n    displayName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationScorecardFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationScorecardsRequest\n */\nexport class ListLlmEvaluationScorecardsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationScorecardsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationScorecardsRequest();\n    ListLlmEvaluationScorecardsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationScorecardsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationScorecardFilter =\n      _instance.llmEvaluationScorecardFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationScorecardsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationScorecardFilter = new LlmEvaluationScorecardFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationScorecardFilter,\n            LlmEvaluationScorecardFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationScorecardsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationScorecardsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationScorecardFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationScorecardFilter as any,\n        LlmEvaluationScorecardFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationScorecardFilter?: LlmEvaluationScorecardFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationScorecardsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationScorecardsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationScorecardFilter = _value.llmEvaluationScorecardFilter\n      ? new LlmEvaluationScorecardFilter(_value.llmEvaluationScorecardFilter)\n      : undefined;\n    ListLlmEvaluationScorecardsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationScorecardFilter(): LlmEvaluationScorecardFilter | undefined {\n    return this._llmEvaluationScorecardFilter;\n  }\n  set llmEvaluationScorecardFilter(\n    value: LlmEvaluationScorecardFilter | undefined\n  ) {\n    this._llmEvaluationScorecardFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationScorecardsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationScorecardsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationScorecardFilter: this.llmEvaluationScorecardFilter\n        ? this.llmEvaluationScorecardFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationScorecardsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationScorecardFilter: this.llmEvaluationScorecardFilter\n        ? this.llmEvaluationScorecardFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationScorecardsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationScorecardsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationScorecardFilter?: LlmEvaluationScorecardFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationScorecardsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationScorecardFilter: LlmEvaluationScorecardFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationScorecardsResponse\n */\nexport class ListLlmEvaluationScorecardsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationScorecardsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationScorecardsResponse();\n    ListLlmEvaluationScorecardsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationScorecardsResponse) {\n    _instance.llmEvaluationScorecards = _instance.llmEvaluationScorecards || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationScorecardsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationScorecard();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationScorecard.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationScorecards =\n            _instance.llmEvaluationScorecards || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationScorecardsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationScorecardsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationScorecards &&\n      _instance.llmEvaluationScorecards.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationScorecards as any,\n        LlmEvaluationScorecard.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationScorecards?: LlmEvaluationScorecard[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationScorecardsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationScorecardsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationScorecards = (_value.llmEvaluationScorecards || []).map(\n      m => new LlmEvaluationScorecard(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationScorecardsResponse.refineValues(this);\n  }\n  get llmEvaluationScorecards(): LlmEvaluationScorecard[] | undefined {\n    return this._llmEvaluationScorecards;\n  }\n  set llmEvaluationScorecards(value: LlmEvaluationScorecard[] | undefined) {\n    this._llmEvaluationScorecards = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationScorecardsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationScorecardsResponse.AsObject {\n    return {\n      llmEvaluationScorecards: (this.llmEvaluationScorecards || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationScorecardsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationScorecards: (this.llmEvaluationScorecards || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationScorecardsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationScorecardsResponse\n   */\n  export interface AsObject {\n    llmEvaluationScorecards?: LlmEvaluationScorecard.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationScorecardsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationScorecards: LlmEvaluationScorecard.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationScorecardRequest\n */\nexport class UpdateLlmEvaluationScorecardRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationScorecardRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationScorecardRequest();\n    UpdateLlmEvaluationScorecardRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationScorecardRequest) {\n    _instance.llmEvaluationScorecard =\n      _instance.llmEvaluationScorecard || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationScorecardRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationScorecard = new LlmEvaluationScorecard();\n          _reader.readMessage(\n            _instance.llmEvaluationScorecard,\n            LlmEvaluationScorecard.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationScorecardRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationScorecardRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationScorecard) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationScorecard as any,\n        LlmEvaluationScorecard.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationScorecard?: LlmEvaluationScorecard;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationScorecardRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationScorecardRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationScorecard = _value.llmEvaluationScorecard\n      ? new LlmEvaluationScorecard(_value.llmEvaluationScorecard)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationScorecardRequest.refineValues(this);\n  }\n  get llmEvaluationScorecard(): LlmEvaluationScorecard | undefined {\n    return this._llmEvaluationScorecard;\n  }\n  set llmEvaluationScorecard(value: LlmEvaluationScorecard | undefined) {\n    this._llmEvaluationScorecard = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationScorecardRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationScorecardRequest.AsObject {\n    return {\n      llmEvaluationScorecard: this.llmEvaluationScorecard\n        ? this.llmEvaluationScorecard.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationScorecardRequest.AsProtobufJSON {\n    return {\n      llmEvaluationScorecard: this.llmEvaluationScorecard\n        ? this.llmEvaluationScorecard.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationScorecardRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationScorecardRequest\n   */\n  export interface AsObject {\n    llmEvaluationScorecard?: LlmEvaluationScorecard.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationScorecardRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationScorecard: LlmEvaluationScorecard.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationScorecardRequest\n */\nexport class DeleteLlmEvaluationScorecardRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationScorecardRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationScorecardRequest();\n    DeleteLlmEvaluationScorecardRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationScorecardRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationScorecardRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationScorecardRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationScorecardRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationScorecardRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationScorecardRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationScorecardRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationScorecardRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationScorecardRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationScorecardRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationScorecardRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationScorecardRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationScorecardRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationJudgeConfig\n */\nexport class LlmEvaluationJudgeConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationJudgeConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationJudgeConfig();\n    LlmEvaluationJudgeConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationJudgeConfig) {\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n    _instance.modelName = _instance.modelName || '';\n    _instance.temperature = _instance.temperature || 0;\n    _instance.verboseReasoning = _instance.verboseReasoning || false;\n    _instance.evaluatorOverrides = _instance.evaluatorOverrides || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationJudgeConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        case 2:\n          _instance.modelName = _reader.readString();\n          break;\n        case 3:\n          _instance.temperature = _reader.readDouble();\n          break;\n        case 4:\n          _instance.verboseReasoning = _reader.readBool();\n          break;\n        case 5:\n          _instance.evaluatorOverrides = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.evaluatorOverrides,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationJudgeConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationJudgeConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(1, _instance.ccaiServiceName);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(2, _instance.modelName);\n    }\n    if (_instance.temperature) {\n      _writer.writeDouble(3, _instance.temperature);\n    }\n    if (_instance.verboseReasoning) {\n      _writer.writeBool(4, _instance.verboseReasoning);\n    }\n    if (_instance.evaluatorOverrides) {\n      _writer.writeMessage(\n        5,\n        _instance.evaluatorOverrides as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _ccaiServiceName: string;\n  private _modelName: string;\n  private _temperature: number;\n  private _verboseReasoning: boolean;\n  private _evaluatorOverrides?: googleProtobuf008.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationJudgeConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationJudgeConfig.AsObject>) {\n    _value = _value || {};\n    this.ccaiServiceName = _value.ccaiServiceName;\n    this.modelName = _value.modelName;\n    this.temperature = _value.temperature;\n    this.verboseReasoning = _value.verboseReasoning;\n    this.evaluatorOverrides = _value.evaluatorOverrides\n      ? new googleProtobuf008.Struct(_value.evaluatorOverrides)\n      : undefined;\n    LlmEvaluationJudgeConfig.refineValues(this);\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get temperature(): number {\n    return this._temperature;\n  }\n  set temperature(value: number) {\n    this._temperature = value;\n  }\n  get verboseReasoning(): boolean {\n    return this._verboseReasoning;\n  }\n  set verboseReasoning(value: boolean) {\n    this._verboseReasoning = value;\n  }\n  get evaluatorOverrides(): googleProtobuf008.Struct | undefined {\n    return this._evaluatorOverrides;\n  }\n  set evaluatorOverrides(value: googleProtobuf008.Struct | undefined) {\n    this._evaluatorOverrides = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationJudgeConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationJudgeConfig.AsObject {\n    return {\n      ccaiServiceName: this.ccaiServiceName,\n      modelName: this.modelName,\n      temperature: this.temperature,\n      verboseReasoning: this.verboseReasoning,\n      evaluatorOverrides: this.evaluatorOverrides\n        ? this.evaluatorOverrides.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationJudgeConfig.AsProtobufJSON {\n    return {\n      ccaiServiceName: this.ccaiServiceName,\n      modelName: this.modelName,\n      temperature: this.temperature,\n      verboseReasoning: this.verboseReasoning,\n      evaluatorOverrides: this.evaluatorOverrides\n        ? this.evaluatorOverrides.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmEvaluationJudgeConfig {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationJudgeConfig\n   */\n  export interface AsObject {\n    ccaiServiceName: string;\n    modelName: string;\n    temperature: number;\n    verboseReasoning: boolean;\n    evaluatorOverrides?: googleProtobuf008.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationJudgeConfig\n   */\n  export interface AsProtobufJSON {\n    ccaiServiceName: string;\n    modelName: string;\n    temperature: number;\n    verboseReasoning: boolean;\n    evaluatorOverrides: googleProtobuf008.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationProjectSettings\n */\nexport class LlmEvaluationProjectSettings implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationProjectSettings';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationProjectSettings();\n    LlmEvaluationProjectSettings.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationProjectSettings) {\n    _instance.name = _instance.name || '';\n    _instance.llmEvaluationJudgeConfig =\n      _instance.llmEvaluationJudgeConfig || undefined;\n    _instance.defaultWeights = _instance.defaultWeights || undefined;\n    _instance.defaultPassCutoffScore = _instance.defaultPassCutoffScore || 0;\n    _instance.defaultScorecardName = _instance.defaultScorecardName || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationProjectSettings,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationJudgeConfig = new LlmEvaluationJudgeConfig();\n          _reader.readMessage(\n            _instance.llmEvaluationJudgeConfig,\n            LlmEvaluationJudgeConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.defaultWeights = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.defaultWeights,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.defaultPassCutoffScore = _reader.readDouble();\n          break;\n        case 5:\n          _instance.defaultScorecardName = _reader.readString();\n          break;\n        case 6:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 8:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 10:\n          _instance.parent = _reader.readString();\n          break;\n        case 11:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationProjectSettings.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationProjectSettings,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.llmEvaluationJudgeConfig) {\n      _writer.writeMessage(\n        2,\n        _instance.llmEvaluationJudgeConfig as any,\n        LlmEvaluationJudgeConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.defaultWeights) {\n      _writer.writeMessage(\n        3,\n        _instance.defaultWeights as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.defaultPassCutoffScore) {\n      _writer.writeDouble(4, _instance.defaultPassCutoffScore);\n    }\n    if (_instance.defaultScorecardName) {\n      _writer.writeString(5, _instance.defaultScorecardName);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        6,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(7, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        8,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(9, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(10, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(11, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _llmEvaluationJudgeConfig?: LlmEvaluationJudgeConfig;\n  private _defaultWeights?: googleProtobuf008.Struct;\n  private _defaultPassCutoffScore: number;\n  private _defaultScorecardName: string;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationProjectSettings to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationProjectSettings.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.llmEvaluationJudgeConfig = _value.llmEvaluationJudgeConfig\n      ? new LlmEvaluationJudgeConfig(_value.llmEvaluationJudgeConfig)\n      : undefined;\n    this.defaultWeights = _value.defaultWeights\n      ? new googleProtobuf008.Struct(_value.defaultWeights)\n      : undefined;\n    this.defaultPassCutoffScore = _value.defaultPassCutoffScore;\n    this.defaultScorecardName = _value.defaultScorecardName;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationProjectSettings.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get llmEvaluationJudgeConfig(): LlmEvaluationJudgeConfig | undefined {\n    return this._llmEvaluationJudgeConfig;\n  }\n  set llmEvaluationJudgeConfig(value: LlmEvaluationJudgeConfig | undefined) {\n    this._llmEvaluationJudgeConfig = value;\n  }\n  get defaultWeights(): googleProtobuf008.Struct | undefined {\n    return this._defaultWeights;\n  }\n  set defaultWeights(value: googleProtobuf008.Struct | undefined) {\n    this._defaultWeights = value;\n  }\n  get defaultPassCutoffScore(): number {\n    return this._defaultPassCutoffScore;\n  }\n  set defaultPassCutoffScore(value: number) {\n    this._defaultPassCutoffScore = value;\n  }\n  get defaultScorecardName(): string {\n    return this._defaultScorecardName;\n  }\n  set defaultScorecardName(value: string) {\n    this._defaultScorecardName = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationProjectSettings.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationProjectSettings.AsObject {\n    return {\n      name: this.name,\n      llmEvaluationJudgeConfig: this.llmEvaluationJudgeConfig\n        ? this.llmEvaluationJudgeConfig.toObject()\n        : undefined,\n      defaultWeights: this.defaultWeights\n        ? this.defaultWeights.toObject()\n        : undefined,\n      defaultPassCutoffScore: this.defaultPassCutoffScore,\n      defaultScorecardName: this.defaultScorecardName,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationProjectSettings.AsProtobufJSON {\n    return {\n      name: this.name,\n      llmEvaluationJudgeConfig: this.llmEvaluationJudgeConfig\n        ? this.llmEvaluationJudgeConfig.toProtobufJSON(options)\n        : null,\n      defaultWeights: this.defaultWeights\n        ? this.defaultWeights.toProtobufJSON(options)\n        : null,\n      defaultPassCutoffScore: this.defaultPassCutoffScore,\n      defaultScorecardName: this.defaultScorecardName,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationProjectSettings {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationProjectSettings\n   */\n  export interface AsObject {\n    name: string;\n    llmEvaluationJudgeConfig?: LlmEvaluationJudgeConfig.AsObject;\n    defaultWeights?: googleProtobuf008.Struct.AsObject;\n    defaultPassCutoffScore: number;\n    defaultScorecardName: string;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationProjectSettings\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    llmEvaluationJudgeConfig: LlmEvaluationJudgeConfig.AsProtobufJSON | null;\n    defaultWeights: googleProtobuf008.Struct.AsProtobufJSON | null;\n    defaultPassCutoffScore: number;\n    defaultScorecardName: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationProjectSettingsRequest\n */\nexport class GetLlmEvaluationProjectSettingsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationProjectSettingsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationProjectSettingsRequest();\n    GetLlmEvaluationProjectSettingsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationProjectSettingsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationProjectSettingsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationProjectSettingsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationProjectSettingsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationProjectSettingsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationProjectSettingsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetLlmEvaluationProjectSettingsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationProjectSettingsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationProjectSettingsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationProjectSettingsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetLlmEvaluationProjectSettingsRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationProjectSettingsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationProjectSettingsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationProjectSettingsRequest\n */\nexport class UpdateLlmEvaluationProjectSettingsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationProjectSettingsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationProjectSettingsRequest();\n    UpdateLlmEvaluationProjectSettingsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationProjectSettingsRequest) {\n    _instance.llmEvaluationProjectSettings =\n      _instance.llmEvaluationProjectSettings || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationProjectSettingsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationProjectSettings = new LlmEvaluationProjectSettings();\n          _reader.readMessage(\n            _instance.llmEvaluationProjectSettings,\n            LlmEvaluationProjectSettings.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationProjectSettingsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationProjectSettingsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationProjectSettings) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationProjectSettings as any,\n        LlmEvaluationProjectSettings.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationProjectSettings?: LlmEvaluationProjectSettings;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationProjectSettingsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      UpdateLlmEvaluationProjectSettingsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.llmEvaluationProjectSettings = _value.llmEvaluationProjectSettings\n      ? new LlmEvaluationProjectSettings(_value.llmEvaluationProjectSettings)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationProjectSettingsRequest.refineValues(this);\n  }\n  get llmEvaluationProjectSettings(): LlmEvaluationProjectSettings | undefined {\n    return this._llmEvaluationProjectSettings;\n  }\n  set llmEvaluationProjectSettings(\n    value: LlmEvaluationProjectSettings | undefined\n  ) {\n    this._llmEvaluationProjectSettings = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationProjectSettingsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationProjectSettingsRequest.AsObject {\n    return {\n      llmEvaluationProjectSettings: this.llmEvaluationProjectSettings\n        ? this.llmEvaluationProjectSettings.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationProjectSettingsRequest.AsProtobufJSON {\n    return {\n      llmEvaluationProjectSettings: this.llmEvaluationProjectSettings\n        ? this.llmEvaluationProjectSettings.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationProjectSettingsRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationProjectSettingsRequest\n   */\n  export interface AsObject {\n    llmEvaluationProjectSettings?: LlmEvaluationProjectSettings.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationProjectSettingsRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationProjectSettings: LlmEvaluationProjectSettings.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationEvaluatorParameterSpec\n */\nexport class LlmEvaluationEvaluatorParameterSpec implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationEvaluatorParameterSpec';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationEvaluatorParameterSpec();\n    LlmEvaluationEvaluatorParameterSpec.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationEvaluatorParameterSpec) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.valueType = _instance.valueType || '';\n    _instance.defaultValue = _instance.defaultValue || '';\n    _instance.required = _instance.required || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationEvaluatorParameterSpec,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.valueType = _reader.readString();\n          break;\n        case 5:\n          _instance.defaultValue = _reader.readString();\n          break;\n        case 6:\n          _instance.required = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationEvaluatorParameterSpec.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationEvaluatorParameterSpec,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.valueType) {\n      _writer.writeString(4, _instance.valueType);\n    }\n    if (_instance.defaultValue) {\n      _writer.writeString(5, _instance.defaultValue);\n    }\n    if (_instance.required) {\n      _writer.writeBool(6, _instance.required);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _valueType: string;\n  private _defaultValue: string;\n  private _required: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationEvaluatorParameterSpec to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationEvaluatorParameterSpec.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.valueType = _value.valueType;\n    this.defaultValue = _value.defaultValue;\n    this.required = _value.required;\n    LlmEvaluationEvaluatorParameterSpec.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get valueType(): string {\n    return this._valueType;\n  }\n  set valueType(value: string) {\n    this._valueType = value;\n  }\n  get defaultValue(): string {\n    return this._defaultValue;\n  }\n  set defaultValue(value: string) {\n    this._defaultValue = value;\n  }\n  get required(): boolean {\n    return this._required;\n  }\n  set required(value: boolean) {\n    this._required = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationEvaluatorParameterSpec.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationEvaluatorParameterSpec.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      valueType: this.valueType,\n      defaultValue: this.defaultValue,\n      required: this.required\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationEvaluatorParameterSpec.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      valueType: this.valueType,\n      defaultValue: this.defaultValue,\n      required: this.required\n    };\n  }\n}\nexport module LlmEvaluationEvaluatorParameterSpec {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationEvaluatorParameterSpec\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    valueType: string;\n    defaultValue: string;\n    required: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationEvaluatorParameterSpec\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    valueType: string;\n    defaultValue: string;\n    required: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationEvaluatorSpec\n */\nexport class LlmEvaluationEvaluatorSpec implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationEvaluatorSpec';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationEvaluatorSpec();\n    LlmEvaluationEvaluatorSpec.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationEvaluatorSpec) {\n    _instance.evaluatorName = _instance.evaluatorName || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.llmEvaluationEvaluatorType =\n      _instance.llmEvaluationEvaluatorType || 0;\n    _instance.llmEvaluationEvaluatorCategory =\n      _instance.llmEvaluationEvaluatorCategory || 0;\n    _instance.requiredExampleFields = _instance.requiredExampleFields || [];\n    _instance.multiTurn = _instance.multiTurn || false;\n    _instance.defaultThreshold = _instance.defaultThreshold || 0;\n    _instance.requiresJudge = _instance.requiresJudge || false;\n    _instance.llmEvaluationEvaluatorParameterSpecs =\n      _instance.llmEvaluationEvaluatorParameterSpecs || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationEvaluatorSpec,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.evaluatorName = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.llmEvaluationEvaluatorType = _reader.readEnum();\n          break;\n        case 5:\n          _instance.llmEvaluationEvaluatorCategory = _reader.readEnum();\n          break;\n        case 6:\n          (_instance.requiredExampleFields =\n            _instance.requiredExampleFields || []).push(_reader.readString());\n          break;\n        case 7:\n          _instance.multiTurn = _reader.readBool();\n          break;\n        case 8:\n          _instance.defaultThreshold = _reader.readDouble();\n          break;\n        case 9:\n          _instance.requiresJudge = _reader.readBool();\n          break;\n        case 10:\n          const messageInitializer10 = new LlmEvaluationEvaluatorParameterSpec();\n          _reader.readMessage(\n            messageInitializer10,\n            LlmEvaluationEvaluatorParameterSpec.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationEvaluatorParameterSpecs =\n            _instance.llmEvaluationEvaluatorParameterSpecs || []).push(\n            messageInitializer10\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationEvaluatorSpec.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationEvaluatorSpec,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.evaluatorName) {\n      _writer.writeString(1, _instance.evaluatorName);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.llmEvaluationEvaluatorType) {\n      _writer.writeEnum(4, _instance.llmEvaluationEvaluatorType);\n    }\n    if (_instance.llmEvaluationEvaluatorCategory) {\n      _writer.writeEnum(5, _instance.llmEvaluationEvaluatorCategory);\n    }\n    if (\n      _instance.requiredExampleFields &&\n      _instance.requiredExampleFields.length\n    ) {\n      _writer.writeRepeatedString(6, _instance.requiredExampleFields);\n    }\n    if (_instance.multiTurn) {\n      _writer.writeBool(7, _instance.multiTurn);\n    }\n    if (_instance.defaultThreshold) {\n      _writer.writeDouble(8, _instance.defaultThreshold);\n    }\n    if (_instance.requiresJudge) {\n      _writer.writeBool(9, _instance.requiresJudge);\n    }\n    if (\n      _instance.llmEvaluationEvaluatorParameterSpecs &&\n      _instance.llmEvaluationEvaluatorParameterSpecs.length\n    ) {\n      _writer.writeRepeatedMessage(\n        10,\n        _instance.llmEvaluationEvaluatorParameterSpecs as any,\n        LlmEvaluationEvaluatorParameterSpec.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _evaluatorName: string;\n  private _displayName: string;\n  private _description: string;\n  private _llmEvaluationEvaluatorType: LlmEvaluationEvaluatorType;\n  private _llmEvaluationEvaluatorCategory: LlmEvaluationEvaluatorCategory;\n  private _requiredExampleFields: string[];\n  private _multiTurn: boolean;\n  private _defaultThreshold: number;\n  private _requiresJudge: boolean;\n  private _llmEvaluationEvaluatorParameterSpecs?: LlmEvaluationEvaluatorParameterSpec[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationEvaluatorSpec to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationEvaluatorSpec.AsObject>) {\n    _value = _value || {};\n    this.evaluatorName = _value.evaluatorName;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.llmEvaluationEvaluatorType = _value.llmEvaluationEvaluatorType;\n    this.llmEvaluationEvaluatorCategory = _value.llmEvaluationEvaluatorCategory;\n    this.requiredExampleFields = (_value.requiredExampleFields || []).slice();\n    this.multiTurn = _value.multiTurn;\n    this.defaultThreshold = _value.defaultThreshold;\n    this.requiresJudge = _value.requiresJudge;\n    this.llmEvaluationEvaluatorParameterSpecs = (\n      _value.llmEvaluationEvaluatorParameterSpecs || []\n    ).map(m => new LlmEvaluationEvaluatorParameterSpec(m));\n    LlmEvaluationEvaluatorSpec.refineValues(this);\n  }\n  get evaluatorName(): string {\n    return this._evaluatorName;\n  }\n  set evaluatorName(value: string) {\n    this._evaluatorName = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get llmEvaluationEvaluatorType(): LlmEvaluationEvaluatorType {\n    return this._llmEvaluationEvaluatorType;\n  }\n  set llmEvaluationEvaluatorType(value: LlmEvaluationEvaluatorType) {\n    this._llmEvaluationEvaluatorType = value;\n  }\n  get llmEvaluationEvaluatorCategory(): LlmEvaluationEvaluatorCategory {\n    return this._llmEvaluationEvaluatorCategory;\n  }\n  set llmEvaluationEvaluatorCategory(value: LlmEvaluationEvaluatorCategory) {\n    this._llmEvaluationEvaluatorCategory = value;\n  }\n  get requiredExampleFields(): string[] {\n    return this._requiredExampleFields;\n  }\n  set requiredExampleFields(value: string[]) {\n    this._requiredExampleFields = value;\n  }\n  get multiTurn(): boolean {\n    return this._multiTurn;\n  }\n  set multiTurn(value: boolean) {\n    this._multiTurn = value;\n  }\n  get defaultThreshold(): number {\n    return this._defaultThreshold;\n  }\n  set defaultThreshold(value: number) {\n    this._defaultThreshold = value;\n  }\n  get requiresJudge(): boolean {\n    return this._requiresJudge;\n  }\n  set requiresJudge(value: boolean) {\n    this._requiresJudge = value;\n  }\n  get llmEvaluationEvaluatorParameterSpecs():\n    | LlmEvaluationEvaluatorParameterSpec[]\n    | undefined {\n    return this._llmEvaluationEvaluatorParameterSpecs;\n  }\n  set llmEvaluationEvaluatorParameterSpecs(\n    value: LlmEvaluationEvaluatorParameterSpec[] | undefined\n  ) {\n    this._llmEvaluationEvaluatorParameterSpecs = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationEvaluatorSpec.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationEvaluatorSpec.AsObject {\n    return {\n      evaluatorName: this.evaluatorName,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationEvaluatorType: this.llmEvaluationEvaluatorType,\n      llmEvaluationEvaluatorCategory: this.llmEvaluationEvaluatorCategory,\n      requiredExampleFields: (this.requiredExampleFields || []).slice(),\n      multiTurn: this.multiTurn,\n      defaultThreshold: this.defaultThreshold,\n      requiresJudge: this.requiresJudge,\n      llmEvaluationEvaluatorParameterSpecs: (\n        this.llmEvaluationEvaluatorParameterSpecs || []\n      ).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationEvaluatorSpec.AsProtobufJSON {\n    return {\n      evaluatorName: this.evaluatorName,\n      displayName: this.displayName,\n      description: this.description,\n      llmEvaluationEvaluatorType:\n        LlmEvaluationEvaluatorType[\n          this.llmEvaluationEvaluatorType === null ||\n          this.llmEvaluationEvaluatorType === undefined\n            ? 0\n            : this.llmEvaluationEvaluatorType\n        ],\n      llmEvaluationEvaluatorCategory:\n        LlmEvaluationEvaluatorCategory[\n          this.llmEvaluationEvaluatorCategory === null ||\n          this.llmEvaluationEvaluatorCategory === undefined\n            ? 0\n            : this.llmEvaluationEvaluatorCategory\n        ],\n      requiredExampleFields: (this.requiredExampleFields || []).slice(),\n      multiTurn: this.multiTurn,\n      defaultThreshold: this.defaultThreshold,\n      requiresJudge: this.requiresJudge,\n      llmEvaluationEvaluatorParameterSpecs: (\n        this.llmEvaluationEvaluatorParameterSpecs || []\n      ).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module LlmEvaluationEvaluatorSpec {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationEvaluatorSpec\n   */\n  export interface AsObject {\n    evaluatorName: string;\n    displayName: string;\n    description: string;\n    llmEvaluationEvaluatorType: LlmEvaluationEvaluatorType;\n    llmEvaluationEvaluatorCategory: LlmEvaluationEvaluatorCategory;\n    requiredExampleFields: string[];\n    multiTurn: boolean;\n    defaultThreshold: number;\n    requiresJudge: boolean;\n    llmEvaluationEvaluatorParameterSpecs?: LlmEvaluationEvaluatorParameterSpec.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationEvaluatorSpec\n   */\n  export interface AsProtobufJSON {\n    evaluatorName: string;\n    displayName: string;\n    description: string;\n    llmEvaluationEvaluatorType: string;\n    llmEvaluationEvaluatorCategory: string;\n    requiredExampleFields: string[];\n    multiTurn: boolean;\n    defaultThreshold: number;\n    requiresJudge: boolean;\n    llmEvaluationEvaluatorParameterSpecs:\n      | LlmEvaluationEvaluatorParameterSpec.AsProtobufJSON[]\n      | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationEvaluatorsRequest\n */\nexport class ListLlmEvaluationEvaluatorsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationEvaluatorsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationEvaluatorsRequest();\n    ListLlmEvaluationEvaluatorsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationEvaluatorsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationEvaluatorsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationEvaluatorsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationEvaluatorsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationEvaluatorsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationEvaluatorsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    ListLlmEvaluationEvaluatorsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationEvaluatorsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationEvaluatorsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationEvaluatorsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module ListLlmEvaluationEvaluatorsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationEvaluatorsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationEvaluatorsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationEvaluatorsResponse\n */\nexport class ListLlmEvaluationEvaluatorsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationEvaluatorsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationEvaluatorsResponse();\n    ListLlmEvaluationEvaluatorsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationEvaluatorsResponse) {\n    _instance.llmEvaluationEvaluatorSpecs =\n      _instance.llmEvaluationEvaluatorSpecs || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationEvaluatorsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationEvaluatorSpec();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationEvaluatorSpec.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationEvaluatorSpecs =\n            _instance.llmEvaluationEvaluatorSpecs || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationEvaluatorsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationEvaluatorsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationEvaluatorSpecs &&\n      _instance.llmEvaluationEvaluatorSpecs.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationEvaluatorSpecs as any,\n        LlmEvaluationEvaluatorSpec.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmEvaluationEvaluatorSpecs?: LlmEvaluationEvaluatorSpec[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationEvaluatorsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationEvaluatorsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationEvaluatorSpecs = (\n      _value.llmEvaluationEvaluatorSpecs || []\n    ).map(m => new LlmEvaluationEvaluatorSpec(m));\n    ListLlmEvaluationEvaluatorsResponse.refineValues(this);\n  }\n  get llmEvaluationEvaluatorSpecs(): LlmEvaluationEvaluatorSpec[] | undefined {\n    return this._llmEvaluationEvaluatorSpecs;\n  }\n  set llmEvaluationEvaluatorSpecs(\n    value: LlmEvaluationEvaluatorSpec[] | undefined\n  ) {\n    this._llmEvaluationEvaluatorSpecs = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationEvaluatorsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationEvaluatorsResponse.AsObject {\n    return {\n      llmEvaluationEvaluatorSpecs: (\n        this.llmEvaluationEvaluatorSpecs || []\n      ).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationEvaluatorsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationEvaluatorSpecs: (\n        this.llmEvaluationEvaluatorSpecs || []\n      ).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module ListLlmEvaluationEvaluatorsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationEvaluatorsResponse\n   */\n  export interface AsObject {\n    llmEvaluationEvaluatorSpecs?: LlmEvaluationEvaluatorSpec.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationEvaluatorsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationEvaluatorSpecs:\n      | LlmEvaluationEvaluatorSpec.AsProtobufJSON[]\n      | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationExamplesFromSessionRequest\n */\nexport class CreateLlmEvaluationExamplesFromSessionRequest\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationExamplesFromSessionRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationExamplesFromSessionRequest();\n    CreateLlmEvaluationExamplesFromSessionRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: CreateLlmEvaluationExamplesFromSessionRequest\n  ) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionName = _instance.sessionName || '';\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.sessionStepNames = _instance.sessionStepNames || [];\n    _instance.llmEvaluationExampleExtractionMode =\n      _instance.llmEvaluationExampleExtractionMode || 0;\n    _instance.displayName = _instance.displayName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.includeToolCalls = _instance.includeToolCalls || false;\n    _instance.includeRetrievalContext =\n      _instance.includeRetrievalContext || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationExamplesFromSessionRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionName = _reader.readString();\n          break;\n        case 3:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 4:\n          (_instance.sessionStepNames = _instance.sessionStepNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 5:\n          _instance.llmEvaluationExampleExtractionMode = _reader.readEnum();\n          break;\n        case 6:\n          _instance.displayName = _reader.readString();\n          break;\n        case 7:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 8:\n          _instance.includeToolCalls = _reader.readBool();\n          break;\n        case 9:\n          _instance.includeRetrievalContext = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationExamplesFromSessionRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationExamplesFromSessionRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionName) {\n      _writer.writeString(2, _instance.sessionName);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(3, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.sessionStepNames && _instance.sessionStepNames.length) {\n      _writer.writeRepeatedString(4, _instance.sessionStepNames);\n    }\n    if (_instance.llmEvaluationExampleExtractionMode) {\n      _writer.writeEnum(5, _instance.llmEvaluationExampleExtractionMode);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(6, _instance.displayName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(7, _instance.languageCode);\n    }\n    if (_instance.includeToolCalls) {\n      _writer.writeBool(8, _instance.includeToolCalls);\n    }\n    if (_instance.includeRetrievalContext) {\n      _writer.writeBool(9, _instance.includeRetrievalContext);\n    }\n  }\n\n  private _parent: string;\n  private _sessionName: string;\n  private _llmEvaluationDatasetName: string;\n  private _sessionStepNames: string[];\n  private _llmEvaluationExampleExtractionMode: LlmEvaluationExampleExtractionMode;\n  private _displayName: string;\n  private _languageCode: string;\n  private _includeToolCalls: boolean;\n  private _includeRetrievalContext: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationExamplesFromSessionRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      CreateLlmEvaluationExamplesFromSessionRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionName = _value.sessionName;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.sessionStepNames = (_value.sessionStepNames || []).slice();\n    this.llmEvaluationExampleExtractionMode =\n      _value.llmEvaluationExampleExtractionMode;\n    this.displayName = _value.displayName;\n    this.languageCode = _value.languageCode;\n    this.includeToolCalls = _value.includeToolCalls;\n    this.includeRetrievalContext = _value.includeRetrievalContext;\n    CreateLlmEvaluationExamplesFromSessionRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionName(): string {\n    return this._sessionName;\n  }\n  set sessionName(value: string) {\n    this._sessionName = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get sessionStepNames(): string[] {\n    return this._sessionStepNames;\n  }\n  set sessionStepNames(value: string[]) {\n    this._sessionStepNames = value;\n  }\n  get llmEvaluationExampleExtractionMode(): LlmEvaluationExampleExtractionMode {\n    return this._llmEvaluationExampleExtractionMode;\n  }\n  set llmEvaluationExampleExtractionMode(\n    value: LlmEvaluationExampleExtractionMode\n  ) {\n    this._llmEvaluationExampleExtractionMode = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get includeToolCalls(): boolean {\n    return this._includeToolCalls;\n  }\n  set includeToolCalls(value: boolean) {\n    this._includeToolCalls = value;\n  }\n  get includeRetrievalContext(): boolean {\n    return this._includeRetrievalContext;\n  }\n  set includeRetrievalContext(value: boolean) {\n    this._includeRetrievalContext = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationExamplesFromSessionRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationExamplesFromSessionRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionName: this.sessionName,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      sessionStepNames: (this.sessionStepNames || []).slice(),\n      llmEvaluationExampleExtractionMode: this\n        .llmEvaluationExampleExtractionMode,\n      displayName: this.displayName,\n      languageCode: this.languageCode,\n      includeToolCalls: this.includeToolCalls,\n      includeRetrievalContext: this.includeRetrievalContext\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationExamplesFromSessionRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionName: this.sessionName,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      sessionStepNames: (this.sessionStepNames || []).slice(),\n      llmEvaluationExampleExtractionMode:\n        LlmEvaluationExampleExtractionMode[\n          this.llmEvaluationExampleExtractionMode === null ||\n          this.llmEvaluationExampleExtractionMode === undefined\n            ? 0\n            : this.llmEvaluationExampleExtractionMode\n        ],\n      displayName: this.displayName,\n      languageCode: this.languageCode,\n      includeToolCalls: this.includeToolCalls,\n      includeRetrievalContext: this.includeRetrievalContext\n    };\n  }\n}\nexport module CreateLlmEvaluationExamplesFromSessionRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationExamplesFromSessionRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionName: string;\n    llmEvaluationDatasetName: string;\n    sessionStepNames: string[];\n    llmEvaluationExampleExtractionMode: LlmEvaluationExampleExtractionMode;\n    displayName: string;\n    languageCode: string;\n    includeToolCalls: boolean;\n    includeRetrievalContext: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationExamplesFromSessionRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionName: string;\n    llmEvaluationDatasetName: string;\n    sessionStepNames: string[];\n    llmEvaluationExampleExtractionMode: string;\n    displayName: string;\n    languageCode: string;\n    includeToolCalls: boolean;\n    includeRetrievalContext: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationExamplesFromSessionResponse\n */\nexport class CreateLlmEvaluationExamplesFromSessionResponse\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationExamplesFromSessionResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationExamplesFromSessionResponse();\n    CreateLlmEvaluationExamplesFromSessionResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: CreateLlmEvaluationExamplesFromSessionResponse\n  ) {\n    _instance.llmEvaluationExamples = _instance.llmEvaluationExamples || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationExamplesFromSessionResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationExample();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExamples =\n            _instance.llmEvaluationExamples || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationExamplesFromSessionResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationExamplesFromSessionResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationExamples &&\n      _instance.llmEvaluationExamples.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationExamples as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmEvaluationExamples?: LlmEvaluationExample[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationExamplesFromSessionResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      CreateLlmEvaluationExamplesFromSessionResponse.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExamples = (_value.llmEvaluationExamples || []).map(\n      m => new LlmEvaluationExample(m)\n    );\n    CreateLlmEvaluationExamplesFromSessionResponse.refineValues(this);\n  }\n  get llmEvaluationExamples(): LlmEvaluationExample[] | undefined {\n    return this._llmEvaluationExamples;\n  }\n  set llmEvaluationExamples(value: LlmEvaluationExample[] | undefined) {\n    this._llmEvaluationExamples = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationExamplesFromSessionResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationExamplesFromSessionResponse.AsObject {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toObject()\n      )\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationExamplesFromSessionResponse.AsProtobufJSON {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module CreateLlmEvaluationExamplesFromSessionResponse {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationExamplesFromSessionResponse\n   */\n  export interface AsObject {\n    llmEvaluationExamples?: LlmEvaluationExample.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationExamplesFromSessionResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExamples: LlmEvaluationExample.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationSimulationPersona\n */\nexport class LlmEvaluationSimulationPersona implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationSimulationPersona';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationSimulationPersona();\n    LlmEvaluationSimulationPersona.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationSimulationPersona) {\n    _instance.persona = _instance.persona || '';\n    _instance.scenario = _instance.scenario || '';\n    _instance.expectedOutcome = _instance.expectedOutcome || '';\n    _instance.userDescription = _instance.userDescription || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationSimulationPersona,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.persona = _reader.readString();\n          break;\n        case 2:\n          _instance.scenario = _reader.readString();\n          break;\n        case 3:\n          _instance.expectedOutcome = _reader.readString();\n          break;\n        case 4:\n          _instance.userDescription = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationSimulationPersona.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationSimulationPersona,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.persona) {\n      _writer.writeString(1, _instance.persona);\n    }\n    if (_instance.scenario) {\n      _writer.writeString(2, _instance.scenario);\n    }\n    if (_instance.expectedOutcome) {\n      _writer.writeString(3, _instance.expectedOutcome);\n    }\n    if (_instance.userDescription) {\n      _writer.writeString(4, _instance.userDescription);\n    }\n  }\n\n  private _persona: string;\n  private _scenario: string;\n  private _expectedOutcome: string;\n  private _userDescription: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationSimulationPersona to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationSimulationPersona.AsObject>\n  ) {\n    _value = _value || {};\n    this.persona = _value.persona;\n    this.scenario = _value.scenario;\n    this.expectedOutcome = _value.expectedOutcome;\n    this.userDescription = _value.userDescription;\n    LlmEvaluationSimulationPersona.refineValues(this);\n  }\n  get persona(): string {\n    return this._persona;\n  }\n  set persona(value: string) {\n    this._persona = value;\n  }\n  get scenario(): string {\n    return this._scenario;\n  }\n  set scenario(value: string) {\n    this._scenario = value;\n  }\n  get expectedOutcome(): string {\n    return this._expectedOutcome;\n  }\n  set expectedOutcome(value: string) {\n    this._expectedOutcome = value;\n  }\n  get userDescription(): string {\n    return this._userDescription;\n  }\n  set userDescription(value: string) {\n    this._userDescription = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationSimulationPersona.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationSimulationPersona.AsObject {\n    return {\n      persona: this.persona,\n      scenario: this.scenario,\n      expectedOutcome: this.expectedOutcome,\n      userDescription: this.userDescription\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationSimulationPersona.AsProtobufJSON {\n    return {\n      persona: this.persona,\n      scenario: this.scenario,\n      expectedOutcome: this.expectedOutcome,\n      userDescription: this.userDescription\n    };\n  }\n}\nexport module LlmEvaluationSimulationPersona {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationSimulationPersona\n   */\n  export interface AsObject {\n    persona: string;\n    scenario: string;\n    expectedOutcome: string;\n    userDescription: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationSimulationPersona\n   */\n  export interface AsProtobufJSON {\n    persona: string;\n    scenario: string;\n    expectedOutcome: string;\n    userDescription: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SimulateLlmEvaluationConversationsRequest\n */\nexport class SimulateLlmEvaluationConversationsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.SimulateLlmEvaluationConversationsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SimulateLlmEvaluationConversationsRequest();\n    SimulateLlmEvaluationConversationsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SimulateLlmEvaluationConversationsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.llmEvaluationSimulationPersonas =\n      _instance.llmEvaluationSimulationPersonas || [];\n    _instance.numConversations = _instance.numConversations || 0;\n    _instance.maxTurns = _instance.maxTurns || 0;\n    _instance.ccaiServiceNames = _instance.ccaiServiceNames || [];\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.config = _instance.config || undefined;\n    _instance.llmEvaluationSimulationKind =\n      _instance.llmEvaluationSimulationKind || 0;\n    _instance.attackTypes = _instance.attackTypes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SimulateLlmEvaluationConversationsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new LlmEvaluationSimulationPersona();\n          _reader.readMessage(\n            messageInitializer3,\n            LlmEvaluationSimulationPersona.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationSimulationPersonas =\n            _instance.llmEvaluationSimulationPersonas || []).push(\n            messageInitializer3\n          );\n          break;\n        case 4:\n          _instance.numConversations = _reader.readInt32();\n          break;\n        case 5:\n          _instance.maxTurns = _reader.readInt32();\n          break;\n        case 6:\n          (_instance.ccaiServiceNames = _instance.ccaiServiceNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 8:\n          _instance.config = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.config,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.llmEvaluationSimulationKind = _reader.readEnum();\n          break;\n        case 10:\n          (_instance.attackTypes = _instance.attackTypes || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SimulateLlmEvaluationConversationsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SimulateLlmEvaluationConversationsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(2, _instance.llmEvaluationDatasetName);\n    }\n    if (\n      _instance.llmEvaluationSimulationPersonas &&\n      _instance.llmEvaluationSimulationPersonas.length\n    ) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.llmEvaluationSimulationPersonas as any,\n        LlmEvaluationSimulationPersona.serializeBinaryToWriter\n      );\n    }\n    if (_instance.numConversations) {\n      _writer.writeInt32(4, _instance.numConversations);\n    }\n    if (_instance.maxTurns) {\n      _writer.writeInt32(5, _instance.maxTurns);\n    }\n    if (_instance.ccaiServiceNames && _instance.ccaiServiceNames.length) {\n      _writer.writeRepeatedString(6, _instance.ccaiServiceNames);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(7, _instance.languageCode);\n    }\n    if (_instance.config) {\n      _writer.writeMessage(\n        8,\n        _instance.config as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEvaluationSimulationKind) {\n      _writer.writeEnum(9, _instance.llmEvaluationSimulationKind);\n    }\n    if (_instance.attackTypes && _instance.attackTypes.length) {\n      _writer.writeRepeatedString(10, _instance.attackTypes);\n    }\n  }\n\n  private _parent: string;\n  private _llmEvaluationDatasetName: string;\n  private _llmEvaluationSimulationPersonas?: LlmEvaluationSimulationPersona[];\n  private _numConversations: number;\n  private _maxTurns: number;\n  private _ccaiServiceNames: string[];\n  private _languageCode: string;\n  private _config?: googleProtobuf008.Struct;\n  private _llmEvaluationSimulationKind: LlmEvaluationSimulationKind;\n  private _attackTypes: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SimulateLlmEvaluationConversationsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      SimulateLlmEvaluationConversationsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.llmEvaluationSimulationPersonas = (\n      _value.llmEvaluationSimulationPersonas || []\n    ).map(m => new LlmEvaluationSimulationPersona(m));\n    this.numConversations = _value.numConversations;\n    this.maxTurns = _value.maxTurns;\n    this.ccaiServiceNames = (_value.ccaiServiceNames || []).slice();\n    this.languageCode = _value.languageCode;\n    this.config = _value.config\n      ? new googleProtobuf008.Struct(_value.config)\n      : undefined;\n    this.llmEvaluationSimulationKind = _value.llmEvaluationSimulationKind;\n    this.attackTypes = (_value.attackTypes || []).slice();\n    SimulateLlmEvaluationConversationsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get llmEvaluationSimulationPersonas():\n    | LlmEvaluationSimulationPersona[]\n    | undefined {\n    return this._llmEvaluationSimulationPersonas;\n  }\n  set llmEvaluationSimulationPersonas(\n    value: LlmEvaluationSimulationPersona[] | undefined\n  ) {\n    this._llmEvaluationSimulationPersonas = value;\n  }\n  get numConversations(): number {\n    return this._numConversations;\n  }\n  set numConversations(value: number) {\n    this._numConversations = value;\n  }\n  get maxTurns(): number {\n    return this._maxTurns;\n  }\n  set maxTurns(value: number) {\n    this._maxTurns = value;\n  }\n  get ccaiServiceNames(): string[] {\n    return this._ccaiServiceNames;\n  }\n  set ccaiServiceNames(value: string[]) {\n    this._ccaiServiceNames = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get config(): googleProtobuf008.Struct | undefined {\n    return this._config;\n  }\n  set config(value: googleProtobuf008.Struct | undefined) {\n    this._config = value;\n  }\n  get llmEvaluationSimulationKind(): LlmEvaluationSimulationKind {\n    return this._llmEvaluationSimulationKind;\n  }\n  set llmEvaluationSimulationKind(value: LlmEvaluationSimulationKind) {\n    this._llmEvaluationSimulationKind = value;\n  }\n  get attackTypes(): string[] {\n    return this._attackTypes;\n  }\n  set attackTypes(value: string[]) {\n    this._attackTypes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SimulateLlmEvaluationConversationsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SimulateLlmEvaluationConversationsRequest.AsObject {\n    return {\n      parent: this.parent,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationSimulationPersonas: (\n        this.llmEvaluationSimulationPersonas || []\n      ).map(m => m.toObject()),\n      numConversations: this.numConversations,\n      maxTurns: this.maxTurns,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      languageCode: this.languageCode,\n      config: this.config ? this.config.toObject() : undefined,\n      llmEvaluationSimulationKind: this.llmEvaluationSimulationKind,\n      attackTypes: (this.attackTypes || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SimulateLlmEvaluationConversationsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      llmEvaluationSimulationPersonas: (\n        this.llmEvaluationSimulationPersonas || []\n      ).map(m => m.toProtobufJSON(options)),\n      numConversations: this.numConversations,\n      maxTurns: this.maxTurns,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      languageCode: this.languageCode,\n      config: this.config ? this.config.toProtobufJSON(options) : null,\n      llmEvaluationSimulationKind:\n        LlmEvaluationSimulationKind[\n          this.llmEvaluationSimulationKind === null ||\n          this.llmEvaluationSimulationKind === undefined\n            ? 0\n            : this.llmEvaluationSimulationKind\n        ],\n      attackTypes: (this.attackTypes || []).slice()\n    };\n  }\n}\nexport module SimulateLlmEvaluationConversationsRequest {\n  /**\n   * Standard JavaScript object representation for SimulateLlmEvaluationConversationsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    llmEvaluationDatasetName: string;\n    llmEvaluationSimulationPersonas?: LlmEvaluationSimulationPersona.AsObject[];\n    numConversations: number;\n    maxTurns: number;\n    ccaiServiceNames: string[];\n    languageCode: string;\n    config?: googleProtobuf008.Struct.AsObject;\n    llmEvaluationSimulationKind: LlmEvaluationSimulationKind;\n    attackTypes: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for SimulateLlmEvaluationConversationsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    llmEvaluationDatasetName: string;\n    llmEvaluationSimulationPersonas:\n      | LlmEvaluationSimulationPersona.AsProtobufJSON[]\n      | null;\n    numConversations: number;\n    maxTurns: number;\n    ccaiServiceNames: string[];\n    languageCode: string;\n    config: googleProtobuf008.Struct.AsProtobufJSON | null;\n    llmEvaluationSimulationKind: string;\n    attackTypes: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationSchedule\n */\nexport class LlmEvaluationSchedule implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationSchedule';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationSchedule();\n    LlmEvaluationSchedule.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationSchedule) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.cronExpression = _instance.cronExpression || '';\n    _instance.intervalSeconds = _instance.intervalSeconds || 0;\n    _instance.enabled = _instance.enabled || false;\n    _instance.llmEvaluationScheduleAction =\n      _instance.llmEvaluationScheduleAction || 0;\n    _instance.runLlmEvaluationExperimentRequest =\n      _instance.runLlmEvaluationExperimentRequest || undefined;\n    _instance.llmEvaluationReleaseGateName =\n      _instance.llmEvaluationReleaseGateName || '';\n    _instance.lastRunAt = _instance.lastRunAt || undefined;\n    _instance.nextRunAt = _instance.nextRunAt || undefined;\n    _instance.lastRunResourceName = _instance.lastRunResourceName || '';\n    _instance.lastRunStatus = _instance.lastRunStatus || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationSchedule,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.cronExpression = _reader.readString();\n          break;\n        case 5:\n          _instance.intervalSeconds = _reader.readInt32();\n          break;\n        case 6:\n          _instance.enabled = _reader.readBool();\n          break;\n        case 7:\n          _instance.llmEvaluationScheduleAction = _reader.readEnum();\n          break;\n        case 8:\n          _instance.runLlmEvaluationExperimentRequest = new RunLlmEvaluationExperimentRequest();\n          _reader.readMessage(\n            _instance.runLlmEvaluationExperimentRequest,\n            RunLlmEvaluationExperimentRequest.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.llmEvaluationReleaseGateName = _reader.readString();\n          break;\n        case 10:\n          _instance.lastRunAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.lastRunAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.nextRunAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.nextRunAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.lastRunResourceName = _reader.readString();\n          break;\n        case 13:\n          _instance.lastRunStatus = _reader.readEnum();\n          break;\n        case 14:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 15:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 16:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 17:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 18:\n          _instance.parent = _reader.readString();\n          break;\n        case 19:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationSchedule.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationSchedule,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.cronExpression) {\n      _writer.writeString(4, _instance.cronExpression);\n    }\n    if (_instance.intervalSeconds) {\n      _writer.writeInt32(5, _instance.intervalSeconds);\n    }\n    if (_instance.enabled) {\n      _writer.writeBool(6, _instance.enabled);\n    }\n    if (_instance.llmEvaluationScheduleAction) {\n      _writer.writeEnum(7, _instance.llmEvaluationScheduleAction);\n    }\n    if (_instance.runLlmEvaluationExperimentRequest) {\n      _writer.writeMessage(\n        8,\n        _instance.runLlmEvaluationExperimentRequest as any,\n        RunLlmEvaluationExperimentRequest.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEvaluationReleaseGateName) {\n      _writer.writeString(9, _instance.llmEvaluationReleaseGateName);\n    }\n    if (_instance.lastRunAt) {\n      _writer.writeMessage(\n        10,\n        _instance.lastRunAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextRunAt) {\n      _writer.writeMessage(\n        11,\n        _instance.nextRunAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.lastRunResourceName) {\n      _writer.writeString(12, _instance.lastRunResourceName);\n    }\n    if (_instance.lastRunStatus) {\n      _writer.writeEnum(13, _instance.lastRunStatus);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        14,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(15, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        16,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(17, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(18, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(19, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _cronExpression: string;\n  private _intervalSeconds: number;\n  private _enabled: boolean;\n  private _llmEvaluationScheduleAction: LlmEvaluationScheduleAction;\n  private _runLlmEvaluationExperimentRequest?: RunLlmEvaluationExperimentRequest;\n  private _llmEvaluationReleaseGateName: string;\n  private _lastRunAt?: googleProtobuf005.Timestamp;\n  private _nextRunAt?: googleProtobuf005.Timestamp;\n  private _lastRunResourceName: string;\n  private _lastRunStatus: LlmEvaluationExperimentStatus;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationSchedule to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationSchedule.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.cronExpression = _value.cronExpression;\n    this.intervalSeconds = _value.intervalSeconds;\n    this.enabled = _value.enabled;\n    this.llmEvaluationScheduleAction = _value.llmEvaluationScheduleAction;\n    this.runLlmEvaluationExperimentRequest = _value.runLlmEvaluationExperimentRequest\n      ? new RunLlmEvaluationExperimentRequest(\n          _value.runLlmEvaluationExperimentRequest\n        )\n      : undefined;\n    this.llmEvaluationReleaseGateName = _value.llmEvaluationReleaseGateName;\n    this.lastRunAt = _value.lastRunAt\n      ? new googleProtobuf005.Timestamp(_value.lastRunAt)\n      : undefined;\n    this.nextRunAt = _value.nextRunAt\n      ? new googleProtobuf005.Timestamp(_value.nextRunAt)\n      : undefined;\n    this.lastRunResourceName = _value.lastRunResourceName;\n    this.lastRunStatus = _value.lastRunStatus;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationSchedule.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get cronExpression(): string {\n    return this._cronExpression;\n  }\n  set cronExpression(value: string) {\n    this._cronExpression = value;\n  }\n  get intervalSeconds(): number {\n    return this._intervalSeconds;\n  }\n  set intervalSeconds(value: number) {\n    this._intervalSeconds = value;\n  }\n  get enabled(): boolean {\n    return this._enabled;\n  }\n  set enabled(value: boolean) {\n    this._enabled = value;\n  }\n  get llmEvaluationScheduleAction(): LlmEvaluationScheduleAction {\n    return this._llmEvaluationScheduleAction;\n  }\n  set llmEvaluationScheduleAction(value: LlmEvaluationScheduleAction) {\n    this._llmEvaluationScheduleAction = value;\n  }\n  get runLlmEvaluationExperimentRequest():\n    | RunLlmEvaluationExperimentRequest\n    | undefined {\n    return this._runLlmEvaluationExperimentRequest;\n  }\n  set runLlmEvaluationExperimentRequest(\n    value: RunLlmEvaluationExperimentRequest | undefined\n  ) {\n    this._runLlmEvaluationExperimentRequest = value;\n  }\n  get llmEvaluationReleaseGateName(): string {\n    return this._llmEvaluationReleaseGateName;\n  }\n  set llmEvaluationReleaseGateName(value: string) {\n    this._llmEvaluationReleaseGateName = value;\n  }\n  get lastRunAt(): googleProtobuf005.Timestamp | undefined {\n    return this._lastRunAt;\n  }\n  set lastRunAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._lastRunAt = value;\n  }\n  get nextRunAt(): googleProtobuf005.Timestamp | undefined {\n    return this._nextRunAt;\n  }\n  set nextRunAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._nextRunAt = value;\n  }\n  get lastRunResourceName(): string {\n    return this._lastRunResourceName;\n  }\n  set lastRunResourceName(value: string) {\n    this._lastRunResourceName = value;\n  }\n  get lastRunStatus(): LlmEvaluationExperimentStatus {\n    return this._lastRunStatus;\n  }\n  set lastRunStatus(value: LlmEvaluationExperimentStatus) {\n    this._lastRunStatus = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationSchedule.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationSchedule.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      cronExpression: this.cronExpression,\n      intervalSeconds: this.intervalSeconds,\n      enabled: this.enabled,\n      llmEvaluationScheduleAction: this.llmEvaluationScheduleAction,\n      runLlmEvaluationExperimentRequest: this.runLlmEvaluationExperimentRequest\n        ? this.runLlmEvaluationExperimentRequest.toObject()\n        : undefined,\n      llmEvaluationReleaseGateName: this.llmEvaluationReleaseGateName,\n      lastRunAt: this.lastRunAt ? this.lastRunAt.toObject() : undefined,\n      nextRunAt: this.nextRunAt ? this.nextRunAt.toObject() : undefined,\n      lastRunResourceName: this.lastRunResourceName,\n      lastRunStatus: this.lastRunStatus,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationSchedule.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      cronExpression: this.cronExpression,\n      intervalSeconds: this.intervalSeconds,\n      enabled: this.enabled,\n      llmEvaluationScheduleAction:\n        LlmEvaluationScheduleAction[\n          this.llmEvaluationScheduleAction === null ||\n          this.llmEvaluationScheduleAction === undefined\n            ? 0\n            : this.llmEvaluationScheduleAction\n        ],\n      runLlmEvaluationExperimentRequest: this.runLlmEvaluationExperimentRequest\n        ? this.runLlmEvaluationExperimentRequest.toProtobufJSON(options)\n        : null,\n      llmEvaluationReleaseGateName: this.llmEvaluationReleaseGateName,\n      lastRunAt: this.lastRunAt ? this.lastRunAt.toProtobufJSON(options) : null,\n      nextRunAt: this.nextRunAt ? this.nextRunAt.toProtobufJSON(options) : null,\n      lastRunResourceName: this.lastRunResourceName,\n      lastRunStatus:\n        LlmEvaluationExperimentStatus[\n          this.lastRunStatus === null || this.lastRunStatus === undefined\n            ? 0\n            : this.lastRunStatus\n        ],\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationSchedule {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationSchedule\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    cronExpression: string;\n    intervalSeconds: number;\n    enabled: boolean;\n    llmEvaluationScheduleAction: LlmEvaluationScheduleAction;\n    runLlmEvaluationExperimentRequest?: RunLlmEvaluationExperimentRequest.AsObject;\n    llmEvaluationReleaseGateName: string;\n    lastRunAt?: googleProtobuf005.Timestamp.AsObject;\n    nextRunAt?: googleProtobuf005.Timestamp.AsObject;\n    lastRunResourceName: string;\n    lastRunStatus: LlmEvaluationExperimentStatus;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationSchedule\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    cronExpression: string;\n    intervalSeconds: number;\n    enabled: boolean;\n    llmEvaluationScheduleAction: string;\n    runLlmEvaluationExperimentRequest: RunLlmEvaluationExperimentRequest.AsProtobufJSON | null;\n    llmEvaluationReleaseGateName: string;\n    lastRunAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    nextRunAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    lastRunResourceName: string;\n    lastRunStatus: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationScheduleRequest\n */\nexport class CreateLlmEvaluationScheduleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationScheduleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationScheduleRequest();\n    CreateLlmEvaluationScheduleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateLlmEvaluationScheduleRequest) {\n    _instance.llmEvaluationSchedule =\n      _instance.llmEvaluationSchedule || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationScheduleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationSchedule = new LlmEvaluationSchedule();\n          _reader.readMessage(\n            _instance.llmEvaluationSchedule,\n            LlmEvaluationSchedule.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationScheduleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationScheduleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationSchedule) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationSchedule as any,\n        LlmEvaluationSchedule.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationSchedule?: LlmEvaluationSchedule;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationScheduleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateLlmEvaluationScheduleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationSchedule = _value.llmEvaluationSchedule\n      ? new LlmEvaluationSchedule(_value.llmEvaluationSchedule)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CreateLlmEvaluationScheduleRequest.refineValues(this);\n  }\n  get llmEvaluationSchedule(): LlmEvaluationSchedule | undefined {\n    return this._llmEvaluationSchedule;\n  }\n  set llmEvaluationSchedule(value: LlmEvaluationSchedule | undefined) {\n    this._llmEvaluationSchedule = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationScheduleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationScheduleRequest.AsObject {\n    return {\n      llmEvaluationSchedule: this.llmEvaluationSchedule\n        ? this.llmEvaluationSchedule.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationScheduleRequest.AsProtobufJSON {\n    return {\n      llmEvaluationSchedule: this.llmEvaluationSchedule\n        ? this.llmEvaluationSchedule.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CreateLlmEvaluationScheduleRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationScheduleRequest\n   */\n  export interface AsObject {\n    llmEvaluationSchedule?: LlmEvaluationSchedule.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationScheduleRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationSchedule: LlmEvaluationSchedule.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationScheduleRequest\n */\nexport class GetLlmEvaluationScheduleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationScheduleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationScheduleRequest();\n    GetLlmEvaluationScheduleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationScheduleRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationScheduleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationScheduleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationScheduleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationScheduleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationScheduleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationScheduleRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationScheduleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationScheduleRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationScheduleRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationScheduleRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationScheduleRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationScheduleRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationScheduleFilter\n */\nexport class LlmEvaluationScheduleFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationScheduleFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationScheduleFilter();\n    LlmEvaluationScheduleFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationScheduleFilter) {\n    _instance.displayName = _instance.displayName || '';\n    _instance.enabledOnly = _instance.enabledOnly || false;\n    _instance.llmEvaluationScheduleAction =\n      _instance.llmEvaluationScheduleAction || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationScheduleFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        case 2:\n          _instance.enabledOnly = _reader.readBool();\n          break;\n        case 3:\n          _instance.llmEvaluationScheduleAction = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationScheduleFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationScheduleFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n    if (_instance.enabledOnly) {\n      _writer.writeBool(2, _instance.enabledOnly);\n    }\n    if (_instance.llmEvaluationScheduleAction) {\n      _writer.writeEnum(3, _instance.llmEvaluationScheduleAction);\n    }\n  }\n\n  private _displayName: string;\n  private _enabledOnly: boolean;\n  private _llmEvaluationScheduleAction: LlmEvaluationScheduleAction;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationScheduleFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationScheduleFilter.AsObject>) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    this.enabledOnly = _value.enabledOnly;\n    this.llmEvaluationScheduleAction = _value.llmEvaluationScheduleAction;\n    LlmEvaluationScheduleFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get enabledOnly(): boolean {\n    return this._enabledOnly;\n  }\n  set enabledOnly(value: boolean) {\n    this._enabledOnly = value;\n  }\n  get llmEvaluationScheduleAction(): LlmEvaluationScheduleAction {\n    return this._llmEvaluationScheduleAction;\n  }\n  set llmEvaluationScheduleAction(value: LlmEvaluationScheduleAction) {\n    this._llmEvaluationScheduleAction = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationScheduleFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationScheduleFilter.AsObject {\n    return {\n      displayName: this.displayName,\n      enabledOnly: this.enabledOnly,\n      llmEvaluationScheduleAction: this.llmEvaluationScheduleAction\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationScheduleFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName,\n      enabledOnly: this.enabledOnly,\n      llmEvaluationScheduleAction:\n        LlmEvaluationScheduleAction[\n          this.llmEvaluationScheduleAction === null ||\n          this.llmEvaluationScheduleAction === undefined\n            ? 0\n            : this.llmEvaluationScheduleAction\n        ]\n    };\n  }\n}\nexport module LlmEvaluationScheduleFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationScheduleFilter\n   */\n  export interface AsObject {\n    displayName: string;\n    enabledOnly: boolean;\n    llmEvaluationScheduleAction: LlmEvaluationScheduleAction;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationScheduleFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n    enabledOnly: boolean;\n    llmEvaluationScheduleAction: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationSchedulesRequest\n */\nexport class ListLlmEvaluationSchedulesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationSchedulesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationSchedulesRequest();\n    ListLlmEvaluationSchedulesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationSchedulesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationScheduleFilter =\n      _instance.llmEvaluationScheduleFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationSchedulesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationScheduleFilter = new LlmEvaluationScheduleFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationScheduleFilter,\n            LlmEvaluationScheduleFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationSchedulesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationSchedulesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationScheduleFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationScheduleFilter as any,\n        LlmEvaluationScheduleFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationScheduleFilter?: LlmEvaluationScheduleFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationSchedulesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationSchedulesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationScheduleFilter = _value.llmEvaluationScheduleFilter\n      ? new LlmEvaluationScheduleFilter(_value.llmEvaluationScheduleFilter)\n      : undefined;\n    ListLlmEvaluationSchedulesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationScheduleFilter(): LlmEvaluationScheduleFilter | undefined {\n    return this._llmEvaluationScheduleFilter;\n  }\n  set llmEvaluationScheduleFilter(\n    value: LlmEvaluationScheduleFilter | undefined\n  ) {\n    this._llmEvaluationScheduleFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationSchedulesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationSchedulesRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationScheduleFilter: this.llmEvaluationScheduleFilter\n        ? this.llmEvaluationScheduleFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationSchedulesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationScheduleFilter: this.llmEvaluationScheduleFilter\n        ? this.llmEvaluationScheduleFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationSchedulesRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationSchedulesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationScheduleFilter?: LlmEvaluationScheduleFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationSchedulesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationScheduleFilter: LlmEvaluationScheduleFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationSchedulesResponse\n */\nexport class ListLlmEvaluationSchedulesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationSchedulesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationSchedulesResponse();\n    ListLlmEvaluationSchedulesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationSchedulesResponse) {\n    _instance.llmEvaluationSchedules = _instance.llmEvaluationSchedules || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationSchedulesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationSchedule();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationSchedule.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationSchedules =\n            _instance.llmEvaluationSchedules || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationSchedulesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationSchedulesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationSchedules &&\n      _instance.llmEvaluationSchedules.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationSchedules as any,\n        LlmEvaluationSchedule.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationSchedules?: LlmEvaluationSchedule[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationSchedulesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationSchedulesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationSchedules = (_value.llmEvaluationSchedules || []).map(\n      m => new LlmEvaluationSchedule(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationSchedulesResponse.refineValues(this);\n  }\n  get llmEvaluationSchedules(): LlmEvaluationSchedule[] | undefined {\n    return this._llmEvaluationSchedules;\n  }\n  set llmEvaluationSchedules(value: LlmEvaluationSchedule[] | undefined) {\n    this._llmEvaluationSchedules = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationSchedulesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationSchedulesResponse.AsObject {\n    return {\n      llmEvaluationSchedules: (this.llmEvaluationSchedules || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationSchedulesResponse.AsProtobufJSON {\n    return {\n      llmEvaluationSchedules: (this.llmEvaluationSchedules || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationSchedulesResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationSchedulesResponse\n   */\n  export interface AsObject {\n    llmEvaluationSchedules?: LlmEvaluationSchedule.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationSchedulesResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationSchedules: LlmEvaluationSchedule.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationScheduleRequest\n */\nexport class UpdateLlmEvaluationScheduleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationScheduleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationScheduleRequest();\n    UpdateLlmEvaluationScheduleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationScheduleRequest) {\n    _instance.llmEvaluationSchedule =\n      _instance.llmEvaluationSchedule || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationScheduleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationSchedule = new LlmEvaluationSchedule();\n          _reader.readMessage(\n            _instance.llmEvaluationSchedule,\n            LlmEvaluationSchedule.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationScheduleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationScheduleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationSchedule) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationSchedule as any,\n        LlmEvaluationSchedule.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationSchedule?: LlmEvaluationSchedule;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationScheduleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationScheduleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationSchedule = _value.llmEvaluationSchedule\n      ? new LlmEvaluationSchedule(_value.llmEvaluationSchedule)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationScheduleRequest.refineValues(this);\n  }\n  get llmEvaluationSchedule(): LlmEvaluationSchedule | undefined {\n    return this._llmEvaluationSchedule;\n  }\n  set llmEvaluationSchedule(value: LlmEvaluationSchedule | undefined) {\n    this._llmEvaluationSchedule = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationScheduleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationScheduleRequest.AsObject {\n    return {\n      llmEvaluationSchedule: this.llmEvaluationSchedule\n        ? this.llmEvaluationSchedule.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationScheduleRequest.AsProtobufJSON {\n    return {\n      llmEvaluationSchedule: this.llmEvaluationSchedule\n        ? this.llmEvaluationSchedule.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationScheduleRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationScheduleRequest\n   */\n  export interface AsObject {\n    llmEvaluationSchedule?: LlmEvaluationSchedule.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationScheduleRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationSchedule: LlmEvaluationSchedule.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationScheduleRequest\n */\nexport class DeleteLlmEvaluationScheduleRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationScheduleRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationScheduleRequest();\n    DeleteLlmEvaluationScheduleRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationScheduleRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationScheduleRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationScheduleRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationScheduleRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationScheduleRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationScheduleRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationScheduleRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationScheduleRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationScheduleRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationScheduleRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationScheduleRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationScheduleRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationScheduleRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReport\n */\nexport class LlmEvaluationReport implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReport';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReport();\n    LlmEvaluationReport.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReport) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.reportType = _instance.reportType || '';\n    _instance.mimeType = _instance.mimeType || '';\n    _instance.payload = _instance.payload || new Uint8Array();\n    _instance.metadata = _instance.metadata || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReport,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.reportType = _reader.readString();\n          break;\n        case 5:\n          _instance.mimeType = _reader.readString();\n          break;\n        case 6:\n          _instance.payload = _reader.readBytes();\n          break;\n        case 7:\n          _instance.metadata = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.metadata,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 10:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 12:\n          _instance.parent = _reader.readString();\n          break;\n        case 13:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReport.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReport,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.reportType) {\n      _writer.writeString(4, _instance.reportType);\n    }\n    if (_instance.mimeType) {\n      _writer.writeString(5, _instance.mimeType);\n    }\n    if (_instance.payload && _instance.payload.length) {\n      _writer.writeBytes(6, _instance.payload);\n    }\n    if (_instance.metadata) {\n      _writer.writeMessage(\n        7,\n        _instance.metadata as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        8,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(9, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(11, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(12, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(13, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _reportType: string;\n  private _mimeType: string;\n  private _payload: Uint8Array;\n  private _metadata?: googleProtobuf008.Struct;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReport to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationReport.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.reportType = _value.reportType;\n    this.mimeType = _value.mimeType;\n    this.payload = _value.payload;\n    this.metadata = _value.metadata\n      ? new googleProtobuf008.Struct(_value.metadata)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationReport.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get reportType(): string {\n    return this._reportType;\n  }\n  set reportType(value: string) {\n    this._reportType = value;\n  }\n  get mimeType(): string {\n    return this._mimeType;\n  }\n  set mimeType(value: string) {\n    this._mimeType = value;\n  }\n  get payload(): Uint8Array {\n    return this._payload;\n  }\n  set payload(value: Uint8Array) {\n    this._payload = value;\n  }\n  get metadata(): googleProtobuf008.Struct | undefined {\n    return this._metadata;\n  }\n  set metadata(value: googleProtobuf008.Struct | undefined) {\n    this._metadata = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReport.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReport.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      reportType: this.reportType,\n      mimeType: this.mimeType,\n      payload: this.payload ? this.payload.subarray(0) : new Uint8Array(),\n      metadata: this.metadata ? this.metadata.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReport.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      reportType: this.reportType,\n      mimeType: this.mimeType,\n      payload: this.payload ? uint8ArrayToBase64(this.payload) : '',\n      metadata: this.metadata ? this.metadata.toProtobufJSON(options) : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationReport {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReport\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    reportType: string;\n    mimeType: string;\n    payload: Uint8Array;\n    metadata?: googleProtobuf008.Struct.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReport\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    reportType: string;\n    mimeType: string;\n    payload: string;\n    metadata: googleProtobuf008.Struct.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationReportRequest\n */\nexport class CreateLlmEvaluationReportRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationReportRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationReportRequest();\n    CreateLlmEvaluationReportRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateLlmEvaluationReportRequest) {\n    _instance.llmEvaluationReport = _instance.llmEvaluationReport || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationReportRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationReport = new LlmEvaluationReport();\n          _reader.readMessage(\n            _instance.llmEvaluationReport,\n            LlmEvaluationReport.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationReportRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationReportRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationReport) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationReport as any,\n        LlmEvaluationReport.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationReport?: LlmEvaluationReport;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationReportRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateLlmEvaluationReportRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationReport = _value.llmEvaluationReport\n      ? new LlmEvaluationReport(_value.llmEvaluationReport)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CreateLlmEvaluationReportRequest.refineValues(this);\n  }\n  get llmEvaluationReport(): LlmEvaluationReport | undefined {\n    return this._llmEvaluationReport;\n  }\n  set llmEvaluationReport(value: LlmEvaluationReport | undefined) {\n    this._llmEvaluationReport = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationReportRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationReportRequest.AsObject {\n    return {\n      llmEvaluationReport: this.llmEvaluationReport\n        ? this.llmEvaluationReport.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationReportRequest.AsProtobufJSON {\n    return {\n      llmEvaluationReport: this.llmEvaluationReport\n        ? this.llmEvaluationReport.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CreateLlmEvaluationReportRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationReportRequest\n   */\n  export interface AsObject {\n    llmEvaluationReport?: LlmEvaluationReport.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationReportRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationReport: LlmEvaluationReport.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationReportRequest\n */\nexport class GetLlmEvaluationReportRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationReportRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationReportRequest();\n    GetLlmEvaluationReportRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationReportRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationReportRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationReportRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationReportRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationReportRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationReportRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationReportRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationReportRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationReportRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationReportRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationReportRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationReportRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationReportRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationReportFilter\n */\nexport class LlmEvaluationReportFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationReportFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationReportFilter();\n    LlmEvaluationReportFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationReportFilter) {\n    _instance.displayName = _instance.displayName || '';\n    _instance.reportType = _instance.reportType || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationReportFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        case 2:\n          _instance.reportType = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationReportFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationReportFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n    if (_instance.reportType) {\n      _writer.writeString(2, _instance.reportType);\n    }\n  }\n\n  private _displayName: string;\n  private _reportType: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationReportFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationReportFilter.AsObject>) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    this.reportType = _value.reportType;\n    LlmEvaluationReportFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get reportType(): string {\n    return this._reportType;\n  }\n  set reportType(value: string) {\n    this._reportType = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationReportFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationReportFilter.AsObject {\n    return {\n      displayName: this.displayName,\n      reportType: this.reportType\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationReportFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName,\n      reportType: this.reportType\n    };\n  }\n}\nexport module LlmEvaluationReportFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationReportFilter\n   */\n  export interface AsObject {\n    displayName: string;\n    reportType: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationReportFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n    reportType: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationReportsRequest\n */\nexport class ListLlmEvaluationReportsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationReportsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationReportsRequest();\n    ListLlmEvaluationReportsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationReportsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationReportFilter =\n      _instance.llmEvaluationReportFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationReportsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationReportFilter = new LlmEvaluationReportFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationReportFilter,\n            LlmEvaluationReportFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationReportsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationReportsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationReportFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationReportFilter as any,\n        LlmEvaluationReportFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationReportFilter?: LlmEvaluationReportFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationReportsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationReportsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationReportFilter = _value.llmEvaluationReportFilter\n      ? new LlmEvaluationReportFilter(_value.llmEvaluationReportFilter)\n      : undefined;\n    ListLlmEvaluationReportsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationReportFilter(): LlmEvaluationReportFilter | undefined {\n    return this._llmEvaluationReportFilter;\n  }\n  set llmEvaluationReportFilter(value: LlmEvaluationReportFilter | undefined) {\n    this._llmEvaluationReportFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationReportsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationReportsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationReportFilter: this.llmEvaluationReportFilter\n        ? this.llmEvaluationReportFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationReportsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationReportFilter: this.llmEvaluationReportFilter\n        ? this.llmEvaluationReportFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationReportsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationReportsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationReportFilter?: LlmEvaluationReportFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationReportsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationReportFilter: LlmEvaluationReportFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationReportsResponse\n */\nexport class ListLlmEvaluationReportsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationReportsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationReportsResponse();\n    ListLlmEvaluationReportsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationReportsResponse) {\n    _instance.llmEvaluationReports = _instance.llmEvaluationReports || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationReportsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationReport();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationReport.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationReports =\n            _instance.llmEvaluationReports || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationReportsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationReportsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationReports &&\n      _instance.llmEvaluationReports.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationReports as any,\n        LlmEvaluationReport.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationReports?: LlmEvaluationReport[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationReportsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationReportsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationReports = (_value.llmEvaluationReports || []).map(\n      m => new LlmEvaluationReport(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationReportsResponse.refineValues(this);\n  }\n  get llmEvaluationReports(): LlmEvaluationReport[] | undefined {\n    return this._llmEvaluationReports;\n  }\n  set llmEvaluationReports(value: LlmEvaluationReport[] | undefined) {\n    this._llmEvaluationReports = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationReportsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationReportsResponse.AsObject {\n    return {\n      llmEvaluationReports: (this.llmEvaluationReports || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationReportsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationReports: (this.llmEvaluationReports || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationReportsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationReportsResponse\n   */\n  export interface AsObject {\n    llmEvaluationReports?: LlmEvaluationReport.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationReportsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationReports: LlmEvaluationReport.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationReportRequest\n */\nexport class DeleteLlmEvaluationReportRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationReportRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationReportRequest();\n    DeleteLlmEvaluationReportRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationReportRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationReportRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationReportRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationReportRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationReportRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationReportRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationReportRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationReportRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationReportRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationReportRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationReportRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationReportRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationReportRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbTrafficConfig\n */\nexport class LlmEvaluationAbTrafficConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbTrafficConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbTrafficConfig();\n    LlmEvaluationAbTrafficConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbTrafficConfig) {\n    _instance.enrollmentRate = _instance.enrollmentRate || 0;\n    _instance.assignmentSalt = _instance.assignmentSalt || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbTrafficConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.enrollmentRate = _reader.readDouble();\n          break;\n        case 2:\n          _instance.assignmentSalt = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbTrafficConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbTrafficConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.enrollmentRate) {\n      _writer.writeDouble(1, _instance.enrollmentRate);\n    }\n    if (_instance.assignmentSalt) {\n      _writer.writeString(2, _instance.assignmentSalt);\n    }\n  }\n\n  private _enrollmentRate: number;\n  private _assignmentSalt: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbTrafficConfig to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAbTrafficConfig.AsObject>\n  ) {\n    _value = _value || {};\n    this.enrollmentRate = _value.enrollmentRate;\n    this.assignmentSalt = _value.assignmentSalt;\n    LlmEvaluationAbTrafficConfig.refineValues(this);\n  }\n  get enrollmentRate(): number {\n    return this._enrollmentRate;\n  }\n  set enrollmentRate(value: number) {\n    this._enrollmentRate = value;\n  }\n  get assignmentSalt(): string {\n    return this._assignmentSalt;\n  }\n  set assignmentSalt(value: string) {\n    this._assignmentSalt = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbTrafficConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbTrafficConfig.AsObject {\n    return {\n      enrollmentRate: this.enrollmentRate,\n      assignmentSalt: this.assignmentSalt\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbTrafficConfig.AsProtobufJSON {\n    return {\n      enrollmentRate: this.enrollmentRate,\n      assignmentSalt: this.assignmentSalt\n    };\n  }\n}\nexport module LlmEvaluationAbTrafficConfig {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbTrafficConfig\n   */\n  export interface AsObject {\n    enrollmentRate: number;\n    assignmentSalt: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbTrafficConfig\n   */\n  export interface AsProtobufJSON {\n    enrollmentRate: number;\n    assignmentSalt: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagVariantConfig\n */\nexport class RagVariantConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagVariantConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagVariantConfig();\n    RagVariantConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagVariantConfig) {\n    _instance.chatAssistantLlmCcaiServiceName =\n      _instance.chatAssistantLlmCcaiServiceName || '';\n    _instance.topK = _instance.topK || 0;\n    _instance.similarityThreshold = _instance.similarityThreshold || 0;\n    _instance.vectorSimilarityWeight = _instance.vectorSimilarityWeight || 0;\n    _instance.rerankModelCcaiServiceName =\n      _instance.rerankModelCcaiServiceName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagVariantConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.chatAssistantLlmCcaiServiceName = _reader.readString();\n          break;\n        case 2:\n          _instance.topK = _reader.readInt32();\n          break;\n        case 3:\n          _instance.similarityThreshold = _reader.readDouble();\n          break;\n        case 4:\n          _instance.vectorSimilarityWeight = _reader.readDouble();\n          break;\n        case 5:\n          _instance.rerankModelCcaiServiceName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagVariantConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagVariantConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.chatAssistantLlmCcaiServiceName) {\n      _writer.writeString(1, _instance.chatAssistantLlmCcaiServiceName);\n    }\n    if (_instance.topK) {\n      _writer.writeInt32(2, _instance.topK);\n    }\n    if (_instance.similarityThreshold) {\n      _writer.writeDouble(3, _instance.similarityThreshold);\n    }\n    if (_instance.vectorSimilarityWeight) {\n      _writer.writeDouble(4, _instance.vectorSimilarityWeight);\n    }\n    if (_instance.rerankModelCcaiServiceName) {\n      _writer.writeString(5, _instance.rerankModelCcaiServiceName);\n    }\n  }\n\n  private _chatAssistantLlmCcaiServiceName: string;\n  private _topK: number;\n  private _similarityThreshold: number;\n  private _vectorSimilarityWeight: number;\n  private _rerankModelCcaiServiceName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagVariantConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagVariantConfig.AsObject>) {\n    _value = _value || {};\n    this.chatAssistantLlmCcaiServiceName =\n      _value.chatAssistantLlmCcaiServiceName;\n    this.topK = _value.topK;\n    this.similarityThreshold = _value.similarityThreshold;\n    this.vectorSimilarityWeight = _value.vectorSimilarityWeight;\n    this.rerankModelCcaiServiceName = _value.rerankModelCcaiServiceName;\n    RagVariantConfig.refineValues(this);\n  }\n  get chatAssistantLlmCcaiServiceName(): string {\n    return this._chatAssistantLlmCcaiServiceName;\n  }\n  set chatAssistantLlmCcaiServiceName(value: string) {\n    this._chatAssistantLlmCcaiServiceName = value;\n  }\n  get topK(): number {\n    return this._topK;\n  }\n  set topK(value: number) {\n    this._topK = value;\n  }\n  get similarityThreshold(): number {\n    return this._similarityThreshold;\n  }\n  set similarityThreshold(value: number) {\n    this._similarityThreshold = value;\n  }\n  get vectorSimilarityWeight(): number {\n    return this._vectorSimilarityWeight;\n  }\n  set vectorSimilarityWeight(value: number) {\n    this._vectorSimilarityWeight = value;\n  }\n  get rerankModelCcaiServiceName(): string {\n    return this._rerankModelCcaiServiceName;\n  }\n  set rerankModelCcaiServiceName(value: string) {\n    this._rerankModelCcaiServiceName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagVariantConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagVariantConfig.AsObject {\n    return {\n      chatAssistantLlmCcaiServiceName: this.chatAssistantLlmCcaiServiceName,\n      topK: this.topK,\n      similarityThreshold: this.similarityThreshold,\n      vectorSimilarityWeight: this.vectorSimilarityWeight,\n      rerankModelCcaiServiceName: this.rerankModelCcaiServiceName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagVariantConfig.AsProtobufJSON {\n    return {\n      chatAssistantLlmCcaiServiceName: this.chatAssistantLlmCcaiServiceName,\n      topK: this.topK,\n      similarityThreshold: this.similarityThreshold,\n      vectorSimilarityWeight: this.vectorSimilarityWeight,\n      rerankModelCcaiServiceName: this.rerankModelCcaiServiceName\n    };\n  }\n}\nexport module RagVariantConfig {\n  /**\n   * Standard JavaScript object representation for RagVariantConfig\n   */\n  export interface AsObject {\n    chatAssistantLlmCcaiServiceName: string;\n    topK: number;\n    similarityThreshold: number;\n    vectorSimilarityWeight: number;\n    rerankModelCcaiServiceName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagVariantConfig\n   */\n  export interface AsProtobufJSON {\n    chatAssistantLlmCcaiServiceName: string;\n    topK: number;\n    similarityThreshold: number;\n    vectorSimilarityWeight: number;\n    rerankModelCcaiServiceName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbVariant\n */\nexport class LlmEvaluationAbVariant implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbVariant';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbVariant();\n    LlmEvaluationAbVariant.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbVariant) {\n    _instance.variantId = _instance.variantId || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.ccaiServiceNames = _instance.ccaiServiceNames || [];\n    _instance.trafficWeight = _instance.trafficWeight || 0;\n    _instance.isControl = _instance.isControl || false;\n    _instance.modelName = _instance.modelName || '';\n    _instance.promptVersion = _instance.promptVersion || '';\n    _instance.config = _instance.config || undefined;\n    _instance.ragVariantConfig = _instance.ragVariantConfig || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbVariant,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.variantId = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          (_instance.ccaiServiceNames = _instance.ccaiServiceNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.trafficWeight = _reader.readDouble();\n          break;\n        case 5:\n          _instance.isControl = _reader.readBool();\n          break;\n        case 6:\n          _instance.modelName = _reader.readString();\n          break;\n        case 7:\n          _instance.promptVersion = _reader.readString();\n          break;\n        case 8:\n          _instance.config = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.config,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.ragVariantConfig = new RagVariantConfig();\n          _reader.readMessage(\n            _instance.ragVariantConfig,\n            RagVariantConfig.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbVariant.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbVariant,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.variantId) {\n      _writer.writeString(1, _instance.variantId);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.ccaiServiceNames && _instance.ccaiServiceNames.length) {\n      _writer.writeRepeatedString(3, _instance.ccaiServiceNames);\n    }\n    if (_instance.trafficWeight) {\n      _writer.writeDouble(4, _instance.trafficWeight);\n    }\n    if (_instance.isControl) {\n      _writer.writeBool(5, _instance.isControl);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(6, _instance.modelName);\n    }\n    if (_instance.promptVersion) {\n      _writer.writeString(7, _instance.promptVersion);\n    }\n    if (_instance.config) {\n      _writer.writeMessage(\n        8,\n        _instance.config as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ragVariantConfig) {\n      _writer.writeMessage(\n        9,\n        _instance.ragVariantConfig as any,\n        RagVariantConfig.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _variantId: string;\n  private _displayName: string;\n  private _ccaiServiceNames: string[];\n  private _trafficWeight: number;\n  private _isControl: boolean;\n  private _modelName: string;\n  private _promptVersion: string;\n  private _config?: googleProtobuf008.Struct;\n  private _ragVariantConfig?: RagVariantConfig;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbVariant to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationAbVariant.AsObject>) {\n    _value = _value || {};\n    this.variantId = _value.variantId;\n    this.displayName = _value.displayName;\n    this.ccaiServiceNames = (_value.ccaiServiceNames || []).slice();\n    this.trafficWeight = _value.trafficWeight;\n    this.isControl = _value.isControl;\n    this.modelName = _value.modelName;\n    this.promptVersion = _value.promptVersion;\n    this.config = _value.config\n      ? new googleProtobuf008.Struct(_value.config)\n      : undefined;\n    this.ragVariantConfig = _value.ragVariantConfig\n      ? new RagVariantConfig(_value.ragVariantConfig)\n      : undefined;\n    LlmEvaluationAbVariant.refineValues(this);\n  }\n  get variantId(): string {\n    return this._variantId;\n  }\n  set variantId(value: string) {\n    this._variantId = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get ccaiServiceNames(): string[] {\n    return this._ccaiServiceNames;\n  }\n  set ccaiServiceNames(value: string[]) {\n    this._ccaiServiceNames = value;\n  }\n  get trafficWeight(): number {\n    return this._trafficWeight;\n  }\n  set trafficWeight(value: number) {\n    this._trafficWeight = value;\n  }\n  get isControl(): boolean {\n    return this._isControl;\n  }\n  set isControl(value: boolean) {\n    this._isControl = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get promptVersion(): string {\n    return this._promptVersion;\n  }\n  set promptVersion(value: string) {\n    this._promptVersion = value;\n  }\n  get config(): googleProtobuf008.Struct | undefined {\n    return this._config;\n  }\n  set config(value: googleProtobuf008.Struct | undefined) {\n    this._config = value;\n  }\n  get ragVariantConfig(): RagVariantConfig | undefined {\n    return this._ragVariantConfig;\n  }\n  set ragVariantConfig(value: RagVariantConfig | undefined) {\n    this._ragVariantConfig = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbVariant.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbVariant.AsObject {\n    return {\n      variantId: this.variantId,\n      displayName: this.displayName,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      trafficWeight: this.trafficWeight,\n      isControl: this.isControl,\n      modelName: this.modelName,\n      promptVersion: this.promptVersion,\n      config: this.config ? this.config.toObject() : undefined,\n      ragVariantConfig: this.ragVariantConfig\n        ? this.ragVariantConfig.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbVariant.AsProtobufJSON {\n    return {\n      variantId: this.variantId,\n      displayName: this.displayName,\n      ccaiServiceNames: (this.ccaiServiceNames || []).slice(),\n      trafficWeight: this.trafficWeight,\n      isControl: this.isControl,\n      modelName: this.modelName,\n      promptVersion: this.promptVersion,\n      config: this.config ? this.config.toProtobufJSON(options) : null,\n      ragVariantConfig: this.ragVariantConfig\n        ? this.ragVariantConfig.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmEvaluationAbVariant {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbVariant\n   */\n  export interface AsObject {\n    variantId: string;\n    displayName: string;\n    ccaiServiceNames: string[];\n    trafficWeight: number;\n    isControl: boolean;\n    modelName: string;\n    promptVersion: string;\n    config?: googleProtobuf008.Struct.AsObject;\n    ragVariantConfig?: RagVariantConfig.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbVariant\n   */\n  export interface AsProtobufJSON {\n    variantId: string;\n    displayName: string;\n    ccaiServiceNames: string[];\n    trafficWeight: number;\n    isControl: boolean;\n    modelName: string;\n    promptVersion: string;\n    config: googleProtobuf008.Struct.AsProtobufJSON | null;\n    ragVariantConfig: RagVariantConfig.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbExperiment\n */\nexport class LlmEvaluationAbExperiment implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbExperiment';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbExperiment();\n    LlmEvaluationAbExperiment.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbExperiment) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.status = _instance.status || 0;\n    _instance.variants = _instance.variants || [];\n    _instance.trafficConfig = _instance.trafficConfig || undefined;\n    _instance.startedAt = _instance.startedAt || undefined;\n    _instance.stoppedAt = _instance.stoppedAt || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationAbRolloutDecisionName =\n      _instance.llmEvaluationAbRolloutDecisionName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbExperiment,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.status = _reader.readEnum();\n          break;\n        case 5:\n          const messageInitializer5 = new LlmEvaluationAbVariant();\n          _reader.readMessage(\n            messageInitializer5,\n            LlmEvaluationAbVariant.deserializeBinaryFromReader\n          );\n          (_instance.variants = _instance.variants || []).push(\n            messageInitializer5\n          );\n          break;\n        case 6:\n          _instance.trafficConfig = new LlmEvaluationAbTrafficConfig();\n          _reader.readMessage(\n            _instance.trafficConfig,\n            LlmEvaluationAbTrafficConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.startedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.stoppedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.stoppedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 11:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 13:\n          _instance.parent = _reader.readString();\n          break;\n        case 14:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 15:\n          _instance.llmEvaluationAbRolloutDecisionName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbExperiment.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbExperiment,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(4, _instance.status);\n    }\n    if (_instance.variants && _instance.variants.length) {\n      _writer.writeRepeatedMessage(\n        5,\n        _instance.variants as any,\n        LlmEvaluationAbVariant.serializeBinaryToWriter\n      );\n    }\n    if (_instance.trafficConfig) {\n      _writer.writeMessage(\n        6,\n        _instance.trafficConfig as any,\n        LlmEvaluationAbTrafficConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.startedAt) {\n      _writer.writeMessage(\n        7,\n        _instance.startedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.stoppedAt) {\n      _writer.writeMessage(\n        8,\n        _instance.stoppedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        9,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(10, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        11,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(12, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(13, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(14, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationAbRolloutDecisionName) {\n      _writer.writeString(15, _instance.llmEvaluationAbRolloutDecisionName);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _status: LlmEvaluationAbExperimentStatus;\n  private _variants?: LlmEvaluationAbVariant[];\n  private _trafficConfig?: LlmEvaluationAbTrafficConfig;\n  private _startedAt?: googleProtobuf005.Timestamp;\n  private _stoppedAt?: googleProtobuf005.Timestamp;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n  private _llmEvaluationAbRolloutDecisionName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbExperiment to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationAbExperiment.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.status = _value.status;\n    this.variants = (_value.variants || []).map(\n      m => new LlmEvaluationAbVariant(m)\n    );\n    this.trafficConfig = _value.trafficConfig\n      ? new LlmEvaluationAbTrafficConfig(_value.trafficConfig)\n      : undefined;\n    this.startedAt = _value.startedAt\n      ? new googleProtobuf005.Timestamp(_value.startedAt)\n      : undefined;\n    this.stoppedAt = _value.stoppedAt\n      ? new googleProtobuf005.Timestamp(_value.stoppedAt)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationAbRolloutDecisionName =\n      _value.llmEvaluationAbRolloutDecisionName;\n    LlmEvaluationAbExperiment.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get status(): LlmEvaluationAbExperimentStatus {\n    return this._status;\n  }\n  set status(value: LlmEvaluationAbExperimentStatus) {\n    this._status = value;\n  }\n  get variants(): LlmEvaluationAbVariant[] | undefined {\n    return this._variants;\n  }\n  set variants(value: LlmEvaluationAbVariant[] | undefined) {\n    this._variants = value;\n  }\n  get trafficConfig(): LlmEvaluationAbTrafficConfig | undefined {\n    return this._trafficConfig;\n  }\n  set trafficConfig(value: LlmEvaluationAbTrafficConfig | undefined) {\n    this._trafficConfig = value;\n  }\n  get startedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._startedAt;\n  }\n  set startedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._startedAt = value;\n  }\n  get stoppedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._stoppedAt;\n  }\n  set stoppedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._stoppedAt = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationAbRolloutDecisionName(): string {\n    return this._llmEvaluationAbRolloutDecisionName;\n  }\n  set llmEvaluationAbRolloutDecisionName(value: string) {\n    this._llmEvaluationAbRolloutDecisionName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbExperiment.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbExperiment.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      status: this.status,\n      variants: (this.variants || []).map(m => m.toObject()),\n      trafficConfig: this.trafficConfig\n        ? this.trafficConfig.toObject()\n        : undefined,\n      startedAt: this.startedAt ? this.startedAt.toObject() : undefined,\n      stoppedAt: this.stoppedAt ? this.stoppedAt.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationAbRolloutDecisionName: this\n        .llmEvaluationAbRolloutDecisionName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbExperiment.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      status:\n        LlmEvaluationAbExperimentStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      variants: (this.variants || []).map(m => m.toProtobufJSON(options)),\n      trafficConfig: this.trafficConfig\n        ? this.trafficConfig.toProtobufJSON(options)\n        : null,\n      startedAt: this.startedAt ? this.startedAt.toProtobufJSON(options) : null,\n      stoppedAt: this.stoppedAt ? this.stoppedAt.toProtobufJSON(options) : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      llmEvaluationAbRolloutDecisionName: this\n        .llmEvaluationAbRolloutDecisionName\n    };\n  }\n}\nexport module LlmEvaluationAbExperiment {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbExperiment\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    status: LlmEvaluationAbExperimentStatus;\n    variants?: LlmEvaluationAbVariant.AsObject[];\n    trafficConfig?: LlmEvaluationAbTrafficConfig.AsObject;\n    startedAt?: googleProtobuf005.Timestamp.AsObject;\n    stoppedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n    llmEvaluationAbRolloutDecisionName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbExperiment\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    status: string;\n    variants: LlmEvaluationAbVariant.AsProtobufJSON[] | null;\n    trafficConfig: LlmEvaluationAbTrafficConfig.AsProtobufJSON | null;\n    startedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    stoppedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n    llmEvaluationAbRolloutDecisionName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbVariantResult\n */\nexport class LlmEvaluationAbVariantResult implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbVariantResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbVariantResult();\n    LlmEvaluationAbVariantResult.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbVariantResult) {\n    _instance.variantId = _instance.variantId || '';\n    _instance.sessionCount = _instance.sessionCount || '0';\n    _instance.telemetry = _instance.telemetry || undefined;\n    _instance.derivedMetrics = _instance.derivedMetrics || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbVariantResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.variantId = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionCount = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.telemetry = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.telemetry,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.derivedMetrics = new googleProtobuf008.Struct();\n          _reader.readMessage(\n            _instance.derivedMetrics,\n            googleProtobuf008.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbVariantResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbVariantResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.variantId) {\n      _writer.writeString(1, _instance.variantId);\n    }\n    if (_instance.sessionCount) {\n      _writer.writeInt64String(2, _instance.sessionCount);\n    }\n    if (_instance.telemetry) {\n      _writer.writeMessage(\n        3,\n        _instance.telemetry as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.derivedMetrics) {\n      _writer.writeMessage(\n        4,\n        _instance.derivedMetrics as any,\n        googleProtobuf008.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _variantId: string;\n  private _sessionCount: string;\n  private _telemetry?: googleProtobuf008.Struct;\n  private _derivedMetrics?: googleProtobuf008.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbVariantResult to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAbVariantResult.AsObject>\n  ) {\n    _value = _value || {};\n    this.variantId = _value.variantId;\n    this.sessionCount = _value.sessionCount;\n    this.telemetry = _value.telemetry\n      ? new googleProtobuf008.Struct(_value.telemetry)\n      : undefined;\n    this.derivedMetrics = _value.derivedMetrics\n      ? new googleProtobuf008.Struct(_value.derivedMetrics)\n      : undefined;\n    LlmEvaluationAbVariantResult.refineValues(this);\n  }\n  get variantId(): string {\n    return this._variantId;\n  }\n  set variantId(value: string) {\n    this._variantId = value;\n  }\n  get sessionCount(): string {\n    return this._sessionCount;\n  }\n  set sessionCount(value: string) {\n    this._sessionCount = value;\n  }\n  get telemetry(): googleProtobuf008.Struct | undefined {\n    return this._telemetry;\n  }\n  set telemetry(value: googleProtobuf008.Struct | undefined) {\n    this._telemetry = value;\n  }\n  get derivedMetrics(): googleProtobuf008.Struct | undefined {\n    return this._derivedMetrics;\n  }\n  set derivedMetrics(value: googleProtobuf008.Struct | undefined) {\n    this._derivedMetrics = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbVariantResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbVariantResult.AsObject {\n    return {\n      variantId: this.variantId,\n      sessionCount: this.sessionCount,\n      telemetry: this.telemetry ? this.telemetry.toObject() : undefined,\n      derivedMetrics: this.derivedMetrics\n        ? this.derivedMetrics.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbVariantResult.AsProtobufJSON {\n    return {\n      variantId: this.variantId,\n      sessionCount: this.sessionCount,\n      telemetry: this.telemetry ? this.telemetry.toProtobufJSON(options) : null,\n      derivedMetrics: this.derivedMetrics\n        ? this.derivedMetrics.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmEvaluationAbVariantResult {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbVariantResult\n   */\n  export interface AsObject {\n    variantId: string;\n    sessionCount: string;\n    telemetry?: googleProtobuf008.Struct.AsObject;\n    derivedMetrics?: googleProtobuf008.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbVariantResult\n   */\n  export interface AsProtobufJSON {\n    variantId: string;\n    sessionCount: string;\n    telemetry: googleProtobuf008.Struct.AsProtobufJSON | null;\n    derivedMetrics: googleProtobuf008.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationAbExperimentRequest\n */\nexport class CreateLlmEvaluationAbExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationAbExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationAbExperimentRequest();\n    CreateLlmEvaluationAbExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateLlmEvaluationAbExperimentRequest) {\n    _instance.llmEvaluationAbExperiment =\n      _instance.llmEvaluationAbExperiment || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationAbExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationAbExperiment = new LlmEvaluationAbExperiment();\n          _reader.readMessage(\n            _instance.llmEvaluationAbExperiment,\n            LlmEvaluationAbExperiment.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationAbExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationAbExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationAbExperiment) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationAbExperiment as any,\n        LlmEvaluationAbExperiment.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationAbExperiment?: LlmEvaluationAbExperiment;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationAbExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateLlmEvaluationAbExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAbExperiment = _value.llmEvaluationAbExperiment\n      ? new LlmEvaluationAbExperiment(_value.llmEvaluationAbExperiment)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CreateLlmEvaluationAbExperimentRequest.refineValues(this);\n  }\n  get llmEvaluationAbExperiment(): LlmEvaluationAbExperiment | undefined {\n    return this._llmEvaluationAbExperiment;\n  }\n  set llmEvaluationAbExperiment(value: LlmEvaluationAbExperiment | undefined) {\n    this._llmEvaluationAbExperiment = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationAbExperimentRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationAbExperimentRequest.AsObject {\n    return {\n      llmEvaluationAbExperiment: this.llmEvaluationAbExperiment\n        ? this.llmEvaluationAbExperiment.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationAbExperimentRequest.AsProtobufJSON {\n    return {\n      llmEvaluationAbExperiment: this.llmEvaluationAbExperiment\n        ? this.llmEvaluationAbExperiment.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CreateLlmEvaluationAbExperimentRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationAbExperimentRequest\n   */\n  export interface AsObject {\n    llmEvaluationAbExperiment?: LlmEvaluationAbExperiment.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationAbExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAbExperiment: LlmEvaluationAbExperiment.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationAbExperimentRequest\n */\nexport class GetLlmEvaluationAbExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationAbExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationAbExperimentRequest();\n    GetLlmEvaluationAbExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationAbExperimentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationAbExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationAbExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationAbExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationAbExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationAbExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationAbExperimentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationAbExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationAbExperimentRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationAbExperimentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationAbExperimentRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationAbExperimentRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationAbExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbExperimentFilter\n */\nexport class LlmEvaluationAbExperimentFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbExperimentFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbExperimentFilter();\n    LlmEvaluationAbExperimentFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbExperimentFilter) {\n    _instance.displayName = _instance.displayName || '';\n    _instance.status = _instance.status || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbExperimentFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        case 2:\n          _instance.status = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbExperimentFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbExperimentFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(2, _instance.status);\n    }\n  }\n\n  private _displayName: string;\n  private _status: LlmEvaluationAbExperimentStatus;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbExperimentFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAbExperimentFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    this.status = _value.status;\n    LlmEvaluationAbExperimentFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get status(): LlmEvaluationAbExperimentStatus {\n    return this._status;\n  }\n  set status(value: LlmEvaluationAbExperimentStatus) {\n    this._status = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbExperimentFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbExperimentFilter.AsObject {\n    return {\n      displayName: this.displayName,\n      status: this.status\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbExperimentFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName,\n      status:\n        LlmEvaluationAbExperimentStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ]\n    };\n  }\n}\nexport module LlmEvaluationAbExperimentFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbExperimentFilter\n   */\n  export interface AsObject {\n    displayName: string;\n    status: LlmEvaluationAbExperimentStatus;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbExperimentFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n    status: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationAbExperimentsRequest\n */\nexport class ListLlmEvaluationAbExperimentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationAbExperimentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationAbExperimentsRequest();\n    ListLlmEvaluationAbExperimentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationAbExperimentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationAbExperimentFilter =\n      _instance.llmEvaluationAbExperimentFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationAbExperimentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationAbExperimentFilter = new LlmEvaluationAbExperimentFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationAbExperimentFilter,\n            LlmEvaluationAbExperimentFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationAbExperimentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationAbExperimentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationAbExperimentFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationAbExperimentFilter as any,\n        LlmEvaluationAbExperimentFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationAbExperimentFilter?: LlmEvaluationAbExperimentFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationAbExperimentsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationAbExperimentsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationAbExperimentFilter = _value.llmEvaluationAbExperimentFilter\n      ? new LlmEvaluationAbExperimentFilter(\n          _value.llmEvaluationAbExperimentFilter\n        )\n      : undefined;\n    ListLlmEvaluationAbExperimentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationAbExperimentFilter():\n    | LlmEvaluationAbExperimentFilter\n    | undefined {\n    return this._llmEvaluationAbExperimentFilter;\n  }\n  set llmEvaluationAbExperimentFilter(\n    value: LlmEvaluationAbExperimentFilter | undefined\n  ) {\n    this._llmEvaluationAbExperimentFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationAbExperimentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationAbExperimentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationAbExperimentFilter: this.llmEvaluationAbExperimentFilter\n        ? this.llmEvaluationAbExperimentFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationAbExperimentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationAbExperimentFilter: this.llmEvaluationAbExperimentFilter\n        ? this.llmEvaluationAbExperimentFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationAbExperimentsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationAbExperimentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationAbExperimentFilter?: LlmEvaluationAbExperimentFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationAbExperimentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationAbExperimentFilter: LlmEvaluationAbExperimentFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationAbExperimentsResponse\n */\nexport class ListLlmEvaluationAbExperimentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationAbExperimentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationAbExperimentsResponse();\n    ListLlmEvaluationAbExperimentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationAbExperimentsResponse) {\n    _instance.llmEvaluationAbExperiments =\n      _instance.llmEvaluationAbExperiments || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationAbExperimentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationAbExperiment();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationAbExperiment.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationAbExperiments =\n            _instance.llmEvaluationAbExperiments || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationAbExperimentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationAbExperimentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationAbExperiments &&\n      _instance.llmEvaluationAbExperiments.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationAbExperiments as any,\n        LlmEvaluationAbExperiment.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationAbExperiments?: LlmEvaluationAbExperiment[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationAbExperimentsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationAbExperimentsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAbExperiments = (\n      _value.llmEvaluationAbExperiments || []\n    ).map(m => new LlmEvaluationAbExperiment(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationAbExperimentsResponse.refineValues(this);\n  }\n  get llmEvaluationAbExperiments(): LlmEvaluationAbExperiment[] | undefined {\n    return this._llmEvaluationAbExperiments;\n  }\n  set llmEvaluationAbExperiments(\n    value: LlmEvaluationAbExperiment[] | undefined\n  ) {\n    this._llmEvaluationAbExperiments = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationAbExperimentsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationAbExperimentsResponse.AsObject {\n    return {\n      llmEvaluationAbExperiments: (\n        this.llmEvaluationAbExperiments || []\n      ).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationAbExperimentsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationAbExperiments: (\n        this.llmEvaluationAbExperiments || []\n      ).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationAbExperimentsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationAbExperimentsResponse\n   */\n  export interface AsObject {\n    llmEvaluationAbExperiments?: LlmEvaluationAbExperiment.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationAbExperimentsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAbExperiments:\n      | LlmEvaluationAbExperiment.AsProtobufJSON[]\n      | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationAbExperimentRequest\n */\nexport class UpdateLlmEvaluationAbExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationAbExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationAbExperimentRequest();\n    UpdateLlmEvaluationAbExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationAbExperimentRequest) {\n    _instance.llmEvaluationAbExperiment =\n      _instance.llmEvaluationAbExperiment || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationAbExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationAbExperiment = new LlmEvaluationAbExperiment();\n          _reader.readMessage(\n            _instance.llmEvaluationAbExperiment,\n            LlmEvaluationAbExperiment.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationAbExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationAbExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationAbExperiment) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationAbExperiment as any,\n        LlmEvaluationAbExperiment.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationAbExperiment?: LlmEvaluationAbExperiment;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationAbExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationAbExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAbExperiment = _value.llmEvaluationAbExperiment\n      ? new LlmEvaluationAbExperiment(_value.llmEvaluationAbExperiment)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationAbExperimentRequest.refineValues(this);\n  }\n  get llmEvaluationAbExperiment(): LlmEvaluationAbExperiment | undefined {\n    return this._llmEvaluationAbExperiment;\n  }\n  set llmEvaluationAbExperiment(value: LlmEvaluationAbExperiment | undefined) {\n    this._llmEvaluationAbExperiment = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationAbExperimentRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationAbExperimentRequest.AsObject {\n    return {\n      llmEvaluationAbExperiment: this.llmEvaluationAbExperiment\n        ? this.llmEvaluationAbExperiment.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationAbExperimentRequest.AsProtobufJSON {\n    return {\n      llmEvaluationAbExperiment: this.llmEvaluationAbExperiment\n        ? this.llmEvaluationAbExperiment.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationAbExperimentRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationAbExperimentRequest\n   */\n  export interface AsObject {\n    llmEvaluationAbExperiment?: LlmEvaluationAbExperiment.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationAbExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAbExperiment: LlmEvaluationAbExperiment.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationAbExperimentRequest\n */\nexport class DeleteLlmEvaluationAbExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationAbExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationAbExperimentRequest();\n    DeleteLlmEvaluationAbExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationAbExperimentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationAbExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationAbExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationAbExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationAbExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationAbExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationAbExperimentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationAbExperimentRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationAbExperimentRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationAbExperimentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationAbExperimentRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationAbExperimentRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationAbExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StartLlmEvaluationAbExperimentRequest\n */\nexport class StartLlmEvaluationAbExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.StartLlmEvaluationAbExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StartLlmEvaluationAbExperimentRequest();\n    StartLlmEvaluationAbExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StartLlmEvaluationAbExperimentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StartLlmEvaluationAbExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StartLlmEvaluationAbExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StartLlmEvaluationAbExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StartLlmEvaluationAbExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<StartLlmEvaluationAbExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    StartLlmEvaluationAbExperimentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StartLlmEvaluationAbExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StartLlmEvaluationAbExperimentRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StartLlmEvaluationAbExperimentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module StartLlmEvaluationAbExperimentRequest {\n  /**\n   * Standard JavaScript object representation for StartLlmEvaluationAbExperimentRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for StartLlmEvaluationAbExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StopLlmEvaluationAbExperimentRequest\n */\nexport class StopLlmEvaluationAbExperimentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.StopLlmEvaluationAbExperimentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StopLlmEvaluationAbExperimentRequest();\n    StopLlmEvaluationAbExperimentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StopLlmEvaluationAbExperimentRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StopLlmEvaluationAbExperimentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StopLlmEvaluationAbExperimentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StopLlmEvaluationAbExperimentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StopLlmEvaluationAbExperimentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<StopLlmEvaluationAbExperimentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    StopLlmEvaluationAbExperimentRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StopLlmEvaluationAbExperimentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StopLlmEvaluationAbExperimentRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StopLlmEvaluationAbExperimentRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module StopLlmEvaluationAbExperimentRequest {\n  /**\n   * Standard JavaScript object representation for StopLlmEvaluationAbExperimentRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for StopLlmEvaluationAbExperimentRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationAbExperimentResultsRequest\n */\nexport class GetLlmEvaluationAbExperimentResultsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationAbExperimentResultsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationAbExperimentResultsRequest();\n    GetLlmEvaluationAbExperimentResultsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationAbExperimentResultsRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationAbExperimentResultsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationAbExperimentResultsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationAbExperimentResultsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationAbExperimentResultsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      GetLlmEvaluationAbExperimentResultsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationAbExperimentResultsRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationAbExperimentResultsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationAbExperimentResultsRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationAbExperimentResultsRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationAbExperimentResultsRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationAbExperimentResultsRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationAbExperimentResultsRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationAbExperimentResultsResponse\n */\nexport class GetLlmEvaluationAbExperimentResultsResponse\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationAbExperimentResultsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationAbExperimentResultsResponse();\n    GetLlmEvaluationAbExperimentResultsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationAbExperimentResultsResponse) {\n    _instance.llmEvaluationAbExperimentName =\n      _instance.llmEvaluationAbExperimentName || '';\n    _instance.variantResults = _instance.variantResults || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationAbExperimentResultsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationAbExperimentName = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new LlmEvaluationAbVariantResult();\n          _reader.readMessage(\n            messageInitializer2,\n            LlmEvaluationAbVariantResult.deserializeBinaryFromReader\n          );\n          (_instance.variantResults = _instance.variantResults || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationAbExperimentResultsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationAbExperimentResultsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationAbExperimentName) {\n      _writer.writeString(1, _instance.llmEvaluationAbExperimentName);\n    }\n    if (_instance.variantResults && _instance.variantResults.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.variantResults as any,\n        LlmEvaluationAbVariantResult.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmEvaluationAbExperimentName: string;\n  private _variantResults?: LlmEvaluationAbVariantResult[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationAbExperimentResultsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      GetLlmEvaluationAbExperimentResultsResponse.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAbExperimentName = _value.llmEvaluationAbExperimentName;\n    this.variantResults = (_value.variantResults || []).map(\n      m => new LlmEvaluationAbVariantResult(m)\n    );\n    GetLlmEvaluationAbExperimentResultsResponse.refineValues(this);\n  }\n  get llmEvaluationAbExperimentName(): string {\n    return this._llmEvaluationAbExperimentName;\n  }\n  set llmEvaluationAbExperimentName(value: string) {\n    this._llmEvaluationAbExperimentName = value;\n  }\n  get variantResults(): LlmEvaluationAbVariantResult[] | undefined {\n    return this._variantResults;\n  }\n  set variantResults(value: LlmEvaluationAbVariantResult[] | undefined) {\n    this._variantResults = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationAbExperimentResultsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationAbExperimentResultsResponse.AsObject {\n    return {\n      llmEvaluationAbExperimentName: this.llmEvaluationAbExperimentName,\n      variantResults: (this.variantResults || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationAbExperimentResultsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationAbExperimentName: this.llmEvaluationAbExperimentName,\n      variantResults: (this.variantResults || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module GetLlmEvaluationAbExperimentResultsResponse {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationAbExperimentResultsResponse\n   */\n  export interface AsObject {\n    llmEvaluationAbExperimentName: string;\n    variantResults?: LlmEvaluationAbVariantResult.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationAbExperimentResultsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAbExperimentName: string;\n    variantResults: LlmEvaluationAbVariantResult.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbRolloutRecommendation\n */\nexport class LlmEvaluationAbRolloutRecommendation implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbRolloutRecommendation';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbRolloutRecommendation();\n    LlmEvaluationAbRolloutRecommendation.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbRolloutRecommendation) {\n    _instance.optimizeMetric = _instance.optimizeMetric || 0;\n    _instance.winnerVariantId = _instance.winnerVariantId || '';\n    _instance.controlVariantId = _instance.controlVariantId || '';\n    _instance.pValue = _instance.pValue || 0;\n    _instance.effectSize = _instance.effectSize || 0;\n    _instance.isSignificant = _instance.isSignificant || false;\n    _instance.sessionsPerVariant = _instance.sessionsPerVariant || {};\n    _instance.needsMoreData = _instance.needsMoreData || false;\n    _instance.reason = _instance.reason || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbRolloutRecommendation,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.optimizeMetric = _reader.readEnum();\n          break;\n        case 2:\n          _instance.winnerVariantId = _reader.readString();\n          break;\n        case 3:\n          _instance.controlVariantId = _reader.readString();\n          break;\n        case 4:\n          _instance.pValue = _reader.readDouble();\n          break;\n        case 5:\n          _instance.effectSize = _reader.readDouble();\n          break;\n        case 6:\n          _instance.isSignificant = _reader.readBool();\n          break;\n        case 7:\n          const msg_7 = {} as any;\n          _reader.readMessage(\n            msg_7,\n            LlmEvaluationAbRolloutRecommendation.SessionsPerVariantEntry\n              .deserializeBinaryFromReader\n          );\n          _instance.sessionsPerVariant = _instance.sessionsPerVariant || {};\n          _instance.sessionsPerVariant[msg_7.key] = msg_7.value;\n          break;\n        case 8:\n          _instance.needsMoreData = _reader.readBool();\n          break;\n        case 9:\n          _instance.reason = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbRolloutRecommendation.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbRolloutRecommendation,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.optimizeMetric) {\n      _writer.writeEnum(1, _instance.optimizeMetric);\n    }\n    if (_instance.winnerVariantId) {\n      _writer.writeString(2, _instance.winnerVariantId);\n    }\n    if (_instance.controlVariantId) {\n      _writer.writeString(3, _instance.controlVariantId);\n    }\n    if (_instance.pValue) {\n      _writer.writeDouble(4, _instance.pValue);\n    }\n    if (_instance.effectSize) {\n      _writer.writeDouble(5, _instance.effectSize);\n    }\n    if (_instance.isSignificant) {\n      _writer.writeBool(6, _instance.isSignificant);\n    }\n    if (!!_instance.sessionsPerVariant) {\n      const keys_7 = Object.keys(_instance.sessionsPerVariant as any);\n\n      if (keys_7.length) {\n        const repeated_7 = keys_7\n          .map(key => ({\n            key: key,\n            value: (_instance.sessionsPerVariant as any)[key]\n          }))\n          .reduce((r, v) => [...r, v], [] as any[]);\n\n        _writer.writeRepeatedMessage(\n          7,\n          repeated_7,\n          LlmEvaluationAbRolloutRecommendation.SessionsPerVariantEntry\n            .serializeBinaryToWriter\n        );\n      }\n    }\n    if (_instance.needsMoreData) {\n      _writer.writeBool(8, _instance.needsMoreData);\n    }\n    if (_instance.reason) {\n      _writer.writeString(9, _instance.reason);\n    }\n  }\n\n  private _optimizeMetric: LlmEvaluationAbOptimizeMetric;\n  private _winnerVariantId: string;\n  private _controlVariantId: string;\n  private _pValue: number;\n  private _effectSize: number;\n  private _isSignificant: boolean;\n  private _sessionsPerVariant: { [prop: string]: string };\n  private _needsMoreData: boolean;\n  private _reason: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbRolloutRecommendation to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAbRolloutRecommendation.AsObject>\n  ) {\n    _value = _value || {};\n    this.optimizeMetric = _value.optimizeMetric;\n    this.winnerVariantId = _value.winnerVariantId;\n    this.controlVariantId = _value.controlVariantId;\n    this.pValue = _value.pValue;\n    this.effectSize = _value.effectSize;\n    this.isSignificant = _value.isSignificant;\n    (this.sessionsPerVariant = _value!.sessionsPerVariant\n      ? Object.keys(_value!.sessionsPerVariant).reduce(\n          (r, k) => ({ ...r, [k]: _value!.sessionsPerVariant![k] }),\n          {}\n        )\n      : {}),\n      (this.needsMoreData = _value.needsMoreData);\n    this.reason = _value.reason;\n    LlmEvaluationAbRolloutRecommendation.refineValues(this);\n  }\n  get optimizeMetric(): LlmEvaluationAbOptimizeMetric {\n    return this._optimizeMetric;\n  }\n  set optimizeMetric(value: LlmEvaluationAbOptimizeMetric) {\n    this._optimizeMetric = value;\n  }\n  get winnerVariantId(): string {\n    return this._winnerVariantId;\n  }\n  set winnerVariantId(value: string) {\n    this._winnerVariantId = value;\n  }\n  get controlVariantId(): string {\n    return this._controlVariantId;\n  }\n  set controlVariantId(value: string) {\n    this._controlVariantId = value;\n  }\n  get pValue(): number {\n    return this._pValue;\n  }\n  set pValue(value: number) {\n    this._pValue = value;\n  }\n  get effectSize(): number {\n    return this._effectSize;\n  }\n  set effectSize(value: number) {\n    this._effectSize = value;\n  }\n  get isSignificant(): boolean {\n    return this._isSignificant;\n  }\n  set isSignificant(value: boolean) {\n    this._isSignificant = value;\n  }\n  get sessionsPerVariant(): { [prop: string]: string } {\n    return this._sessionsPerVariant;\n  }\n  set sessionsPerVariant(value: { [prop: string]: string }) {\n    this._sessionsPerVariant = value;\n  }\n  get needsMoreData(): boolean {\n    return this._needsMoreData;\n  }\n  set needsMoreData(value: boolean) {\n    this._needsMoreData = value;\n  }\n  get reason(): string {\n    return this._reason;\n  }\n  set reason(value: string) {\n    this._reason = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbRolloutRecommendation.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbRolloutRecommendation.AsObject {\n    return {\n      optimizeMetric: this.optimizeMetric,\n      winnerVariantId: this.winnerVariantId,\n      controlVariantId: this.controlVariantId,\n      pValue: this.pValue,\n      effectSize: this.effectSize,\n      isSignificant: this.isSignificant,\n      sessionsPerVariant: this.sessionsPerVariant\n        ? Object.keys(this.sessionsPerVariant).reduce(\n            (r, k) => ({ ...r, [k]: this.sessionsPerVariant![k] }),\n            {}\n          )\n        : {},\n      needsMoreData: this.needsMoreData,\n      reason: this.reason\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbRolloutRecommendation.AsProtobufJSON {\n    return {\n      optimizeMetric:\n        LlmEvaluationAbOptimizeMetric[\n          this.optimizeMetric === null || this.optimizeMetric === undefined\n            ? 0\n            : this.optimizeMetric\n        ],\n      winnerVariantId: this.winnerVariantId,\n      controlVariantId: this.controlVariantId,\n      pValue: this.pValue,\n      effectSize: this.effectSize,\n      isSignificant: this.isSignificant,\n      sessionsPerVariant: this.sessionsPerVariant\n        ? Object.keys(this.sessionsPerVariant).reduce(\n            (r, k) => ({ ...r, [k]: this.sessionsPerVariant![k] }),\n            {}\n          )\n        : {},\n      needsMoreData: this.needsMoreData,\n      reason: this.reason\n    };\n  }\n}\nexport module LlmEvaluationAbRolloutRecommendation {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbRolloutRecommendation\n   */\n  export interface AsObject {\n    optimizeMetric: LlmEvaluationAbOptimizeMetric;\n    winnerVariantId: string;\n    controlVariantId: string;\n    pValue: number;\n    effectSize: number;\n    isSignificant: boolean;\n    sessionsPerVariant: { [prop: string]: string };\n    needsMoreData: boolean;\n    reason: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbRolloutRecommendation\n   */\n  export interface AsProtobufJSON {\n    optimizeMetric: string;\n    winnerVariantId: string;\n    controlVariantId: string;\n    pValue: number;\n    effectSize: number;\n    isSignificant: boolean;\n    sessionsPerVariant: { [prop: string]: string };\n    needsMoreData: boolean;\n    reason: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.LlmEvaluationAbRolloutRecommendation.SessionsPerVariantEntry\n   */\n  export class SessionsPerVariantEntry implements GrpcMessage {\n    static id =\n      'ondewo.nlu.LlmEvaluationAbRolloutRecommendation.SessionsPerVariantEntry';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new SessionsPerVariantEntry();\n      SessionsPerVariantEntry.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: SessionsPerVariantEntry) {\n      _instance.key = _instance.key || '';\n      _instance.value = _instance.value || '0';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: SessionsPerVariantEntry,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.key = _reader.readString();\n            break;\n          case 2:\n            _instance.value = _reader.readInt64String();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      SessionsPerVariantEntry.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: SessionsPerVariantEntry,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.key) {\n        _writer.writeString(1, _instance.key);\n      }\n      if (_instance.value) {\n        _writer.writeInt64String(2, _instance.value);\n      }\n    }\n\n    private _key: string;\n    private _value: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of SessionsPerVariantEntry to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<SessionsPerVariantEntry.AsObject>) {\n      _value = _value || {};\n      this.key = _value.key;\n      this.value = _value.value;\n      SessionsPerVariantEntry.refineValues(this);\n    }\n    get key(): string {\n      return this._key;\n    }\n    set key(value: string) {\n      this._key = value;\n    }\n    get value(): string {\n      return this._value;\n    }\n    set value(value: string) {\n      this._value = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      SessionsPerVariantEntry.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): SessionsPerVariantEntry.AsObject {\n      return {\n        key: this.key,\n        value: this.value\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): SessionsPerVariantEntry.AsProtobufJSON {\n      return {\n        key: this.key,\n        value: this.value\n      };\n    }\n  }\n  export module SessionsPerVariantEntry {\n    /**\n     * Standard JavaScript object representation for SessionsPerVariantEntry\n     */\n    export interface AsObject {\n      key: string;\n      value: string;\n    }\n\n    /**\n     * Protobuf JSON representation for SessionsPerVariantEntry\n     */\n    export interface AsProtobufJSON {\n      key: string;\n      value: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbRolloutDecision\n */\nexport class LlmEvaluationAbRolloutDecision implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbRolloutDecision';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbRolloutDecision();\n    LlmEvaluationAbRolloutDecision.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbRolloutDecision) {\n    _instance.name = _instance.name || '';\n    _instance.llmEvaluationAbExperimentName =\n      _instance.llmEvaluationAbExperimentName || '';\n    _instance.appliedVariantId = _instance.appliedVariantId || '';\n    _instance.optimizeMetric = _instance.optimizeMetric || 0;\n    _instance.pValue = _instance.pValue || 0;\n    _instance.effectSize = _instance.effectSize || 0;\n    _instance.appliedAt = _instance.appliedAt || undefined;\n    _instance.appliedBy = _instance.appliedBy || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbRolloutDecision,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationAbExperimentName = _reader.readString();\n          break;\n        case 3:\n          _instance.appliedVariantId = _reader.readString();\n          break;\n        case 4:\n          _instance.optimizeMetric = _reader.readEnum();\n          break;\n        case 5:\n          _instance.pValue = _reader.readDouble();\n          break;\n        case 6:\n          _instance.effectSize = _reader.readDouble();\n          break;\n        case 7:\n          _instance.appliedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.appliedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.appliedBy = _reader.readString();\n          break;\n        case 9:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 12:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 13:\n          _instance.parent = _reader.readString();\n          break;\n        case 14:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbRolloutDecision.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbRolloutDecision,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.llmEvaluationAbExperimentName) {\n      _writer.writeString(2, _instance.llmEvaluationAbExperimentName);\n    }\n    if (_instance.appliedVariantId) {\n      _writer.writeString(3, _instance.appliedVariantId);\n    }\n    if (_instance.optimizeMetric) {\n      _writer.writeEnum(4, _instance.optimizeMetric);\n    }\n    if (_instance.pValue) {\n      _writer.writeDouble(5, _instance.pValue);\n    }\n    if (_instance.effectSize) {\n      _writer.writeDouble(6, _instance.effectSize);\n    }\n    if (_instance.appliedAt) {\n      _writer.writeMessage(\n        7,\n        _instance.appliedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.appliedBy) {\n      _writer.writeString(8, _instance.appliedBy);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        9,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(11, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(12, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(13, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(14, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _llmEvaluationAbExperimentName: string;\n  private _appliedVariantId: string;\n  private _optimizeMetric: LlmEvaluationAbOptimizeMetric;\n  private _pValue: number;\n  private _effectSize: number;\n  private _appliedAt?: googleProtobuf005.Timestamp;\n  private _appliedBy: string;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbRolloutDecision to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAbRolloutDecision.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.llmEvaluationAbExperimentName = _value.llmEvaluationAbExperimentName;\n    this.appliedVariantId = _value.appliedVariantId;\n    this.optimizeMetric = _value.optimizeMetric;\n    this.pValue = _value.pValue;\n    this.effectSize = _value.effectSize;\n    this.appliedAt = _value.appliedAt\n      ? new googleProtobuf005.Timestamp(_value.appliedAt)\n      : undefined;\n    this.appliedBy = _value.appliedBy;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationAbRolloutDecision.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get llmEvaluationAbExperimentName(): string {\n    return this._llmEvaluationAbExperimentName;\n  }\n  set llmEvaluationAbExperimentName(value: string) {\n    this._llmEvaluationAbExperimentName = value;\n  }\n  get appliedVariantId(): string {\n    return this._appliedVariantId;\n  }\n  set appliedVariantId(value: string) {\n    this._appliedVariantId = value;\n  }\n  get optimizeMetric(): LlmEvaluationAbOptimizeMetric {\n    return this._optimizeMetric;\n  }\n  set optimizeMetric(value: LlmEvaluationAbOptimizeMetric) {\n    this._optimizeMetric = value;\n  }\n  get pValue(): number {\n    return this._pValue;\n  }\n  set pValue(value: number) {\n    this._pValue = value;\n  }\n  get effectSize(): number {\n    return this._effectSize;\n  }\n  set effectSize(value: number) {\n    this._effectSize = value;\n  }\n  get appliedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._appliedAt;\n  }\n  set appliedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._appliedAt = value;\n  }\n  get appliedBy(): string {\n    return this._appliedBy;\n  }\n  set appliedBy(value: string) {\n    this._appliedBy = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbRolloutDecision.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbRolloutDecision.AsObject {\n    return {\n      name: this.name,\n      llmEvaluationAbExperimentName: this.llmEvaluationAbExperimentName,\n      appliedVariantId: this.appliedVariantId,\n      optimizeMetric: this.optimizeMetric,\n      pValue: this.pValue,\n      effectSize: this.effectSize,\n      appliedAt: this.appliedAt ? this.appliedAt.toObject() : undefined,\n      appliedBy: this.appliedBy,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbRolloutDecision.AsProtobufJSON {\n    return {\n      name: this.name,\n      llmEvaluationAbExperimentName: this.llmEvaluationAbExperimentName,\n      appliedVariantId: this.appliedVariantId,\n      optimizeMetric:\n        LlmEvaluationAbOptimizeMetric[\n          this.optimizeMetric === null || this.optimizeMetric === undefined\n            ? 0\n            : this.optimizeMetric\n        ],\n      pValue: this.pValue,\n      effectSize: this.effectSize,\n      appliedAt: this.appliedAt ? this.appliedAt.toProtobufJSON(options) : null,\n      appliedBy: this.appliedBy,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationAbRolloutDecision {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbRolloutDecision\n   */\n  export interface AsObject {\n    name: string;\n    llmEvaluationAbExperimentName: string;\n    appliedVariantId: string;\n    optimizeMetric: LlmEvaluationAbOptimizeMetric;\n    pValue: number;\n    effectSize: number;\n    appliedAt?: googleProtobuf005.Timestamp.AsObject;\n    appliedBy: string;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbRolloutDecision\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    llmEvaluationAbExperimentName: string;\n    appliedVariantId: string;\n    optimizeMetric: string;\n    pValue: number;\n    effectSize: number;\n    appliedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    appliedBy: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationAbRolloutRecommendationRequest\n */\nexport class GetLlmEvaluationAbRolloutRecommendationRequest\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationAbRolloutRecommendationRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationAbRolloutRecommendationRequest();\n    GetLlmEvaluationAbRolloutRecommendationRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: GetLlmEvaluationAbRolloutRecommendationRequest\n  ) {\n    _instance.name = _instance.name || '';\n    _instance.optimizeMetric = _instance.optimizeMetric || 0;\n    _instance.confidenceLevel = _instance.confidenceLevel || 0;\n    _instance.minSessionsPerVariant = _instance.minSessionsPerVariant || 0;\n    _instance.minEffectSize = _instance.minEffectSize || 0;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationAbRolloutRecommendationRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.optimizeMetric = _reader.readEnum();\n          break;\n        case 3:\n          _instance.confidenceLevel = _reader.readDouble();\n          break;\n        case 4:\n          _instance.minSessionsPerVariant = _reader.readInt32();\n          break;\n        case 5:\n          _instance.minEffectSize = _reader.readDouble();\n          break;\n        case 6:\n          _instance.parent = _reader.readString();\n          break;\n        case 7:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationAbRolloutRecommendationRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationAbRolloutRecommendationRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.optimizeMetric) {\n      _writer.writeEnum(2, _instance.optimizeMetric);\n    }\n    if (_instance.confidenceLevel) {\n      _writer.writeDouble(3, _instance.confidenceLevel);\n    }\n    if (_instance.minSessionsPerVariant) {\n      _writer.writeInt32(4, _instance.minSessionsPerVariant);\n    }\n    if (_instance.minEffectSize) {\n      _writer.writeDouble(5, _instance.minEffectSize);\n    }\n    if (_instance.parent) {\n      _writer.writeString(6, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(7, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _optimizeMetric: LlmEvaluationAbOptimizeMetric;\n  private _confidenceLevel: number;\n  private _minSessionsPerVariant: number;\n  private _minEffectSize: number;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationAbRolloutRecommendationRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      GetLlmEvaluationAbRolloutRecommendationRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.optimizeMetric = _value.optimizeMetric;\n    this.confidenceLevel = _value.confidenceLevel;\n    this.minSessionsPerVariant = _value.minSessionsPerVariant;\n    this.minEffectSize = _value.minEffectSize;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationAbRolloutRecommendationRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get optimizeMetric(): LlmEvaluationAbOptimizeMetric {\n    return this._optimizeMetric;\n  }\n  set optimizeMetric(value: LlmEvaluationAbOptimizeMetric) {\n    this._optimizeMetric = value;\n  }\n  get confidenceLevel(): number {\n    return this._confidenceLevel;\n  }\n  set confidenceLevel(value: number) {\n    this._confidenceLevel = value;\n  }\n  get minSessionsPerVariant(): number {\n    return this._minSessionsPerVariant;\n  }\n  set minSessionsPerVariant(value: number) {\n    this._minSessionsPerVariant = value;\n  }\n  get minEffectSize(): number {\n    return this._minEffectSize;\n  }\n  set minEffectSize(value: number) {\n    this._minEffectSize = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationAbRolloutRecommendationRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationAbRolloutRecommendationRequest.AsObject {\n    return {\n      name: this.name,\n      optimizeMetric: this.optimizeMetric,\n      confidenceLevel: this.confidenceLevel,\n      minSessionsPerVariant: this.minSessionsPerVariant,\n      minEffectSize: this.minEffectSize,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationAbRolloutRecommendationRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      optimizeMetric:\n        LlmEvaluationAbOptimizeMetric[\n          this.optimizeMetric === null || this.optimizeMetric === undefined\n            ? 0\n            : this.optimizeMetric\n        ],\n      confidenceLevel: this.confidenceLevel,\n      minSessionsPerVariant: this.minSessionsPerVariant,\n      minEffectSize: this.minEffectSize,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationAbRolloutRecommendationRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationAbRolloutRecommendationRequest\n   */\n  export interface AsObject {\n    name: string;\n    optimizeMetric: LlmEvaluationAbOptimizeMetric;\n    confidenceLevel: number;\n    minSessionsPerVariant: number;\n    minEffectSize: number;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationAbRolloutRecommendationRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    optimizeMetric: string;\n    confidenceLevel: number;\n    minSessionsPerVariant: number;\n    minEffectSize: number;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ApplyLlmEvaluationAbRolloutRequest\n */\nexport class ApplyLlmEvaluationAbRolloutRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ApplyLlmEvaluationAbRolloutRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ApplyLlmEvaluationAbRolloutRequest();\n    ApplyLlmEvaluationAbRolloutRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ApplyLlmEvaluationAbRolloutRequest) {\n    _instance.name = _instance.name || '';\n    _instance.variantId = _instance.variantId || '';\n    _instance.optimizeMetric = _instance.optimizeMetric || 0;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ApplyLlmEvaluationAbRolloutRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.variantId = _reader.readString();\n          break;\n        case 3:\n          _instance.optimizeMetric = _reader.readEnum();\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ApplyLlmEvaluationAbRolloutRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ApplyLlmEvaluationAbRolloutRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.variantId) {\n      _writer.writeString(2, _instance.variantId);\n    }\n    if (_instance.optimizeMetric) {\n      _writer.writeEnum(3, _instance.optimizeMetric);\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _variantId: string;\n  private _optimizeMetric: LlmEvaluationAbOptimizeMetric;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ApplyLlmEvaluationAbRolloutRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ApplyLlmEvaluationAbRolloutRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.variantId = _value.variantId;\n    this.optimizeMetric = _value.optimizeMetric;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    ApplyLlmEvaluationAbRolloutRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get variantId(): string {\n    return this._variantId;\n  }\n  set variantId(value: string) {\n    this._variantId = value;\n  }\n  get optimizeMetric(): LlmEvaluationAbOptimizeMetric {\n    return this._optimizeMetric;\n  }\n  set optimizeMetric(value: LlmEvaluationAbOptimizeMetric) {\n    this._optimizeMetric = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ApplyLlmEvaluationAbRolloutRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ApplyLlmEvaluationAbRolloutRequest.AsObject {\n    return {\n      name: this.name,\n      variantId: this.variantId,\n      optimizeMetric: this.optimizeMetric,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ApplyLlmEvaluationAbRolloutRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      variantId: this.variantId,\n      optimizeMetric:\n        LlmEvaluationAbOptimizeMetric[\n          this.optimizeMetric === null || this.optimizeMetric === undefined\n            ? 0\n            : this.optimizeMetric\n        ],\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module ApplyLlmEvaluationAbRolloutRequest {\n  /**\n   * Standard JavaScript object representation for ApplyLlmEvaluationAbRolloutRequest\n   */\n  export interface AsObject {\n    name: string;\n    variantId: string;\n    optimizeMetric: LlmEvaluationAbOptimizeMetric;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ApplyLlmEvaluationAbRolloutRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    variantId: string;\n    optimizeMetric: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationAbRolloutDecisionRequest\n */\nexport class GetLlmEvaluationAbRolloutDecisionRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationAbRolloutDecisionRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationAbRolloutDecisionRequest();\n    GetLlmEvaluationAbRolloutDecisionRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationAbRolloutDecisionRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationAbRolloutDecisionRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationAbRolloutDecisionRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationAbRolloutDecisionRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationAbRolloutDecisionRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationAbRolloutDecisionRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationAbRolloutDecisionRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationAbRolloutDecisionRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationAbRolloutDecisionRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationAbRolloutDecisionRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationAbRolloutDecisionRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationAbRolloutDecisionRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationAbRolloutDecisionRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAbRolloutDecisionFilter\n */\nexport class LlmEvaluationAbRolloutDecisionFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAbRolloutDecisionFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAbRolloutDecisionFilter();\n    LlmEvaluationAbRolloutDecisionFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAbRolloutDecisionFilter) {\n    _instance.llmEvaluationAbExperimentName =\n      _instance.llmEvaluationAbExperimentName || '';\n    _instance.appliedBy = _instance.appliedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAbRolloutDecisionFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationAbExperimentName = _reader.readString();\n          break;\n        case 2:\n          _instance.appliedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAbRolloutDecisionFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAbRolloutDecisionFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationAbExperimentName) {\n      _writer.writeString(1, _instance.llmEvaluationAbExperimentName);\n    }\n    if (_instance.appliedBy) {\n      _writer.writeString(2, _instance.appliedBy);\n    }\n  }\n\n  private _llmEvaluationAbExperimentName: string;\n  private _appliedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAbRolloutDecisionFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAbRolloutDecisionFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAbExperimentName = _value.llmEvaluationAbExperimentName;\n    this.appliedBy = _value.appliedBy;\n    LlmEvaluationAbRolloutDecisionFilter.refineValues(this);\n  }\n  get llmEvaluationAbExperimentName(): string {\n    return this._llmEvaluationAbExperimentName;\n  }\n  set llmEvaluationAbExperimentName(value: string) {\n    this._llmEvaluationAbExperimentName = value;\n  }\n  get appliedBy(): string {\n    return this._appliedBy;\n  }\n  set appliedBy(value: string) {\n    this._appliedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAbRolloutDecisionFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAbRolloutDecisionFilter.AsObject {\n    return {\n      llmEvaluationAbExperimentName: this.llmEvaluationAbExperimentName,\n      appliedBy: this.appliedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAbRolloutDecisionFilter.AsProtobufJSON {\n    return {\n      llmEvaluationAbExperimentName: this.llmEvaluationAbExperimentName,\n      appliedBy: this.appliedBy\n    };\n  }\n}\nexport module LlmEvaluationAbRolloutDecisionFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAbRolloutDecisionFilter\n   */\n  export interface AsObject {\n    llmEvaluationAbExperimentName: string;\n    appliedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAbRolloutDecisionFilter\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAbExperimentName: string;\n    appliedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationAbRolloutDecisionsRequest\n */\nexport class ListLlmEvaluationAbRolloutDecisionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationAbRolloutDecisionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationAbRolloutDecisionsRequest();\n    ListLlmEvaluationAbRolloutDecisionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationAbRolloutDecisionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationAbRolloutDecisionFilter =\n      _instance.llmEvaluationAbRolloutDecisionFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationAbRolloutDecisionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationAbRolloutDecisionFilter = new LlmEvaluationAbRolloutDecisionFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationAbRolloutDecisionFilter,\n            LlmEvaluationAbRolloutDecisionFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationAbRolloutDecisionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationAbRolloutDecisionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationAbRolloutDecisionFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationAbRolloutDecisionFilter as any,\n        LlmEvaluationAbRolloutDecisionFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationAbRolloutDecisionFilter?: LlmEvaluationAbRolloutDecisionFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationAbRolloutDecisionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListLlmEvaluationAbRolloutDecisionsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationAbRolloutDecisionFilter = _value.llmEvaluationAbRolloutDecisionFilter\n      ? new LlmEvaluationAbRolloutDecisionFilter(\n          _value.llmEvaluationAbRolloutDecisionFilter\n        )\n      : undefined;\n    ListLlmEvaluationAbRolloutDecisionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationAbRolloutDecisionFilter():\n    | LlmEvaluationAbRolloutDecisionFilter\n    | undefined {\n    return this._llmEvaluationAbRolloutDecisionFilter;\n  }\n  set llmEvaluationAbRolloutDecisionFilter(\n    value: LlmEvaluationAbRolloutDecisionFilter | undefined\n  ) {\n    this._llmEvaluationAbRolloutDecisionFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationAbRolloutDecisionsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationAbRolloutDecisionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationAbRolloutDecisionFilter: this\n        .llmEvaluationAbRolloutDecisionFilter\n        ? this.llmEvaluationAbRolloutDecisionFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationAbRolloutDecisionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationAbRolloutDecisionFilter: this\n        .llmEvaluationAbRolloutDecisionFilter\n        ? this.llmEvaluationAbRolloutDecisionFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationAbRolloutDecisionsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationAbRolloutDecisionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationAbRolloutDecisionFilter?: LlmEvaluationAbRolloutDecisionFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationAbRolloutDecisionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationAbRolloutDecisionFilter: LlmEvaluationAbRolloutDecisionFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationAbRolloutDecisionsResponse\n */\nexport class ListLlmEvaluationAbRolloutDecisionsResponse\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationAbRolloutDecisionsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationAbRolloutDecisionsResponse();\n    ListLlmEvaluationAbRolloutDecisionsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationAbRolloutDecisionsResponse) {\n    _instance.llmEvaluationAbRolloutDecisions =\n      _instance.llmEvaluationAbRolloutDecisions || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationAbRolloutDecisionsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationAbRolloutDecision();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationAbRolloutDecision.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationAbRolloutDecisions =\n            _instance.llmEvaluationAbRolloutDecisions || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationAbRolloutDecisionsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationAbRolloutDecisionsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationAbRolloutDecisions &&\n      _instance.llmEvaluationAbRolloutDecisions.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationAbRolloutDecisions as any,\n        LlmEvaluationAbRolloutDecision.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationAbRolloutDecisions?: LlmEvaluationAbRolloutDecision[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationAbRolloutDecisionsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListLlmEvaluationAbRolloutDecisionsResponse.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAbRolloutDecisions = (\n      _value.llmEvaluationAbRolloutDecisions || []\n    ).map(m => new LlmEvaluationAbRolloutDecision(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationAbRolloutDecisionsResponse.refineValues(this);\n  }\n  get llmEvaluationAbRolloutDecisions():\n    | LlmEvaluationAbRolloutDecision[]\n    | undefined {\n    return this._llmEvaluationAbRolloutDecisions;\n  }\n  set llmEvaluationAbRolloutDecisions(\n    value: LlmEvaluationAbRolloutDecision[] | undefined\n  ) {\n    this._llmEvaluationAbRolloutDecisions = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationAbRolloutDecisionsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationAbRolloutDecisionsResponse.AsObject {\n    return {\n      llmEvaluationAbRolloutDecisions: (\n        this.llmEvaluationAbRolloutDecisions || []\n      ).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationAbRolloutDecisionsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationAbRolloutDecisions: (\n        this.llmEvaluationAbRolloutDecisions || []\n      ).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationAbRolloutDecisionsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationAbRolloutDecisionsResponse\n   */\n  export interface AsObject {\n    llmEvaluationAbRolloutDecisions?: LlmEvaluationAbRolloutDecision.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationAbRolloutDecisionsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAbRolloutDecisions:\n      | LlmEvaluationAbRolloutDecision.AsProtobufJSON[]\n      | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationOnlineSessionFilter\n */\nexport class LlmEvaluationOnlineSessionFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationOnlineSessionFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationOnlineSessionFilter();\n    LlmEvaluationOnlineSessionFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationOnlineSessionFilter) {\n    _instance.labels = _instance.labels || [];\n    _instance.languageCodes = _instance.languageCodes || [];\n    _instance.platforms = _instance.platforms || [];\n    _instance.requireTelemetry = _instance.requireTelemetry || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationOnlineSessionFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 3:\n          (_instance.platforms = _instance.platforms || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.requireTelemetry = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationOnlineSessionFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationOnlineSessionFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(1, _instance.labels);\n    }\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(2, _instance.languageCodes);\n    }\n    if (_instance.platforms && _instance.platforms.length) {\n      _writer.writeRepeatedString(3, _instance.platforms);\n    }\n    if (_instance.requireTelemetry) {\n      _writer.writeBool(4, _instance.requireTelemetry);\n    }\n  }\n\n  private _labels: string[];\n  private _languageCodes: string[];\n  private _platforms: string[];\n  private _requireTelemetry: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationOnlineSessionFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationOnlineSessionFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.labels = (_value.labels || []).slice();\n    this.languageCodes = (_value.languageCodes || []).slice();\n    this.platforms = (_value.platforms || []).slice();\n    this.requireTelemetry = _value.requireTelemetry;\n    LlmEvaluationOnlineSessionFilter.refineValues(this);\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n  get platforms(): string[] {\n    return this._platforms;\n  }\n  set platforms(value: string[]) {\n    this._platforms = value;\n  }\n  get requireTelemetry(): boolean {\n    return this._requireTelemetry;\n  }\n  set requireTelemetry(value: boolean) {\n    this._requireTelemetry = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationOnlineSessionFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationOnlineSessionFilter.AsObject {\n    return {\n      labels: (this.labels || []).slice(),\n      languageCodes: (this.languageCodes || []).slice(),\n      platforms: (this.platforms || []).slice(),\n      requireTelemetry: this.requireTelemetry\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationOnlineSessionFilter.AsProtobufJSON {\n    return {\n      labels: (this.labels || []).slice(),\n      languageCodes: (this.languageCodes || []).slice(),\n      platforms: (this.platforms || []).slice(),\n      requireTelemetry: this.requireTelemetry\n    };\n  }\n}\nexport module LlmEvaluationOnlineSessionFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationOnlineSessionFilter\n   */\n  export interface AsObject {\n    labels: string[];\n    languageCodes: string[];\n    platforms: string[];\n    requireTelemetry: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationOnlineSessionFilter\n   */\n  export interface AsProtobufJSON {\n    labels: string[];\n    languageCodes: string[];\n    platforms: string[];\n    requireTelemetry: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationOnlineConfig\n */\nexport class LlmEvaluationOnlineConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationOnlineConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationOnlineConfig();\n    LlmEvaluationOnlineConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationOnlineConfig) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.evaluatorNames = _instance.evaluatorNames || [];\n    _instance.sampleRate = _instance.sampleRate || 0;\n    _instance.enabled = _instance.enabled || false;\n    _instance.targetDatasetName = _instance.targetDatasetName || '';\n    _instance.failThreshold = _instance.failThreshold || 0;\n    _instance.settleSeconds = _instance.settleSeconds || 0;\n    _instance.requireTelemetry = _instance.requireTelemetry || false;\n    _instance.llmEvaluationOnlineSessionFilter =\n      _instance.llmEvaluationOnlineSessionFilter || undefined;\n    _instance.lastEvaluatedAt = _instance.lastEvaluatedAt || undefined;\n    _instance.nSessionsEvaluated = _instance.nSessionsEvaluated || '0';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationOnlineConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          (_instance.evaluatorNames = _instance.evaluatorNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 5:\n          _instance.sampleRate = _reader.readDouble();\n          break;\n        case 6:\n          _instance.enabled = _reader.readBool();\n          break;\n        case 7:\n          _instance.targetDatasetName = _reader.readString();\n          break;\n        case 8:\n          _instance.failThreshold = _reader.readDouble();\n          break;\n        case 9:\n          _instance.settleSeconds = _reader.readInt32();\n          break;\n        case 10:\n          _instance.requireTelemetry = _reader.readBool();\n          break;\n        case 11:\n          _instance.llmEvaluationOnlineSessionFilter = new LlmEvaluationOnlineSessionFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationOnlineSessionFilter,\n            LlmEvaluationOnlineSessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.lastEvaluatedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.lastEvaluatedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.nSessionsEvaluated = _reader.readInt64String();\n          break;\n        case 14:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 15:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 16:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 17:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 18:\n          _instance.parent = _reader.readString();\n          break;\n        case 19:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationOnlineConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationOnlineConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.evaluatorNames && _instance.evaluatorNames.length) {\n      _writer.writeRepeatedString(4, _instance.evaluatorNames);\n    }\n    if (_instance.sampleRate) {\n      _writer.writeDouble(5, _instance.sampleRate);\n    }\n    if (_instance.enabled) {\n      _writer.writeBool(6, _instance.enabled);\n    }\n    if (_instance.targetDatasetName) {\n      _writer.writeString(7, _instance.targetDatasetName);\n    }\n    if (_instance.failThreshold) {\n      _writer.writeDouble(8, _instance.failThreshold);\n    }\n    if (_instance.settleSeconds) {\n      _writer.writeInt32(9, _instance.settleSeconds);\n    }\n    if (_instance.requireTelemetry) {\n      _writer.writeBool(10, _instance.requireTelemetry);\n    }\n    if (_instance.llmEvaluationOnlineSessionFilter) {\n      _writer.writeMessage(\n        11,\n        _instance.llmEvaluationOnlineSessionFilter as any,\n        LlmEvaluationOnlineSessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.lastEvaluatedAt) {\n      _writer.writeMessage(\n        12,\n        _instance.lastEvaluatedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nSessionsEvaluated) {\n      _writer.writeInt64String(13, _instance.nSessionsEvaluated);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        14,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(15, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        16,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(17, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(18, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(19, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _evaluatorNames: string[];\n  private _sampleRate: number;\n  private _enabled: boolean;\n  private _targetDatasetName: string;\n  private _failThreshold: number;\n  private _settleSeconds: number;\n  private _requireTelemetry: boolean;\n  private _llmEvaluationOnlineSessionFilter?: LlmEvaluationOnlineSessionFilter;\n  private _lastEvaluatedAt?: googleProtobuf005.Timestamp;\n  private _nSessionsEvaluated: string;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationOnlineConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationOnlineConfig.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.evaluatorNames = (_value.evaluatorNames || []).slice();\n    this.sampleRate = _value.sampleRate;\n    this.enabled = _value.enabled;\n    this.targetDatasetName = _value.targetDatasetName;\n    this.failThreshold = _value.failThreshold;\n    this.settleSeconds = _value.settleSeconds;\n    this.requireTelemetry = _value.requireTelemetry;\n    this.llmEvaluationOnlineSessionFilter = _value.llmEvaluationOnlineSessionFilter\n      ? new LlmEvaluationOnlineSessionFilter(\n          _value.llmEvaluationOnlineSessionFilter\n        )\n      : undefined;\n    this.lastEvaluatedAt = _value.lastEvaluatedAt\n      ? new googleProtobuf005.Timestamp(_value.lastEvaluatedAt)\n      : undefined;\n    this.nSessionsEvaluated = _value.nSessionsEvaluated;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationOnlineConfig.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get evaluatorNames(): string[] {\n    return this._evaluatorNames;\n  }\n  set evaluatorNames(value: string[]) {\n    this._evaluatorNames = value;\n  }\n  get sampleRate(): number {\n    return this._sampleRate;\n  }\n  set sampleRate(value: number) {\n    this._sampleRate = value;\n  }\n  get enabled(): boolean {\n    return this._enabled;\n  }\n  set enabled(value: boolean) {\n    this._enabled = value;\n  }\n  get targetDatasetName(): string {\n    return this._targetDatasetName;\n  }\n  set targetDatasetName(value: string) {\n    this._targetDatasetName = value;\n  }\n  get failThreshold(): number {\n    return this._failThreshold;\n  }\n  set failThreshold(value: number) {\n    this._failThreshold = value;\n  }\n  get settleSeconds(): number {\n    return this._settleSeconds;\n  }\n  set settleSeconds(value: number) {\n    this._settleSeconds = value;\n  }\n  get requireTelemetry(): boolean {\n    return this._requireTelemetry;\n  }\n  set requireTelemetry(value: boolean) {\n    this._requireTelemetry = value;\n  }\n  get llmEvaluationOnlineSessionFilter():\n    | LlmEvaluationOnlineSessionFilter\n    | undefined {\n    return this._llmEvaluationOnlineSessionFilter;\n  }\n  set llmEvaluationOnlineSessionFilter(\n    value: LlmEvaluationOnlineSessionFilter | undefined\n  ) {\n    this._llmEvaluationOnlineSessionFilter = value;\n  }\n  get lastEvaluatedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._lastEvaluatedAt;\n  }\n  set lastEvaluatedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._lastEvaluatedAt = value;\n  }\n  get nSessionsEvaluated(): string {\n    return this._nSessionsEvaluated;\n  }\n  set nSessionsEvaluated(value: string) {\n    this._nSessionsEvaluated = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationOnlineConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationOnlineConfig.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      evaluatorNames: (this.evaluatorNames || []).slice(),\n      sampleRate: this.sampleRate,\n      enabled: this.enabled,\n      targetDatasetName: this.targetDatasetName,\n      failThreshold: this.failThreshold,\n      settleSeconds: this.settleSeconds,\n      requireTelemetry: this.requireTelemetry,\n      llmEvaluationOnlineSessionFilter: this.llmEvaluationOnlineSessionFilter\n        ? this.llmEvaluationOnlineSessionFilter.toObject()\n        : undefined,\n      lastEvaluatedAt: this.lastEvaluatedAt\n        ? this.lastEvaluatedAt.toObject()\n        : undefined,\n      nSessionsEvaluated: this.nSessionsEvaluated,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationOnlineConfig.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      evaluatorNames: (this.evaluatorNames || []).slice(),\n      sampleRate: this.sampleRate,\n      enabled: this.enabled,\n      targetDatasetName: this.targetDatasetName,\n      failThreshold: this.failThreshold,\n      settleSeconds: this.settleSeconds,\n      requireTelemetry: this.requireTelemetry,\n      llmEvaluationOnlineSessionFilter: this.llmEvaluationOnlineSessionFilter\n        ? this.llmEvaluationOnlineSessionFilter.toProtobufJSON(options)\n        : null,\n      lastEvaluatedAt: this.lastEvaluatedAt\n        ? this.lastEvaluatedAt.toProtobufJSON(options)\n        : null,\n      nSessionsEvaluated: this.nSessionsEvaluated,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationOnlineConfig {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationOnlineConfig\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    evaluatorNames: string[];\n    sampleRate: number;\n    enabled: boolean;\n    targetDatasetName: string;\n    failThreshold: number;\n    settleSeconds: number;\n    requireTelemetry: boolean;\n    llmEvaluationOnlineSessionFilter?: LlmEvaluationOnlineSessionFilter.AsObject;\n    lastEvaluatedAt?: googleProtobuf005.Timestamp.AsObject;\n    nSessionsEvaluated: string;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationOnlineConfig\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    evaluatorNames: string[];\n    sampleRate: number;\n    enabled: boolean;\n    targetDatasetName: string;\n    failThreshold: number;\n    settleSeconds: number;\n    requireTelemetry: boolean;\n    llmEvaluationOnlineSessionFilter: LlmEvaluationOnlineSessionFilter.AsProtobufJSON | null;\n    lastEvaluatedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    nSessionsEvaluated: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateLlmEvaluationOnlineConfigRequest\n */\nexport class CreateLlmEvaluationOnlineConfigRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateLlmEvaluationOnlineConfigRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateLlmEvaluationOnlineConfigRequest();\n    CreateLlmEvaluationOnlineConfigRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateLlmEvaluationOnlineConfigRequest) {\n    _instance.llmEvaluationOnlineConfig =\n      _instance.llmEvaluationOnlineConfig || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateLlmEvaluationOnlineConfigRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationOnlineConfig = new LlmEvaluationOnlineConfig();\n          _reader.readMessage(\n            _instance.llmEvaluationOnlineConfig,\n            LlmEvaluationOnlineConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateLlmEvaluationOnlineConfigRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateLlmEvaluationOnlineConfigRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationOnlineConfig) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationOnlineConfig as any,\n        LlmEvaluationOnlineConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationOnlineConfig?: LlmEvaluationOnlineConfig;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateLlmEvaluationOnlineConfigRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateLlmEvaluationOnlineConfigRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationOnlineConfig = _value.llmEvaluationOnlineConfig\n      ? new LlmEvaluationOnlineConfig(_value.llmEvaluationOnlineConfig)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    CreateLlmEvaluationOnlineConfigRequest.refineValues(this);\n  }\n  get llmEvaluationOnlineConfig(): LlmEvaluationOnlineConfig | undefined {\n    return this._llmEvaluationOnlineConfig;\n  }\n  set llmEvaluationOnlineConfig(value: LlmEvaluationOnlineConfig | undefined) {\n    this._llmEvaluationOnlineConfig = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateLlmEvaluationOnlineConfigRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateLlmEvaluationOnlineConfigRequest.AsObject {\n    return {\n      llmEvaluationOnlineConfig: this.llmEvaluationOnlineConfig\n        ? this.llmEvaluationOnlineConfig.toObject()\n        : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateLlmEvaluationOnlineConfigRequest.AsProtobufJSON {\n    return {\n      llmEvaluationOnlineConfig: this.llmEvaluationOnlineConfig\n        ? this.llmEvaluationOnlineConfig.toProtobufJSON(options)\n        : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module CreateLlmEvaluationOnlineConfigRequest {\n  /**\n   * Standard JavaScript object representation for CreateLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsObject {\n    llmEvaluationOnlineConfig?: LlmEvaluationOnlineConfig.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationOnlineConfig: LlmEvaluationOnlineConfig.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationOnlineConfigRequest\n */\nexport class GetLlmEvaluationOnlineConfigRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationOnlineConfigRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationOnlineConfigRequest();\n    GetLlmEvaluationOnlineConfigRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationOnlineConfigRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationOnlineConfigRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationOnlineConfigRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationOnlineConfigRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationOnlineConfigRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationOnlineConfigRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationOnlineConfigRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationOnlineConfigRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationOnlineConfigRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationOnlineConfigRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationOnlineConfigRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationOnlineConfigFilter\n */\nexport class LlmEvaluationOnlineConfigFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationOnlineConfigFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationOnlineConfigFilter();\n    LlmEvaluationOnlineConfigFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationOnlineConfigFilter) {\n    _instance.displayName = _instance.displayName || '';\n    _instance.enabledOnly = _instance.enabledOnly || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationOnlineConfigFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.displayName = _reader.readString();\n          break;\n        case 2:\n          _instance.enabledOnly = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationOnlineConfigFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationOnlineConfigFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.displayName) {\n      _writer.writeString(1, _instance.displayName);\n    }\n    if (_instance.enabledOnly) {\n      _writer.writeBool(2, _instance.enabledOnly);\n    }\n  }\n\n  private _displayName: string;\n  private _enabledOnly: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationOnlineConfigFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationOnlineConfigFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.displayName = _value.displayName;\n    this.enabledOnly = _value.enabledOnly;\n    LlmEvaluationOnlineConfigFilter.refineValues(this);\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get enabledOnly(): boolean {\n    return this._enabledOnly;\n  }\n  set enabledOnly(value: boolean) {\n    this._enabledOnly = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationOnlineConfigFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationOnlineConfigFilter.AsObject {\n    return {\n      displayName: this.displayName,\n      enabledOnly: this.enabledOnly\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationOnlineConfigFilter.AsProtobufJSON {\n    return {\n      displayName: this.displayName,\n      enabledOnly: this.enabledOnly\n    };\n  }\n}\nexport module LlmEvaluationOnlineConfigFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationOnlineConfigFilter\n   */\n  export interface AsObject {\n    displayName: string;\n    enabledOnly: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationOnlineConfigFilter\n   */\n  export interface AsProtobufJSON {\n    displayName: string;\n    enabledOnly: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationOnlineConfigsRequest\n */\nexport class ListLlmEvaluationOnlineConfigsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationOnlineConfigsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationOnlineConfigsRequest();\n    ListLlmEvaluationOnlineConfigsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationOnlineConfigsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationOnlineConfigFilter =\n      _instance.llmEvaluationOnlineConfigFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationOnlineConfigsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationOnlineConfigFilter = new LlmEvaluationOnlineConfigFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationOnlineConfigFilter,\n            LlmEvaluationOnlineConfigFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationOnlineConfigsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationOnlineConfigsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationOnlineConfigFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationOnlineConfigFilter as any,\n        LlmEvaluationOnlineConfigFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationOnlineConfigFilter?: LlmEvaluationOnlineConfigFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationOnlineConfigsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationOnlineConfigsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationOnlineConfigFilter = _value.llmEvaluationOnlineConfigFilter\n      ? new LlmEvaluationOnlineConfigFilter(\n          _value.llmEvaluationOnlineConfigFilter\n        )\n      : undefined;\n    ListLlmEvaluationOnlineConfigsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationOnlineConfigFilter():\n    | LlmEvaluationOnlineConfigFilter\n    | undefined {\n    return this._llmEvaluationOnlineConfigFilter;\n  }\n  set llmEvaluationOnlineConfigFilter(\n    value: LlmEvaluationOnlineConfigFilter | undefined\n  ) {\n    this._llmEvaluationOnlineConfigFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationOnlineConfigsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationOnlineConfigsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationOnlineConfigFilter: this.llmEvaluationOnlineConfigFilter\n        ? this.llmEvaluationOnlineConfigFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationOnlineConfigsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationOnlineConfigFilter: this.llmEvaluationOnlineConfigFilter\n        ? this.llmEvaluationOnlineConfigFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationOnlineConfigsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationOnlineConfigsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationOnlineConfigFilter?: LlmEvaluationOnlineConfigFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationOnlineConfigsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationOnlineConfigFilter: LlmEvaluationOnlineConfigFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationOnlineConfigsResponse\n */\nexport class ListLlmEvaluationOnlineConfigsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationOnlineConfigsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationOnlineConfigsResponse();\n    ListLlmEvaluationOnlineConfigsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationOnlineConfigsResponse) {\n    _instance.llmEvaluationOnlineConfigs =\n      _instance.llmEvaluationOnlineConfigs || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationOnlineConfigsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationOnlineConfig();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationOnlineConfig.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationOnlineConfigs =\n            _instance.llmEvaluationOnlineConfigs || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationOnlineConfigsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationOnlineConfigsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationOnlineConfigs &&\n      _instance.llmEvaluationOnlineConfigs.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationOnlineConfigs as any,\n        LlmEvaluationOnlineConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationOnlineConfigs?: LlmEvaluationOnlineConfig[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationOnlineConfigsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationOnlineConfigsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationOnlineConfigs = (\n      _value.llmEvaluationOnlineConfigs || []\n    ).map(m => new LlmEvaluationOnlineConfig(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationOnlineConfigsResponse.refineValues(this);\n  }\n  get llmEvaluationOnlineConfigs(): LlmEvaluationOnlineConfig[] | undefined {\n    return this._llmEvaluationOnlineConfigs;\n  }\n  set llmEvaluationOnlineConfigs(\n    value: LlmEvaluationOnlineConfig[] | undefined\n  ) {\n    this._llmEvaluationOnlineConfigs = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationOnlineConfigsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationOnlineConfigsResponse.AsObject {\n    return {\n      llmEvaluationOnlineConfigs: (\n        this.llmEvaluationOnlineConfigs || []\n      ).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationOnlineConfigsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationOnlineConfigs: (\n        this.llmEvaluationOnlineConfigs || []\n      ).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationOnlineConfigsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationOnlineConfigsResponse\n   */\n  export interface AsObject {\n    llmEvaluationOnlineConfigs?: LlmEvaluationOnlineConfig.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationOnlineConfigsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationOnlineConfigs:\n      | LlmEvaluationOnlineConfig.AsProtobufJSON[]\n      | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationOnlineConfigRequest\n */\nexport class UpdateLlmEvaluationOnlineConfigRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationOnlineConfigRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationOnlineConfigRequest();\n    UpdateLlmEvaluationOnlineConfigRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateLlmEvaluationOnlineConfigRequest) {\n    _instance.llmEvaluationOnlineConfig =\n      _instance.llmEvaluationOnlineConfig || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationOnlineConfigRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationOnlineConfig = new LlmEvaluationOnlineConfig();\n          _reader.readMessage(\n            _instance.llmEvaluationOnlineConfig,\n            LlmEvaluationOnlineConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationOnlineConfigRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationOnlineConfigRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationOnlineConfig) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationOnlineConfig as any,\n        LlmEvaluationOnlineConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationOnlineConfig?: LlmEvaluationOnlineConfig;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationOnlineConfigRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateLlmEvaluationOnlineConfigRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationOnlineConfig = _value.llmEvaluationOnlineConfig\n      ? new LlmEvaluationOnlineConfig(_value.llmEvaluationOnlineConfig)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationOnlineConfigRequest.refineValues(this);\n  }\n  get llmEvaluationOnlineConfig(): LlmEvaluationOnlineConfig | undefined {\n    return this._llmEvaluationOnlineConfig;\n  }\n  set llmEvaluationOnlineConfig(value: LlmEvaluationOnlineConfig | undefined) {\n    this._llmEvaluationOnlineConfig = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationOnlineConfigRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationOnlineConfigRequest.AsObject {\n    return {\n      llmEvaluationOnlineConfig: this.llmEvaluationOnlineConfig\n        ? this.llmEvaluationOnlineConfig.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationOnlineConfigRequest.AsProtobufJSON {\n    return {\n      llmEvaluationOnlineConfig: this.llmEvaluationOnlineConfig\n        ? this.llmEvaluationOnlineConfig.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationOnlineConfigRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsObject {\n    llmEvaluationOnlineConfig?: LlmEvaluationOnlineConfig.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationOnlineConfig: LlmEvaluationOnlineConfig.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteLlmEvaluationOnlineConfigRequest\n */\nexport class DeleteLlmEvaluationOnlineConfigRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteLlmEvaluationOnlineConfigRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteLlmEvaluationOnlineConfigRequest();\n    DeleteLlmEvaluationOnlineConfigRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteLlmEvaluationOnlineConfigRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteLlmEvaluationOnlineConfigRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteLlmEvaluationOnlineConfigRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteLlmEvaluationOnlineConfigRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteLlmEvaluationOnlineConfigRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteLlmEvaluationOnlineConfigRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    DeleteLlmEvaluationOnlineConfigRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteLlmEvaluationOnlineConfigRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteLlmEvaluationOnlineConfigRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteLlmEvaluationOnlineConfigRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteLlmEvaluationOnlineConfigRequest {\n  /**\n   * Standard JavaScript object representation for DeleteLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteLlmEvaluationOnlineConfigRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationOnlineResult\n */\nexport class LlmEvaluationOnlineResult implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationOnlineResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationOnlineResult();\n    LlmEvaluationOnlineResult.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationOnlineResult) {\n    _instance.name = _instance.name || '';\n    _instance.llmEvaluationOnlineConfigName =\n      _instance.llmEvaluationOnlineConfigName || '';\n    _instance.sessionName = _instance.sessionName || '';\n    _instance.sessionStepName = _instance.sessionStepName || '';\n    _instance.llmEvaluationFeedbacks = _instance.llmEvaluationFeedbacks || [];\n    _instance.passed = _instance.passed || false;\n    _instance.aggregateScore = _instance.aggregateScore || 0;\n    _instance.evaluatedAt = _instance.evaluatedAt || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationOnlineResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.llmEvaluationOnlineConfigName = _reader.readString();\n          break;\n        case 3:\n          _instance.sessionName = _reader.readString();\n          break;\n        case 4:\n          _instance.sessionStepName = _reader.readString();\n          break;\n        case 5:\n          const messageInitializer5 = new LlmEvaluationFeedback();\n          _reader.readMessage(\n            messageInitializer5,\n            LlmEvaluationFeedback.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationFeedbacks =\n            _instance.llmEvaluationFeedbacks || []).push(messageInitializer5);\n          break;\n        case 6:\n          _instance.passed = _reader.readBool();\n          break;\n        case 7:\n          _instance.aggregateScore = _reader.readDouble();\n          break;\n        case 8:\n          _instance.evaluatedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.evaluatedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 11:\n          _instance.parent = _reader.readString();\n          break;\n        case 12:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationOnlineResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationOnlineResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.llmEvaluationOnlineConfigName) {\n      _writer.writeString(2, _instance.llmEvaluationOnlineConfigName);\n    }\n    if (_instance.sessionName) {\n      _writer.writeString(3, _instance.sessionName);\n    }\n    if (_instance.sessionStepName) {\n      _writer.writeString(4, _instance.sessionStepName);\n    }\n    if (\n      _instance.llmEvaluationFeedbacks &&\n      _instance.llmEvaluationFeedbacks.length\n    ) {\n      _writer.writeRepeatedMessage(\n        5,\n        _instance.llmEvaluationFeedbacks as any,\n        LlmEvaluationFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.passed) {\n      _writer.writeBool(6, _instance.passed);\n    }\n    if (_instance.aggregateScore) {\n      _writer.writeDouble(7, _instance.aggregateScore);\n    }\n    if (_instance.evaluatedAt) {\n      _writer.writeMessage(\n        8,\n        _instance.evaluatedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        9,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(10, _instance.createdBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(11, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(12, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _llmEvaluationOnlineConfigName: string;\n  private _sessionName: string;\n  private _sessionStepName: string;\n  private _llmEvaluationFeedbacks?: LlmEvaluationFeedback[];\n  private _passed: boolean;\n  private _aggregateScore: number;\n  private _evaluatedAt?: googleProtobuf005.Timestamp;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationOnlineResult to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEvaluationOnlineResult.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.llmEvaluationOnlineConfigName = _value.llmEvaluationOnlineConfigName;\n    this.sessionName = _value.sessionName;\n    this.sessionStepName = _value.sessionStepName;\n    this.llmEvaluationFeedbacks = (_value.llmEvaluationFeedbacks || []).map(\n      m => new LlmEvaluationFeedback(m)\n    );\n    this.passed = _value.passed;\n    this.aggregateScore = _value.aggregateScore;\n    this.evaluatedAt = _value.evaluatedAt\n      ? new googleProtobuf005.Timestamp(_value.evaluatedAt)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationOnlineResult.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get llmEvaluationOnlineConfigName(): string {\n    return this._llmEvaluationOnlineConfigName;\n  }\n  set llmEvaluationOnlineConfigName(value: string) {\n    this._llmEvaluationOnlineConfigName = value;\n  }\n  get sessionName(): string {\n    return this._sessionName;\n  }\n  set sessionName(value: string) {\n    this._sessionName = value;\n  }\n  get sessionStepName(): string {\n    return this._sessionStepName;\n  }\n  set sessionStepName(value: string) {\n    this._sessionStepName = value;\n  }\n  get llmEvaluationFeedbacks(): LlmEvaluationFeedback[] | undefined {\n    return this._llmEvaluationFeedbacks;\n  }\n  set llmEvaluationFeedbacks(value: LlmEvaluationFeedback[] | undefined) {\n    this._llmEvaluationFeedbacks = value;\n  }\n  get passed(): boolean {\n    return this._passed;\n  }\n  set passed(value: boolean) {\n    this._passed = value;\n  }\n  get aggregateScore(): number {\n    return this._aggregateScore;\n  }\n  set aggregateScore(value: number) {\n    this._aggregateScore = value;\n  }\n  get evaluatedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._evaluatedAt;\n  }\n  set evaluatedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._evaluatedAt = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationOnlineResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationOnlineResult.AsObject {\n    return {\n      name: this.name,\n      llmEvaluationOnlineConfigName: this.llmEvaluationOnlineConfigName,\n      sessionName: this.sessionName,\n      sessionStepName: this.sessionStepName,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toObject()\n      ),\n      passed: this.passed,\n      aggregateScore: this.aggregateScore,\n      evaluatedAt: this.evaluatedAt ? this.evaluatedAt.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationOnlineResult.AsProtobufJSON {\n    return {\n      name: this.name,\n      llmEvaluationOnlineConfigName: this.llmEvaluationOnlineConfigName,\n      sessionName: this.sessionName,\n      sessionStepName: this.sessionStepName,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      passed: this.passed,\n      aggregateScore: this.aggregateScore,\n      evaluatedAt: this.evaluatedAt\n        ? this.evaluatedAt.toProtobufJSON(options)\n        : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationOnlineResult {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationOnlineResult\n   */\n  export interface AsObject {\n    name: string;\n    llmEvaluationOnlineConfigName: string;\n    sessionName: string;\n    sessionStepName: string;\n    llmEvaluationFeedbacks?: LlmEvaluationFeedback.AsObject[];\n    passed: boolean;\n    aggregateScore: number;\n    evaluatedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationOnlineResult\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    llmEvaluationOnlineConfigName: string;\n    sessionName: string;\n    sessionStepName: string;\n    llmEvaluationFeedbacks: LlmEvaluationFeedback.AsProtobufJSON[] | null;\n    passed: boolean;\n    aggregateScore: number;\n    evaluatedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationOnlineResultRequest\n */\nexport class GetLlmEvaluationOnlineResultRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationOnlineResultRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationOnlineResultRequest();\n    GetLlmEvaluationOnlineResultRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationOnlineResultRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationOnlineResultRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationOnlineResultRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationOnlineResultRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationOnlineResultRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLlmEvaluationOnlineResultRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationOnlineResultRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationOnlineResultRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationOnlineResultRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationOnlineResultRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationOnlineResultRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationOnlineResultRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationOnlineResultRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationOnlineResultFilter\n */\nexport class LlmEvaluationOnlineResultFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationOnlineResultFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationOnlineResultFilter();\n    LlmEvaluationOnlineResultFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationOnlineResultFilter) {\n    _instance.llmEvaluationOnlineConfigName =\n      _instance.llmEvaluationOnlineConfigName || '';\n    _instance.passed = _instance.passed || false;\n    _instance.filterByPassed = _instance.filterByPassed || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationOnlineResultFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationOnlineConfigName = _reader.readString();\n          break;\n        case 2:\n          _instance.passed = _reader.readBool();\n          break;\n        case 3:\n          _instance.filterByPassed = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationOnlineResultFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationOnlineResultFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationOnlineConfigName) {\n      _writer.writeString(1, _instance.llmEvaluationOnlineConfigName);\n    }\n    if (_instance.passed) {\n      _writer.writeBool(2, _instance.passed);\n    }\n    if (_instance.filterByPassed) {\n      _writer.writeBool(3, _instance.filterByPassed);\n    }\n  }\n\n  private _llmEvaluationOnlineConfigName: string;\n  private _passed: boolean;\n  private _filterByPassed: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationOnlineResultFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationOnlineResultFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationOnlineConfigName = _value.llmEvaluationOnlineConfigName;\n    this.passed = _value.passed;\n    this.filterByPassed = _value.filterByPassed;\n    LlmEvaluationOnlineResultFilter.refineValues(this);\n  }\n  get llmEvaluationOnlineConfigName(): string {\n    return this._llmEvaluationOnlineConfigName;\n  }\n  set llmEvaluationOnlineConfigName(value: string) {\n    this._llmEvaluationOnlineConfigName = value;\n  }\n  get passed(): boolean {\n    return this._passed;\n  }\n  set passed(value: boolean) {\n    this._passed = value;\n  }\n  get filterByPassed(): boolean {\n    return this._filterByPassed;\n  }\n  set filterByPassed(value: boolean) {\n    this._filterByPassed = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationOnlineResultFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationOnlineResultFilter.AsObject {\n    return {\n      llmEvaluationOnlineConfigName: this.llmEvaluationOnlineConfigName,\n      passed: this.passed,\n      filterByPassed: this.filterByPassed\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationOnlineResultFilter.AsProtobufJSON {\n    return {\n      llmEvaluationOnlineConfigName: this.llmEvaluationOnlineConfigName,\n      passed: this.passed,\n      filterByPassed: this.filterByPassed\n    };\n  }\n}\nexport module LlmEvaluationOnlineResultFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationOnlineResultFilter\n   */\n  export interface AsObject {\n    llmEvaluationOnlineConfigName: string;\n    passed: boolean;\n    filterByPassed: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationOnlineResultFilter\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationOnlineConfigName: string;\n    passed: boolean;\n    filterByPassed: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationOnlineResultsRequest\n */\nexport class ListLlmEvaluationOnlineResultsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationOnlineResultsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationOnlineResultsRequest();\n    ListLlmEvaluationOnlineResultsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationOnlineResultsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationOnlineResultFilter =\n      _instance.llmEvaluationOnlineResultFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationOnlineResultsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationOnlineResultFilter = new LlmEvaluationOnlineResultFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationOnlineResultFilter,\n            LlmEvaluationOnlineResultFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationOnlineResultsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationOnlineResultsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationOnlineResultFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationOnlineResultFilter as any,\n        LlmEvaluationOnlineResultFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationOnlineResultFilter?: LlmEvaluationOnlineResultFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationOnlineResultsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationOnlineResultsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationOnlineResultFilter = _value.llmEvaluationOnlineResultFilter\n      ? new LlmEvaluationOnlineResultFilter(\n          _value.llmEvaluationOnlineResultFilter\n        )\n      : undefined;\n    ListLlmEvaluationOnlineResultsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationOnlineResultFilter():\n    | LlmEvaluationOnlineResultFilter\n    | undefined {\n    return this._llmEvaluationOnlineResultFilter;\n  }\n  set llmEvaluationOnlineResultFilter(\n    value: LlmEvaluationOnlineResultFilter | undefined\n  ) {\n    this._llmEvaluationOnlineResultFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationOnlineResultsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationOnlineResultsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationOnlineResultFilter: this.llmEvaluationOnlineResultFilter\n        ? this.llmEvaluationOnlineResultFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationOnlineResultsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationOnlineResultFilter: this.llmEvaluationOnlineResultFilter\n        ? this.llmEvaluationOnlineResultFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationOnlineResultsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationOnlineResultsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationOnlineResultFilter?: LlmEvaluationOnlineResultFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationOnlineResultsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationOnlineResultFilter: LlmEvaluationOnlineResultFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationOnlineResultsResponse\n */\nexport class ListLlmEvaluationOnlineResultsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationOnlineResultsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationOnlineResultsResponse();\n    ListLlmEvaluationOnlineResultsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationOnlineResultsResponse) {\n    _instance.llmEvaluationOnlineResults =\n      _instance.llmEvaluationOnlineResults || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationOnlineResultsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationOnlineResult();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationOnlineResult.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationOnlineResults =\n            _instance.llmEvaluationOnlineResults || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationOnlineResultsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationOnlineResultsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationOnlineResults &&\n      _instance.llmEvaluationOnlineResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationOnlineResults as any,\n        LlmEvaluationOnlineResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationOnlineResults?: LlmEvaluationOnlineResult[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationOnlineResultsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLlmEvaluationOnlineResultsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmEvaluationOnlineResults = (\n      _value.llmEvaluationOnlineResults || []\n    ).map(m => new LlmEvaluationOnlineResult(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationOnlineResultsResponse.refineValues(this);\n  }\n  get llmEvaluationOnlineResults(): LlmEvaluationOnlineResult[] | undefined {\n    return this._llmEvaluationOnlineResults;\n  }\n  set llmEvaluationOnlineResults(\n    value: LlmEvaluationOnlineResult[] | undefined\n  ) {\n    this._llmEvaluationOnlineResults = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationOnlineResultsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationOnlineResultsResponse.AsObject {\n    return {\n      llmEvaluationOnlineResults: (\n        this.llmEvaluationOnlineResults || []\n      ).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationOnlineResultsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationOnlineResults: (\n        this.llmEvaluationOnlineResults || []\n      ).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationOnlineResultsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationOnlineResultsResponse\n   */\n  export interface AsObject {\n    llmEvaluationOnlineResults?: LlmEvaluationOnlineResult.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationOnlineResultsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationOnlineResults:\n      | LlmEvaluationOnlineResult.AsProtobufJSON[]\n      | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAnnotationQueueItem\n */\nexport class LlmEvaluationAnnotationQueueItem implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAnnotationQueueItem';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAnnotationQueueItem();\n    LlmEvaluationAnnotationQueueItem.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAnnotationQueueItem) {\n    _instance.name = _instance.name || '';\n    _instance.sessionName = _instance.sessionName || '';\n    _instance.sessionStepName = _instance.sessionStepName || '';\n    _instance.llmEvaluationOnlineResultName =\n      _instance.llmEvaluationOnlineResultName || '';\n    _instance.status = _instance.status || 0;\n    _instance.assignedTo = _instance.assignedTo || '';\n    _instance.reason = _instance.reason || '';\n    _instance.llmEvaluationDatasetName =\n      _instance.llmEvaluationDatasetName || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAnnotationQueueItem,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionName = _reader.readString();\n          break;\n        case 3:\n          _instance.sessionStepName = _reader.readString();\n          break;\n        case 4:\n          _instance.llmEvaluationOnlineResultName = _reader.readString();\n          break;\n        case 5:\n          _instance.status = _reader.readEnum();\n          break;\n        case 6:\n          _instance.assignedTo = _reader.readString();\n          break;\n        case 7:\n          _instance.reason = _reader.readString();\n          break;\n        case 8:\n          _instance.llmEvaluationDatasetName = _reader.readString();\n          break;\n        case 9:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 11:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 13:\n          _instance.parent = _reader.readString();\n          break;\n        case 14:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAnnotationQueueItem.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAnnotationQueueItem,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.sessionName) {\n      _writer.writeString(2, _instance.sessionName);\n    }\n    if (_instance.sessionStepName) {\n      _writer.writeString(3, _instance.sessionStepName);\n    }\n    if (_instance.llmEvaluationOnlineResultName) {\n      _writer.writeString(4, _instance.llmEvaluationOnlineResultName);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(5, _instance.status);\n    }\n    if (_instance.assignedTo) {\n      _writer.writeString(6, _instance.assignedTo);\n    }\n    if (_instance.reason) {\n      _writer.writeString(7, _instance.reason);\n    }\n    if (_instance.llmEvaluationDatasetName) {\n      _writer.writeString(8, _instance.llmEvaluationDatasetName);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        9,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(10, _instance.createdBy);\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        11,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(12, _instance.modifiedBy);\n    }\n    if (_instance.parent) {\n      _writer.writeString(13, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(14, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _sessionName: string;\n  private _sessionStepName: string;\n  private _llmEvaluationOnlineResultName: string;\n  private _status: LlmEvaluationAnnotationStatus;\n  private _assignedTo: string;\n  private _reason: string;\n  private _llmEvaluationDatasetName: string;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _modifiedBy: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAnnotationQueueItem to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAnnotationQueueItem.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.sessionName = _value.sessionName;\n    this.sessionStepName = _value.sessionStepName;\n    this.llmEvaluationOnlineResultName = _value.llmEvaluationOnlineResultName;\n    this.status = _value.status;\n    this.assignedTo = _value.assignedTo;\n    this.reason = _value.reason;\n    this.llmEvaluationDatasetName = _value.llmEvaluationDatasetName;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.modifiedBy = _value.modifiedBy;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    LlmEvaluationAnnotationQueueItem.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get sessionName(): string {\n    return this._sessionName;\n  }\n  set sessionName(value: string) {\n    this._sessionName = value;\n  }\n  get sessionStepName(): string {\n    return this._sessionStepName;\n  }\n  set sessionStepName(value: string) {\n    this._sessionStepName = value;\n  }\n  get llmEvaluationOnlineResultName(): string {\n    return this._llmEvaluationOnlineResultName;\n  }\n  set llmEvaluationOnlineResultName(value: string) {\n    this._llmEvaluationOnlineResultName = value;\n  }\n  get status(): LlmEvaluationAnnotationStatus {\n    return this._status;\n  }\n  set status(value: LlmEvaluationAnnotationStatus) {\n    this._status = value;\n  }\n  get assignedTo(): string {\n    return this._assignedTo;\n  }\n  set assignedTo(value: string) {\n    this._assignedTo = value;\n  }\n  get reason(): string {\n    return this._reason;\n  }\n  set reason(value: string) {\n    this._reason = value;\n  }\n  get llmEvaluationDatasetName(): string {\n    return this._llmEvaluationDatasetName;\n  }\n  set llmEvaluationDatasetName(value: string) {\n    this._llmEvaluationDatasetName = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAnnotationQueueItem.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAnnotationQueueItem.AsObject {\n    return {\n      name: this.name,\n      sessionName: this.sessionName,\n      sessionStepName: this.sessionStepName,\n      llmEvaluationOnlineResultName: this.llmEvaluationOnlineResultName,\n      status: this.status,\n      assignedTo: this.assignedTo,\n      reason: this.reason,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAnnotationQueueItem.AsProtobufJSON {\n    return {\n      name: this.name,\n      sessionName: this.sessionName,\n      sessionStepName: this.sessionStepName,\n      llmEvaluationOnlineResultName: this.llmEvaluationOnlineResultName,\n      status:\n        LlmEvaluationAnnotationStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      assignedTo: this.assignedTo,\n      reason: this.reason,\n      llmEvaluationDatasetName: this.llmEvaluationDatasetName,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      modifiedBy: this.modifiedBy,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module LlmEvaluationAnnotationQueueItem {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAnnotationQueueItem\n   */\n  export interface AsObject {\n    name: string;\n    sessionName: string;\n    sessionStepName: string;\n    llmEvaluationOnlineResultName: string;\n    status: LlmEvaluationAnnotationStatus;\n    assignedTo: string;\n    reason: string;\n    llmEvaluationDatasetName: string;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAnnotationQueueItem\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    sessionName: string;\n    sessionStepName: string;\n    llmEvaluationOnlineResultName: string;\n    status: string;\n    assignedTo: string;\n    reason: string;\n    llmEvaluationDatasetName: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedBy: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLlmEvaluationAnnotationQueueItemRequest\n */\nexport class GetLlmEvaluationAnnotationQueueItemRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLlmEvaluationAnnotationQueueItemRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLlmEvaluationAnnotationQueueItemRequest();\n    GetLlmEvaluationAnnotationQueueItemRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLlmEvaluationAnnotationQueueItemRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLlmEvaluationAnnotationQueueItemRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.parent = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLlmEvaluationAnnotationQueueItemRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLlmEvaluationAnnotationQueueItemRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(3, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLlmEvaluationAnnotationQueueItemRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      GetLlmEvaluationAnnotationQueueItemRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    GetLlmEvaluationAnnotationQueueItemRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLlmEvaluationAnnotationQueueItemRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLlmEvaluationAnnotationQueueItemRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLlmEvaluationAnnotationQueueItemRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetLlmEvaluationAnnotationQueueItemRequest {\n  /**\n   * Standard JavaScript object representation for GetLlmEvaluationAnnotationQueueItemRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLlmEvaluationAnnotationQueueItemRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEvaluationAnnotationQueueItemFilter\n */\nexport class LlmEvaluationAnnotationQueueItemFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEvaluationAnnotationQueueItemFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEvaluationAnnotationQueueItemFilter();\n    LlmEvaluationAnnotationQueueItemFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEvaluationAnnotationQueueItemFilter) {\n    _instance.status = _instance.status || 0;\n    _instance.assignedTo = _instance.assignedTo || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEvaluationAnnotationQueueItemFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.status = _reader.readEnum();\n          break;\n        case 2:\n          _instance.assignedTo = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEvaluationAnnotationQueueItemFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEvaluationAnnotationQueueItemFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.status) {\n      _writer.writeEnum(1, _instance.status);\n    }\n    if (_instance.assignedTo) {\n      _writer.writeString(2, _instance.assignedTo);\n    }\n  }\n\n  private _status: LlmEvaluationAnnotationStatus;\n  private _assignedTo: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEvaluationAnnotationQueueItemFilter to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmEvaluationAnnotationQueueItemFilter.AsObject>\n  ) {\n    _value = _value || {};\n    this.status = _value.status;\n    this.assignedTo = _value.assignedTo;\n    LlmEvaluationAnnotationQueueItemFilter.refineValues(this);\n  }\n  get status(): LlmEvaluationAnnotationStatus {\n    return this._status;\n  }\n  set status(value: LlmEvaluationAnnotationStatus) {\n    this._status = value;\n  }\n  get assignedTo(): string {\n    return this._assignedTo;\n  }\n  set assignedTo(value: string) {\n    this._assignedTo = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEvaluationAnnotationQueueItemFilter.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEvaluationAnnotationQueueItemFilter.AsObject {\n    return {\n      status: this.status,\n      assignedTo: this.assignedTo\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEvaluationAnnotationQueueItemFilter.AsProtobufJSON {\n    return {\n      status:\n        LlmEvaluationAnnotationStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      assignedTo: this.assignedTo\n    };\n  }\n}\nexport module LlmEvaluationAnnotationQueueItemFilter {\n  /**\n   * Standard JavaScript object representation for LlmEvaluationAnnotationQueueItemFilter\n   */\n  export interface AsObject {\n    status: LlmEvaluationAnnotationStatus;\n    assignedTo: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEvaluationAnnotationQueueItemFilter\n   */\n  export interface AsProtobufJSON {\n    status: string;\n    assignedTo: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationAnnotationQueueItemsRequest\n */\nexport class ListLlmEvaluationAnnotationQueueItemsRequest\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationAnnotationQueueItemsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationAnnotationQueueItemsRequest();\n    ListLlmEvaluationAnnotationQueueItemsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmEvaluationAnnotationQueueItemsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.llmEvaluationAnnotationQueueItemFilter =\n      _instance.llmEvaluationAnnotationQueueItemFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationAnnotationQueueItemsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.llmEvaluationAnnotationQueueItemFilter = new LlmEvaluationAnnotationQueueItemFilter();\n          _reader.readMessage(\n            _instance.llmEvaluationAnnotationQueueItemFilter,\n            LlmEvaluationAnnotationQueueItemFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationAnnotationQueueItemsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationAnnotationQueueItemsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.llmEvaluationAnnotationQueueItemFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.llmEvaluationAnnotationQueueItemFilter as any,\n        LlmEvaluationAnnotationQueueItemFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _languageCode: string;\n  private _llmEvaluationAnnotationQueueItemFilter?: LlmEvaluationAnnotationQueueItemFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationAnnotationQueueItemsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListLlmEvaluationAnnotationQueueItemsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.llmEvaluationAnnotationQueueItemFilter = _value.llmEvaluationAnnotationQueueItemFilter\n      ? new LlmEvaluationAnnotationQueueItemFilter(\n          _value.llmEvaluationAnnotationQueueItemFilter\n        )\n      : undefined;\n    ListLlmEvaluationAnnotationQueueItemsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get llmEvaluationAnnotationQueueItemFilter():\n    | LlmEvaluationAnnotationQueueItemFilter\n    | undefined {\n    return this._llmEvaluationAnnotationQueueItemFilter;\n  }\n  set llmEvaluationAnnotationQueueItemFilter(\n    value: LlmEvaluationAnnotationQueueItemFilter | undefined\n  ) {\n    this._llmEvaluationAnnotationQueueItemFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationAnnotationQueueItemsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationAnnotationQueueItemsRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      languageCode: this.languageCode,\n      llmEvaluationAnnotationQueueItemFilter: this\n        .llmEvaluationAnnotationQueueItemFilter\n        ? this.llmEvaluationAnnotationQueueItemFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationAnnotationQueueItemsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      languageCode: this.languageCode,\n      llmEvaluationAnnotationQueueItemFilter: this\n        .llmEvaluationAnnotationQueueItemFilter\n        ? this.llmEvaluationAnnotationQueueItemFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListLlmEvaluationAnnotationQueueItemsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationAnnotationQueueItemsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    languageCode: string;\n    llmEvaluationAnnotationQueueItemFilter?: LlmEvaluationAnnotationQueueItemFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationAnnotationQueueItemsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    languageCode: string;\n    llmEvaluationAnnotationQueueItemFilter: LlmEvaluationAnnotationQueueItemFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmEvaluationAnnotationQueueItemsResponse\n */\nexport class ListLlmEvaluationAnnotationQueueItemsResponse\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmEvaluationAnnotationQueueItemsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmEvaluationAnnotationQueueItemsResponse();\n    ListLlmEvaluationAnnotationQueueItemsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: ListLlmEvaluationAnnotationQueueItemsResponse\n  ) {\n    _instance.llmEvaluationAnnotationQueueItems =\n      _instance.llmEvaluationAnnotationQueueItems || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmEvaluationAnnotationQueueItemsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationAnnotationQueueItem();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationAnnotationQueueItem.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationAnnotationQueueItems =\n            _instance.llmEvaluationAnnotationQueueItems || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmEvaluationAnnotationQueueItemsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmEvaluationAnnotationQueueItemsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationAnnotationQueueItems &&\n      _instance.llmEvaluationAnnotationQueueItems.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationAnnotationQueueItems as any,\n        LlmEvaluationAnnotationQueueItem.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _llmEvaluationAnnotationQueueItems?: LlmEvaluationAnnotationQueueItem[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmEvaluationAnnotationQueueItemsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListLlmEvaluationAnnotationQueueItemsResponse.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAnnotationQueueItems = (\n      _value.llmEvaluationAnnotationQueueItems || []\n    ).map(m => new LlmEvaluationAnnotationQueueItem(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListLlmEvaluationAnnotationQueueItemsResponse.refineValues(this);\n  }\n  get llmEvaluationAnnotationQueueItems():\n    | LlmEvaluationAnnotationQueueItem[]\n    | undefined {\n    return this._llmEvaluationAnnotationQueueItems;\n  }\n  set llmEvaluationAnnotationQueueItems(\n    value: LlmEvaluationAnnotationQueueItem[] | undefined\n  ) {\n    this._llmEvaluationAnnotationQueueItems = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmEvaluationAnnotationQueueItemsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmEvaluationAnnotationQueueItemsResponse.AsObject {\n    return {\n      llmEvaluationAnnotationQueueItems: (\n        this.llmEvaluationAnnotationQueueItems || []\n      ).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmEvaluationAnnotationQueueItemsResponse.AsProtobufJSON {\n    return {\n      llmEvaluationAnnotationQueueItems: (\n        this.llmEvaluationAnnotationQueueItems || []\n      ).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListLlmEvaluationAnnotationQueueItemsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmEvaluationAnnotationQueueItemsResponse\n   */\n  export interface AsObject {\n    llmEvaluationAnnotationQueueItems?: LlmEvaluationAnnotationQueueItem.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmEvaluationAnnotationQueueItemsResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAnnotationQueueItems:\n      | LlmEvaluationAnnotationQueueItem.AsProtobufJSON[]\n      | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateLlmEvaluationAnnotationQueueItemRequest\n */\nexport class UpdateLlmEvaluationAnnotationQueueItemRequest\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateLlmEvaluationAnnotationQueueItemRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateLlmEvaluationAnnotationQueueItemRequest();\n    UpdateLlmEvaluationAnnotationQueueItemRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: UpdateLlmEvaluationAnnotationQueueItemRequest\n  ) {\n    _instance.llmEvaluationAnnotationQueueItem =\n      _instance.llmEvaluationAnnotationQueueItem || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateLlmEvaluationAnnotationQueueItemRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmEvaluationAnnotationQueueItem = new LlmEvaluationAnnotationQueueItem();\n          _reader.readMessage(\n            _instance.llmEvaluationAnnotationQueueItem,\n            LlmEvaluationAnnotationQueueItem.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.parent = _reader.readString();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateLlmEvaluationAnnotationQueueItemRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateLlmEvaluationAnnotationQueueItemRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmEvaluationAnnotationQueueItem) {\n      _writer.writeMessage(\n        1,\n        _instance.llmEvaluationAnnotationQueueItem as any,\n        LlmEvaluationAnnotationQueueItem.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(4, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _llmEvaluationAnnotationQueueItem?: LlmEvaluationAnnotationQueueItem;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateLlmEvaluationAnnotationQueueItemRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      UpdateLlmEvaluationAnnotationQueueItemRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.llmEvaluationAnnotationQueueItem = _value.llmEvaluationAnnotationQueueItem\n      ? new LlmEvaluationAnnotationQueueItem(\n          _value.llmEvaluationAnnotationQueueItem\n        )\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    UpdateLlmEvaluationAnnotationQueueItemRequest.refineValues(this);\n  }\n  get llmEvaluationAnnotationQueueItem():\n    | LlmEvaluationAnnotationQueueItem\n    | undefined {\n    return this._llmEvaluationAnnotationQueueItem;\n  }\n  set llmEvaluationAnnotationQueueItem(\n    value: LlmEvaluationAnnotationQueueItem | undefined\n  ) {\n    this._llmEvaluationAnnotationQueueItem = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateLlmEvaluationAnnotationQueueItemRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateLlmEvaluationAnnotationQueueItemRequest.AsObject {\n    return {\n      llmEvaluationAnnotationQueueItem: this.llmEvaluationAnnotationQueueItem\n        ? this.llmEvaluationAnnotationQueueItem.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateLlmEvaluationAnnotationQueueItemRequest.AsProtobufJSON {\n    return {\n      llmEvaluationAnnotationQueueItem: this.llmEvaluationAnnotationQueueItem\n        ? this.llmEvaluationAnnotationQueueItem.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module UpdateLlmEvaluationAnnotationQueueItemRequest {\n  /**\n   * Standard JavaScript object representation for UpdateLlmEvaluationAnnotationQueueItemRequest\n   */\n  export interface AsObject {\n    llmEvaluationAnnotationQueueItem?: LlmEvaluationAnnotationQueueItem.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateLlmEvaluationAnnotationQueueItemRequest\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationAnnotationQueueItem: LlmEvaluationAnnotationQueueItem.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.PromoteLlmEvaluationAnnotationQueueItemRequest\n */\nexport class PromoteLlmEvaluationAnnotationQueueItemRequest\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.PromoteLlmEvaluationAnnotationQueueItemRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new PromoteLlmEvaluationAnnotationQueueItemRequest();\n    PromoteLlmEvaluationAnnotationQueueItemRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: PromoteLlmEvaluationAnnotationQueueItemRequest\n  ) {\n    _instance.name = _instance.name || '';\n    _instance.targetDatasetName = _instance.targetDatasetName || '';\n    _instance.llmEvaluationExampleExtractionMode =\n      _instance.llmEvaluationExampleExtractionMode || 0;\n    _instance.includeToolCalls = _instance.includeToolCalls || false;\n    _instance.includeRetrievalContext =\n      _instance.includeRetrievalContext || false;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: PromoteLlmEvaluationAnnotationQueueItemRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.targetDatasetName = _reader.readString();\n          break;\n        case 3:\n          _instance.llmEvaluationExampleExtractionMode = _reader.readEnum();\n          break;\n        case 4:\n          _instance.includeToolCalls = _reader.readBool();\n          break;\n        case 5:\n          _instance.includeRetrievalContext = _reader.readBool();\n          break;\n        case 6:\n          _instance.parent = _reader.readString();\n          break;\n        case 7:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    PromoteLlmEvaluationAnnotationQueueItemRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: PromoteLlmEvaluationAnnotationQueueItemRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.targetDatasetName) {\n      _writer.writeString(2, _instance.targetDatasetName);\n    }\n    if (_instance.llmEvaluationExampleExtractionMode) {\n      _writer.writeEnum(3, _instance.llmEvaluationExampleExtractionMode);\n    }\n    if (_instance.includeToolCalls) {\n      _writer.writeBool(4, _instance.includeToolCalls);\n    }\n    if (_instance.includeRetrievalContext) {\n      _writer.writeBool(5, _instance.includeRetrievalContext);\n    }\n    if (_instance.parent) {\n      _writer.writeString(6, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(7, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _targetDatasetName: string;\n  private _llmEvaluationExampleExtractionMode: LlmEvaluationExampleExtractionMode;\n  private _includeToolCalls: boolean;\n  private _includeRetrievalContext: boolean;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of PromoteLlmEvaluationAnnotationQueueItemRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      PromoteLlmEvaluationAnnotationQueueItemRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.targetDatasetName = _value.targetDatasetName;\n    this.llmEvaluationExampleExtractionMode =\n      _value.llmEvaluationExampleExtractionMode;\n    this.includeToolCalls = _value.includeToolCalls;\n    this.includeRetrievalContext = _value.includeRetrievalContext;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    PromoteLlmEvaluationAnnotationQueueItemRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get targetDatasetName(): string {\n    return this._targetDatasetName;\n  }\n  set targetDatasetName(value: string) {\n    this._targetDatasetName = value;\n  }\n  get llmEvaluationExampleExtractionMode(): LlmEvaluationExampleExtractionMode {\n    return this._llmEvaluationExampleExtractionMode;\n  }\n  set llmEvaluationExampleExtractionMode(\n    value: LlmEvaluationExampleExtractionMode\n  ) {\n    this._llmEvaluationExampleExtractionMode = value;\n  }\n  get includeToolCalls(): boolean {\n    return this._includeToolCalls;\n  }\n  set includeToolCalls(value: boolean) {\n    this._includeToolCalls = value;\n  }\n  get includeRetrievalContext(): boolean {\n    return this._includeRetrievalContext;\n  }\n  set includeRetrievalContext(value: boolean) {\n    this._includeRetrievalContext = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    PromoteLlmEvaluationAnnotationQueueItemRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): PromoteLlmEvaluationAnnotationQueueItemRequest.AsObject {\n    return {\n      name: this.name,\n      targetDatasetName: this.targetDatasetName,\n      llmEvaluationExampleExtractionMode: this\n        .llmEvaluationExampleExtractionMode,\n      includeToolCalls: this.includeToolCalls,\n      includeRetrievalContext: this.includeRetrievalContext,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): PromoteLlmEvaluationAnnotationQueueItemRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      targetDatasetName: this.targetDatasetName,\n      llmEvaluationExampleExtractionMode:\n        LlmEvaluationExampleExtractionMode[\n          this.llmEvaluationExampleExtractionMode === null ||\n          this.llmEvaluationExampleExtractionMode === undefined\n            ? 0\n            : this.llmEvaluationExampleExtractionMode\n        ],\n      includeToolCalls: this.includeToolCalls,\n      includeRetrievalContext: this.includeRetrievalContext,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module PromoteLlmEvaluationAnnotationQueueItemRequest {\n  /**\n   * Standard JavaScript object representation for PromoteLlmEvaluationAnnotationQueueItemRequest\n   */\n  export interface AsObject {\n    name: string;\n    targetDatasetName: string;\n    llmEvaluationExampleExtractionMode: LlmEvaluationExampleExtractionMode;\n    includeToolCalls: boolean;\n    includeRetrievalContext: boolean;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for PromoteLlmEvaluationAnnotationQueueItemRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    targetDatasetName: string;\n    llmEvaluationExampleExtractionMode: string;\n    includeToolCalls: boolean;\n    includeRetrievalContext: boolean;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.PromoteLlmEvaluationAnnotationQueueItemResponse\n */\nexport class PromoteLlmEvaluationAnnotationQueueItemResponse\n  implements GrpcMessage {\n  static id = 'ondewo.nlu.PromoteLlmEvaluationAnnotationQueueItemResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new PromoteLlmEvaluationAnnotationQueueItemResponse();\n    PromoteLlmEvaluationAnnotationQueueItemResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(\n    _instance: PromoteLlmEvaluationAnnotationQueueItemResponse\n  ) {\n    _instance.llmEvaluationExamples = _instance.llmEvaluationExamples || [];\n    _instance.llmEvaluationAnnotationQueueItem =\n      _instance.llmEvaluationAnnotationQueueItem || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: PromoteLlmEvaluationAnnotationQueueItemResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmEvaluationExample();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmEvaluationExample.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationExamples =\n            _instance.llmEvaluationExamples || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.llmEvaluationAnnotationQueueItem = new LlmEvaluationAnnotationQueueItem();\n          _reader.readMessage(\n            _instance.llmEvaluationAnnotationQueueItem,\n            LlmEvaluationAnnotationQueueItem.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    PromoteLlmEvaluationAnnotationQueueItemResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: PromoteLlmEvaluationAnnotationQueueItemResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmEvaluationExamples &&\n      _instance.llmEvaluationExamples.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmEvaluationExamples as any,\n        LlmEvaluationExample.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEvaluationAnnotationQueueItem) {\n      _writer.writeMessage(\n        2,\n        _instance.llmEvaluationAnnotationQueueItem as any,\n        LlmEvaluationAnnotationQueueItem.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmEvaluationExamples?: LlmEvaluationExample[];\n  private _llmEvaluationAnnotationQueueItem?: LlmEvaluationAnnotationQueueItem;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of PromoteLlmEvaluationAnnotationQueueItemResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      PromoteLlmEvaluationAnnotationQueueItemResponse.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.llmEvaluationExamples = (_value.llmEvaluationExamples || []).map(\n      m => new LlmEvaluationExample(m)\n    );\n    this.llmEvaluationAnnotationQueueItem = _value.llmEvaluationAnnotationQueueItem\n      ? new LlmEvaluationAnnotationQueueItem(\n          _value.llmEvaluationAnnotationQueueItem\n        )\n      : undefined;\n    PromoteLlmEvaluationAnnotationQueueItemResponse.refineValues(this);\n  }\n  get llmEvaluationExamples(): LlmEvaluationExample[] | undefined {\n    return this._llmEvaluationExamples;\n  }\n  set llmEvaluationExamples(value: LlmEvaluationExample[] | undefined) {\n    this._llmEvaluationExamples = value;\n  }\n  get llmEvaluationAnnotationQueueItem():\n    | LlmEvaluationAnnotationQueueItem\n    | undefined {\n    return this._llmEvaluationAnnotationQueueItem;\n  }\n  set llmEvaluationAnnotationQueueItem(\n    value: LlmEvaluationAnnotationQueueItem | undefined\n  ) {\n    this._llmEvaluationAnnotationQueueItem = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    PromoteLlmEvaluationAnnotationQueueItemResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): PromoteLlmEvaluationAnnotationQueueItemResponse.AsObject {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toObject()\n      ),\n      llmEvaluationAnnotationQueueItem: this.llmEvaluationAnnotationQueueItem\n        ? this.llmEvaluationAnnotationQueueItem.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): PromoteLlmEvaluationAnnotationQueueItemResponse.AsProtobufJSON {\n    return {\n      llmEvaluationExamples: (this.llmEvaluationExamples || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      llmEvaluationAnnotationQueueItem: this.llmEvaluationAnnotationQueueItem\n        ? this.llmEvaluationAnnotationQueueItem.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module PromoteLlmEvaluationAnnotationQueueItemResponse {\n  /**\n   * Standard JavaScript object representation for PromoteLlmEvaluationAnnotationQueueItemResponse\n   */\n  export interface AsObject {\n    llmEvaluationExamples?: LlmEvaluationExample.AsObject[];\n    llmEvaluationAnnotationQueueItem?: LlmEvaluationAnnotationQueueItem.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for PromoteLlmEvaluationAnnotationQueueItemResponse\n   */\n  export interface AsProtobufJSON {\n    llmEvaluationExamples: LlmEvaluationExample.AsProtobufJSON[] | null;\n    llmEvaluationAnnotationQueueItem: LlmEvaluationAnnotationQueueItem.AsProtobufJSON | null;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions,\n  uint8ArrayToBase64\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu006 from '../../ondewo/nlu/common.pb';\nimport * as googleApi007 from '../../google/api/annotations.pb';\nimport * as googleProtobuf008 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operations.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/context.pb';\nimport * as googleRpc011 from '../../google/rpc/status.pb';\nimport * as googleType012 from '../../google/type/latlng.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/llm-evaluation.pb';\nexport enum TranscriptionType {\n  TRANSCRIPTION_TYPE_UNSPECIFIED = 0,\n  TRANSCRIPTION_TYPE_S2T = 1,\n  TRANSCRIPTION_TYPE_HUMAN = 2\n}\nexport enum ReasoningEffort {\n  REASONING_EFFORT_UNSPECIFIED = 0,\n  REASONING_EFFORT_MINIMAL = 1,\n  REASONING_EFFORT_LOW = 2,\n  REASONING_EFFORT_MEDIUM = 3,\n  REASONING_EFFORT_HIGH = 4\n}\nexport enum LlmSafetyLocation {\n  LLM_SAFETY_LOCATION_UNSPECIFIED = 0,\n  LLM_SAFETY_LOCATION_INPUT = 1,\n  LLM_SAFETY_LOCATION_OUTPUT = 2\n}\nexport enum AudioEncoding {\n  AUDIO_ENCODING_UNSPECIFIED = 0,\n  AUDIO_ENCODING_LINEAR_16 = 1,\n  AUDIO_ENCODING_FLAC = 2,\n  AUDIO_ENCODING_MULAW = 3,\n  AUDIO_ENCODING_AMR = 4,\n  AUDIO_ENCODING_AMR_WB = 5,\n  AUDIO_ENCODING_OGG_OPUS = 6,\n  AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE = 7\n}\nexport enum ComparisonOperator {\n  EQUAL = 0,\n  GREATER = 1,\n  GREATER_OR_EQUAL = 2,\n  LESS_OR_EQUAL = 3,\n  CONTAINS = 4,\n  STARTS_WITH = 5,\n  ENDS_WITH = 6\n}\nexport enum FeedbackRating {\n  FEEDBACK_RATING_UNSPECIFIED = 0,\n  FEEDBACK_RATING_THUMBS_UP = 1,\n  FEEDBACK_RATING_THUMBS_DOWN = 2\n}\nexport enum FeedbackAuthorType {\n  FEEDBACK_AUTHOR_TYPE_UNSPECIFIED = 0,\n  FEEDBACK_AUTHOR_TYPE_HUMAN_REVIEWER = 1,\n  FEEDBACK_AUTHOR_TYPE_TECHNICAL_USER = 2,\n  FEEDBACK_AUTHOR_TYPE_END_USER_ANONYMOUS = 3\n}\nexport enum FeedbackScope {\n  FEEDBACK_SCOPE_UNSPECIFIED = 0,\n  FEEDBACK_SCOPE_SESSION_LEVEL = 1,\n  FEEDBACK_SCOPE_STEP_LEVEL = 2\n}\nexport enum FeedbackTimeGranularity {\n  FEEDBACK_TIME_GRANULARITY_UNSPECIFIED = 0,\n  FEEDBACK_TIME_GRANULARITY_HOUR = 1,\n  FEEDBACK_TIME_GRANULARITY_DAY = 2,\n  FEEDBACK_TIME_GRANULARITY_WEEK = 3,\n  FEEDBACK_TIME_GRANULARITY_MONTH = 4,\n  FEEDBACK_TIME_GRANULARITY_YEAR = 5\n}\nexport enum ResourceView {\n  RESOURCE_VIEW_UNSPECIFIED = 0,\n  RESOURCE_VIEW_FULL = 1,\n  RESOURCE_VIEW_PARTIAL = 2,\n  RESOURCE_VIEW_MINIMUM = 3\n}\nexport enum AudioFileResourceType {\n  AUDIO_FILE_RESOURCE_TYPE_UNSPECIFIED = 0,\n  AUDIO_FILE_RESOURCE_TYPE_T2S = 1,\n  AUDIO_FILE_RESOURCE_TYPE_S2T = 2,\n  AUDIO_FILE_RESOURCE_TYPE_S2T_AND_T2S = 3\n}\n/**\n * Message implementation for ondewo.nlu.DetectIntentRequest\n */\nexport class DetectIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DetectIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DetectIntentRequest();\n    DetectIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DetectIntentRequest) {\n    _instance.session = _instance.session || '';\n    _instance.queryParams = _instance.queryParams || undefined;\n    _instance.queryInput = _instance.queryInput || undefined;\n    _instance.inputAudio = _instance.inputAudio || new Uint8Array();\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DetectIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.session = _reader.readString();\n          break;\n        case 2:\n          _instance.queryParams = new QueryParameters();\n          _reader.readMessage(\n            _instance.queryParams,\n            QueryParameters.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.queryInput = new QueryInput();\n          _reader.readMessage(\n            _instance.queryInput,\n            QueryInput.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.inputAudio = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DetectIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DetectIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.session) {\n      _writer.writeString(1, _instance.session);\n    }\n    if (_instance.queryParams) {\n      _writer.writeMessage(\n        2,\n        _instance.queryParams as any,\n        QueryParameters.serializeBinaryToWriter\n      );\n    }\n    if (_instance.queryInput) {\n      _writer.writeMessage(\n        3,\n        _instance.queryInput as any,\n        QueryInput.serializeBinaryToWriter\n      );\n    }\n    if (_instance.inputAudio && _instance.inputAudio.length) {\n      _writer.writeBytes(5, _instance.inputAudio);\n    }\n  }\n\n  private _session: string;\n  private _queryParams?: QueryParameters;\n  private _queryInput?: QueryInput;\n  private _inputAudio: Uint8Array;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DetectIntentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DetectIntentRequest.AsObject>) {\n    _value = _value || {};\n    this.session = _value.session;\n    this.queryParams = _value.queryParams\n      ? new QueryParameters(_value.queryParams)\n      : undefined;\n    this.queryInput = _value.queryInput\n      ? new QueryInput(_value.queryInput)\n      : undefined;\n    this.inputAudio = _value.inputAudio;\n    DetectIntentRequest.refineValues(this);\n  }\n  get session(): string {\n    return this._session;\n  }\n  set session(value: string) {\n    this._session = value;\n  }\n  get queryParams(): QueryParameters | undefined {\n    return this._queryParams;\n  }\n  set queryParams(value: QueryParameters | undefined) {\n    this._queryParams = value;\n  }\n  get queryInput(): QueryInput | undefined {\n    return this._queryInput;\n  }\n  set queryInput(value: QueryInput | undefined) {\n    this._queryInput = value;\n  }\n  get inputAudio(): Uint8Array {\n    return this._inputAudio;\n  }\n  set inputAudio(value: Uint8Array) {\n    this._inputAudio = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DetectIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DetectIntentRequest.AsObject {\n    return {\n      session: this.session,\n      queryParams: this.queryParams ? this.queryParams.toObject() : undefined,\n      queryInput: this.queryInput ? this.queryInput.toObject() : undefined,\n      inputAudio: this.inputAudio\n        ? this.inputAudio.subarray(0)\n        : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DetectIntentRequest.AsProtobufJSON {\n    return {\n      session: this.session,\n      queryParams: this.queryParams\n        ? this.queryParams.toProtobufJSON(options)\n        : null,\n      queryInput: this.queryInput\n        ? this.queryInput.toProtobufJSON(options)\n        : null,\n      inputAudio: this.inputAudio ? uint8ArrayToBase64(this.inputAudio) : ''\n    };\n  }\n}\nexport module DetectIntentRequest {\n  /**\n   * Standard JavaScript object representation for DetectIntentRequest\n   */\n  export interface AsObject {\n    session: string;\n    queryParams?: QueryParameters.AsObject;\n    queryInput?: QueryInput.AsObject;\n    inputAudio: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for DetectIntentRequest\n   */\n  export interface AsProtobufJSON {\n    session: string;\n    queryParams: QueryParameters.AsProtobufJSON | null;\n    queryInput: QueryInput.AsProtobufJSON | null;\n    inputAudio: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DetectIntentResponse\n */\nexport class DetectIntentResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.DetectIntentResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DetectIntentResponse();\n    DetectIntentResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DetectIntentResponse) {\n    _instance.responseId = _instance.responseId || '';\n    _instance.queryResult = _instance.queryResult || undefined;\n    _instance.webhookStatus = _instance.webhookStatus || undefined;\n    _instance.llmTelemetryReport = _instance.llmTelemetryReport || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DetectIntentResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.responseId = _reader.readString();\n          break;\n        case 2:\n          _instance.queryResult = new QueryResult();\n          _reader.readMessage(\n            _instance.queryResult,\n            QueryResult.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.webhookStatus = new googleRpc011.Status();\n          _reader.readMessage(\n            _instance.webhookStatus,\n            googleRpc011.Status.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.llmTelemetryReport = new LlmTelemetryReport();\n          _reader.readMessage(\n            _instance.llmTelemetryReport,\n            LlmTelemetryReport.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DetectIntentResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DetectIntentResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.responseId) {\n      _writer.writeString(1, _instance.responseId);\n    }\n    if (_instance.queryResult) {\n      _writer.writeMessage(\n        2,\n        _instance.queryResult as any,\n        QueryResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.webhookStatus) {\n      _writer.writeMessage(\n        3,\n        _instance.webhookStatus as any,\n        googleRpc011.Status.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmTelemetryReport) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTelemetryReport as any,\n        LlmTelemetryReport.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _responseId: string;\n  private _queryResult?: QueryResult;\n  private _webhookStatus?: googleRpc011.Status;\n  private _llmTelemetryReport?: LlmTelemetryReport;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DetectIntentResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DetectIntentResponse.AsObject>) {\n    _value = _value || {};\n    this.responseId = _value.responseId;\n    this.queryResult = _value.queryResult\n      ? new QueryResult(_value.queryResult)\n      : undefined;\n    this.webhookStatus = _value.webhookStatus\n      ? new googleRpc011.Status(_value.webhookStatus)\n      : undefined;\n    this.llmTelemetryReport = _value.llmTelemetryReport\n      ? new LlmTelemetryReport(_value.llmTelemetryReport)\n      : undefined;\n    DetectIntentResponse.refineValues(this);\n  }\n  get responseId(): string {\n    return this._responseId;\n  }\n  set responseId(value: string) {\n    this._responseId = value;\n  }\n  get queryResult(): QueryResult | undefined {\n    return this._queryResult;\n  }\n  set queryResult(value: QueryResult | undefined) {\n    this._queryResult = value;\n  }\n  get webhookStatus(): googleRpc011.Status | undefined {\n    return this._webhookStatus;\n  }\n  set webhookStatus(value: googleRpc011.Status | undefined) {\n    this._webhookStatus = value;\n  }\n  get llmTelemetryReport(): LlmTelemetryReport | undefined {\n    return this._llmTelemetryReport;\n  }\n  set llmTelemetryReport(value: LlmTelemetryReport | undefined) {\n    this._llmTelemetryReport = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DetectIntentResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DetectIntentResponse.AsObject {\n    return {\n      responseId: this.responseId,\n      queryResult: this.queryResult ? this.queryResult.toObject() : undefined,\n      webhookStatus: this.webhookStatus\n        ? this.webhookStatus.toObject()\n        : undefined,\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DetectIntentResponse.AsProtobufJSON {\n    return {\n      responseId: this.responseId,\n      queryResult: this.queryResult\n        ? this.queryResult.toProtobufJSON(options)\n        : null,\n      webhookStatus: this.webhookStatus\n        ? this.webhookStatus.toProtobufJSON(options)\n        : null,\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module DetectIntentResponse {\n  /**\n   * Standard JavaScript object representation for DetectIntentResponse\n   */\n  export interface AsObject {\n    responseId: string;\n    queryResult?: QueryResult.AsObject;\n    webhookStatus?: googleRpc011.Status.AsObject;\n    llmTelemetryReport?: LlmTelemetryReport.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for DetectIntentResponse\n   */\n  export interface AsProtobufJSON {\n    responseId: string;\n    queryResult: QueryResult.AsProtobufJSON | null;\n    webhookStatus: googleRpc011.Status.AsProtobufJSON | null;\n    llmTelemetryReport: LlmTelemetryReport.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.QueryParameters\n */\nexport class QueryParameters implements GrpcMessage {\n  static id = 'ondewo.nlu.QueryParameters';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new QueryParameters();\n    QueryParameters.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: QueryParameters) {\n    _instance.timeZone = _instance.timeZone || '';\n    _instance.geoLocation = _instance.geoLocation || undefined;\n    _instance.contexts = _instance.contexts || [];\n    _instance.resetContexts = _instance.resetContexts || false;\n    _instance.payload = _instance.payload || undefined;\n    _instance.labels = _instance.labels || [];\n    _instance.platforms = _instance.platforms || [];\n    _instance.accountId = _instance.accountId || '';\n    _instance.propertyId = _instance.propertyId || '';\n    _instance.datastreamId = _instance.datastreamId || '';\n    _instance.originId = _instance.originId || '';\n    _instance.identifiedUserId = _instance.identifiedUserId || '';\n    _instance.transcriptions = _instance.transcriptions || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: QueryParameters,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.timeZone = _reader.readString();\n          break;\n        case 2:\n          _instance.geoLocation = new googleType012.LatLng();\n          _reader.readMessage(\n            _instance.geoLocation,\n            googleType012.LatLng.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          const messageInitializer3 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer3,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.contexts = _instance.contexts || []).push(\n            messageInitializer3\n          );\n          break;\n        case 4:\n          _instance.resetContexts = _reader.readBool();\n          break;\n        case 6:\n          _instance.payload = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.payload,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        case 8:\n          _reader.readPackableEnumInto(\n            (_instance.platforms = _instance.platforms || [])\n          );\n          break;\n        case 9:\n          _instance.accountId = _reader.readString();\n          break;\n        case 10:\n          _instance.propertyId = _reader.readString();\n          break;\n        case 11:\n          _instance.datastreamId = _reader.readString();\n          break;\n        case 12:\n          _instance.originId = _reader.readString();\n          break;\n        case 13:\n          _instance.identifiedUserId = _reader.readString();\n          break;\n        case 14:\n          const messageInitializer14 = new S2tTranscription();\n          _reader.readMessage(\n            messageInitializer14,\n            S2tTranscription.deserializeBinaryFromReader\n          );\n          (_instance.transcriptions = _instance.transcriptions || []).push(\n            messageInitializer14\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    QueryParameters.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: QueryParameters,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.timeZone) {\n      _writer.writeString(1, _instance.timeZone);\n    }\n    if (_instance.geoLocation) {\n      _writer.writeMessage(\n        2,\n        _instance.geoLocation as any,\n        googleType012.LatLng.serializeBinaryToWriter\n      );\n    }\n    if (_instance.contexts && _instance.contexts.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.contexts as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.resetContexts) {\n      _writer.writeBool(4, _instance.resetContexts);\n    }\n    if (_instance.payload) {\n      _writer.writeMessage(\n        6,\n        _instance.payload as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(7, _instance.labels);\n    }\n    if (_instance.platforms && _instance.platforms.length) {\n      _writer.writePackedEnum(8, _instance.platforms);\n    }\n    if (_instance.accountId) {\n      _writer.writeString(9, _instance.accountId);\n    }\n    if (_instance.propertyId) {\n      _writer.writeString(10, _instance.propertyId);\n    }\n    if (_instance.datastreamId) {\n      _writer.writeString(11, _instance.datastreamId);\n    }\n    if (_instance.originId) {\n      _writer.writeString(12, _instance.originId);\n    }\n    if (_instance.identifiedUserId) {\n      _writer.writeString(13, _instance.identifiedUserId);\n    }\n    if (_instance.transcriptions && _instance.transcriptions.length) {\n      _writer.writeRepeatedMessage(\n        14,\n        _instance.transcriptions as any,\n        S2tTranscription.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _timeZone: string;\n  private _geoLocation?: googleType012.LatLng;\n  private _contexts?: ondewoNlu010.Context[];\n  private _resetContexts: boolean;\n  private _payload?: googleProtobuf004.Struct;\n  private _labels: string[];\n  private _platforms: ondewoNlu015.Intent.Message.Platform[];\n  private _accountId: string;\n  private _propertyId: string;\n  private _datastreamId: string;\n  private _originId: string;\n  private _identifiedUserId: string;\n  private _transcriptions?: S2tTranscription[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of QueryParameters to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<QueryParameters.AsObject>) {\n    _value = _value || {};\n    this.timeZone = _value.timeZone;\n    this.geoLocation = _value.geoLocation\n      ? new googleType012.LatLng(_value.geoLocation)\n      : undefined;\n    this.contexts = (_value.contexts || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    this.resetContexts = _value.resetContexts;\n    this.payload = _value.payload\n      ? new googleProtobuf004.Struct(_value.payload)\n      : undefined;\n    this.labels = (_value.labels || []).slice();\n    this.platforms = (_value.platforms || []).slice();\n    this.accountId = _value.accountId;\n    this.propertyId = _value.propertyId;\n    this.datastreamId = _value.datastreamId;\n    this.originId = _value.originId;\n    this.identifiedUserId = _value.identifiedUserId;\n    this.transcriptions = (_value.transcriptions || []).map(\n      m => new S2tTranscription(m)\n    );\n    QueryParameters.refineValues(this);\n  }\n  get timeZone(): string {\n    return this._timeZone;\n  }\n  set timeZone(value: string) {\n    this._timeZone = value;\n  }\n  get geoLocation(): googleType012.LatLng | undefined {\n    return this._geoLocation;\n  }\n  set geoLocation(value: googleType012.LatLng | undefined) {\n    this._geoLocation = value;\n  }\n  get contexts(): ondewoNlu010.Context[] | undefined {\n    return this._contexts;\n  }\n  set contexts(value: ondewoNlu010.Context[] | undefined) {\n    this._contexts = value;\n  }\n  get resetContexts(): boolean {\n    return this._resetContexts;\n  }\n  set resetContexts(value: boolean) {\n    this._resetContexts = value;\n  }\n  get payload(): googleProtobuf004.Struct | undefined {\n    return this._payload;\n  }\n  set payload(value: googleProtobuf004.Struct | undefined) {\n    this._payload = value;\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n  get platforms(): ondewoNlu015.Intent.Message.Platform[] {\n    return this._platforms;\n  }\n  set platforms(value: ondewoNlu015.Intent.Message.Platform[]) {\n    this._platforms = value;\n  }\n  get accountId(): string {\n    return this._accountId;\n  }\n  set accountId(value: string) {\n    this._accountId = value;\n  }\n  get propertyId(): string {\n    return this._propertyId;\n  }\n  set propertyId(value: string) {\n    this._propertyId = value;\n  }\n  get datastreamId(): string {\n    return this._datastreamId;\n  }\n  set datastreamId(value: string) {\n    this._datastreamId = value;\n  }\n  get originId(): string {\n    return this._originId;\n  }\n  set originId(value: string) {\n    this._originId = value;\n  }\n  get identifiedUserId(): string {\n    return this._identifiedUserId;\n  }\n  set identifiedUserId(value: string) {\n    this._identifiedUserId = value;\n  }\n  get transcriptions(): S2tTranscription[] | undefined {\n    return this._transcriptions;\n  }\n  set transcriptions(value: S2tTranscription[] | undefined) {\n    this._transcriptions = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    QueryParameters.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): QueryParameters.AsObject {\n    return {\n      timeZone: this.timeZone,\n      geoLocation: this.geoLocation ? this.geoLocation.toObject() : undefined,\n      contexts: (this.contexts || []).map(m => m.toObject()),\n      resetContexts: this.resetContexts,\n      payload: this.payload ? this.payload.toObject() : undefined,\n      labels: (this.labels || []).slice(),\n      platforms: (this.platforms || []).slice(),\n      accountId: this.accountId,\n      propertyId: this.propertyId,\n      datastreamId: this.datastreamId,\n      originId: this.originId,\n      identifiedUserId: this.identifiedUserId,\n      transcriptions: (this.transcriptions || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): QueryParameters.AsProtobufJSON {\n    return {\n      timeZone: this.timeZone,\n      geoLocation: this.geoLocation\n        ? this.geoLocation.toProtobufJSON(options)\n        : null,\n      contexts: (this.contexts || []).map(m => m.toProtobufJSON(options)),\n      resetContexts: this.resetContexts,\n      payload: this.payload ? this.payload.toProtobufJSON(options) : null,\n      labels: (this.labels || []).slice(),\n      platforms: (this.platforms || []).map(\n        v => ondewoNlu015.Intent.Message.Platform[v]\n      ),\n      accountId: this.accountId,\n      propertyId: this.propertyId,\n      datastreamId: this.datastreamId,\n      originId: this.originId,\n      identifiedUserId: this.identifiedUserId,\n      transcriptions: (this.transcriptions || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module QueryParameters {\n  /**\n   * Standard JavaScript object representation for QueryParameters\n   */\n  export interface AsObject {\n    timeZone: string;\n    geoLocation?: googleType012.LatLng.AsObject;\n    contexts?: ondewoNlu010.Context.AsObject[];\n    resetContexts: boolean;\n    payload?: googleProtobuf004.Struct.AsObject;\n    labels: string[];\n    platforms: ondewoNlu015.Intent.Message.Platform[];\n    accountId: string;\n    propertyId: string;\n    datastreamId: string;\n    originId: string;\n    identifiedUserId: string;\n    transcriptions?: S2tTranscription.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for QueryParameters\n   */\n  export interface AsProtobufJSON {\n    timeZone: string;\n    geoLocation: googleType012.LatLng.AsProtobufJSON | null;\n    contexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    resetContexts: boolean;\n    payload: googleProtobuf004.Struct.AsProtobufJSON | null;\n    labels: string[];\n    platforms: string[];\n    accountId: string;\n    propertyId: string;\n    datastreamId: string;\n    originId: string;\n    identifiedUserId: string;\n    transcriptions: S2tTranscription.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.S2tTranscription\n */\nexport class S2tTranscription implements GrpcMessage {\n  static id = 'ondewo.nlu.S2tTranscription';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new S2tTranscription();\n    S2tTranscription.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: S2tTranscription) {\n    _instance.name = _instance.name || '';\n    _instance.text = _instance.text || '';\n    _instance.score = _instance.score || 0;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.audioResourceName = _instance.audioResourceName || '';\n    _instance.pipelineId = _instance.pipelineId || '';\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.transcriptionType = _instance.transcriptionType || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: S2tTranscription,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.text = _reader.readString();\n          break;\n        case 3:\n          _instance.score = _reader.readFloat();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.audioResourceName = _reader.readString();\n          break;\n        case 6:\n          _instance.pipelineId = _reader.readString();\n          break;\n        case 7:\n          _instance.durationInS = _reader.readFloat();\n          break;\n        case 8:\n          _instance.transcriptionType = _reader.readEnum();\n          break;\n        case 9:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 12:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    S2tTranscription.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: S2tTranscription,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.text) {\n      _writer.writeString(2, _instance.text);\n    }\n    if (_instance.score) {\n      _writer.writeFloat(3, _instance.score);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.audioResourceName) {\n      _writer.writeString(5, _instance.audioResourceName);\n    }\n    if (_instance.pipelineId) {\n      _writer.writeString(6, _instance.pipelineId);\n    }\n    if (_instance.durationInS) {\n      _writer.writeFloat(7, _instance.durationInS);\n    }\n    if (_instance.transcriptionType) {\n      _writer.writeEnum(8, _instance.transcriptionType);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        9,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(11, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(12, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _text: string;\n  private _score: number;\n  private _languageCode: string;\n  private _audioResourceName: string;\n  private _pipelineId: string;\n  private _durationInS: number;\n  private _transcriptionType: TranscriptionType;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of S2tTranscription to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<S2tTranscription.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.text = _value.text;\n    this.score = _value.score;\n    this.languageCode = _value.languageCode;\n    this.audioResourceName = _value.audioResourceName;\n    this.pipelineId = _value.pipelineId;\n    this.durationInS = _value.durationInS;\n    this.transcriptionType = _value.transcriptionType;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    S2tTranscription.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get audioResourceName(): string {\n    return this._audioResourceName;\n  }\n  set audioResourceName(value: string) {\n    this._audioResourceName = value;\n  }\n  get pipelineId(): string {\n    return this._pipelineId;\n  }\n  set pipelineId(value: string) {\n    this._pipelineId = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get transcriptionType(): TranscriptionType {\n    return this._transcriptionType;\n  }\n  set transcriptionType(value: TranscriptionType) {\n    this._transcriptionType = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    S2tTranscription.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): S2tTranscription.AsObject {\n    return {\n      name: this.name,\n      text: this.text,\n      score: this.score,\n      languageCode: this.languageCode,\n      audioResourceName: this.audioResourceName,\n      pipelineId: this.pipelineId,\n      durationInS: this.durationInS,\n      transcriptionType: this.transcriptionType,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): S2tTranscription.AsProtobufJSON {\n    return {\n      name: this.name,\n      text: this.text,\n      score: this.score,\n      languageCode: this.languageCode,\n      audioResourceName: this.audioResourceName,\n      pipelineId: this.pipelineId,\n      durationInS: this.durationInS,\n      transcriptionType:\n        TranscriptionType[\n          this.transcriptionType === null ||\n          this.transcriptionType === undefined\n            ? 0\n            : this.transcriptionType\n        ],\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module S2tTranscription {\n  /**\n   * Standard JavaScript object representation for S2tTranscription\n   */\n  export interface AsObject {\n    name: string;\n    text: string;\n    score: number;\n    languageCode: string;\n    audioResourceName: string;\n    pipelineId: string;\n    durationInS: number;\n    transcriptionType: TranscriptionType;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for S2tTranscription\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    text: string;\n    score: number;\n    languageCode: string;\n    audioResourceName: string;\n    pipelineId: string;\n    durationInS: number;\n    transcriptionType: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.QueryInput\n */\nexport class QueryInput implements GrpcMessage {\n  static id = 'ondewo.nlu.QueryInput';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new QueryInput();\n    QueryInput.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: QueryInput) {\n    _instance.fileResources = _instance.fileResources || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: QueryInput,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.audioConfig = new InputAudioConfig();\n          _reader.readMessage(\n            _instance.audioConfig,\n            InputAudioConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.text = new TextInput();\n          _reader.readMessage(\n            _instance.text,\n            TextInput.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.event = new EventInput();\n          _reader.readMessage(\n            _instance.event,\n            EventInput.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          const messageInitializer4 = new FileResource();\n          _reader.readMessage(\n            messageInitializer4,\n            FileResource.deserializeBinaryFromReader\n          );\n          (_instance.fileResources = _instance.fileResources || []).push(\n            messageInitializer4\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    QueryInput.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: QueryInput, _writer: BinaryWriter) {\n    if (_instance.audioConfig) {\n      _writer.writeMessage(\n        1,\n        _instance.audioConfig as any,\n        InputAudioConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.text) {\n      _writer.writeMessage(\n        2,\n        _instance.text as any,\n        TextInput.serializeBinaryToWriter\n      );\n    }\n    if (_instance.event) {\n      _writer.writeMessage(\n        3,\n        _instance.event as any,\n        EventInput.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fileResources && _instance.fileResources.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.fileResources as any,\n        FileResource.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _audioConfig?: InputAudioConfig;\n  private _text?: TextInput;\n  private _event?: EventInput;\n  private _fileResources?: FileResource[];\n\n  private _input: QueryInput.InputCase = QueryInput.InputCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of QueryInput to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<QueryInput.AsObject>) {\n    _value = _value || {};\n    this.audioConfig = _value.audioConfig\n      ? new InputAudioConfig(_value.audioConfig)\n      : undefined;\n    this.text = _value.text ? new TextInput(_value.text) : undefined;\n    this.event = _value.event ? new EventInput(_value.event) : undefined;\n    this.fileResources = (_value.fileResources || []).map(\n      m => new FileResource(m)\n    );\n    QueryInput.refineValues(this);\n  }\n  get audioConfig(): InputAudioConfig | undefined {\n    return this._audioConfig;\n  }\n  set audioConfig(value: InputAudioConfig | undefined) {\n    if (value !== undefined && value !== null) {\n      this._text = this._event = undefined;\n      this._input = QueryInput.InputCase.audioConfig;\n    }\n    this._audioConfig = value;\n  }\n  get text(): TextInput | undefined {\n    return this._text;\n  }\n  set text(value: TextInput | undefined) {\n    if (value !== undefined && value !== null) {\n      this._audioConfig = this._event = undefined;\n      this._input = QueryInput.InputCase.text;\n    }\n    this._text = value;\n  }\n  get event(): EventInput | undefined {\n    return this._event;\n  }\n  set event(value: EventInput | undefined) {\n    if (value !== undefined && value !== null) {\n      this._audioConfig = this._text = undefined;\n      this._input = QueryInput.InputCase.event;\n    }\n    this._event = value;\n  }\n  get fileResources(): FileResource[] | undefined {\n    return this._fileResources;\n  }\n  set fileResources(value: FileResource[] | undefined) {\n    this._fileResources = value;\n  }\n  get input() {\n    return this._input;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    QueryInput.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): QueryInput.AsObject {\n    return {\n      audioConfig: this.audioConfig ? this.audioConfig.toObject() : undefined,\n      text: this.text ? this.text.toObject() : undefined,\n      event: this.event ? this.event.toObject() : undefined,\n      fileResources: (this.fileResources || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): QueryInput.AsProtobufJSON {\n    return {\n      audioConfig: this.audioConfig\n        ? this.audioConfig.toProtobufJSON(options)\n        : null,\n      text: this.text ? this.text.toProtobufJSON(options) : null,\n      event: this.event ? this.event.toProtobufJSON(options) : null,\n      fileResources: (this.fileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module QueryInput {\n  /**\n   * Standard JavaScript object representation for QueryInput\n   */\n  export interface AsObject {\n    audioConfig?: InputAudioConfig.AsObject;\n    text?: TextInput.AsObject;\n    event?: EventInput.AsObject;\n    fileResources?: FileResource.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for QueryInput\n   */\n  export interface AsProtobufJSON {\n    audioConfig: InputAudioConfig.AsProtobufJSON | null;\n    text: TextInput.AsProtobufJSON | null;\n    event: EventInput.AsProtobufJSON | null;\n    fileResources: FileResource.AsProtobufJSON[] | null;\n  }\n  export enum InputCase {\n    none = 0,\n    audioConfig = 1,\n    text = 2,\n    event = 3\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmTokenUsage\n */\nexport class LlmTokenUsage implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmTokenUsage';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmTokenUsage();\n    LlmTokenUsage.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmTokenUsage) {\n    _instance.totalTokens = _instance.totalTokens || '0';\n    _instance.inputTokens = _instance.inputTokens || '0';\n    _instance.outputTokens = _instance.outputTokens || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmTokenUsage,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.totalTokens = _reader.readInt64String();\n          break;\n        case 2:\n          _instance.inputTokens = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.outputTokens = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmTokenUsage.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmTokenUsage,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.totalTokens) {\n      _writer.writeInt64String(1, _instance.totalTokens);\n    }\n    if (_instance.inputTokens) {\n      _writer.writeInt64String(2, _instance.inputTokens);\n    }\n    if (_instance.outputTokens) {\n      _writer.writeInt64String(3, _instance.outputTokens);\n    }\n  }\n\n  private _totalTokens: string;\n  private _inputTokens: string;\n  private _outputTokens: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmTokenUsage to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmTokenUsage.AsObject>) {\n    _value = _value || {};\n    this.totalTokens = _value.totalTokens;\n    this.inputTokens = _value.inputTokens;\n    this.outputTokens = _value.outputTokens;\n    LlmTokenUsage.refineValues(this);\n  }\n  get totalTokens(): string {\n    return this._totalTokens;\n  }\n  set totalTokens(value: string) {\n    this._totalTokens = value;\n  }\n  get inputTokens(): string {\n    return this._inputTokens;\n  }\n  set inputTokens(value: string) {\n    this._inputTokens = value;\n  }\n  get outputTokens(): string {\n    return this._outputTokens;\n  }\n  set outputTokens(value: string) {\n    this._outputTokens = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmTokenUsage.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmTokenUsage.AsObject {\n    return {\n      totalTokens: this.totalTokens,\n      inputTokens: this.inputTokens,\n      outputTokens: this.outputTokens\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmTokenUsage.AsProtobufJSON {\n    return {\n      totalTokens: this.totalTokens,\n      inputTokens: this.inputTokens,\n      outputTokens: this.outputTokens\n    };\n  }\n}\nexport module LlmTokenUsage {\n  /**\n   * Standard JavaScript object representation for LlmTokenUsage\n   */\n  export interface AsObject {\n    totalTokens: string;\n    inputTokens: string;\n    outputTokens: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmTokenUsage\n   */\n  export interface AsProtobufJSON {\n    totalTokens: string;\n    inputTokens: string;\n    outputTokens: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmToolCallMetadata\n */\nexport class LlmToolCallMetadata implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmToolCallMetadata';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmToolCallMetadata();\n    LlmToolCallMetadata.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmToolCallMetadata) {\n    _instance.toolCallId = _instance.toolCallId || '';\n    _instance.toolName = _instance.toolName || '';\n    _instance.startTime = _instance.startTime || undefined;\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.arguments = _instance.arguments || undefined;\n    _instance.result = _instance.result || undefined;\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmToolCallMetadata,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.toolCallId = _reader.readString();\n          break;\n        case 2:\n          _instance.toolName = _reader.readString();\n          break;\n        case 3:\n          _instance.startTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.endTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.durationInS = _reader.readDouble();\n          break;\n        case 6:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.arguments = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.arguments,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.result = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.result,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmToolCallMetadata.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmToolCallMetadata,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.toolCallId) {\n      _writer.writeString(1, _instance.toolCallId);\n    }\n    if (_instance.toolName) {\n      _writer.writeString(2, _instance.toolName);\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        3,\n        _instance.startTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        4,\n        _instance.endTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeDouble(5, _instance.durationInS);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        6,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.arguments) {\n      _writer.writeMessage(\n        7,\n        _instance.arguments as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.result) {\n      _writer.writeMessage(\n        8,\n        _instance.result as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(9, _instance.errorMessage);\n    }\n  }\n\n  private _toolCallId: string;\n  private _toolName: string;\n  private _startTime?: googleProtobuf005.Timestamp;\n  private _endTime?: googleProtobuf005.Timestamp;\n  private _durationInS: number;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _arguments?: googleProtobuf004.Struct;\n  private _result?: googleProtobuf004.Struct;\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmToolCallMetadata to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmToolCallMetadata.AsObject>) {\n    _value = _value || {};\n    this.toolCallId = _value.toolCallId;\n    this.toolName = _value.toolName;\n    this.startTime = _value.startTime\n      ? new googleProtobuf005.Timestamp(_value.startTime)\n      : undefined;\n    this.endTime = _value.endTime\n      ? new googleProtobuf005.Timestamp(_value.endTime)\n      : undefined;\n    this.durationInS = _value.durationInS;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.arguments = _value.arguments\n      ? new googleProtobuf004.Struct(_value.arguments)\n      : undefined;\n    this.result = _value.result\n      ? new googleProtobuf004.Struct(_value.result)\n      : undefined;\n    this.errorMessage = _value.errorMessage;\n    LlmToolCallMetadata.refineValues(this);\n  }\n  get toolCallId(): string {\n    return this._toolCallId;\n  }\n  set toolCallId(value: string) {\n    this._toolCallId = value;\n  }\n  get toolName(): string {\n    return this._toolName;\n  }\n  set toolName(value: string) {\n    this._toolName = value;\n  }\n  get startTime(): googleProtobuf005.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._startTime = value;\n  }\n  get endTime(): googleProtobuf005.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get arguments(): googleProtobuf004.Struct | undefined {\n    return this._arguments;\n  }\n  set arguments(value: googleProtobuf004.Struct | undefined) {\n    this._arguments = value;\n  }\n  get result(): googleProtobuf004.Struct | undefined {\n    return this._result;\n  }\n  set result(value: googleProtobuf004.Struct | undefined) {\n    this._result = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmToolCallMetadata.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmToolCallMetadata.AsObject {\n    return {\n      toolCallId: this.toolCallId,\n      toolName: this.toolName,\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      durationInS: this.durationInS,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      arguments: this.arguments ? this.arguments.toObject() : undefined,\n      result: this.result ? this.result.toObject() : undefined,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmToolCallMetadata.AsProtobufJSON {\n    return {\n      toolCallId: this.toolCallId,\n      toolName: this.toolName,\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      durationInS: this.durationInS,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      arguments: this.arguments ? this.arguments.toProtobufJSON(options) : null,\n      result: this.result ? this.result.toProtobufJSON(options) : null,\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module LlmToolCallMetadata {\n  /**\n   * Standard JavaScript object representation for LlmToolCallMetadata\n   */\n  export interface AsObject {\n    toolCallId: string;\n    toolName: string;\n    startTime?: googleProtobuf005.Timestamp.AsObject;\n    endTime?: googleProtobuf005.Timestamp.AsObject;\n    durationInS: number;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    arguments?: googleProtobuf004.Struct.AsObject;\n    result?: googleProtobuf004.Struct.AsObject;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmToolCallMetadata\n   */\n  export interface AsProtobufJSON {\n    toolCallId: string;\n    toolName: string;\n    startTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    endTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    durationInS: number;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    arguments: googleProtobuf004.Struct.AsProtobufJSON | null;\n    result: googleProtobuf004.Struct.AsProtobufJSON | null;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmThinkingMetadata\n */\nexport class LlmThinkingMetadata implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmThinkingMetadata';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmThinkingMetadata();\n    LlmThinkingMetadata.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmThinkingMetadata) {\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.startTime = _instance.startTime || undefined;\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.thinkingText = _instance.thinkingText || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmThinkingMetadata,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.startTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.endTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.durationInS = _reader.readDouble();\n          break;\n        case 5:\n          _instance.thinkingText = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmThinkingMetadata.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmThinkingMetadata,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        1,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        2,\n        _instance.startTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        3,\n        _instance.endTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeDouble(4, _instance.durationInS);\n    }\n    if (_instance.thinkingText) {\n      _writer.writeString(5, _instance.thinkingText);\n    }\n  }\n\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _startTime?: googleProtobuf005.Timestamp;\n  private _endTime?: googleProtobuf005.Timestamp;\n  private _durationInS: number;\n  private _thinkingText: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmThinkingMetadata to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmThinkingMetadata.AsObject>) {\n    _value = _value || {};\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.startTime = _value.startTime\n      ? new googleProtobuf005.Timestamp(_value.startTime)\n      : undefined;\n    this.endTime = _value.endTime\n      ? new googleProtobuf005.Timestamp(_value.endTime)\n      : undefined;\n    this.durationInS = _value.durationInS;\n    this.thinkingText = _value.thinkingText;\n    LlmThinkingMetadata.refineValues(this);\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get startTime(): googleProtobuf005.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._startTime = value;\n  }\n  get endTime(): googleProtobuf005.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get thinkingText(): string {\n    return this._thinkingText;\n  }\n  set thinkingText(value: string) {\n    this._thinkingText = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmThinkingMetadata.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmThinkingMetadata.AsObject {\n    return {\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      durationInS: this.durationInS,\n      thinkingText: this.thinkingText\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmThinkingMetadata.AsProtobufJSON {\n    return {\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      durationInS: this.durationInS,\n      thinkingText: this.thinkingText\n    };\n  }\n}\nexport module LlmThinkingMetadata {\n  /**\n   * Standard JavaScript object representation for LlmThinkingMetadata\n   */\n  export interface AsObject {\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    startTime?: googleProtobuf005.Timestamp.AsObject;\n    endTime?: googleProtobuf005.Timestamp.AsObject;\n    durationInS: number;\n    thinkingText: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmThinkingMetadata\n   */\n  export interface AsProtobufJSON {\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    startTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    endTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    durationInS: number;\n    thinkingText: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmTelemetry\n */\nexport class LlmTelemetry implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmTelemetry';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmTelemetry();\n    LlmTelemetry.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmTelemetry) {\n    _instance.provider = _instance.provider || '';\n    _instance.modelName = _instance.modelName || '';\n    _instance.agentName = _instance.agentName || '';\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.llmToolCallMetadatas = _instance.llmToolCallMetadatas || [];\n    _instance.toolCallCount = _instance.toolCallCount || 0;\n    _instance.llmThinkingMetadata = _instance.llmThinkingMetadata || undefined;\n    _instance.startTime = _instance.startTime || undefined;\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.runId = _instance.runId || '';\n    _instance.parentRunId = _instance.parentRunId || '';\n    _instance.runType = _instance.runType || '';\n    _instance.componentName = _instance.componentName || '';\n    _instance.tags = _instance.tags || [];\n    _instance.metadata = _instance.metadata || undefined;\n    _instance.inputs = _instance.inputs || undefined;\n    _instance.outputs = _instance.outputs || undefined;\n    _instance.errorClass = _instance.errorClass || '';\n    _instance.errorMessage = _instance.errorMessage || '';\n    _instance.traceback = _instance.traceback || '';\n    _instance.streamingChunkCount = _instance.streamingChunkCount || 0;\n    _instance.firstTokenLatencySeconds =\n      _instance.firstTokenLatencySeconds || 0;\n    _instance.systemFingerprint = _instance.systemFingerprint || '';\n    _instance.cached = _instance.cached || false;\n    _instance.retryCount = _instance.retryCount || 0;\n    _instance.fallbackDepth = _instance.fallbackDepth || 0;\n    _instance.temperature = _instance.temperature || 0;\n    _instance.topP = _instance.topP || 0;\n    _instance.maxTokens = _instance.maxTokens || 0;\n    _instance.nGenerations = _instance.nGenerations || 0;\n    _instance.finishReasons = _instance.finishReasons || [];\n    _instance.cachedInputTokens = _instance.cachedInputTokens || 0;\n    _instance.cacheCreationInputTokens =\n      _instance.cacheCreationInputTokens || 0;\n    _instance.langsmithRunUrl = _instance.langsmithRunUrl || '';\n    _instance.teamName = _instance.teamName || '';\n    _instance.teamId = _instance.teamId || '';\n    _instance.agentRole = _instance.agentRole || '';\n    _instance.senderAgent = _instance.senderAgent || '';\n    _instance.recipientAgent = _instance.recipientAgent || '';\n    _instance.turnIndex = _instance.turnIndex || 0;\n    _instance.reflectionIterations = _instance.reflectionIterations || 0;\n    _instance.terminationReason = _instance.terminationReason || '';\n    _instance.evaluatorRunsJoinKey = _instance.evaluatorRunsJoinKey || '';\n    _instance.llmEvaluationFeedbacks = _instance.llmEvaluationFeedbacks || [];\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n    _instance.baseUrl = _instance.baseUrl || '';\n    _instance.defaultHeaders = _instance.defaultHeaders || undefined;\n    _instance.defaultQuery = _instance.defaultQuery || undefined;\n    _instance.frequencyPenalty = _instance.frequencyPenalty || 0;\n    _instance.openaiMetadata = _instance.openaiMetadata || undefined;\n    _instance.presencePenalty = _instance.presencePenalty || 0;\n    _instance.reasoningEffort = _instance.reasoningEffort || 0;\n    _instance.user = _instance.user || '';\n    _instance.timeout = _instance.timeout || 0;\n    _instance.strictResponseValidation =\n      _instance.strictResponseValidation || false;\n    _instance.extraHeaders = _instance.extraHeaders || undefined;\n    _instance.extraQuery = _instance.extraQuery || undefined;\n    _instance.extraBody = _instance.extraBody || undefined;\n    _instance.ccaiServiceProvider = _instance.ccaiServiceProvider || 0;\n    _instance.llmSafetyAssessment = _instance.llmSafetyAssessment || undefined;\n    _instance.llmRetrievalMetadata =\n      _instance.llmRetrievalMetadata || undefined;\n    _instance.llmCallId = _instance.llmCallId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmTelemetry,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.provider = _reader.readString();\n          break;\n        case 2:\n          _instance.modelName = _reader.readString();\n          break;\n        case 3:\n          _instance.agentName = _reader.readString();\n          break;\n        case 4:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          const messageInitializer5 = new LlmToolCallMetadata();\n          _reader.readMessage(\n            messageInitializer5,\n            LlmToolCallMetadata.deserializeBinaryFromReader\n          );\n          (_instance.llmToolCallMetadatas =\n            _instance.llmToolCallMetadatas || []).push(messageInitializer5);\n          break;\n        case 6:\n          _instance.toolCallCount = _reader.readInt32();\n          break;\n        case 7:\n          _instance.llmThinkingMetadata = new LlmThinkingMetadata();\n          _reader.readMessage(\n            _instance.llmThinkingMetadata,\n            LlmThinkingMetadata.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.startTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.endTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.durationInS = _reader.readDouble();\n          break;\n        case 11:\n          _instance.runId = _reader.readString();\n          break;\n        case 12:\n          _instance.parentRunId = _reader.readString();\n          break;\n        case 13:\n          _instance.runType = _reader.readString();\n          break;\n        case 14:\n          _instance.componentName = _reader.readString();\n          break;\n        case 15:\n          (_instance.tags = _instance.tags || []).push(_reader.readString());\n          break;\n        case 16:\n          _instance.metadata = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.metadata,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 17:\n          _instance.inputs = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.inputs,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 18:\n          _instance.outputs = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.outputs,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 19:\n          _instance.errorClass = _reader.readString();\n          break;\n        case 20:\n          _instance.errorMessage = _reader.readString();\n          break;\n        case 21:\n          _instance.traceback = _reader.readString();\n          break;\n        case 22:\n          _instance.streamingChunkCount = _reader.readInt32();\n          break;\n        case 23:\n          _instance.firstTokenLatencySeconds = _reader.readDouble();\n          break;\n        case 24:\n          _instance.systemFingerprint = _reader.readString();\n          break;\n        case 25:\n          _instance.cached = _reader.readBool();\n          break;\n        case 26:\n          _instance.retryCount = _reader.readInt32();\n          break;\n        case 27:\n          _instance.fallbackDepth = _reader.readInt32();\n          break;\n        case 28:\n          _instance.temperature = _reader.readDouble();\n          break;\n        case 29:\n          _instance.topP = _reader.readDouble();\n          break;\n        case 30:\n          _instance.maxTokens = _reader.readInt32();\n          break;\n        case 31:\n          _instance.nGenerations = _reader.readInt32();\n          break;\n        case 32:\n          (_instance.finishReasons = _instance.finishReasons || []).push(\n            _reader.readString()\n          );\n          break;\n        case 33:\n          _instance.cachedInputTokens = _reader.readInt32();\n          break;\n        case 34:\n          _instance.cacheCreationInputTokens = _reader.readInt32();\n          break;\n        case 35:\n          _instance.langsmithRunUrl = _reader.readString();\n          break;\n        case 36:\n          _instance.teamName = _reader.readString();\n          break;\n        case 37:\n          _instance.teamId = _reader.readString();\n          break;\n        case 38:\n          _instance.agentRole = _reader.readString();\n          break;\n        case 39:\n          _instance.senderAgent = _reader.readString();\n          break;\n        case 40:\n          _instance.recipientAgent = _reader.readString();\n          break;\n        case 41:\n          _instance.turnIndex = _reader.readInt32();\n          break;\n        case 42:\n          _instance.reflectionIterations = _reader.readInt32();\n          break;\n        case 43:\n          _instance.terminationReason = _reader.readString();\n          break;\n        case 44:\n          _instance.evaluatorRunsJoinKey = _reader.readString();\n          break;\n        case 45:\n          const messageInitializer45 = new ondewoNlu016.LlmEvaluationFeedback();\n          _reader.readMessage(\n            messageInitializer45,\n            ondewoNlu016.LlmEvaluationFeedback.deserializeBinaryFromReader\n          );\n          (_instance.llmEvaluationFeedbacks =\n            _instance.llmEvaluationFeedbacks || []).push(messageInitializer45);\n          break;\n        case 46:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        case 47:\n          _instance.baseUrl = _reader.readString();\n          break;\n        case 48:\n          _instance.defaultHeaders = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.defaultHeaders,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 49:\n          _instance.defaultQuery = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.defaultQuery,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 50:\n          _instance.frequencyPenalty = _reader.readFloat();\n          break;\n        case 51:\n          _instance.openaiMetadata = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.openaiMetadata,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 52:\n          _instance.presencePenalty = _reader.readFloat();\n          break;\n        case 53:\n          _instance.reasoningEffort = _reader.readEnum();\n          break;\n        case 54:\n          _instance.user = _reader.readString();\n          break;\n        case 55:\n          _instance.timeout = _reader.readFloat();\n          break;\n        case 56:\n          _instance.strictResponseValidation = _reader.readBool();\n          break;\n        case 57:\n          _instance.extraHeaders = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.extraHeaders,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 58:\n          _instance.extraQuery = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.extraQuery,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 59:\n          _instance.extraBody = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.extraBody,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 60:\n          _instance.ccaiServiceProvider = _reader.readEnum();\n          break;\n        case 61:\n          _instance.llmSafetyAssessment = new LlmSafetyAssessment();\n          _reader.readMessage(\n            _instance.llmSafetyAssessment,\n            LlmSafetyAssessment.deserializeBinaryFromReader\n          );\n          break;\n        case 62:\n          _instance.llmRetrievalMetadata = new LlmRetrievalMetadata();\n          _reader.readMessage(\n            _instance.llmRetrievalMetadata,\n            LlmRetrievalMetadata.deserializeBinaryFromReader\n          );\n          break;\n        case 63:\n          _instance.llmCallId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmTelemetry.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmTelemetry,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.provider) {\n      _writer.writeString(1, _instance.provider);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(2, _instance.modelName);\n    }\n    if (_instance.agentName) {\n      _writer.writeString(3, _instance.agentName);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (\n      _instance.llmToolCallMetadatas &&\n      _instance.llmToolCallMetadatas.length\n    ) {\n      _writer.writeRepeatedMessage(\n        5,\n        _instance.llmToolCallMetadatas as any,\n        LlmToolCallMetadata.serializeBinaryToWriter\n      );\n    }\n    if (_instance.toolCallCount) {\n      _writer.writeInt32(6, _instance.toolCallCount);\n    }\n    if (_instance.llmThinkingMetadata) {\n      _writer.writeMessage(\n        7,\n        _instance.llmThinkingMetadata as any,\n        LlmThinkingMetadata.serializeBinaryToWriter\n      );\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        8,\n        _instance.startTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        9,\n        _instance.endTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeDouble(10, _instance.durationInS);\n    }\n    if (_instance.runId) {\n      _writer.writeString(11, _instance.runId);\n    }\n    if (_instance.parentRunId) {\n      _writer.writeString(12, _instance.parentRunId);\n    }\n    if (_instance.runType) {\n      _writer.writeString(13, _instance.runType);\n    }\n    if (_instance.componentName) {\n      _writer.writeString(14, _instance.componentName);\n    }\n    if (_instance.tags && _instance.tags.length) {\n      _writer.writeRepeatedString(15, _instance.tags);\n    }\n    if (_instance.metadata) {\n      _writer.writeMessage(\n        16,\n        _instance.metadata as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.inputs) {\n      _writer.writeMessage(\n        17,\n        _instance.inputs as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.outputs) {\n      _writer.writeMessage(\n        18,\n        _instance.outputs as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorClass) {\n      _writer.writeString(19, _instance.errorClass);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(20, _instance.errorMessage);\n    }\n    if (_instance.traceback) {\n      _writer.writeString(21, _instance.traceback);\n    }\n    if (_instance.streamingChunkCount) {\n      _writer.writeInt32(22, _instance.streamingChunkCount);\n    }\n    if (_instance.firstTokenLatencySeconds) {\n      _writer.writeDouble(23, _instance.firstTokenLatencySeconds);\n    }\n    if (_instance.systemFingerprint) {\n      _writer.writeString(24, _instance.systemFingerprint);\n    }\n    if (_instance.cached) {\n      _writer.writeBool(25, _instance.cached);\n    }\n    if (_instance.retryCount) {\n      _writer.writeInt32(26, _instance.retryCount);\n    }\n    if (_instance.fallbackDepth) {\n      _writer.writeInt32(27, _instance.fallbackDepth);\n    }\n    if (_instance.temperature) {\n      _writer.writeDouble(28, _instance.temperature);\n    }\n    if (_instance.topP) {\n      _writer.writeDouble(29, _instance.topP);\n    }\n    if (_instance.maxTokens) {\n      _writer.writeInt32(30, _instance.maxTokens);\n    }\n    if (_instance.nGenerations) {\n      _writer.writeInt32(31, _instance.nGenerations);\n    }\n    if (_instance.finishReasons && _instance.finishReasons.length) {\n      _writer.writeRepeatedString(32, _instance.finishReasons);\n    }\n    if (_instance.cachedInputTokens) {\n      _writer.writeInt32(33, _instance.cachedInputTokens);\n    }\n    if (_instance.cacheCreationInputTokens) {\n      _writer.writeInt32(34, _instance.cacheCreationInputTokens);\n    }\n    if (_instance.langsmithRunUrl) {\n      _writer.writeString(35, _instance.langsmithRunUrl);\n    }\n    if (_instance.teamName) {\n      _writer.writeString(36, _instance.teamName);\n    }\n    if (_instance.teamId) {\n      _writer.writeString(37, _instance.teamId);\n    }\n    if (_instance.agentRole) {\n      _writer.writeString(38, _instance.agentRole);\n    }\n    if (_instance.senderAgent) {\n      _writer.writeString(39, _instance.senderAgent);\n    }\n    if (_instance.recipientAgent) {\n      _writer.writeString(40, _instance.recipientAgent);\n    }\n    if (_instance.turnIndex) {\n      _writer.writeInt32(41, _instance.turnIndex);\n    }\n    if (_instance.reflectionIterations) {\n      _writer.writeInt32(42, _instance.reflectionIterations);\n    }\n    if (_instance.terminationReason) {\n      _writer.writeString(43, _instance.terminationReason);\n    }\n    if (_instance.evaluatorRunsJoinKey) {\n      _writer.writeString(44, _instance.evaluatorRunsJoinKey);\n    }\n    if (\n      _instance.llmEvaluationFeedbacks &&\n      _instance.llmEvaluationFeedbacks.length\n    ) {\n      _writer.writeRepeatedMessage(\n        45,\n        _instance.llmEvaluationFeedbacks as any,\n        ondewoNlu016.LlmEvaluationFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(46, _instance.ccaiServiceName);\n    }\n    if (_instance.baseUrl) {\n      _writer.writeString(47, _instance.baseUrl);\n    }\n    if (_instance.defaultHeaders) {\n      _writer.writeMessage(\n        48,\n        _instance.defaultHeaders as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.defaultQuery) {\n      _writer.writeMessage(\n        49,\n        _instance.defaultQuery as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.frequencyPenalty) {\n      _writer.writeFloat(50, _instance.frequencyPenalty);\n    }\n    if (_instance.openaiMetadata) {\n      _writer.writeMessage(\n        51,\n        _instance.openaiMetadata as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.presencePenalty) {\n      _writer.writeFloat(52, _instance.presencePenalty);\n    }\n    if (_instance.reasoningEffort) {\n      _writer.writeEnum(53, _instance.reasoningEffort);\n    }\n    if (_instance.user) {\n      _writer.writeString(54, _instance.user);\n    }\n    if (_instance.timeout) {\n      _writer.writeFloat(55, _instance.timeout);\n    }\n    if (_instance.strictResponseValidation) {\n      _writer.writeBool(56, _instance.strictResponseValidation);\n    }\n    if (_instance.extraHeaders) {\n      _writer.writeMessage(\n        57,\n        _instance.extraHeaders as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.extraQuery) {\n      _writer.writeMessage(\n        58,\n        _instance.extraQuery as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.extraBody) {\n      _writer.writeMessage(\n        59,\n        _instance.extraBody as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiServiceProvider) {\n      _writer.writeEnum(60, _instance.ccaiServiceProvider);\n    }\n    if (_instance.llmSafetyAssessment) {\n      _writer.writeMessage(\n        61,\n        _instance.llmSafetyAssessment as any,\n        LlmSafetyAssessment.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmRetrievalMetadata) {\n      _writer.writeMessage(\n        62,\n        _instance.llmRetrievalMetadata as any,\n        LlmRetrievalMetadata.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmCallId) {\n      _writer.writeString(63, _instance.llmCallId);\n    }\n  }\n\n  private _provider: string;\n  private _modelName: string;\n  private _agentName: string;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _llmToolCallMetadatas?: LlmToolCallMetadata[];\n  private _toolCallCount: number;\n  private _llmThinkingMetadata?: LlmThinkingMetadata;\n  private _startTime?: googleProtobuf005.Timestamp;\n  private _endTime?: googleProtobuf005.Timestamp;\n  private _durationInS: number;\n  private _runId: string;\n  private _parentRunId: string;\n  private _runType: string;\n  private _componentName: string;\n  private _tags: string[];\n  private _metadata?: googleProtobuf004.Struct;\n  private _inputs?: googleProtobuf004.Struct;\n  private _outputs?: googleProtobuf004.Struct;\n  private _errorClass: string;\n  private _errorMessage: string;\n  private _traceback: string;\n  private _streamingChunkCount: number;\n  private _firstTokenLatencySeconds: number;\n  private _systemFingerprint: string;\n  private _cached: boolean;\n  private _retryCount: number;\n  private _fallbackDepth: number;\n  private _temperature: number;\n  private _topP: number;\n  private _maxTokens: number;\n  private _nGenerations: number;\n  private _finishReasons: string[];\n  private _cachedInputTokens: number;\n  private _cacheCreationInputTokens: number;\n  private _langsmithRunUrl: string;\n  private _teamName: string;\n  private _teamId: string;\n  private _agentRole: string;\n  private _senderAgent: string;\n  private _recipientAgent: string;\n  private _turnIndex: number;\n  private _reflectionIterations: number;\n  private _terminationReason: string;\n  private _evaluatorRunsJoinKey: string;\n  private _llmEvaluationFeedbacks?: ondewoNlu016.LlmEvaluationFeedback[];\n  private _ccaiServiceName: string;\n  private _baseUrl: string;\n  private _defaultHeaders?: googleProtobuf004.Struct;\n  private _defaultQuery?: googleProtobuf004.Struct;\n  private _frequencyPenalty: number;\n  private _openaiMetadata?: googleProtobuf004.Struct;\n  private _presencePenalty: number;\n  private _reasoningEffort: ReasoningEffort;\n  private _user: string;\n  private _timeout: number;\n  private _strictResponseValidation: boolean;\n  private _extraHeaders?: googleProtobuf004.Struct;\n  private _extraQuery?: googleProtobuf004.Struct;\n  private _extraBody?: googleProtobuf004.Struct;\n  private _ccaiServiceProvider: ondewoNlu013.CcaiServiceProvider;\n  private _llmSafetyAssessment?: LlmSafetyAssessment;\n  private _llmRetrievalMetadata?: LlmRetrievalMetadata;\n  private _llmCallId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmTelemetry to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmTelemetry.AsObject>) {\n    _value = _value || {};\n    this.provider = _value.provider;\n    this.modelName = _value.modelName;\n    this.agentName = _value.agentName;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.llmToolCallMetadatas = (_value.llmToolCallMetadatas || []).map(\n      m => new LlmToolCallMetadata(m)\n    );\n    this.toolCallCount = _value.toolCallCount;\n    this.llmThinkingMetadata = _value.llmThinkingMetadata\n      ? new LlmThinkingMetadata(_value.llmThinkingMetadata)\n      : undefined;\n    this.startTime = _value.startTime\n      ? new googleProtobuf005.Timestamp(_value.startTime)\n      : undefined;\n    this.endTime = _value.endTime\n      ? new googleProtobuf005.Timestamp(_value.endTime)\n      : undefined;\n    this.durationInS = _value.durationInS;\n    this.runId = _value.runId;\n    this.parentRunId = _value.parentRunId;\n    this.runType = _value.runType;\n    this.componentName = _value.componentName;\n    this.tags = (_value.tags || []).slice();\n    this.metadata = _value.metadata\n      ? new googleProtobuf004.Struct(_value.metadata)\n      : undefined;\n    this.inputs = _value.inputs\n      ? new googleProtobuf004.Struct(_value.inputs)\n      : undefined;\n    this.outputs = _value.outputs\n      ? new googleProtobuf004.Struct(_value.outputs)\n      : undefined;\n    this.errorClass = _value.errorClass;\n    this.errorMessage = _value.errorMessage;\n    this.traceback = _value.traceback;\n    this.streamingChunkCount = _value.streamingChunkCount;\n    this.firstTokenLatencySeconds = _value.firstTokenLatencySeconds;\n    this.systemFingerprint = _value.systemFingerprint;\n    this.cached = _value.cached;\n    this.retryCount = _value.retryCount;\n    this.fallbackDepth = _value.fallbackDepth;\n    this.temperature = _value.temperature;\n    this.topP = _value.topP;\n    this.maxTokens = _value.maxTokens;\n    this.nGenerations = _value.nGenerations;\n    this.finishReasons = (_value.finishReasons || []).slice();\n    this.cachedInputTokens = _value.cachedInputTokens;\n    this.cacheCreationInputTokens = _value.cacheCreationInputTokens;\n    this.langsmithRunUrl = _value.langsmithRunUrl;\n    this.teamName = _value.teamName;\n    this.teamId = _value.teamId;\n    this.agentRole = _value.agentRole;\n    this.senderAgent = _value.senderAgent;\n    this.recipientAgent = _value.recipientAgent;\n    this.turnIndex = _value.turnIndex;\n    this.reflectionIterations = _value.reflectionIterations;\n    this.terminationReason = _value.terminationReason;\n    this.evaluatorRunsJoinKey = _value.evaluatorRunsJoinKey;\n    this.llmEvaluationFeedbacks = (_value.llmEvaluationFeedbacks || []).map(\n      m => new ondewoNlu016.LlmEvaluationFeedback(m)\n    );\n    this.ccaiServiceName = _value.ccaiServiceName;\n    this.baseUrl = _value.baseUrl;\n    this.defaultHeaders = _value.defaultHeaders\n      ? new googleProtobuf004.Struct(_value.defaultHeaders)\n      : undefined;\n    this.defaultQuery = _value.defaultQuery\n      ? new googleProtobuf004.Struct(_value.defaultQuery)\n      : undefined;\n    this.frequencyPenalty = _value.frequencyPenalty;\n    this.openaiMetadata = _value.openaiMetadata\n      ? new googleProtobuf004.Struct(_value.openaiMetadata)\n      : undefined;\n    this.presencePenalty = _value.presencePenalty;\n    this.reasoningEffort = _value.reasoningEffort;\n    this.user = _value.user;\n    this.timeout = _value.timeout;\n    this.strictResponseValidation = _value.strictResponseValidation;\n    this.extraHeaders = _value.extraHeaders\n      ? new googleProtobuf004.Struct(_value.extraHeaders)\n      : undefined;\n    this.extraQuery = _value.extraQuery\n      ? new googleProtobuf004.Struct(_value.extraQuery)\n      : undefined;\n    this.extraBody = _value.extraBody\n      ? new googleProtobuf004.Struct(_value.extraBody)\n      : undefined;\n    this.ccaiServiceProvider = _value.ccaiServiceProvider;\n    this.llmSafetyAssessment = _value.llmSafetyAssessment\n      ? new LlmSafetyAssessment(_value.llmSafetyAssessment)\n      : undefined;\n    this.llmRetrievalMetadata = _value.llmRetrievalMetadata\n      ? new LlmRetrievalMetadata(_value.llmRetrievalMetadata)\n      : undefined;\n    this.llmCallId = _value.llmCallId;\n    LlmTelemetry.refineValues(this);\n  }\n  get provider(): string {\n    return this._provider;\n  }\n  set provider(value: string) {\n    this._provider = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get agentName(): string {\n    return this._agentName;\n  }\n  set agentName(value: string) {\n    this._agentName = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get llmToolCallMetadatas(): LlmToolCallMetadata[] | undefined {\n    return this._llmToolCallMetadatas;\n  }\n  set llmToolCallMetadatas(value: LlmToolCallMetadata[] | undefined) {\n    this._llmToolCallMetadatas = value;\n  }\n  get toolCallCount(): number {\n    return this._toolCallCount;\n  }\n  set toolCallCount(value: number) {\n    this._toolCallCount = value;\n  }\n  get llmThinkingMetadata(): LlmThinkingMetadata | undefined {\n    return this._llmThinkingMetadata;\n  }\n  set llmThinkingMetadata(value: LlmThinkingMetadata | undefined) {\n    this._llmThinkingMetadata = value;\n  }\n  get startTime(): googleProtobuf005.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._startTime = value;\n  }\n  get endTime(): googleProtobuf005.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get runId(): string {\n    return this._runId;\n  }\n  set runId(value: string) {\n    this._runId = value;\n  }\n  get parentRunId(): string {\n    return this._parentRunId;\n  }\n  set parentRunId(value: string) {\n    this._parentRunId = value;\n  }\n  get runType(): string {\n    return this._runType;\n  }\n  set runType(value: string) {\n    this._runType = value;\n  }\n  get componentName(): string {\n    return this._componentName;\n  }\n  set componentName(value: string) {\n    this._componentName = value;\n  }\n  get tags(): string[] {\n    return this._tags;\n  }\n  set tags(value: string[]) {\n    this._tags = value;\n  }\n  get metadata(): googleProtobuf004.Struct | undefined {\n    return this._metadata;\n  }\n  set metadata(value: googleProtobuf004.Struct | undefined) {\n    this._metadata = value;\n  }\n  get inputs(): googleProtobuf004.Struct | undefined {\n    return this._inputs;\n  }\n  set inputs(value: googleProtobuf004.Struct | undefined) {\n    this._inputs = value;\n  }\n  get outputs(): googleProtobuf004.Struct | undefined {\n    return this._outputs;\n  }\n  set outputs(value: googleProtobuf004.Struct | undefined) {\n    this._outputs = value;\n  }\n  get errorClass(): string {\n    return this._errorClass;\n  }\n  set errorClass(value: string) {\n    this._errorClass = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n  get traceback(): string {\n    return this._traceback;\n  }\n  set traceback(value: string) {\n    this._traceback = value;\n  }\n  get streamingChunkCount(): number {\n    return this._streamingChunkCount;\n  }\n  set streamingChunkCount(value: number) {\n    this._streamingChunkCount = value;\n  }\n  get firstTokenLatencySeconds(): number {\n    return this._firstTokenLatencySeconds;\n  }\n  set firstTokenLatencySeconds(value: number) {\n    this._firstTokenLatencySeconds = value;\n  }\n  get systemFingerprint(): string {\n    return this._systemFingerprint;\n  }\n  set systemFingerprint(value: string) {\n    this._systemFingerprint = value;\n  }\n  get cached(): boolean {\n    return this._cached;\n  }\n  set cached(value: boolean) {\n    this._cached = value;\n  }\n  get retryCount(): number {\n    return this._retryCount;\n  }\n  set retryCount(value: number) {\n    this._retryCount = value;\n  }\n  get fallbackDepth(): number {\n    return this._fallbackDepth;\n  }\n  set fallbackDepth(value: number) {\n    this._fallbackDepth = value;\n  }\n  get temperature(): number {\n    return this._temperature;\n  }\n  set temperature(value: number) {\n    this._temperature = value;\n  }\n  get topP(): number {\n    return this._topP;\n  }\n  set topP(value: number) {\n    this._topP = value;\n  }\n  get maxTokens(): number {\n    return this._maxTokens;\n  }\n  set maxTokens(value: number) {\n    this._maxTokens = value;\n  }\n  get nGenerations(): number {\n    return this._nGenerations;\n  }\n  set nGenerations(value: number) {\n    this._nGenerations = value;\n  }\n  get finishReasons(): string[] {\n    return this._finishReasons;\n  }\n  set finishReasons(value: string[]) {\n    this._finishReasons = value;\n  }\n  get cachedInputTokens(): number {\n    return this._cachedInputTokens;\n  }\n  set cachedInputTokens(value: number) {\n    this._cachedInputTokens = value;\n  }\n  get cacheCreationInputTokens(): number {\n    return this._cacheCreationInputTokens;\n  }\n  set cacheCreationInputTokens(value: number) {\n    this._cacheCreationInputTokens = value;\n  }\n  get langsmithRunUrl(): string {\n    return this._langsmithRunUrl;\n  }\n  set langsmithRunUrl(value: string) {\n    this._langsmithRunUrl = value;\n  }\n  get teamName(): string {\n    return this._teamName;\n  }\n  set teamName(value: string) {\n    this._teamName = value;\n  }\n  get teamId(): string {\n    return this._teamId;\n  }\n  set teamId(value: string) {\n    this._teamId = value;\n  }\n  get agentRole(): string {\n    return this._agentRole;\n  }\n  set agentRole(value: string) {\n    this._agentRole = value;\n  }\n  get senderAgent(): string {\n    return this._senderAgent;\n  }\n  set senderAgent(value: string) {\n    this._senderAgent = value;\n  }\n  get recipientAgent(): string {\n    return this._recipientAgent;\n  }\n  set recipientAgent(value: string) {\n    this._recipientAgent = value;\n  }\n  get turnIndex(): number {\n    return this._turnIndex;\n  }\n  set turnIndex(value: number) {\n    this._turnIndex = value;\n  }\n  get reflectionIterations(): number {\n    return this._reflectionIterations;\n  }\n  set reflectionIterations(value: number) {\n    this._reflectionIterations = value;\n  }\n  get terminationReason(): string {\n    return this._terminationReason;\n  }\n  set terminationReason(value: string) {\n    this._terminationReason = value;\n  }\n  get evaluatorRunsJoinKey(): string {\n    return this._evaluatorRunsJoinKey;\n  }\n  set evaluatorRunsJoinKey(value: string) {\n    this._evaluatorRunsJoinKey = value;\n  }\n  get llmEvaluationFeedbacks():\n    | ondewoNlu016.LlmEvaluationFeedback[]\n    | undefined {\n    return this._llmEvaluationFeedbacks;\n  }\n  set llmEvaluationFeedbacks(\n    value: ondewoNlu016.LlmEvaluationFeedback[] | undefined\n  ) {\n    this._llmEvaluationFeedbacks = value;\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n  get baseUrl(): string {\n    return this._baseUrl;\n  }\n  set baseUrl(value: string) {\n    this._baseUrl = value;\n  }\n  get defaultHeaders(): googleProtobuf004.Struct | undefined {\n    return this._defaultHeaders;\n  }\n  set defaultHeaders(value: googleProtobuf004.Struct | undefined) {\n    this._defaultHeaders = value;\n  }\n  get defaultQuery(): googleProtobuf004.Struct | undefined {\n    return this._defaultQuery;\n  }\n  set defaultQuery(value: googleProtobuf004.Struct | undefined) {\n    this._defaultQuery = value;\n  }\n  get frequencyPenalty(): number {\n    return this._frequencyPenalty;\n  }\n  set frequencyPenalty(value: number) {\n    this._frequencyPenalty = value;\n  }\n  get openaiMetadata(): googleProtobuf004.Struct | undefined {\n    return this._openaiMetadata;\n  }\n  set openaiMetadata(value: googleProtobuf004.Struct | undefined) {\n    this._openaiMetadata = value;\n  }\n  get presencePenalty(): number {\n    return this._presencePenalty;\n  }\n  set presencePenalty(value: number) {\n    this._presencePenalty = value;\n  }\n  get reasoningEffort(): ReasoningEffort {\n    return this._reasoningEffort;\n  }\n  set reasoningEffort(value: ReasoningEffort) {\n    this._reasoningEffort = value;\n  }\n  get user(): string {\n    return this._user;\n  }\n  set user(value: string) {\n    this._user = value;\n  }\n  get timeout(): number {\n    return this._timeout;\n  }\n  set timeout(value: number) {\n    this._timeout = value;\n  }\n  get strictResponseValidation(): boolean {\n    return this._strictResponseValidation;\n  }\n  set strictResponseValidation(value: boolean) {\n    this._strictResponseValidation = value;\n  }\n  get extraHeaders(): googleProtobuf004.Struct | undefined {\n    return this._extraHeaders;\n  }\n  set extraHeaders(value: googleProtobuf004.Struct | undefined) {\n    this._extraHeaders = value;\n  }\n  get extraQuery(): googleProtobuf004.Struct | undefined {\n    return this._extraQuery;\n  }\n  set extraQuery(value: googleProtobuf004.Struct | undefined) {\n    this._extraQuery = value;\n  }\n  get extraBody(): googleProtobuf004.Struct | undefined {\n    return this._extraBody;\n  }\n  set extraBody(value: googleProtobuf004.Struct | undefined) {\n    this._extraBody = value;\n  }\n  get ccaiServiceProvider(): ondewoNlu013.CcaiServiceProvider {\n    return this._ccaiServiceProvider;\n  }\n  set ccaiServiceProvider(value: ondewoNlu013.CcaiServiceProvider) {\n    this._ccaiServiceProvider = value;\n  }\n  get llmSafetyAssessment(): LlmSafetyAssessment | undefined {\n    return this._llmSafetyAssessment;\n  }\n  set llmSafetyAssessment(value: LlmSafetyAssessment | undefined) {\n    this._llmSafetyAssessment = value;\n  }\n  get llmRetrievalMetadata(): LlmRetrievalMetadata | undefined {\n    return this._llmRetrievalMetadata;\n  }\n  set llmRetrievalMetadata(value: LlmRetrievalMetadata | undefined) {\n    this._llmRetrievalMetadata = value;\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmTelemetry.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmTelemetry.AsObject {\n    return {\n      provider: this.provider,\n      modelName: this.modelName,\n      agentName: this.agentName,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      llmToolCallMetadatas: (this.llmToolCallMetadatas || []).map(m =>\n        m.toObject()\n      ),\n      toolCallCount: this.toolCallCount,\n      llmThinkingMetadata: this.llmThinkingMetadata\n        ? this.llmThinkingMetadata.toObject()\n        : undefined,\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      durationInS: this.durationInS,\n      runId: this.runId,\n      parentRunId: this.parentRunId,\n      runType: this.runType,\n      componentName: this.componentName,\n      tags: (this.tags || []).slice(),\n      metadata: this.metadata ? this.metadata.toObject() : undefined,\n      inputs: this.inputs ? this.inputs.toObject() : undefined,\n      outputs: this.outputs ? this.outputs.toObject() : undefined,\n      errorClass: this.errorClass,\n      errorMessage: this.errorMessage,\n      traceback: this.traceback,\n      streamingChunkCount: this.streamingChunkCount,\n      firstTokenLatencySeconds: this.firstTokenLatencySeconds,\n      systemFingerprint: this.systemFingerprint,\n      cached: this.cached,\n      retryCount: this.retryCount,\n      fallbackDepth: this.fallbackDepth,\n      temperature: this.temperature,\n      topP: this.topP,\n      maxTokens: this.maxTokens,\n      nGenerations: this.nGenerations,\n      finishReasons: (this.finishReasons || []).slice(),\n      cachedInputTokens: this.cachedInputTokens,\n      cacheCreationInputTokens: this.cacheCreationInputTokens,\n      langsmithRunUrl: this.langsmithRunUrl,\n      teamName: this.teamName,\n      teamId: this.teamId,\n      agentRole: this.agentRole,\n      senderAgent: this.senderAgent,\n      recipientAgent: this.recipientAgent,\n      turnIndex: this.turnIndex,\n      reflectionIterations: this.reflectionIterations,\n      terminationReason: this.terminationReason,\n      evaluatorRunsJoinKey: this.evaluatorRunsJoinKey,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toObject()\n      ),\n      ccaiServiceName: this.ccaiServiceName,\n      baseUrl: this.baseUrl,\n      defaultHeaders: this.defaultHeaders\n        ? this.defaultHeaders.toObject()\n        : undefined,\n      defaultQuery: this.defaultQuery\n        ? this.defaultQuery.toObject()\n        : undefined,\n      frequencyPenalty: this.frequencyPenalty,\n      openaiMetadata: this.openaiMetadata\n        ? this.openaiMetadata.toObject()\n        : undefined,\n      presencePenalty: this.presencePenalty,\n      reasoningEffort: this.reasoningEffort,\n      user: this.user,\n      timeout: this.timeout,\n      strictResponseValidation: this.strictResponseValidation,\n      extraHeaders: this.extraHeaders\n        ? this.extraHeaders.toObject()\n        : undefined,\n      extraQuery: this.extraQuery ? this.extraQuery.toObject() : undefined,\n      extraBody: this.extraBody ? this.extraBody.toObject() : undefined,\n      ccaiServiceProvider: this.ccaiServiceProvider,\n      llmSafetyAssessment: this.llmSafetyAssessment\n        ? this.llmSafetyAssessment.toObject()\n        : undefined,\n      llmRetrievalMetadata: this.llmRetrievalMetadata\n        ? this.llmRetrievalMetadata.toObject()\n        : undefined,\n      llmCallId: this.llmCallId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmTelemetry.AsProtobufJSON {\n    return {\n      provider: this.provider,\n      modelName: this.modelName,\n      agentName: this.agentName,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      llmToolCallMetadatas: (this.llmToolCallMetadatas || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      toolCallCount: this.toolCallCount,\n      llmThinkingMetadata: this.llmThinkingMetadata\n        ? this.llmThinkingMetadata.toProtobufJSON(options)\n        : null,\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      durationInS: this.durationInS,\n      runId: this.runId,\n      parentRunId: this.parentRunId,\n      runType: this.runType,\n      componentName: this.componentName,\n      tags: (this.tags || []).slice(),\n      metadata: this.metadata ? this.metadata.toProtobufJSON(options) : null,\n      inputs: this.inputs ? this.inputs.toProtobufJSON(options) : null,\n      outputs: this.outputs ? this.outputs.toProtobufJSON(options) : null,\n      errorClass: this.errorClass,\n      errorMessage: this.errorMessage,\n      traceback: this.traceback,\n      streamingChunkCount: this.streamingChunkCount,\n      firstTokenLatencySeconds: this.firstTokenLatencySeconds,\n      systemFingerprint: this.systemFingerprint,\n      cached: this.cached,\n      retryCount: this.retryCount,\n      fallbackDepth: this.fallbackDepth,\n      temperature: this.temperature,\n      topP: this.topP,\n      maxTokens: this.maxTokens,\n      nGenerations: this.nGenerations,\n      finishReasons: (this.finishReasons || []).slice(),\n      cachedInputTokens: this.cachedInputTokens,\n      cacheCreationInputTokens: this.cacheCreationInputTokens,\n      langsmithRunUrl: this.langsmithRunUrl,\n      teamName: this.teamName,\n      teamId: this.teamId,\n      agentRole: this.agentRole,\n      senderAgent: this.senderAgent,\n      recipientAgent: this.recipientAgent,\n      turnIndex: this.turnIndex,\n      reflectionIterations: this.reflectionIterations,\n      terminationReason: this.terminationReason,\n      evaluatorRunsJoinKey: this.evaluatorRunsJoinKey,\n      llmEvaluationFeedbacks: (this.llmEvaluationFeedbacks || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      ccaiServiceName: this.ccaiServiceName,\n      baseUrl: this.baseUrl,\n      defaultHeaders: this.defaultHeaders\n        ? this.defaultHeaders.toProtobufJSON(options)\n        : null,\n      defaultQuery: this.defaultQuery\n        ? this.defaultQuery.toProtobufJSON(options)\n        : null,\n      frequencyPenalty: this.frequencyPenalty,\n      openaiMetadata: this.openaiMetadata\n        ? this.openaiMetadata.toProtobufJSON(options)\n        : null,\n      presencePenalty: this.presencePenalty,\n      reasoningEffort:\n        ReasoningEffort[\n          this.reasoningEffort === null || this.reasoningEffort === undefined\n            ? 0\n            : this.reasoningEffort\n        ],\n      user: this.user,\n      timeout: this.timeout,\n      strictResponseValidation: this.strictResponseValidation,\n      extraHeaders: this.extraHeaders\n        ? this.extraHeaders.toProtobufJSON(options)\n        : null,\n      extraQuery: this.extraQuery\n        ? this.extraQuery.toProtobufJSON(options)\n        : null,\n      extraBody: this.extraBody ? this.extraBody.toProtobufJSON(options) : null,\n      ccaiServiceProvider:\n        ondewoNlu013.CcaiServiceProvider[\n          this.ccaiServiceProvider === null ||\n          this.ccaiServiceProvider === undefined\n            ? 0\n            : this.ccaiServiceProvider\n        ],\n      llmSafetyAssessment: this.llmSafetyAssessment\n        ? this.llmSafetyAssessment.toProtobufJSON(options)\n        : null,\n      llmRetrievalMetadata: this.llmRetrievalMetadata\n        ? this.llmRetrievalMetadata.toProtobufJSON(options)\n        : null,\n      llmCallId: this.llmCallId\n    };\n  }\n}\nexport module LlmTelemetry {\n  /**\n   * Standard JavaScript object representation for LlmTelemetry\n   */\n  export interface AsObject {\n    provider: string;\n    modelName: string;\n    agentName: string;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    llmToolCallMetadatas?: LlmToolCallMetadata.AsObject[];\n    toolCallCount: number;\n    llmThinkingMetadata?: LlmThinkingMetadata.AsObject;\n    startTime?: googleProtobuf005.Timestamp.AsObject;\n    endTime?: googleProtobuf005.Timestamp.AsObject;\n    durationInS: number;\n    runId: string;\n    parentRunId: string;\n    runType: string;\n    componentName: string;\n    tags: string[];\n    metadata?: googleProtobuf004.Struct.AsObject;\n    inputs?: googleProtobuf004.Struct.AsObject;\n    outputs?: googleProtobuf004.Struct.AsObject;\n    errorClass: string;\n    errorMessage: string;\n    traceback: string;\n    streamingChunkCount: number;\n    firstTokenLatencySeconds: number;\n    systemFingerprint: string;\n    cached: boolean;\n    retryCount: number;\n    fallbackDepth: number;\n    temperature: number;\n    topP: number;\n    maxTokens: number;\n    nGenerations: number;\n    finishReasons: string[];\n    cachedInputTokens: number;\n    cacheCreationInputTokens: number;\n    langsmithRunUrl: string;\n    teamName: string;\n    teamId: string;\n    agentRole: string;\n    senderAgent: string;\n    recipientAgent: string;\n    turnIndex: number;\n    reflectionIterations: number;\n    terminationReason: string;\n    evaluatorRunsJoinKey: string;\n    llmEvaluationFeedbacks?: ondewoNlu016.LlmEvaluationFeedback.AsObject[];\n    ccaiServiceName: string;\n    baseUrl: string;\n    defaultHeaders?: googleProtobuf004.Struct.AsObject;\n    defaultQuery?: googleProtobuf004.Struct.AsObject;\n    frequencyPenalty: number;\n    openaiMetadata?: googleProtobuf004.Struct.AsObject;\n    presencePenalty: number;\n    reasoningEffort: ReasoningEffort;\n    user: string;\n    timeout: number;\n    strictResponseValidation: boolean;\n    extraHeaders?: googleProtobuf004.Struct.AsObject;\n    extraQuery?: googleProtobuf004.Struct.AsObject;\n    extraBody?: googleProtobuf004.Struct.AsObject;\n    ccaiServiceProvider: ondewoNlu013.CcaiServiceProvider;\n    llmSafetyAssessment?: LlmSafetyAssessment.AsObject;\n    llmRetrievalMetadata?: LlmRetrievalMetadata.AsObject;\n    llmCallId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmTelemetry\n   */\n  export interface AsProtobufJSON {\n    provider: string;\n    modelName: string;\n    agentName: string;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    llmToolCallMetadatas: LlmToolCallMetadata.AsProtobufJSON[] | null;\n    toolCallCount: number;\n    llmThinkingMetadata: LlmThinkingMetadata.AsProtobufJSON | null;\n    startTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    endTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    durationInS: number;\n    runId: string;\n    parentRunId: string;\n    runType: string;\n    componentName: string;\n    tags: string[];\n    metadata: googleProtobuf004.Struct.AsProtobufJSON | null;\n    inputs: googleProtobuf004.Struct.AsProtobufJSON | null;\n    outputs: googleProtobuf004.Struct.AsProtobufJSON | null;\n    errorClass: string;\n    errorMessage: string;\n    traceback: string;\n    streamingChunkCount: number;\n    firstTokenLatencySeconds: number;\n    systemFingerprint: string;\n    cached: boolean;\n    retryCount: number;\n    fallbackDepth: number;\n    temperature: number;\n    topP: number;\n    maxTokens: number;\n    nGenerations: number;\n    finishReasons: string[];\n    cachedInputTokens: number;\n    cacheCreationInputTokens: number;\n    langsmithRunUrl: string;\n    teamName: string;\n    teamId: string;\n    agentRole: string;\n    senderAgent: string;\n    recipientAgent: string;\n    turnIndex: number;\n    reflectionIterations: number;\n    terminationReason: string;\n    evaluatorRunsJoinKey: string;\n    llmEvaluationFeedbacks:\n      | ondewoNlu016.LlmEvaluationFeedback.AsProtobufJSON[]\n      | null;\n    ccaiServiceName: string;\n    baseUrl: string;\n    defaultHeaders: googleProtobuf004.Struct.AsProtobufJSON | null;\n    defaultQuery: googleProtobuf004.Struct.AsProtobufJSON | null;\n    frequencyPenalty: number;\n    openaiMetadata: googleProtobuf004.Struct.AsProtobufJSON | null;\n    presencePenalty: number;\n    reasoningEffort: string;\n    user: string;\n    timeout: number;\n    strictResponseValidation: boolean;\n    extraHeaders: googleProtobuf004.Struct.AsProtobufJSON | null;\n    extraQuery: googleProtobuf004.Struct.AsProtobufJSON | null;\n    extraBody: googleProtobuf004.Struct.AsProtobufJSON | null;\n    ccaiServiceProvider: string;\n    llmSafetyAssessment: LlmSafetyAssessment.AsProtobufJSON | null;\n    llmRetrievalMetadata: LlmRetrievalMetadata.AsProtobufJSON | null;\n    llmCallId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmSafetyFinding\n */\nexport class LlmSafetyFinding implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmSafetyFinding';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmSafetyFinding();\n    LlmSafetyFinding.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmSafetyFinding) {\n    _instance.category = _instance.category || '';\n    _instance.severity = _instance.severity || '';\n    _instance.matchedPattern = _instance.matchedPattern || '';\n    _instance.location = _instance.location || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmSafetyFinding,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.category = _reader.readString();\n          break;\n        case 2:\n          _instance.severity = _reader.readString();\n          break;\n        case 3:\n          _instance.matchedPattern = _reader.readString();\n          break;\n        case 4:\n          _instance.location = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmSafetyFinding.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmSafetyFinding,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.category) {\n      _writer.writeString(1, _instance.category);\n    }\n    if (_instance.severity) {\n      _writer.writeString(2, _instance.severity);\n    }\n    if (_instance.matchedPattern) {\n      _writer.writeString(3, _instance.matchedPattern);\n    }\n    if (_instance.location) {\n      _writer.writeEnum(4, _instance.location);\n    }\n  }\n\n  private _category: string;\n  private _severity: string;\n  private _matchedPattern: string;\n  private _location: LlmSafetyLocation;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmSafetyFinding to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmSafetyFinding.AsObject>) {\n    _value = _value || {};\n    this.category = _value.category;\n    this.severity = _value.severity;\n    this.matchedPattern = _value.matchedPattern;\n    this.location = _value.location;\n    LlmSafetyFinding.refineValues(this);\n  }\n  get category(): string {\n    return this._category;\n  }\n  set category(value: string) {\n    this._category = value;\n  }\n  get severity(): string {\n    return this._severity;\n  }\n  set severity(value: string) {\n    this._severity = value;\n  }\n  get matchedPattern(): string {\n    return this._matchedPattern;\n  }\n  set matchedPattern(value: string) {\n    this._matchedPattern = value;\n  }\n  get location(): LlmSafetyLocation {\n    return this._location;\n  }\n  set location(value: LlmSafetyLocation) {\n    this._location = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmSafetyFinding.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmSafetyFinding.AsObject {\n    return {\n      category: this.category,\n      severity: this.severity,\n      matchedPattern: this.matchedPattern,\n      location: this.location\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmSafetyFinding.AsProtobufJSON {\n    return {\n      category: this.category,\n      severity: this.severity,\n      matchedPattern: this.matchedPattern,\n      location:\n        LlmSafetyLocation[\n          this.location === null || this.location === undefined\n            ? 0\n            : this.location\n        ]\n    };\n  }\n}\nexport module LlmSafetyFinding {\n  /**\n   * Standard JavaScript object representation for LlmSafetyFinding\n   */\n  export interface AsObject {\n    category: string;\n    severity: string;\n    matchedPattern: string;\n    location: LlmSafetyLocation;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmSafetyFinding\n   */\n  export interface AsProtobufJSON {\n    category: string;\n    severity: string;\n    matchedPattern: string;\n    location: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmSafetyAssessment\n */\nexport class LlmSafetyAssessment implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmSafetyAssessment';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmSafetyAssessment();\n    LlmSafetyAssessment.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmSafetyAssessment) {\n    _instance.flaggedCategories = _instance.flaggedCategories || [];\n    _instance.hasPii = _instance.hasPii || false;\n    _instance.hasInjectionAttempt = _instance.hasInjectionAttempt || false;\n    _instance.hasJailbreakAttempt = _instance.hasJailbreakAttempt || false;\n    _instance.safetyScore = _instance.safetyScore || 0;\n    _instance.findings = _instance.findings || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmSafetyAssessment,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.flaggedCategories =\n            _instance.flaggedCategories || []).push(_reader.readString());\n          break;\n        case 2:\n          _instance.hasPii = _reader.readBool();\n          break;\n        case 3:\n          _instance.hasInjectionAttempt = _reader.readBool();\n          break;\n        case 4:\n          _instance.hasJailbreakAttempt = _reader.readBool();\n          break;\n        case 5:\n          _instance.safetyScore = _reader.readDouble();\n          break;\n        case 6:\n          const messageInitializer6 = new LlmSafetyFinding();\n          _reader.readMessage(\n            messageInitializer6,\n            LlmSafetyFinding.deserializeBinaryFromReader\n          );\n          (_instance.findings = _instance.findings || []).push(\n            messageInitializer6\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmSafetyAssessment.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmSafetyAssessment,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.flaggedCategories && _instance.flaggedCategories.length) {\n      _writer.writeRepeatedString(1, _instance.flaggedCategories);\n    }\n    if (_instance.hasPii) {\n      _writer.writeBool(2, _instance.hasPii);\n    }\n    if (_instance.hasInjectionAttempt) {\n      _writer.writeBool(3, _instance.hasInjectionAttempt);\n    }\n    if (_instance.hasJailbreakAttempt) {\n      _writer.writeBool(4, _instance.hasJailbreakAttempt);\n    }\n    if (_instance.safetyScore) {\n      _writer.writeDouble(5, _instance.safetyScore);\n    }\n    if (_instance.findings && _instance.findings.length) {\n      _writer.writeRepeatedMessage(\n        6,\n        _instance.findings as any,\n        LlmSafetyFinding.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _flaggedCategories: string[];\n  private _hasPii: boolean;\n  private _hasInjectionAttempt: boolean;\n  private _hasJailbreakAttempt: boolean;\n  private _safetyScore: number;\n  private _findings?: LlmSafetyFinding[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmSafetyAssessment to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmSafetyAssessment.AsObject>) {\n    _value = _value || {};\n    this.flaggedCategories = (_value.flaggedCategories || []).slice();\n    this.hasPii = _value.hasPii;\n    this.hasInjectionAttempt = _value.hasInjectionAttempt;\n    this.hasJailbreakAttempt = _value.hasJailbreakAttempt;\n    this.safetyScore = _value.safetyScore;\n    this.findings = (_value.findings || []).map(m => new LlmSafetyFinding(m));\n    LlmSafetyAssessment.refineValues(this);\n  }\n  get flaggedCategories(): string[] {\n    return this._flaggedCategories;\n  }\n  set flaggedCategories(value: string[]) {\n    this._flaggedCategories = value;\n  }\n  get hasPii(): boolean {\n    return this._hasPii;\n  }\n  set hasPii(value: boolean) {\n    this._hasPii = value;\n  }\n  get hasInjectionAttempt(): boolean {\n    return this._hasInjectionAttempt;\n  }\n  set hasInjectionAttempt(value: boolean) {\n    this._hasInjectionAttempt = value;\n  }\n  get hasJailbreakAttempt(): boolean {\n    return this._hasJailbreakAttempt;\n  }\n  set hasJailbreakAttempt(value: boolean) {\n    this._hasJailbreakAttempt = value;\n  }\n  get safetyScore(): number {\n    return this._safetyScore;\n  }\n  set safetyScore(value: number) {\n    this._safetyScore = value;\n  }\n  get findings(): LlmSafetyFinding[] | undefined {\n    return this._findings;\n  }\n  set findings(value: LlmSafetyFinding[] | undefined) {\n    this._findings = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmSafetyAssessment.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmSafetyAssessment.AsObject {\n    return {\n      flaggedCategories: (this.flaggedCategories || []).slice(),\n      hasPii: this.hasPii,\n      hasInjectionAttempt: this.hasInjectionAttempt,\n      hasJailbreakAttempt: this.hasJailbreakAttempt,\n      safetyScore: this.safetyScore,\n      findings: (this.findings || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmSafetyAssessment.AsProtobufJSON {\n    return {\n      flaggedCategories: (this.flaggedCategories || []).slice(),\n      hasPii: this.hasPii,\n      hasInjectionAttempt: this.hasInjectionAttempt,\n      hasJailbreakAttempt: this.hasJailbreakAttempt,\n      safetyScore: this.safetyScore,\n      findings: (this.findings || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module LlmSafetyAssessment {\n  /**\n   * Standard JavaScript object representation for LlmSafetyAssessment\n   */\n  export interface AsObject {\n    flaggedCategories: string[];\n    hasPii: boolean;\n    hasInjectionAttempt: boolean;\n    hasJailbreakAttempt: boolean;\n    safetyScore: number;\n    findings?: LlmSafetyFinding.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for LlmSafetyAssessment\n   */\n  export interface AsProtobufJSON {\n    flaggedCategories: string[];\n    hasPii: boolean;\n    hasInjectionAttempt: boolean;\n    hasJailbreakAttempt: boolean;\n    safetyScore: number;\n    findings: LlmSafetyFinding.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmRetrievedChunk\n */\nexport class LlmRetrievedChunk implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmRetrievedChunk';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmRetrievedChunk();\n    LlmRetrievedChunk.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmRetrievedChunk) {\n    _instance.documentId = _instance.documentId || '';\n    _instance.chunkId = _instance.chunkId || '';\n    _instance.score = _instance.score || 0;\n    _instance.text = _instance.text || '';\n    _instance.sourceUri = _instance.sourceUri || '';\n    _instance.rank = _instance.rank || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmRetrievedChunk,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.documentId = _reader.readString();\n          break;\n        case 2:\n          _instance.chunkId = _reader.readString();\n          break;\n        case 3:\n          _instance.score = _reader.readDouble();\n          break;\n        case 4:\n          _instance.text = _reader.readString();\n          break;\n        case 5:\n          _instance.sourceUri = _reader.readString();\n          break;\n        case 6:\n          _instance.rank = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmRetrievedChunk.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmRetrievedChunk,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.documentId) {\n      _writer.writeString(1, _instance.documentId);\n    }\n    if (_instance.chunkId) {\n      _writer.writeString(2, _instance.chunkId);\n    }\n    if (_instance.score) {\n      _writer.writeDouble(3, _instance.score);\n    }\n    if (_instance.text) {\n      _writer.writeString(4, _instance.text);\n    }\n    if (_instance.sourceUri) {\n      _writer.writeString(5, _instance.sourceUri);\n    }\n    if (_instance.rank) {\n      _writer.writeInt32(6, _instance.rank);\n    }\n  }\n\n  private _documentId: string;\n  private _chunkId: string;\n  private _score: number;\n  private _text: string;\n  private _sourceUri: string;\n  private _rank: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmRetrievedChunk to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmRetrievedChunk.AsObject>) {\n    _value = _value || {};\n    this.documentId = _value.documentId;\n    this.chunkId = _value.chunkId;\n    this.score = _value.score;\n    this.text = _value.text;\n    this.sourceUri = _value.sourceUri;\n    this.rank = _value.rank;\n    LlmRetrievedChunk.refineValues(this);\n  }\n  get documentId(): string {\n    return this._documentId;\n  }\n  set documentId(value: string) {\n    this._documentId = value;\n  }\n  get chunkId(): string {\n    return this._chunkId;\n  }\n  set chunkId(value: string) {\n    this._chunkId = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get sourceUri(): string {\n    return this._sourceUri;\n  }\n  set sourceUri(value: string) {\n    this._sourceUri = value;\n  }\n  get rank(): number {\n    return this._rank;\n  }\n  set rank(value: number) {\n    this._rank = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmRetrievedChunk.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmRetrievedChunk.AsObject {\n    return {\n      documentId: this.documentId,\n      chunkId: this.chunkId,\n      score: this.score,\n      text: this.text,\n      sourceUri: this.sourceUri,\n      rank: this.rank\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmRetrievedChunk.AsProtobufJSON {\n    return {\n      documentId: this.documentId,\n      chunkId: this.chunkId,\n      score: this.score,\n      text: this.text,\n      sourceUri: this.sourceUri,\n      rank: this.rank\n    };\n  }\n}\nexport module LlmRetrievedChunk {\n  /**\n   * Standard JavaScript object representation for LlmRetrievedChunk\n   */\n  export interface AsObject {\n    documentId: string;\n    chunkId: string;\n    score: number;\n    text: string;\n    sourceUri: string;\n    rank: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmRetrievedChunk\n   */\n  export interface AsProtobufJSON {\n    documentId: string;\n    chunkId: string;\n    score: number;\n    text: string;\n    sourceUri: string;\n    rank: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmRetrievalMetadata\n */\nexport class LlmRetrievalMetadata implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmRetrievalMetadata';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmRetrievalMetadata();\n    LlmRetrievalMetadata.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmRetrievalMetadata) {\n    _instance.chunks = _instance.chunks || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmRetrievalMetadata,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmRetrievedChunk();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmRetrievedChunk.deserializeBinaryFromReader\n          );\n          (_instance.chunks = _instance.chunks || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmRetrievalMetadata.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmRetrievalMetadata,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.chunks && _instance.chunks.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.chunks as any,\n        LlmRetrievedChunk.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _chunks?: LlmRetrievedChunk[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmRetrievalMetadata to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmRetrievalMetadata.AsObject>) {\n    _value = _value || {};\n    this.chunks = (_value.chunks || []).map(m => new LlmRetrievedChunk(m));\n    LlmRetrievalMetadata.refineValues(this);\n  }\n  get chunks(): LlmRetrievedChunk[] | undefined {\n    return this._chunks;\n  }\n  set chunks(value: LlmRetrievedChunk[] | undefined) {\n    this._chunks = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmRetrievalMetadata.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmRetrievalMetadata.AsObject {\n    return {\n      chunks: (this.chunks || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmRetrievalMetadata.AsProtobufJSON {\n    return {\n      chunks: (this.chunks || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module LlmRetrievalMetadata {\n  /**\n   * Standard JavaScript object representation for LlmRetrievalMetadata\n   */\n  export interface AsObject {\n    chunks?: LlmRetrievedChunk.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for LlmRetrievalMetadata\n   */\n  export interface AsProtobufJSON {\n    chunks: LlmRetrievedChunk.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmLatencyStats\n */\nexport class LlmLatencyStats implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmLatencyStats';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmLatencyStats();\n    LlmLatencyStats.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmLatencyStats) {\n    _instance.callCount = _instance.callCount || '0';\n    _instance.meanDurationSeconds = _instance.meanDurationSeconds || 0;\n    _instance.p50DurationSeconds = _instance.p50DurationSeconds || 0;\n    _instance.p95DurationSeconds = _instance.p95DurationSeconds || 0;\n    _instance.p99DurationSeconds = _instance.p99DurationSeconds || 0;\n    _instance.maxDurationSeconds = _instance.maxDurationSeconds || 0;\n    _instance.meanFirstTokenLatencySeconds =\n      _instance.meanFirstTokenLatencySeconds || 0;\n    _instance.p95FirstTokenLatencySeconds =\n      _instance.p95FirstTokenLatencySeconds || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmLatencyStats,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.callCount = _reader.readInt64String();\n          break;\n        case 2:\n          _instance.meanDurationSeconds = _reader.readDouble();\n          break;\n        case 3:\n          _instance.p50DurationSeconds = _reader.readDouble();\n          break;\n        case 4:\n          _instance.p95DurationSeconds = _reader.readDouble();\n          break;\n        case 5:\n          _instance.p99DurationSeconds = _reader.readDouble();\n          break;\n        case 6:\n          _instance.maxDurationSeconds = _reader.readDouble();\n          break;\n        case 7:\n          _instance.meanFirstTokenLatencySeconds = _reader.readDouble();\n          break;\n        case 8:\n          _instance.p95FirstTokenLatencySeconds = _reader.readDouble();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmLatencyStats.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmLatencyStats,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.callCount) {\n      _writer.writeInt64String(1, _instance.callCount);\n    }\n    if (_instance.meanDurationSeconds) {\n      _writer.writeDouble(2, _instance.meanDurationSeconds);\n    }\n    if (_instance.p50DurationSeconds) {\n      _writer.writeDouble(3, _instance.p50DurationSeconds);\n    }\n    if (_instance.p95DurationSeconds) {\n      _writer.writeDouble(4, _instance.p95DurationSeconds);\n    }\n    if (_instance.p99DurationSeconds) {\n      _writer.writeDouble(5, _instance.p99DurationSeconds);\n    }\n    if (_instance.maxDurationSeconds) {\n      _writer.writeDouble(6, _instance.maxDurationSeconds);\n    }\n    if (_instance.meanFirstTokenLatencySeconds) {\n      _writer.writeDouble(7, _instance.meanFirstTokenLatencySeconds);\n    }\n    if (_instance.p95FirstTokenLatencySeconds) {\n      _writer.writeDouble(8, _instance.p95FirstTokenLatencySeconds);\n    }\n  }\n\n  private _callCount: string;\n  private _meanDurationSeconds: number;\n  private _p50DurationSeconds: number;\n  private _p95DurationSeconds: number;\n  private _p99DurationSeconds: number;\n  private _maxDurationSeconds: number;\n  private _meanFirstTokenLatencySeconds: number;\n  private _p95FirstTokenLatencySeconds: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmLatencyStats to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmLatencyStats.AsObject>) {\n    _value = _value || {};\n    this.callCount = _value.callCount;\n    this.meanDurationSeconds = _value.meanDurationSeconds;\n    this.p50DurationSeconds = _value.p50DurationSeconds;\n    this.p95DurationSeconds = _value.p95DurationSeconds;\n    this.p99DurationSeconds = _value.p99DurationSeconds;\n    this.maxDurationSeconds = _value.maxDurationSeconds;\n    this.meanFirstTokenLatencySeconds = _value.meanFirstTokenLatencySeconds;\n    this.p95FirstTokenLatencySeconds = _value.p95FirstTokenLatencySeconds;\n    LlmLatencyStats.refineValues(this);\n  }\n  get callCount(): string {\n    return this._callCount;\n  }\n  set callCount(value: string) {\n    this._callCount = value;\n  }\n  get meanDurationSeconds(): number {\n    return this._meanDurationSeconds;\n  }\n  set meanDurationSeconds(value: number) {\n    this._meanDurationSeconds = value;\n  }\n  get p50DurationSeconds(): number {\n    return this._p50DurationSeconds;\n  }\n  set p50DurationSeconds(value: number) {\n    this._p50DurationSeconds = value;\n  }\n  get p95DurationSeconds(): number {\n    return this._p95DurationSeconds;\n  }\n  set p95DurationSeconds(value: number) {\n    this._p95DurationSeconds = value;\n  }\n  get p99DurationSeconds(): number {\n    return this._p99DurationSeconds;\n  }\n  set p99DurationSeconds(value: number) {\n    this._p99DurationSeconds = value;\n  }\n  get maxDurationSeconds(): number {\n    return this._maxDurationSeconds;\n  }\n  set maxDurationSeconds(value: number) {\n    this._maxDurationSeconds = value;\n  }\n  get meanFirstTokenLatencySeconds(): number {\n    return this._meanFirstTokenLatencySeconds;\n  }\n  set meanFirstTokenLatencySeconds(value: number) {\n    this._meanFirstTokenLatencySeconds = value;\n  }\n  get p95FirstTokenLatencySeconds(): number {\n    return this._p95FirstTokenLatencySeconds;\n  }\n  set p95FirstTokenLatencySeconds(value: number) {\n    this._p95FirstTokenLatencySeconds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmLatencyStats.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmLatencyStats.AsObject {\n    return {\n      callCount: this.callCount,\n      meanDurationSeconds: this.meanDurationSeconds,\n      p50DurationSeconds: this.p50DurationSeconds,\n      p95DurationSeconds: this.p95DurationSeconds,\n      p99DurationSeconds: this.p99DurationSeconds,\n      maxDurationSeconds: this.maxDurationSeconds,\n      meanFirstTokenLatencySeconds: this.meanFirstTokenLatencySeconds,\n      p95FirstTokenLatencySeconds: this.p95FirstTokenLatencySeconds\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmLatencyStats.AsProtobufJSON {\n    return {\n      callCount: this.callCount,\n      meanDurationSeconds: this.meanDurationSeconds,\n      p50DurationSeconds: this.p50DurationSeconds,\n      p95DurationSeconds: this.p95DurationSeconds,\n      p99DurationSeconds: this.p99DurationSeconds,\n      maxDurationSeconds: this.maxDurationSeconds,\n      meanFirstTokenLatencySeconds: this.meanFirstTokenLatencySeconds,\n      p95FirstTokenLatencySeconds: this.p95FirstTokenLatencySeconds\n    };\n  }\n}\nexport module LlmLatencyStats {\n  /**\n   * Standard JavaScript object representation for LlmLatencyStats\n   */\n  export interface AsObject {\n    callCount: string;\n    meanDurationSeconds: number;\n    p50DurationSeconds: number;\n    p95DurationSeconds: number;\n    p99DurationSeconds: number;\n    maxDurationSeconds: number;\n    meanFirstTokenLatencySeconds: number;\n    p95FirstTokenLatencySeconds: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmLatencyStats\n   */\n  export interface AsProtobufJSON {\n    callCount: string;\n    meanDurationSeconds: number;\n    p50DurationSeconds: number;\n    p95DurationSeconds: number;\n    p99DurationSeconds: number;\n    maxDurationSeconds: number;\n    meanFirstTokenLatencySeconds: number;\n    p95FirstTokenLatencySeconds: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmCacheStats\n */\nexport class LlmCacheStats implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmCacheStats';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmCacheStats();\n    LlmCacheStats.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmCacheStats) {\n    _instance.cachedInputTokens = _instance.cachedInputTokens || '0';\n    _instance.cacheCreationInputTokens =\n      _instance.cacheCreationInputTokens || '0';\n    _instance.uncachedInputTokens = _instance.uncachedInputTokens || '0';\n    _instance.cacheHitRate = _instance.cacheHitRate || 0;\n    _instance.tokenSavings = _instance.tokenSavings || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmCacheStats,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.cachedInputTokens = _reader.readInt64String();\n          break;\n        case 2:\n          _instance.cacheCreationInputTokens = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.uncachedInputTokens = _reader.readInt64String();\n          break;\n        case 4:\n          _instance.cacheHitRate = _reader.readDouble();\n          break;\n        case 5:\n          _instance.tokenSavings = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmCacheStats.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmCacheStats,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.cachedInputTokens) {\n      _writer.writeInt64String(1, _instance.cachedInputTokens);\n    }\n    if (_instance.cacheCreationInputTokens) {\n      _writer.writeInt64String(2, _instance.cacheCreationInputTokens);\n    }\n    if (_instance.uncachedInputTokens) {\n      _writer.writeInt64String(3, _instance.uncachedInputTokens);\n    }\n    if (_instance.cacheHitRate) {\n      _writer.writeDouble(4, _instance.cacheHitRate);\n    }\n    if (_instance.tokenSavings) {\n      _writer.writeInt64String(5, _instance.tokenSavings);\n    }\n  }\n\n  private _cachedInputTokens: string;\n  private _cacheCreationInputTokens: string;\n  private _uncachedInputTokens: string;\n  private _cacheHitRate: number;\n  private _tokenSavings: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmCacheStats to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmCacheStats.AsObject>) {\n    _value = _value || {};\n    this.cachedInputTokens = _value.cachedInputTokens;\n    this.cacheCreationInputTokens = _value.cacheCreationInputTokens;\n    this.uncachedInputTokens = _value.uncachedInputTokens;\n    this.cacheHitRate = _value.cacheHitRate;\n    this.tokenSavings = _value.tokenSavings;\n    LlmCacheStats.refineValues(this);\n  }\n  get cachedInputTokens(): string {\n    return this._cachedInputTokens;\n  }\n  set cachedInputTokens(value: string) {\n    this._cachedInputTokens = value;\n  }\n  get cacheCreationInputTokens(): string {\n    return this._cacheCreationInputTokens;\n  }\n  set cacheCreationInputTokens(value: string) {\n    this._cacheCreationInputTokens = value;\n  }\n  get uncachedInputTokens(): string {\n    return this._uncachedInputTokens;\n  }\n  set uncachedInputTokens(value: string) {\n    this._uncachedInputTokens = value;\n  }\n  get cacheHitRate(): number {\n    return this._cacheHitRate;\n  }\n  set cacheHitRate(value: number) {\n    this._cacheHitRate = value;\n  }\n  get tokenSavings(): string {\n    return this._tokenSavings;\n  }\n  set tokenSavings(value: string) {\n    this._tokenSavings = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmCacheStats.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmCacheStats.AsObject {\n    return {\n      cachedInputTokens: this.cachedInputTokens,\n      cacheCreationInputTokens: this.cacheCreationInputTokens,\n      uncachedInputTokens: this.uncachedInputTokens,\n      cacheHitRate: this.cacheHitRate,\n      tokenSavings: this.tokenSavings\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmCacheStats.AsProtobufJSON {\n    return {\n      cachedInputTokens: this.cachedInputTokens,\n      cacheCreationInputTokens: this.cacheCreationInputTokens,\n      uncachedInputTokens: this.uncachedInputTokens,\n      cacheHitRate: this.cacheHitRate,\n      tokenSavings: this.tokenSavings\n    };\n  }\n}\nexport module LlmCacheStats {\n  /**\n   * Standard JavaScript object representation for LlmCacheStats\n   */\n  export interface AsObject {\n    cachedInputTokens: string;\n    cacheCreationInputTokens: string;\n    uncachedInputTokens: string;\n    cacheHitRate: number;\n    tokenSavings: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmCacheStats\n   */\n  export interface AsProtobufJSON {\n    cachedInputTokens: string;\n    cacheCreationInputTokens: string;\n    uncachedInputTokens: string;\n    cacheHitRate: number;\n    tokenSavings: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmModelUsage\n */\nexport class LlmModelUsage implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmModelUsage';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmModelUsage();\n    LlmModelUsage.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmModelUsage) {\n    _instance.modelName = _instance.modelName || '';\n    _instance.provider = _instance.provider || '';\n    _instance.callCount = _instance.callCount || '0';\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.toolCallCount = _instance.toolCallCount || '0';\n    _instance.errorCount = _instance.errorCount || '0';\n    _instance.durationSecondsTotal = _instance.durationSecondsTotal || 0;\n    _instance.cacheStats = _instance.cacheStats || undefined;\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n    _instance.ccaiServiceProvider = _instance.ccaiServiceProvider || 0;\n    _instance.baseUrl = _instance.baseUrl || '';\n    _instance.thinkingTokensTotal = _instance.thinkingTokensTotal || '0';\n    _instance.thinkingDurationSecondsTotal =\n      _instance.thinkingDurationSecondsTotal || 0;\n    _instance.toolCallTokensTotal = _instance.toolCallTokensTotal || '0';\n    _instance.toolCallDurationSecondsTotal =\n      _instance.toolCallDurationSecondsTotal || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmModelUsage,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.modelName = _reader.readString();\n          break;\n        case 2:\n          _instance.provider = _reader.readString();\n          break;\n        case 3:\n          _instance.callCount = _reader.readInt64String();\n          break;\n        case 4:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.toolCallCount = _reader.readInt64String();\n          break;\n        case 6:\n          _instance.errorCount = _reader.readInt64String();\n          break;\n        case 7:\n          _instance.durationSecondsTotal = _reader.readDouble();\n          break;\n        case 8:\n          _instance.cacheStats = new LlmCacheStats();\n          _reader.readMessage(\n            _instance.cacheStats,\n            LlmCacheStats.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        case 10:\n          _instance.ccaiServiceProvider = _reader.readEnum();\n          break;\n        case 11:\n          _instance.baseUrl = _reader.readString();\n          break;\n        case 12:\n          _instance.thinkingTokensTotal = _reader.readInt64String();\n          break;\n        case 13:\n          _instance.thinkingDurationSecondsTotal = _reader.readDouble();\n          break;\n        case 14:\n          _instance.toolCallTokensTotal = _reader.readInt64String();\n          break;\n        case 15:\n          _instance.toolCallDurationSecondsTotal = _reader.readDouble();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmModelUsage.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmModelUsage,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.modelName) {\n      _writer.writeString(1, _instance.modelName);\n    }\n    if (_instance.provider) {\n      _writer.writeString(2, _instance.provider);\n    }\n    if (_instance.callCount) {\n      _writer.writeInt64String(3, _instance.callCount);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.toolCallCount) {\n      _writer.writeInt64String(5, _instance.toolCallCount);\n    }\n    if (_instance.errorCount) {\n      _writer.writeInt64String(6, _instance.errorCount);\n    }\n    if (_instance.durationSecondsTotal) {\n      _writer.writeDouble(7, _instance.durationSecondsTotal);\n    }\n    if (_instance.cacheStats) {\n      _writer.writeMessage(\n        8,\n        _instance.cacheStats as any,\n        LlmCacheStats.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(9, _instance.ccaiServiceName);\n    }\n    if (_instance.ccaiServiceProvider) {\n      _writer.writeEnum(10, _instance.ccaiServiceProvider);\n    }\n    if (_instance.baseUrl) {\n      _writer.writeString(11, _instance.baseUrl);\n    }\n    if (_instance.thinkingTokensTotal) {\n      _writer.writeInt64String(12, _instance.thinkingTokensTotal);\n    }\n    if (_instance.thinkingDurationSecondsTotal) {\n      _writer.writeDouble(13, _instance.thinkingDurationSecondsTotal);\n    }\n    if (_instance.toolCallTokensTotal) {\n      _writer.writeInt64String(14, _instance.toolCallTokensTotal);\n    }\n    if (_instance.toolCallDurationSecondsTotal) {\n      _writer.writeDouble(15, _instance.toolCallDurationSecondsTotal);\n    }\n  }\n\n  private _modelName: string;\n  private _provider: string;\n  private _callCount: string;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _toolCallCount: string;\n  private _errorCount: string;\n  private _durationSecondsTotal: number;\n  private _cacheStats?: LlmCacheStats;\n  private _ccaiServiceName: string;\n  private _ccaiServiceProvider: ondewoNlu013.CcaiServiceProvider;\n  private _baseUrl: string;\n  private _thinkingTokensTotal: string;\n  private _thinkingDurationSecondsTotal: number;\n  private _toolCallTokensTotal: string;\n  private _toolCallDurationSecondsTotal: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmModelUsage to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmModelUsage.AsObject>) {\n    _value = _value || {};\n    this.modelName = _value.modelName;\n    this.provider = _value.provider;\n    this.callCount = _value.callCount;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.toolCallCount = _value.toolCallCount;\n    this.errorCount = _value.errorCount;\n    this.durationSecondsTotal = _value.durationSecondsTotal;\n    this.cacheStats = _value.cacheStats\n      ? new LlmCacheStats(_value.cacheStats)\n      : undefined;\n    this.ccaiServiceName = _value.ccaiServiceName;\n    this.ccaiServiceProvider = _value.ccaiServiceProvider;\n    this.baseUrl = _value.baseUrl;\n    this.thinkingTokensTotal = _value.thinkingTokensTotal;\n    this.thinkingDurationSecondsTotal = _value.thinkingDurationSecondsTotal;\n    this.toolCallTokensTotal = _value.toolCallTokensTotal;\n    this.toolCallDurationSecondsTotal = _value.toolCallDurationSecondsTotal;\n    LlmModelUsage.refineValues(this);\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get provider(): string {\n    return this._provider;\n  }\n  set provider(value: string) {\n    this._provider = value;\n  }\n  get callCount(): string {\n    return this._callCount;\n  }\n  set callCount(value: string) {\n    this._callCount = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get toolCallCount(): string {\n    return this._toolCallCount;\n  }\n  set toolCallCount(value: string) {\n    this._toolCallCount = value;\n  }\n  get errorCount(): string {\n    return this._errorCount;\n  }\n  set errorCount(value: string) {\n    this._errorCount = value;\n  }\n  get durationSecondsTotal(): number {\n    return this._durationSecondsTotal;\n  }\n  set durationSecondsTotal(value: number) {\n    this._durationSecondsTotal = value;\n  }\n  get cacheStats(): LlmCacheStats | undefined {\n    return this._cacheStats;\n  }\n  set cacheStats(value: LlmCacheStats | undefined) {\n    this._cacheStats = value;\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n  get ccaiServiceProvider(): ondewoNlu013.CcaiServiceProvider {\n    return this._ccaiServiceProvider;\n  }\n  set ccaiServiceProvider(value: ondewoNlu013.CcaiServiceProvider) {\n    this._ccaiServiceProvider = value;\n  }\n  get baseUrl(): string {\n    return this._baseUrl;\n  }\n  set baseUrl(value: string) {\n    this._baseUrl = value;\n  }\n  get thinkingTokensTotal(): string {\n    return this._thinkingTokensTotal;\n  }\n  set thinkingTokensTotal(value: string) {\n    this._thinkingTokensTotal = value;\n  }\n  get thinkingDurationSecondsTotal(): number {\n    return this._thinkingDurationSecondsTotal;\n  }\n  set thinkingDurationSecondsTotal(value: number) {\n    this._thinkingDurationSecondsTotal = value;\n  }\n  get toolCallTokensTotal(): string {\n    return this._toolCallTokensTotal;\n  }\n  set toolCallTokensTotal(value: string) {\n    this._toolCallTokensTotal = value;\n  }\n  get toolCallDurationSecondsTotal(): number {\n    return this._toolCallDurationSecondsTotal;\n  }\n  set toolCallDurationSecondsTotal(value: number) {\n    this._toolCallDurationSecondsTotal = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmModelUsage.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmModelUsage.AsObject {\n    return {\n      modelName: this.modelName,\n      provider: this.provider,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      toolCallCount: this.toolCallCount,\n      errorCount: this.errorCount,\n      durationSecondsTotal: this.durationSecondsTotal,\n      cacheStats: this.cacheStats ? this.cacheStats.toObject() : undefined,\n      ccaiServiceName: this.ccaiServiceName,\n      ccaiServiceProvider: this.ccaiServiceProvider,\n      baseUrl: this.baseUrl,\n      thinkingTokensTotal: this.thinkingTokensTotal,\n      thinkingDurationSecondsTotal: this.thinkingDurationSecondsTotal,\n      toolCallTokensTotal: this.toolCallTokensTotal,\n      toolCallDurationSecondsTotal: this.toolCallDurationSecondsTotal\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmModelUsage.AsProtobufJSON {\n    return {\n      modelName: this.modelName,\n      provider: this.provider,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      toolCallCount: this.toolCallCount,\n      errorCount: this.errorCount,\n      durationSecondsTotal: this.durationSecondsTotal,\n      cacheStats: this.cacheStats\n        ? this.cacheStats.toProtobufJSON(options)\n        : null,\n      ccaiServiceName: this.ccaiServiceName,\n      ccaiServiceProvider:\n        ondewoNlu013.CcaiServiceProvider[\n          this.ccaiServiceProvider === null ||\n          this.ccaiServiceProvider === undefined\n            ? 0\n            : this.ccaiServiceProvider\n        ],\n      baseUrl: this.baseUrl,\n      thinkingTokensTotal: this.thinkingTokensTotal,\n      thinkingDurationSecondsTotal: this.thinkingDurationSecondsTotal,\n      toolCallTokensTotal: this.toolCallTokensTotal,\n      toolCallDurationSecondsTotal: this.toolCallDurationSecondsTotal\n    };\n  }\n}\nexport module LlmModelUsage {\n  /**\n   * Standard JavaScript object representation for LlmModelUsage\n   */\n  export interface AsObject {\n    modelName: string;\n    provider: string;\n    callCount: string;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    toolCallCount: string;\n    errorCount: string;\n    durationSecondsTotal: number;\n    cacheStats?: LlmCacheStats.AsObject;\n    ccaiServiceName: string;\n    ccaiServiceProvider: ondewoNlu013.CcaiServiceProvider;\n    baseUrl: string;\n    thinkingTokensTotal: string;\n    thinkingDurationSecondsTotal: number;\n    toolCallTokensTotal: string;\n    toolCallDurationSecondsTotal: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmModelUsage\n   */\n  export interface AsProtobufJSON {\n    modelName: string;\n    provider: string;\n    callCount: string;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    toolCallCount: string;\n    errorCount: string;\n    durationSecondsTotal: number;\n    cacheStats: LlmCacheStats.AsProtobufJSON | null;\n    ccaiServiceName: string;\n    ccaiServiceProvider: string;\n    baseUrl: string;\n    thinkingTokensTotal: string;\n    thinkingDurationSecondsTotal: number;\n    toolCallTokensTotal: string;\n    toolCallDurationSecondsTotal: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmProviderUsage\n */\nexport class LlmProviderUsage implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmProviderUsage';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmProviderUsage();\n    LlmProviderUsage.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmProviderUsage) {\n    _instance.provider = _instance.provider || '';\n    _instance.callCount = _instance.callCount || '0';\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.errorCount = _instance.errorCount || '0';\n    _instance.durationSecondsTotal = _instance.durationSecondsTotal || 0;\n    _instance.modelNames = _instance.modelNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmProviderUsage,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.provider = _reader.readString();\n          break;\n        case 2:\n          _instance.callCount = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.errorCount = _reader.readInt64String();\n          break;\n        case 5:\n          _instance.durationSecondsTotal = _reader.readDouble();\n          break;\n        case 6:\n          (_instance.modelNames = _instance.modelNames || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmProviderUsage.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmProviderUsage,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.provider) {\n      _writer.writeString(1, _instance.provider);\n    }\n    if (_instance.callCount) {\n      _writer.writeInt64String(2, _instance.callCount);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        3,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorCount) {\n      _writer.writeInt64String(4, _instance.errorCount);\n    }\n    if (_instance.durationSecondsTotal) {\n      _writer.writeDouble(5, _instance.durationSecondsTotal);\n    }\n    if (_instance.modelNames && _instance.modelNames.length) {\n      _writer.writeRepeatedString(6, _instance.modelNames);\n    }\n  }\n\n  private _provider: string;\n  private _callCount: string;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _errorCount: string;\n  private _durationSecondsTotal: number;\n  private _modelNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmProviderUsage to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmProviderUsage.AsObject>) {\n    _value = _value || {};\n    this.provider = _value.provider;\n    this.callCount = _value.callCount;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.errorCount = _value.errorCount;\n    this.durationSecondsTotal = _value.durationSecondsTotal;\n    this.modelNames = (_value.modelNames || []).slice();\n    LlmProviderUsage.refineValues(this);\n  }\n  get provider(): string {\n    return this._provider;\n  }\n  set provider(value: string) {\n    this._provider = value;\n  }\n  get callCount(): string {\n    return this._callCount;\n  }\n  set callCount(value: string) {\n    this._callCount = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get errorCount(): string {\n    return this._errorCount;\n  }\n  set errorCount(value: string) {\n    this._errorCount = value;\n  }\n  get durationSecondsTotal(): number {\n    return this._durationSecondsTotal;\n  }\n  set durationSecondsTotal(value: number) {\n    this._durationSecondsTotal = value;\n  }\n  get modelNames(): string[] {\n    return this._modelNames;\n  }\n  set modelNames(value: string[]) {\n    this._modelNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmProviderUsage.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmProviderUsage.AsObject {\n    return {\n      provider: this.provider,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      errorCount: this.errorCount,\n      durationSecondsTotal: this.durationSecondsTotal,\n      modelNames: (this.modelNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmProviderUsage.AsProtobufJSON {\n    return {\n      provider: this.provider,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      errorCount: this.errorCount,\n      durationSecondsTotal: this.durationSecondsTotal,\n      modelNames: (this.modelNames || []).slice()\n    };\n  }\n}\nexport module LlmProviderUsage {\n  /**\n   * Standard JavaScript object representation for LlmProviderUsage\n   */\n  export interface AsObject {\n    provider: string;\n    callCount: string;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    errorCount: string;\n    durationSecondsTotal: number;\n    modelNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for LlmProviderUsage\n   */\n  export interface AsProtobufJSON {\n    provider: string;\n    callCount: string;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    errorCount: string;\n    durationSecondsTotal: number;\n    modelNames: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmCcaiServiceUsage\n */\nexport class LlmCcaiServiceUsage implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmCcaiServiceUsage';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmCcaiServiceUsage();\n    LlmCcaiServiceUsage.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmCcaiServiceUsage) {\n    _instance.ccaiServiceProvider = _instance.ccaiServiceProvider || 0;\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n    _instance.callCount = _instance.callCount || '0';\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.baseUrl = _instance.baseUrl || '';\n    _instance.modelNames = _instance.modelNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmCcaiServiceUsage,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.ccaiServiceProvider = _reader.readEnum();\n          break;\n        case 2:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        case 3:\n          _instance.callCount = _reader.readInt64String();\n          break;\n        case 4:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.baseUrl = _reader.readString();\n          break;\n        case 6:\n          (_instance.modelNames = _instance.modelNames || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmCcaiServiceUsage.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmCcaiServiceUsage,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiServiceProvider) {\n      _writer.writeEnum(1, _instance.ccaiServiceProvider);\n    }\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(2, _instance.ccaiServiceName);\n    }\n    if (_instance.callCount) {\n      _writer.writeInt64String(3, _instance.callCount);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.baseUrl) {\n      _writer.writeString(5, _instance.baseUrl);\n    }\n    if (_instance.modelNames && _instance.modelNames.length) {\n      _writer.writeRepeatedString(6, _instance.modelNames);\n    }\n  }\n\n  private _ccaiServiceProvider: ondewoNlu013.CcaiServiceProvider;\n  private _ccaiServiceName: string;\n  private _callCount: string;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _baseUrl: string;\n  private _modelNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmCcaiServiceUsage to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmCcaiServiceUsage.AsObject>) {\n    _value = _value || {};\n    this.ccaiServiceProvider = _value.ccaiServiceProvider;\n    this.ccaiServiceName = _value.ccaiServiceName;\n    this.callCount = _value.callCount;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.baseUrl = _value.baseUrl;\n    this.modelNames = (_value.modelNames || []).slice();\n    LlmCcaiServiceUsage.refineValues(this);\n  }\n  get ccaiServiceProvider(): ondewoNlu013.CcaiServiceProvider {\n    return this._ccaiServiceProvider;\n  }\n  set ccaiServiceProvider(value: ondewoNlu013.CcaiServiceProvider) {\n    this._ccaiServiceProvider = value;\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n  get callCount(): string {\n    return this._callCount;\n  }\n  set callCount(value: string) {\n    this._callCount = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get baseUrl(): string {\n    return this._baseUrl;\n  }\n  set baseUrl(value: string) {\n    this._baseUrl = value;\n  }\n  get modelNames(): string[] {\n    return this._modelNames;\n  }\n  set modelNames(value: string[]) {\n    this._modelNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmCcaiServiceUsage.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmCcaiServiceUsage.AsObject {\n    return {\n      ccaiServiceProvider: this.ccaiServiceProvider,\n      ccaiServiceName: this.ccaiServiceName,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      baseUrl: this.baseUrl,\n      modelNames: (this.modelNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmCcaiServiceUsage.AsProtobufJSON {\n    return {\n      ccaiServiceProvider:\n        ondewoNlu013.CcaiServiceProvider[\n          this.ccaiServiceProvider === null ||\n          this.ccaiServiceProvider === undefined\n            ? 0\n            : this.ccaiServiceProvider\n        ],\n      ccaiServiceName: this.ccaiServiceName,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      baseUrl: this.baseUrl,\n      modelNames: (this.modelNames || []).slice()\n    };\n  }\n}\nexport module LlmCcaiServiceUsage {\n  /**\n   * Standard JavaScript object representation for LlmCcaiServiceUsage\n   */\n  export interface AsObject {\n    ccaiServiceProvider: ondewoNlu013.CcaiServiceProvider;\n    ccaiServiceName: string;\n    callCount: string;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    baseUrl: string;\n    modelNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for LlmCcaiServiceUsage\n   */\n  export interface AsProtobufJSON {\n    ccaiServiceProvider: string;\n    ccaiServiceName: string;\n    callCount: string;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    baseUrl: string;\n    modelNames: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmAgentUsage\n */\nexport class LlmAgentUsage implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmAgentUsage';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmAgentUsage();\n    LlmAgentUsage.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmAgentUsage) {\n    _instance.agentName = _instance.agentName || '';\n    _instance.agentRole = _instance.agentRole || '';\n    _instance.teamName = _instance.teamName || '';\n    _instance.callCount = _instance.callCount || '0';\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.toolCallCount = _instance.toolCallCount || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmAgentUsage,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agentName = _reader.readString();\n          break;\n        case 2:\n          _instance.agentRole = _reader.readString();\n          break;\n        case 3:\n          _instance.teamName = _reader.readString();\n          break;\n        case 4:\n          _instance.callCount = _reader.readInt64String();\n          break;\n        case 5:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.toolCallCount = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmAgentUsage.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmAgentUsage,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agentName) {\n      _writer.writeString(1, _instance.agentName);\n    }\n    if (_instance.agentRole) {\n      _writer.writeString(2, _instance.agentRole);\n    }\n    if (_instance.teamName) {\n      _writer.writeString(3, _instance.teamName);\n    }\n    if (_instance.callCount) {\n      _writer.writeInt64String(4, _instance.callCount);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        5,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.toolCallCount) {\n      _writer.writeInt64String(6, _instance.toolCallCount);\n    }\n  }\n\n  private _agentName: string;\n  private _agentRole: string;\n  private _teamName: string;\n  private _callCount: string;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _toolCallCount: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmAgentUsage to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmAgentUsage.AsObject>) {\n    _value = _value || {};\n    this.agentName = _value.agentName;\n    this.agentRole = _value.agentRole;\n    this.teamName = _value.teamName;\n    this.callCount = _value.callCount;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.toolCallCount = _value.toolCallCount;\n    LlmAgentUsage.refineValues(this);\n  }\n  get agentName(): string {\n    return this._agentName;\n  }\n  set agentName(value: string) {\n    this._agentName = value;\n  }\n  get agentRole(): string {\n    return this._agentRole;\n  }\n  set agentRole(value: string) {\n    this._agentRole = value;\n  }\n  get teamName(): string {\n    return this._teamName;\n  }\n  set teamName(value: string) {\n    this._teamName = value;\n  }\n  get callCount(): string {\n    return this._callCount;\n  }\n  set callCount(value: string) {\n    this._callCount = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get toolCallCount(): string {\n    return this._toolCallCount;\n  }\n  set toolCallCount(value: string) {\n    this._toolCallCount = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmAgentUsage.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmAgentUsage.AsObject {\n    return {\n      agentName: this.agentName,\n      agentRole: this.agentRole,\n      teamName: this.teamName,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      toolCallCount: this.toolCallCount\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmAgentUsage.AsProtobufJSON {\n    return {\n      agentName: this.agentName,\n      agentRole: this.agentRole,\n      teamName: this.teamName,\n      callCount: this.callCount,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      toolCallCount: this.toolCallCount\n    };\n  }\n}\nexport module LlmAgentUsage {\n  /**\n   * Standard JavaScript object representation for LlmAgentUsage\n   */\n  export interface AsObject {\n    agentName: string;\n    agentRole: string;\n    teamName: string;\n    callCount: string;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    toolCallCount: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmAgentUsage\n   */\n  export interface AsProtobufJSON {\n    agentName: string;\n    agentRole: string;\n    teamName: string;\n    callCount: string;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    toolCallCount: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmToolUsage\n */\nexport class LlmToolUsage implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmToolUsage';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmToolUsage();\n    LlmToolUsage.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmToolUsage) {\n    _instance.toolName = _instance.toolName || '';\n    _instance.callCount = _instance.callCount || '0';\n    _instance.errorCount = _instance.errorCount || '0';\n    _instance.errorRate = _instance.errorRate || 0;\n    _instance.durationSecondsTotal = _instance.durationSecondsTotal || 0;\n    _instance.meanDurationSeconds = _instance.meanDurationSeconds || 0;\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.arguments = _instance.arguments || undefined;\n    _instance.llmCallId = _instance.llmCallId || '';\n    _instance.toolCallId = _instance.toolCallId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmToolUsage,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.toolName = _reader.readString();\n          break;\n        case 2:\n          _instance.callCount = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.errorCount = _reader.readInt64String();\n          break;\n        case 4:\n          _instance.errorRate = _reader.readDouble();\n          break;\n        case 5:\n          _instance.durationSecondsTotal = _reader.readDouble();\n          break;\n        case 6:\n          _instance.meanDurationSeconds = _reader.readDouble();\n          break;\n        case 7:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.arguments = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.arguments,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.llmCallId = _reader.readString();\n          break;\n        case 10:\n          _instance.toolCallId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmToolUsage.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmToolUsage,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.toolName) {\n      _writer.writeString(1, _instance.toolName);\n    }\n    if (_instance.callCount) {\n      _writer.writeInt64String(2, _instance.callCount);\n    }\n    if (_instance.errorCount) {\n      _writer.writeInt64String(3, _instance.errorCount);\n    }\n    if (_instance.errorRate) {\n      _writer.writeDouble(4, _instance.errorRate);\n    }\n    if (_instance.durationSecondsTotal) {\n      _writer.writeDouble(5, _instance.durationSecondsTotal);\n    }\n    if (_instance.meanDurationSeconds) {\n      _writer.writeDouble(6, _instance.meanDurationSeconds);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        7,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.arguments) {\n      _writer.writeMessage(\n        8,\n        _instance.arguments as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmCallId) {\n      _writer.writeString(9, _instance.llmCallId);\n    }\n    if (_instance.toolCallId) {\n      _writer.writeString(10, _instance.toolCallId);\n    }\n  }\n\n  private _toolName: string;\n  private _callCount: string;\n  private _errorCount: string;\n  private _errorRate: number;\n  private _durationSecondsTotal: number;\n  private _meanDurationSeconds: number;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _arguments?: googleProtobuf004.Struct;\n  private _llmCallId: string;\n  private _toolCallId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmToolUsage to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmToolUsage.AsObject>) {\n    _value = _value || {};\n    this.toolName = _value.toolName;\n    this.callCount = _value.callCount;\n    this.errorCount = _value.errorCount;\n    this.errorRate = _value.errorRate;\n    this.durationSecondsTotal = _value.durationSecondsTotal;\n    this.meanDurationSeconds = _value.meanDurationSeconds;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.arguments = _value.arguments\n      ? new googleProtobuf004.Struct(_value.arguments)\n      : undefined;\n    this.llmCallId = _value.llmCallId;\n    this.toolCallId = _value.toolCallId;\n    LlmToolUsage.refineValues(this);\n  }\n  get toolName(): string {\n    return this._toolName;\n  }\n  set toolName(value: string) {\n    this._toolName = value;\n  }\n  get callCount(): string {\n    return this._callCount;\n  }\n  set callCount(value: string) {\n    this._callCount = value;\n  }\n  get errorCount(): string {\n    return this._errorCount;\n  }\n  set errorCount(value: string) {\n    this._errorCount = value;\n  }\n  get errorRate(): number {\n    return this._errorRate;\n  }\n  set errorRate(value: number) {\n    this._errorRate = value;\n  }\n  get durationSecondsTotal(): number {\n    return this._durationSecondsTotal;\n  }\n  set durationSecondsTotal(value: number) {\n    this._durationSecondsTotal = value;\n  }\n  get meanDurationSeconds(): number {\n    return this._meanDurationSeconds;\n  }\n  set meanDurationSeconds(value: number) {\n    this._meanDurationSeconds = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get arguments(): googleProtobuf004.Struct | undefined {\n    return this._arguments;\n  }\n  set arguments(value: googleProtobuf004.Struct | undefined) {\n    this._arguments = value;\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n  get toolCallId(): string {\n    return this._toolCallId;\n  }\n  set toolCallId(value: string) {\n    this._toolCallId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmToolUsage.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmToolUsage.AsObject {\n    return {\n      toolName: this.toolName,\n      callCount: this.callCount,\n      errorCount: this.errorCount,\n      errorRate: this.errorRate,\n      durationSecondsTotal: this.durationSecondsTotal,\n      meanDurationSeconds: this.meanDurationSeconds,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      arguments: this.arguments ? this.arguments.toObject() : undefined,\n      llmCallId: this.llmCallId,\n      toolCallId: this.toolCallId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmToolUsage.AsProtobufJSON {\n    return {\n      toolName: this.toolName,\n      callCount: this.callCount,\n      errorCount: this.errorCount,\n      errorRate: this.errorRate,\n      durationSecondsTotal: this.durationSecondsTotal,\n      meanDurationSeconds: this.meanDurationSeconds,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      arguments: this.arguments ? this.arguments.toProtobufJSON(options) : null,\n      llmCallId: this.llmCallId,\n      toolCallId: this.toolCallId\n    };\n  }\n}\nexport module LlmToolUsage {\n  /**\n   * Standard JavaScript object representation for LlmToolUsage\n   */\n  export interface AsObject {\n    toolName: string;\n    callCount: string;\n    errorCount: string;\n    errorRate: number;\n    durationSecondsTotal: number;\n    meanDurationSeconds: number;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    arguments?: googleProtobuf004.Struct.AsObject;\n    llmCallId: string;\n    toolCallId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmToolUsage\n   */\n  export interface AsProtobufJSON {\n    toolName: string;\n    callCount: string;\n    errorCount: string;\n    errorRate: number;\n    durationSecondsTotal: number;\n    meanDurationSeconds: number;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    arguments: googleProtobuf004.Struct.AsProtobufJSON | null;\n    llmCallId: string;\n    toolCallId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmErrorStat\n */\nexport class LlmErrorStat implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmErrorStat';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmErrorStat();\n    LlmErrorStat.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmErrorStat) {\n    _instance.errorClass = _instance.errorClass || '';\n    _instance.count = _instance.count || '0';\n    _instance.rate = _instance.rate || 0;\n    _instance.sampleMessage = _instance.sampleMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmErrorStat,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.errorClass = _reader.readString();\n          break;\n        case 2:\n          _instance.count = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.rate = _reader.readDouble();\n          break;\n        case 4:\n          _instance.sampleMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmErrorStat.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmErrorStat,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.errorClass) {\n      _writer.writeString(1, _instance.errorClass);\n    }\n    if (_instance.count) {\n      _writer.writeInt64String(2, _instance.count);\n    }\n    if (_instance.rate) {\n      _writer.writeDouble(3, _instance.rate);\n    }\n    if (_instance.sampleMessage) {\n      _writer.writeString(4, _instance.sampleMessage);\n    }\n  }\n\n  private _errorClass: string;\n  private _count: string;\n  private _rate: number;\n  private _sampleMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmErrorStat to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmErrorStat.AsObject>) {\n    _value = _value || {};\n    this.errorClass = _value.errorClass;\n    this.count = _value.count;\n    this.rate = _value.rate;\n    this.sampleMessage = _value.sampleMessage;\n    LlmErrorStat.refineValues(this);\n  }\n  get errorClass(): string {\n    return this._errorClass;\n  }\n  set errorClass(value: string) {\n    this._errorClass = value;\n  }\n  get count(): string {\n    return this._count;\n  }\n  set count(value: string) {\n    this._count = value;\n  }\n  get rate(): number {\n    return this._rate;\n  }\n  set rate(value: number) {\n    this._rate = value;\n  }\n  get sampleMessage(): string {\n    return this._sampleMessage;\n  }\n  set sampleMessage(value: string) {\n    this._sampleMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmErrorStat.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmErrorStat.AsObject {\n    return {\n      errorClass: this.errorClass,\n      count: this.count,\n      rate: this.rate,\n      sampleMessage: this.sampleMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmErrorStat.AsProtobufJSON {\n    return {\n      errorClass: this.errorClass,\n      count: this.count,\n      rate: this.rate,\n      sampleMessage: this.sampleMessage\n    };\n  }\n}\nexport module LlmErrorStat {\n  /**\n   * Standard JavaScript object representation for LlmErrorStat\n   */\n  export interface AsObject {\n    errorClass: string;\n    count: string;\n    rate: number;\n    sampleMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmErrorStat\n   */\n  export interface AsProtobufJSON {\n    errorClass: string;\n    count: string;\n    rate: number;\n    sampleMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmErrorStats\n */\nexport class LlmErrorStats implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmErrorStats';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmErrorStats();\n    LlmErrorStats.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmErrorStats) {\n    _instance.totalErrorCount = _instance.totalErrorCount || '0';\n    _instance.overallErrorRate = _instance.overallErrorRate || 0;\n    _instance.errorsByClass = _instance.errorsByClass || [];\n    _instance.retryCountTotal = _instance.retryCountTotal || '0';\n    _instance.maxFallbackDepth = _instance.maxFallbackDepth || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmErrorStats,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.totalErrorCount = _reader.readInt64String();\n          break;\n        case 2:\n          _instance.overallErrorRate = _reader.readDouble();\n          break;\n        case 3:\n          const messageInitializer3 = new LlmErrorStat();\n          _reader.readMessage(\n            messageInitializer3,\n            LlmErrorStat.deserializeBinaryFromReader\n          );\n          (_instance.errorsByClass = _instance.errorsByClass || []).push(\n            messageInitializer3\n          );\n          break;\n        case 4:\n          _instance.retryCountTotal = _reader.readInt64String();\n          break;\n        case 5:\n          _instance.maxFallbackDepth = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmErrorStats.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmErrorStats,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.totalErrorCount) {\n      _writer.writeInt64String(1, _instance.totalErrorCount);\n    }\n    if (_instance.overallErrorRate) {\n      _writer.writeDouble(2, _instance.overallErrorRate);\n    }\n    if (_instance.errorsByClass && _instance.errorsByClass.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.errorsByClass as any,\n        LlmErrorStat.serializeBinaryToWriter\n      );\n    }\n    if (_instance.retryCountTotal) {\n      _writer.writeInt64String(4, _instance.retryCountTotal);\n    }\n    if (_instance.maxFallbackDepth) {\n      _writer.writeInt32(5, _instance.maxFallbackDepth);\n    }\n  }\n\n  private _totalErrorCount: string;\n  private _overallErrorRate: number;\n  private _errorsByClass?: LlmErrorStat[];\n  private _retryCountTotal: string;\n  private _maxFallbackDepth: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmErrorStats to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmErrorStats.AsObject>) {\n    _value = _value || {};\n    this.totalErrorCount = _value.totalErrorCount;\n    this.overallErrorRate = _value.overallErrorRate;\n    this.errorsByClass = (_value.errorsByClass || []).map(\n      m => new LlmErrorStat(m)\n    );\n    this.retryCountTotal = _value.retryCountTotal;\n    this.maxFallbackDepth = _value.maxFallbackDepth;\n    LlmErrorStats.refineValues(this);\n  }\n  get totalErrorCount(): string {\n    return this._totalErrorCount;\n  }\n  set totalErrorCount(value: string) {\n    this._totalErrorCount = value;\n  }\n  get overallErrorRate(): number {\n    return this._overallErrorRate;\n  }\n  set overallErrorRate(value: number) {\n    this._overallErrorRate = value;\n  }\n  get errorsByClass(): LlmErrorStat[] | undefined {\n    return this._errorsByClass;\n  }\n  set errorsByClass(value: LlmErrorStat[] | undefined) {\n    this._errorsByClass = value;\n  }\n  get retryCountTotal(): string {\n    return this._retryCountTotal;\n  }\n  set retryCountTotal(value: string) {\n    this._retryCountTotal = value;\n  }\n  get maxFallbackDepth(): number {\n    return this._maxFallbackDepth;\n  }\n  set maxFallbackDepth(value: number) {\n    this._maxFallbackDepth = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmErrorStats.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmErrorStats.AsObject {\n    return {\n      totalErrorCount: this.totalErrorCount,\n      overallErrorRate: this.overallErrorRate,\n      errorsByClass: (this.errorsByClass || []).map(m => m.toObject()),\n      retryCountTotal: this.retryCountTotal,\n      maxFallbackDepth: this.maxFallbackDepth\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmErrorStats.AsProtobufJSON {\n    return {\n      totalErrorCount: this.totalErrorCount,\n      overallErrorRate: this.overallErrorRate,\n      errorsByClass: (this.errorsByClass || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      retryCountTotal: this.retryCountTotal,\n      maxFallbackDepth: this.maxFallbackDepth\n    };\n  }\n}\nexport module LlmErrorStats {\n  /**\n   * Standard JavaScript object representation for LlmErrorStats\n   */\n  export interface AsObject {\n    totalErrorCount: string;\n    overallErrorRate: number;\n    errorsByClass?: LlmErrorStat.AsObject[];\n    retryCountTotal: string;\n    maxFallbackDepth: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmErrorStats\n   */\n  export interface AsProtobufJSON {\n    totalErrorCount: string;\n    overallErrorRate: number;\n    errorsByClass: LlmErrorStat.AsProtobufJSON[] | null;\n    retryCountTotal: string;\n    maxFallbackDepth: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmFinishReasonStat\n */\nexport class LlmFinishReasonStat implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmFinishReasonStat';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmFinishReasonStat();\n    LlmFinishReasonStat.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmFinishReasonStat) {\n    _instance.finishReason = _instance.finishReason || '';\n    _instance.count = _instance.count || '0';\n    _instance.rate = _instance.rate || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmFinishReasonStat,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.finishReason = _reader.readString();\n          break;\n        case 2:\n          _instance.count = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.rate = _reader.readDouble();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmFinishReasonStat.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmFinishReasonStat,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.finishReason) {\n      _writer.writeString(1, _instance.finishReason);\n    }\n    if (_instance.count) {\n      _writer.writeInt64String(2, _instance.count);\n    }\n    if (_instance.rate) {\n      _writer.writeDouble(3, _instance.rate);\n    }\n  }\n\n  private _finishReason: string;\n  private _count: string;\n  private _rate: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmFinishReasonStat to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmFinishReasonStat.AsObject>) {\n    _value = _value || {};\n    this.finishReason = _value.finishReason;\n    this.count = _value.count;\n    this.rate = _value.rate;\n    LlmFinishReasonStat.refineValues(this);\n  }\n  get finishReason(): string {\n    return this._finishReason;\n  }\n  set finishReason(value: string) {\n    this._finishReason = value;\n  }\n  get count(): string {\n    return this._count;\n  }\n  set count(value: string) {\n    this._count = value;\n  }\n  get rate(): number {\n    return this._rate;\n  }\n  set rate(value: number) {\n    this._rate = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmFinishReasonStat.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmFinishReasonStat.AsObject {\n    return {\n      finishReason: this.finishReason,\n      count: this.count,\n      rate: this.rate\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmFinishReasonStat.AsProtobufJSON {\n    return {\n      finishReason: this.finishReason,\n      count: this.count,\n      rate: this.rate\n    };\n  }\n}\nexport module LlmFinishReasonStat {\n  /**\n   * Standard JavaScript object representation for LlmFinishReasonStat\n   */\n  export interface AsObject {\n    finishReason: string;\n    count: string;\n    rate: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmFinishReasonStat\n   */\n  export interface AsProtobufJSON {\n    finishReason: string;\n    count: string;\n    rate: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmReasoningEffortStat\n */\nexport class LlmReasoningEffortStat implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmReasoningEffortStat';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmReasoningEffortStat();\n    LlmReasoningEffortStat.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmReasoningEffortStat) {\n    _instance.reasoningEffort = _instance.reasoningEffort || 0;\n    _instance.count = _instance.count || '0';\n    _instance.rate = _instance.rate || 0;\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmReasoningEffortStat,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.reasoningEffort = _reader.readEnum();\n          break;\n        case 2:\n          _instance.count = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.rate = _reader.readDouble();\n          break;\n        case 4:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmReasoningEffortStat.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmReasoningEffortStat,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.reasoningEffort) {\n      _writer.writeEnum(1, _instance.reasoningEffort);\n    }\n    if (_instance.count) {\n      _writer.writeInt64String(2, _instance.count);\n    }\n    if (_instance.rate) {\n      _writer.writeDouble(3, _instance.rate);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _reasoningEffort: ReasoningEffort;\n  private _count: string;\n  private _rate: number;\n  private _llmTokenUsage?: LlmTokenUsage;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmReasoningEffortStat to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmReasoningEffortStat.AsObject>) {\n    _value = _value || {};\n    this.reasoningEffort = _value.reasoningEffort;\n    this.count = _value.count;\n    this.rate = _value.rate;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    LlmReasoningEffortStat.refineValues(this);\n  }\n  get reasoningEffort(): ReasoningEffort {\n    return this._reasoningEffort;\n  }\n  set reasoningEffort(value: ReasoningEffort) {\n    this._reasoningEffort = value;\n  }\n  get count(): string {\n    return this._count;\n  }\n  set count(value: string) {\n    this._count = value;\n  }\n  get rate(): number {\n    return this._rate;\n  }\n  set rate(value: number) {\n    this._rate = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmReasoningEffortStat.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmReasoningEffortStat.AsObject {\n    return {\n      reasoningEffort: this.reasoningEffort,\n      count: this.count,\n      rate: this.rate,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmReasoningEffortStat.AsProtobufJSON {\n    return {\n      reasoningEffort:\n        ReasoningEffort[\n          this.reasoningEffort === null || this.reasoningEffort === undefined\n            ? 0\n            : this.reasoningEffort\n        ],\n      count: this.count,\n      rate: this.rate,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmReasoningEffortStat {\n  /**\n   * Standard JavaScript object representation for LlmReasoningEffortStat\n   */\n  export interface AsObject {\n    reasoningEffort: ReasoningEffort;\n    count: string;\n    rate: number;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmReasoningEffortStat\n   */\n  export interface AsProtobufJSON {\n    reasoningEffort: string;\n    count: string;\n    rate: number;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmTelemetryReport\n */\nexport class LlmTelemetryReport implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmTelemetryReport';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmTelemetryReport();\n    LlmTelemetryReport.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmTelemetryReport) {\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.toolCallCountTotal = _instance.toolCallCountTotal || 0;\n    _instance.llmCallCount = _instance.llmCallCount || 0;\n    _instance.llmTelemetries = _instance.llmTelemetries || [];\n    _instance.durationSecondsTotal = _instance.durationSecondsTotal || 0;\n    _instance.modelsUsed = _instance.modelsUsed || [];\n    _instance.providersUsed = _instance.providersUsed || [];\n    _instance.ccaiServicesUsed = _instance.ccaiServicesUsed || [];\n    _instance.agentsUsed = _instance.agentsUsed || [];\n    _instance.toolsUsed = _instance.toolsUsed || [];\n    _instance.latencyStats = _instance.latencyStats || undefined;\n    _instance.cacheStats = _instance.cacheStats || undefined;\n    _instance.errorStats = _instance.errorStats || undefined;\n    _instance.finishReasonDistribution =\n      _instance.finishReasonDistribution || [];\n    _instance.reasoningEffortDistribution =\n      _instance.reasoningEffortDistribution || [];\n    _instance.thinkingTokensTotal = _instance.thinkingTokensTotal || '0';\n    _instance.thinkingDurationSecondsTotal =\n      _instance.thinkingDurationSecondsTotal || 0;\n    _instance.toolCallTokensTotal = _instance.toolCallTokensTotal || '0';\n    _instance.toolCallDurationSecondsTotal =\n      _instance.toolCallDurationSecondsTotal || 0;\n    _instance.safetyStats = _instance.safetyStats || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmTelemetryReport,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.toolCallCountTotal = _reader.readInt32();\n          break;\n        case 3:\n          _instance.llmCallCount = _reader.readInt32();\n          break;\n        case 4:\n          const messageInitializer4 = new LlmTelemetry();\n          _reader.readMessage(\n            messageInitializer4,\n            LlmTelemetry.deserializeBinaryFromReader\n          );\n          (_instance.llmTelemetries = _instance.llmTelemetries || []).push(\n            messageInitializer4\n          );\n          break;\n        case 5:\n          _instance.durationSecondsTotal = _reader.readDouble();\n          break;\n        case 6:\n          const messageInitializer6 = new LlmModelUsage();\n          _reader.readMessage(\n            messageInitializer6,\n            LlmModelUsage.deserializeBinaryFromReader\n          );\n          (_instance.modelsUsed = _instance.modelsUsed || []).push(\n            messageInitializer6\n          );\n          break;\n        case 7:\n          const messageInitializer7 = new LlmProviderUsage();\n          _reader.readMessage(\n            messageInitializer7,\n            LlmProviderUsage.deserializeBinaryFromReader\n          );\n          (_instance.providersUsed = _instance.providersUsed || []).push(\n            messageInitializer7\n          );\n          break;\n        case 8:\n          const messageInitializer8 = new LlmCcaiServiceUsage();\n          _reader.readMessage(\n            messageInitializer8,\n            LlmCcaiServiceUsage.deserializeBinaryFromReader\n          );\n          (_instance.ccaiServicesUsed = _instance.ccaiServicesUsed || []).push(\n            messageInitializer8\n          );\n          break;\n        case 9:\n          const messageInitializer9 = new LlmAgentUsage();\n          _reader.readMessage(\n            messageInitializer9,\n            LlmAgentUsage.deserializeBinaryFromReader\n          );\n          (_instance.agentsUsed = _instance.agentsUsed || []).push(\n            messageInitializer9\n          );\n          break;\n        case 10:\n          const messageInitializer10 = new LlmToolUsage();\n          _reader.readMessage(\n            messageInitializer10,\n            LlmToolUsage.deserializeBinaryFromReader\n          );\n          (_instance.toolsUsed = _instance.toolsUsed || []).push(\n            messageInitializer10\n          );\n          break;\n        case 11:\n          _instance.latencyStats = new LlmLatencyStats();\n          _reader.readMessage(\n            _instance.latencyStats,\n            LlmLatencyStats.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.cacheStats = new LlmCacheStats();\n          _reader.readMessage(\n            _instance.cacheStats,\n            LlmCacheStats.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.errorStats = new LlmErrorStats();\n          _reader.readMessage(\n            _instance.errorStats,\n            LlmErrorStats.deserializeBinaryFromReader\n          );\n          break;\n        case 14:\n          const messageInitializer14 = new LlmFinishReasonStat();\n          _reader.readMessage(\n            messageInitializer14,\n            LlmFinishReasonStat.deserializeBinaryFromReader\n          );\n          (_instance.finishReasonDistribution =\n            _instance.finishReasonDistribution || []).push(\n            messageInitializer14\n          );\n          break;\n        case 15:\n          const messageInitializer15 = new LlmReasoningEffortStat();\n          _reader.readMessage(\n            messageInitializer15,\n            LlmReasoningEffortStat.deserializeBinaryFromReader\n          );\n          (_instance.reasoningEffortDistribution =\n            _instance.reasoningEffortDistribution || []).push(\n            messageInitializer15\n          );\n          break;\n        case 16:\n          _instance.thinkingTokensTotal = _reader.readInt64String();\n          break;\n        case 17:\n          _instance.thinkingDurationSecondsTotal = _reader.readDouble();\n          break;\n        case 18:\n          _instance.toolCallTokensTotal = _reader.readInt64String();\n          break;\n        case 19:\n          _instance.toolCallDurationSecondsTotal = _reader.readDouble();\n          break;\n        case 20:\n          _instance.safetyStats = new LlmSafetyStats();\n          _reader.readMessage(\n            _instance.safetyStats,\n            LlmSafetyStats.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmTelemetryReport.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmTelemetryReport,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        1,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.toolCallCountTotal) {\n      _writer.writeInt32(2, _instance.toolCallCountTotal);\n    }\n    if (_instance.llmCallCount) {\n      _writer.writeInt32(3, _instance.llmCallCount);\n    }\n    if (_instance.llmTelemetries && _instance.llmTelemetries.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.llmTelemetries as any,\n        LlmTelemetry.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationSecondsTotal) {\n      _writer.writeDouble(5, _instance.durationSecondsTotal);\n    }\n    if (_instance.modelsUsed && _instance.modelsUsed.length) {\n      _writer.writeRepeatedMessage(\n        6,\n        _instance.modelsUsed as any,\n        LlmModelUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.providersUsed && _instance.providersUsed.length) {\n      _writer.writeRepeatedMessage(\n        7,\n        _instance.providersUsed as any,\n        LlmProviderUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiServicesUsed && _instance.ccaiServicesUsed.length) {\n      _writer.writeRepeatedMessage(\n        8,\n        _instance.ccaiServicesUsed as any,\n        LlmCcaiServiceUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.agentsUsed && _instance.agentsUsed.length) {\n      _writer.writeRepeatedMessage(\n        9,\n        _instance.agentsUsed as any,\n        LlmAgentUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.toolsUsed && _instance.toolsUsed.length) {\n      _writer.writeRepeatedMessage(\n        10,\n        _instance.toolsUsed as any,\n        LlmToolUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.latencyStats) {\n      _writer.writeMessage(\n        11,\n        _instance.latencyStats as any,\n        LlmLatencyStats.serializeBinaryToWriter\n      );\n    }\n    if (_instance.cacheStats) {\n      _writer.writeMessage(\n        12,\n        _instance.cacheStats as any,\n        LlmCacheStats.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorStats) {\n      _writer.writeMessage(\n        13,\n        _instance.errorStats as any,\n        LlmErrorStats.serializeBinaryToWriter\n      );\n    }\n    if (\n      _instance.finishReasonDistribution &&\n      _instance.finishReasonDistribution.length\n    ) {\n      _writer.writeRepeatedMessage(\n        14,\n        _instance.finishReasonDistribution as any,\n        LlmFinishReasonStat.serializeBinaryToWriter\n      );\n    }\n    if (\n      _instance.reasoningEffortDistribution &&\n      _instance.reasoningEffortDistribution.length\n    ) {\n      _writer.writeRepeatedMessage(\n        15,\n        _instance.reasoningEffortDistribution as any,\n        LlmReasoningEffortStat.serializeBinaryToWriter\n      );\n    }\n    if (_instance.thinkingTokensTotal) {\n      _writer.writeInt64String(16, _instance.thinkingTokensTotal);\n    }\n    if (_instance.thinkingDurationSecondsTotal) {\n      _writer.writeDouble(17, _instance.thinkingDurationSecondsTotal);\n    }\n    if (_instance.toolCallTokensTotal) {\n      _writer.writeInt64String(18, _instance.toolCallTokensTotal);\n    }\n    if (_instance.toolCallDurationSecondsTotal) {\n      _writer.writeDouble(19, _instance.toolCallDurationSecondsTotal);\n    }\n    if (_instance.safetyStats) {\n      _writer.writeMessage(\n        20,\n        _instance.safetyStats as any,\n        LlmSafetyStats.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _toolCallCountTotal: number;\n  private _llmCallCount: number;\n  private _llmTelemetries?: LlmTelemetry[];\n  private _durationSecondsTotal: number;\n  private _modelsUsed?: LlmModelUsage[];\n  private _providersUsed?: LlmProviderUsage[];\n  private _ccaiServicesUsed?: LlmCcaiServiceUsage[];\n  private _agentsUsed?: LlmAgentUsage[];\n  private _toolsUsed?: LlmToolUsage[];\n  private _latencyStats?: LlmLatencyStats;\n  private _cacheStats?: LlmCacheStats;\n  private _errorStats?: LlmErrorStats;\n  private _finishReasonDistribution?: LlmFinishReasonStat[];\n  private _reasoningEffortDistribution?: LlmReasoningEffortStat[];\n  private _thinkingTokensTotal: string;\n  private _thinkingDurationSecondsTotal: number;\n  private _toolCallTokensTotal: string;\n  private _toolCallDurationSecondsTotal: number;\n  private _safetyStats?: LlmSafetyStats;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmTelemetryReport to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmTelemetryReport.AsObject>) {\n    _value = _value || {};\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.toolCallCountTotal = _value.toolCallCountTotal;\n    this.llmCallCount = _value.llmCallCount;\n    this.llmTelemetries = (_value.llmTelemetries || []).map(\n      m => new LlmTelemetry(m)\n    );\n    this.durationSecondsTotal = _value.durationSecondsTotal;\n    this.modelsUsed = (_value.modelsUsed || []).map(m => new LlmModelUsage(m));\n    this.providersUsed = (_value.providersUsed || []).map(\n      m => new LlmProviderUsage(m)\n    );\n    this.ccaiServicesUsed = (_value.ccaiServicesUsed || []).map(\n      m => new LlmCcaiServiceUsage(m)\n    );\n    this.agentsUsed = (_value.agentsUsed || []).map(m => new LlmAgentUsage(m));\n    this.toolsUsed = (_value.toolsUsed || []).map(m => new LlmToolUsage(m));\n    this.latencyStats = _value.latencyStats\n      ? new LlmLatencyStats(_value.latencyStats)\n      : undefined;\n    this.cacheStats = _value.cacheStats\n      ? new LlmCacheStats(_value.cacheStats)\n      : undefined;\n    this.errorStats = _value.errorStats\n      ? new LlmErrorStats(_value.errorStats)\n      : undefined;\n    this.finishReasonDistribution = (_value.finishReasonDistribution || []).map(\n      m => new LlmFinishReasonStat(m)\n    );\n    this.reasoningEffortDistribution = (\n      _value.reasoningEffortDistribution || []\n    ).map(m => new LlmReasoningEffortStat(m));\n    this.thinkingTokensTotal = _value.thinkingTokensTotal;\n    this.thinkingDurationSecondsTotal = _value.thinkingDurationSecondsTotal;\n    this.toolCallTokensTotal = _value.toolCallTokensTotal;\n    this.toolCallDurationSecondsTotal = _value.toolCallDurationSecondsTotal;\n    this.safetyStats = _value.safetyStats\n      ? new LlmSafetyStats(_value.safetyStats)\n      : undefined;\n    LlmTelemetryReport.refineValues(this);\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get toolCallCountTotal(): number {\n    return this._toolCallCountTotal;\n  }\n  set toolCallCountTotal(value: number) {\n    this._toolCallCountTotal = value;\n  }\n  get llmCallCount(): number {\n    return this._llmCallCount;\n  }\n  set llmCallCount(value: number) {\n    this._llmCallCount = value;\n  }\n  get llmTelemetries(): LlmTelemetry[] | undefined {\n    return this._llmTelemetries;\n  }\n  set llmTelemetries(value: LlmTelemetry[] | undefined) {\n    this._llmTelemetries = value;\n  }\n  get durationSecondsTotal(): number {\n    return this._durationSecondsTotal;\n  }\n  set durationSecondsTotal(value: number) {\n    this._durationSecondsTotal = value;\n  }\n  get modelsUsed(): LlmModelUsage[] | undefined {\n    return this._modelsUsed;\n  }\n  set modelsUsed(value: LlmModelUsage[] | undefined) {\n    this._modelsUsed = value;\n  }\n  get providersUsed(): LlmProviderUsage[] | undefined {\n    return this._providersUsed;\n  }\n  set providersUsed(value: LlmProviderUsage[] | undefined) {\n    this._providersUsed = value;\n  }\n  get ccaiServicesUsed(): LlmCcaiServiceUsage[] | undefined {\n    return this._ccaiServicesUsed;\n  }\n  set ccaiServicesUsed(value: LlmCcaiServiceUsage[] | undefined) {\n    this._ccaiServicesUsed = value;\n  }\n  get agentsUsed(): LlmAgentUsage[] | undefined {\n    return this._agentsUsed;\n  }\n  set agentsUsed(value: LlmAgentUsage[] | undefined) {\n    this._agentsUsed = value;\n  }\n  get toolsUsed(): LlmToolUsage[] | undefined {\n    return this._toolsUsed;\n  }\n  set toolsUsed(value: LlmToolUsage[] | undefined) {\n    this._toolsUsed = value;\n  }\n  get latencyStats(): LlmLatencyStats | undefined {\n    return this._latencyStats;\n  }\n  set latencyStats(value: LlmLatencyStats | undefined) {\n    this._latencyStats = value;\n  }\n  get cacheStats(): LlmCacheStats | undefined {\n    return this._cacheStats;\n  }\n  set cacheStats(value: LlmCacheStats | undefined) {\n    this._cacheStats = value;\n  }\n  get errorStats(): LlmErrorStats | undefined {\n    return this._errorStats;\n  }\n  set errorStats(value: LlmErrorStats | undefined) {\n    this._errorStats = value;\n  }\n  get finishReasonDistribution(): LlmFinishReasonStat[] | undefined {\n    return this._finishReasonDistribution;\n  }\n  set finishReasonDistribution(value: LlmFinishReasonStat[] | undefined) {\n    this._finishReasonDistribution = value;\n  }\n  get reasoningEffortDistribution(): LlmReasoningEffortStat[] | undefined {\n    return this._reasoningEffortDistribution;\n  }\n  set reasoningEffortDistribution(value: LlmReasoningEffortStat[] | undefined) {\n    this._reasoningEffortDistribution = value;\n  }\n  get thinkingTokensTotal(): string {\n    return this._thinkingTokensTotal;\n  }\n  set thinkingTokensTotal(value: string) {\n    this._thinkingTokensTotal = value;\n  }\n  get thinkingDurationSecondsTotal(): number {\n    return this._thinkingDurationSecondsTotal;\n  }\n  set thinkingDurationSecondsTotal(value: number) {\n    this._thinkingDurationSecondsTotal = value;\n  }\n  get toolCallTokensTotal(): string {\n    return this._toolCallTokensTotal;\n  }\n  set toolCallTokensTotal(value: string) {\n    this._toolCallTokensTotal = value;\n  }\n  get toolCallDurationSecondsTotal(): number {\n    return this._toolCallDurationSecondsTotal;\n  }\n  set toolCallDurationSecondsTotal(value: number) {\n    this._toolCallDurationSecondsTotal = value;\n  }\n  get safetyStats(): LlmSafetyStats | undefined {\n    return this._safetyStats;\n  }\n  set safetyStats(value: LlmSafetyStats | undefined) {\n    this._safetyStats = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmTelemetryReport.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmTelemetryReport.AsObject {\n    return {\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      toolCallCountTotal: this.toolCallCountTotal,\n      llmCallCount: this.llmCallCount,\n      llmTelemetries: (this.llmTelemetries || []).map(m => m.toObject()),\n      durationSecondsTotal: this.durationSecondsTotal,\n      modelsUsed: (this.modelsUsed || []).map(m => m.toObject()),\n      providersUsed: (this.providersUsed || []).map(m => m.toObject()),\n      ccaiServicesUsed: (this.ccaiServicesUsed || []).map(m => m.toObject()),\n      agentsUsed: (this.agentsUsed || []).map(m => m.toObject()),\n      toolsUsed: (this.toolsUsed || []).map(m => m.toObject()),\n      latencyStats: this.latencyStats\n        ? this.latencyStats.toObject()\n        : undefined,\n      cacheStats: this.cacheStats ? this.cacheStats.toObject() : undefined,\n      errorStats: this.errorStats ? this.errorStats.toObject() : undefined,\n      finishReasonDistribution: (this.finishReasonDistribution || []).map(m =>\n        m.toObject()\n      ),\n      reasoningEffortDistribution: (\n        this.reasoningEffortDistribution || []\n      ).map(m => m.toObject()),\n      thinkingTokensTotal: this.thinkingTokensTotal,\n      thinkingDurationSecondsTotal: this.thinkingDurationSecondsTotal,\n      toolCallTokensTotal: this.toolCallTokensTotal,\n      toolCallDurationSecondsTotal: this.toolCallDurationSecondsTotal,\n      safetyStats: this.safetyStats ? this.safetyStats.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmTelemetryReport.AsProtobufJSON {\n    return {\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      toolCallCountTotal: this.toolCallCountTotal,\n      llmCallCount: this.llmCallCount,\n      llmTelemetries: (this.llmTelemetries || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      durationSecondsTotal: this.durationSecondsTotal,\n      modelsUsed: (this.modelsUsed || []).map(m => m.toProtobufJSON(options)),\n      providersUsed: (this.providersUsed || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      ccaiServicesUsed: (this.ccaiServicesUsed || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      agentsUsed: (this.agentsUsed || []).map(m => m.toProtobufJSON(options)),\n      toolsUsed: (this.toolsUsed || []).map(m => m.toProtobufJSON(options)),\n      latencyStats: this.latencyStats\n        ? this.latencyStats.toProtobufJSON(options)\n        : null,\n      cacheStats: this.cacheStats\n        ? this.cacheStats.toProtobufJSON(options)\n        : null,\n      errorStats: this.errorStats\n        ? this.errorStats.toProtobufJSON(options)\n        : null,\n      finishReasonDistribution: (this.finishReasonDistribution || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      reasoningEffortDistribution: (\n        this.reasoningEffortDistribution || []\n      ).map(m => m.toProtobufJSON(options)),\n      thinkingTokensTotal: this.thinkingTokensTotal,\n      thinkingDurationSecondsTotal: this.thinkingDurationSecondsTotal,\n      toolCallTokensTotal: this.toolCallTokensTotal,\n      toolCallDurationSecondsTotal: this.toolCallDurationSecondsTotal,\n      safetyStats: this.safetyStats\n        ? this.safetyStats.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmTelemetryReport {\n  /**\n   * Standard JavaScript object representation for LlmTelemetryReport\n   */\n  export interface AsObject {\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    toolCallCountTotal: number;\n    llmCallCount: number;\n    llmTelemetries?: LlmTelemetry.AsObject[];\n    durationSecondsTotal: number;\n    modelsUsed?: LlmModelUsage.AsObject[];\n    providersUsed?: LlmProviderUsage.AsObject[];\n    ccaiServicesUsed?: LlmCcaiServiceUsage.AsObject[];\n    agentsUsed?: LlmAgentUsage.AsObject[];\n    toolsUsed?: LlmToolUsage.AsObject[];\n    latencyStats?: LlmLatencyStats.AsObject;\n    cacheStats?: LlmCacheStats.AsObject;\n    errorStats?: LlmErrorStats.AsObject;\n    finishReasonDistribution?: LlmFinishReasonStat.AsObject[];\n    reasoningEffortDistribution?: LlmReasoningEffortStat.AsObject[];\n    thinkingTokensTotal: string;\n    thinkingDurationSecondsTotal: number;\n    toolCallTokensTotal: string;\n    toolCallDurationSecondsTotal: number;\n    safetyStats?: LlmSafetyStats.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmTelemetryReport\n   */\n  export interface AsProtobufJSON {\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    toolCallCountTotal: number;\n    llmCallCount: number;\n    llmTelemetries: LlmTelemetry.AsProtobufJSON[] | null;\n    durationSecondsTotal: number;\n    modelsUsed: LlmModelUsage.AsProtobufJSON[] | null;\n    providersUsed: LlmProviderUsage.AsProtobufJSON[] | null;\n    ccaiServicesUsed: LlmCcaiServiceUsage.AsProtobufJSON[] | null;\n    agentsUsed: LlmAgentUsage.AsProtobufJSON[] | null;\n    toolsUsed: LlmToolUsage.AsProtobufJSON[] | null;\n    latencyStats: LlmLatencyStats.AsProtobufJSON | null;\n    cacheStats: LlmCacheStats.AsProtobufJSON | null;\n    errorStats: LlmErrorStats.AsProtobufJSON | null;\n    finishReasonDistribution: LlmFinishReasonStat.AsProtobufJSON[] | null;\n    reasoningEffortDistribution: LlmReasoningEffortStat.AsProtobufJSON[] | null;\n    thinkingTokensTotal: string;\n    thinkingDurationSecondsTotal: number;\n    toolCallTokensTotal: string;\n    toolCallDurationSecondsTotal: number;\n    safetyStats: LlmSafetyStats.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmSafetyCategoryStat\n */\nexport class LlmSafetyCategoryStat implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmSafetyCategoryStat';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmSafetyCategoryStat();\n    LlmSafetyCategoryStat.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmSafetyCategoryStat) {\n    _instance.category = _instance.category || '';\n    _instance.count = _instance.count || '0';\n    _instance.rate = _instance.rate || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmSafetyCategoryStat,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.category = _reader.readString();\n          break;\n        case 2:\n          _instance.count = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.rate = _reader.readDouble();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmSafetyCategoryStat.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmSafetyCategoryStat,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.category) {\n      _writer.writeString(1, _instance.category);\n    }\n    if (_instance.count) {\n      _writer.writeInt64String(2, _instance.count);\n    }\n    if (_instance.rate) {\n      _writer.writeDouble(3, _instance.rate);\n    }\n  }\n\n  private _category: string;\n  private _count: string;\n  private _rate: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmSafetyCategoryStat to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmSafetyCategoryStat.AsObject>) {\n    _value = _value || {};\n    this.category = _value.category;\n    this.count = _value.count;\n    this.rate = _value.rate;\n    LlmSafetyCategoryStat.refineValues(this);\n  }\n  get category(): string {\n    return this._category;\n  }\n  set category(value: string) {\n    this._category = value;\n  }\n  get count(): string {\n    return this._count;\n  }\n  set count(value: string) {\n    this._count = value;\n  }\n  get rate(): number {\n    return this._rate;\n  }\n  set rate(value: number) {\n    this._rate = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmSafetyCategoryStat.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmSafetyCategoryStat.AsObject {\n    return {\n      category: this.category,\n      count: this.count,\n      rate: this.rate\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmSafetyCategoryStat.AsProtobufJSON {\n    return {\n      category: this.category,\n      count: this.count,\n      rate: this.rate\n    };\n  }\n}\nexport module LlmSafetyCategoryStat {\n  /**\n   * Standard JavaScript object representation for LlmSafetyCategoryStat\n   */\n  export interface AsObject {\n    category: string;\n    count: string;\n    rate: number;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmSafetyCategoryStat\n   */\n  export interface AsProtobufJSON {\n    category: string;\n    count: string;\n    rate: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmSafetyStats\n */\nexport class LlmSafetyStats implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmSafetyStats';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmSafetyStats();\n    LlmSafetyStats.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmSafetyStats) {\n    _instance.totalAssessed = _instance.totalAssessed || '0';\n    _instance.flaggedCount = _instance.flaggedCount || '0';\n    _instance.overallSafetyScore = _instance.overallSafetyScore || 0;\n    _instance.categoryStats = _instance.categoryStats || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmSafetyStats,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.totalAssessed = _reader.readInt64String();\n          break;\n        case 2:\n          _instance.flaggedCount = _reader.readInt64String();\n          break;\n        case 3:\n          _instance.overallSafetyScore = _reader.readDouble();\n          break;\n        case 4:\n          const messageInitializer4 = new LlmSafetyCategoryStat();\n          _reader.readMessage(\n            messageInitializer4,\n            LlmSafetyCategoryStat.deserializeBinaryFromReader\n          );\n          (_instance.categoryStats = _instance.categoryStats || []).push(\n            messageInitializer4\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmSafetyStats.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmSafetyStats,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.totalAssessed) {\n      _writer.writeInt64String(1, _instance.totalAssessed);\n    }\n    if (_instance.flaggedCount) {\n      _writer.writeInt64String(2, _instance.flaggedCount);\n    }\n    if (_instance.overallSafetyScore) {\n      _writer.writeDouble(3, _instance.overallSafetyScore);\n    }\n    if (_instance.categoryStats && _instance.categoryStats.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.categoryStats as any,\n        LlmSafetyCategoryStat.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _totalAssessed: string;\n  private _flaggedCount: string;\n  private _overallSafetyScore: number;\n  private _categoryStats?: LlmSafetyCategoryStat[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmSafetyStats to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmSafetyStats.AsObject>) {\n    _value = _value || {};\n    this.totalAssessed = _value.totalAssessed;\n    this.flaggedCount = _value.flaggedCount;\n    this.overallSafetyScore = _value.overallSafetyScore;\n    this.categoryStats = (_value.categoryStats || []).map(\n      m => new LlmSafetyCategoryStat(m)\n    );\n    LlmSafetyStats.refineValues(this);\n  }\n  get totalAssessed(): string {\n    return this._totalAssessed;\n  }\n  set totalAssessed(value: string) {\n    this._totalAssessed = value;\n  }\n  get flaggedCount(): string {\n    return this._flaggedCount;\n  }\n  set flaggedCount(value: string) {\n    this._flaggedCount = value;\n  }\n  get overallSafetyScore(): number {\n    return this._overallSafetyScore;\n  }\n  set overallSafetyScore(value: number) {\n    this._overallSafetyScore = value;\n  }\n  get categoryStats(): LlmSafetyCategoryStat[] | undefined {\n    return this._categoryStats;\n  }\n  set categoryStats(value: LlmSafetyCategoryStat[] | undefined) {\n    this._categoryStats = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmSafetyStats.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmSafetyStats.AsObject {\n    return {\n      totalAssessed: this.totalAssessed,\n      flaggedCount: this.flaggedCount,\n      overallSafetyScore: this.overallSafetyScore,\n      categoryStats: (this.categoryStats || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmSafetyStats.AsProtobufJSON {\n    return {\n      totalAssessed: this.totalAssessed,\n      flaggedCount: this.flaggedCount,\n      overallSafetyScore: this.overallSafetyScore,\n      categoryStats: (this.categoryStats || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module LlmSafetyStats {\n  /**\n   * Standard JavaScript object representation for LlmSafetyStats\n   */\n  export interface AsObject {\n    totalAssessed: string;\n    flaggedCount: string;\n    overallSafetyScore: number;\n    categoryStats?: LlmSafetyCategoryStat.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for LlmSafetyStats\n   */\n  export interface AsProtobufJSON {\n    totalAssessed: string;\n    flaggedCount: string;\n    overallSafetyScore: number;\n    categoryStats: LlmSafetyCategoryStat.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmCallStartedEvent\n */\nexport class LlmCallStartedEvent implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmCallStartedEvent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmCallStartedEvent();\n    LlmCallStartedEvent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmCallStartedEvent) {\n    _instance.llmCallId = _instance.llmCallId || '';\n    _instance.provider = _instance.provider || '';\n    _instance.modelName = _instance.modelName || '';\n    _instance.agentName = _instance.agentName || '';\n    _instance.startTime = _instance.startTime || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmCallStartedEvent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmCallId = _reader.readString();\n          break;\n        case 2:\n          _instance.provider = _reader.readString();\n          break;\n        case 3:\n          _instance.modelName = _reader.readString();\n          break;\n        case 4:\n          _instance.agentName = _reader.readString();\n          break;\n        case 5:\n          _instance.startTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmCallStartedEvent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmCallStartedEvent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmCallId) {\n      _writer.writeString(1, _instance.llmCallId);\n    }\n    if (_instance.provider) {\n      _writer.writeString(2, _instance.provider);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(3, _instance.modelName);\n    }\n    if (_instance.agentName) {\n      _writer.writeString(4, _instance.agentName);\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        5,\n        _instance.startTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmCallId: string;\n  private _provider: string;\n  private _modelName: string;\n  private _agentName: string;\n  private _startTime?: googleProtobuf005.Timestamp;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmCallStartedEvent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmCallStartedEvent.AsObject>) {\n    _value = _value || {};\n    this.llmCallId = _value.llmCallId;\n    this.provider = _value.provider;\n    this.modelName = _value.modelName;\n    this.agentName = _value.agentName;\n    this.startTime = _value.startTime\n      ? new googleProtobuf005.Timestamp(_value.startTime)\n      : undefined;\n    LlmCallStartedEvent.refineValues(this);\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n  get provider(): string {\n    return this._provider;\n  }\n  set provider(value: string) {\n    this._provider = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get agentName(): string {\n    return this._agentName;\n  }\n  set agentName(value: string) {\n    this._agentName = value;\n  }\n  get startTime(): googleProtobuf005.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._startTime = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmCallStartedEvent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmCallStartedEvent.AsObject {\n    return {\n      llmCallId: this.llmCallId,\n      provider: this.provider,\n      modelName: this.modelName,\n      agentName: this.agentName,\n      startTime: this.startTime ? this.startTime.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmCallStartedEvent.AsProtobufJSON {\n    return {\n      llmCallId: this.llmCallId,\n      provider: this.provider,\n      modelName: this.modelName,\n      agentName: this.agentName,\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module LlmCallStartedEvent {\n  /**\n   * Standard JavaScript object representation for LlmCallStartedEvent\n   */\n  export interface AsObject {\n    llmCallId: string;\n    provider: string;\n    modelName: string;\n    agentName: string;\n    startTime?: googleProtobuf005.Timestamp.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmCallStartedEvent\n   */\n  export interface AsProtobufJSON {\n    llmCallId: string;\n    provider: string;\n    modelName: string;\n    agentName: string;\n    startTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmCallFinishedEvent\n */\nexport class LlmCallFinishedEvent implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmCallFinishedEvent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmCallFinishedEvent();\n    LlmCallFinishedEvent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmCallFinishedEvent) {\n    _instance.llmCallId = _instance.llmCallId || '';\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmCallFinishedEvent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmCallId = _reader.readString();\n          break;\n        case 2:\n          _instance.endTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.durationInS = _reader.readDouble();\n          break;\n        case 4:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmCallFinishedEvent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmCallFinishedEvent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmCallId) {\n      _writer.writeString(1, _instance.llmCallId);\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        2,\n        _instance.endTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeDouble(3, _instance.durationInS);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmCallId: string;\n  private _endTime?: googleProtobuf005.Timestamp;\n  private _durationInS: number;\n  private _llmTokenUsage?: LlmTokenUsage;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmCallFinishedEvent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmCallFinishedEvent.AsObject>) {\n    _value = _value || {};\n    this.llmCallId = _value.llmCallId;\n    this.endTime = _value.endTime\n      ? new googleProtobuf005.Timestamp(_value.endTime)\n      : undefined;\n    this.durationInS = _value.durationInS;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    LlmCallFinishedEvent.refineValues(this);\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n  get endTime(): googleProtobuf005.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmCallFinishedEvent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmCallFinishedEvent.AsObject {\n    return {\n      llmCallId: this.llmCallId,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      durationInS: this.durationInS,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmCallFinishedEvent.AsProtobufJSON {\n    return {\n      llmCallId: this.llmCallId,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      durationInS: this.durationInS,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmCallFinishedEvent {\n  /**\n   * Standard JavaScript object representation for LlmCallFinishedEvent\n   */\n  export interface AsObject {\n    llmCallId: string;\n    endTime?: googleProtobuf005.Timestamp.AsObject;\n    durationInS: number;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmCallFinishedEvent\n   */\n  export interface AsProtobufJSON {\n    llmCallId: string;\n    endTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    durationInS: number;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmToolCallStartedEvent\n */\nexport class LlmToolCallStartedEvent implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmToolCallStartedEvent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmToolCallStartedEvent();\n    LlmToolCallStartedEvent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmToolCallStartedEvent) {\n    _instance.toolCallId = _instance.toolCallId || '';\n    _instance.toolName = _instance.toolName || '';\n    _instance.arguments = _instance.arguments || undefined;\n    _instance.startTime = _instance.startTime || undefined;\n    _instance.llmCallId = _instance.llmCallId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmToolCallStartedEvent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.toolCallId = _reader.readString();\n          break;\n        case 2:\n          _instance.toolName = _reader.readString();\n          break;\n        case 3:\n          _instance.arguments = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.arguments,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.startTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.llmCallId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmToolCallStartedEvent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmToolCallStartedEvent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.toolCallId) {\n      _writer.writeString(1, _instance.toolCallId);\n    }\n    if (_instance.toolName) {\n      _writer.writeString(2, _instance.toolName);\n    }\n    if (_instance.arguments) {\n      _writer.writeMessage(\n        3,\n        _instance.arguments as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        4,\n        _instance.startTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmCallId) {\n      _writer.writeString(5, _instance.llmCallId);\n    }\n  }\n\n  private _toolCallId: string;\n  private _toolName: string;\n  private _arguments?: googleProtobuf004.Struct;\n  private _startTime?: googleProtobuf005.Timestamp;\n  private _llmCallId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmToolCallStartedEvent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmToolCallStartedEvent.AsObject>) {\n    _value = _value || {};\n    this.toolCallId = _value.toolCallId;\n    this.toolName = _value.toolName;\n    this.arguments = _value.arguments\n      ? new googleProtobuf004.Struct(_value.arguments)\n      : undefined;\n    this.startTime = _value.startTime\n      ? new googleProtobuf005.Timestamp(_value.startTime)\n      : undefined;\n    this.llmCallId = _value.llmCallId;\n    LlmToolCallStartedEvent.refineValues(this);\n  }\n  get toolCallId(): string {\n    return this._toolCallId;\n  }\n  set toolCallId(value: string) {\n    this._toolCallId = value;\n  }\n  get toolName(): string {\n    return this._toolName;\n  }\n  set toolName(value: string) {\n    this._toolName = value;\n  }\n  get arguments(): googleProtobuf004.Struct | undefined {\n    return this._arguments;\n  }\n  set arguments(value: googleProtobuf004.Struct | undefined) {\n    this._arguments = value;\n  }\n  get startTime(): googleProtobuf005.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._startTime = value;\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmToolCallStartedEvent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmToolCallStartedEvent.AsObject {\n    return {\n      toolCallId: this.toolCallId,\n      toolName: this.toolName,\n      arguments: this.arguments ? this.arguments.toObject() : undefined,\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      llmCallId: this.llmCallId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmToolCallStartedEvent.AsProtobufJSON {\n    return {\n      toolCallId: this.toolCallId,\n      toolName: this.toolName,\n      arguments: this.arguments ? this.arguments.toProtobufJSON(options) : null,\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      llmCallId: this.llmCallId\n    };\n  }\n}\nexport module LlmToolCallStartedEvent {\n  /**\n   * Standard JavaScript object representation for LlmToolCallStartedEvent\n   */\n  export interface AsObject {\n    toolCallId: string;\n    toolName: string;\n    arguments?: googleProtobuf004.Struct.AsObject;\n    startTime?: googleProtobuf005.Timestamp.AsObject;\n    llmCallId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmToolCallStartedEvent\n   */\n  export interface AsProtobufJSON {\n    toolCallId: string;\n    toolName: string;\n    arguments: googleProtobuf004.Struct.AsProtobufJSON | null;\n    startTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    llmCallId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmToolCallFinishedEvent\n */\nexport class LlmToolCallFinishedEvent implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmToolCallFinishedEvent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmToolCallFinishedEvent();\n    LlmToolCallFinishedEvent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmToolCallFinishedEvent) {\n    _instance.toolCallId = _instance.toolCallId || '';\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n    _instance.result = _instance.result || undefined;\n    _instance.errorMessage = _instance.errorMessage || '';\n    _instance.llmCallId = _instance.llmCallId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmToolCallFinishedEvent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.toolCallId = _reader.readString();\n          break;\n        case 2:\n          _instance.endTime = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.durationInS = _reader.readDouble();\n          break;\n        case 4:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.result = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.result,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.errorMessage = _reader.readString();\n          break;\n        case 7:\n          _instance.llmCallId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmToolCallFinishedEvent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmToolCallFinishedEvent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.toolCallId) {\n      _writer.writeString(1, _instance.toolCallId);\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        2,\n        _instance.endTime as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeDouble(3, _instance.durationInS);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n    if (_instance.result) {\n      _writer.writeMessage(\n        5,\n        _instance.result as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(6, _instance.errorMessage);\n    }\n    if (_instance.llmCallId) {\n      _writer.writeString(7, _instance.llmCallId);\n    }\n  }\n\n  private _toolCallId: string;\n  private _endTime?: googleProtobuf005.Timestamp;\n  private _durationInS: number;\n  private _llmTokenUsage?: LlmTokenUsage;\n  private _result?: googleProtobuf004.Struct;\n  private _errorMessage: string;\n  private _llmCallId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmToolCallFinishedEvent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmToolCallFinishedEvent.AsObject>) {\n    _value = _value || {};\n    this.toolCallId = _value.toolCallId;\n    this.endTime = _value.endTime\n      ? new googleProtobuf005.Timestamp(_value.endTime)\n      : undefined;\n    this.durationInS = _value.durationInS;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    this.result = _value.result\n      ? new googleProtobuf004.Struct(_value.result)\n      : undefined;\n    this.errorMessage = _value.errorMessage;\n    this.llmCallId = _value.llmCallId;\n    LlmToolCallFinishedEvent.refineValues(this);\n  }\n  get toolCallId(): string {\n    return this._toolCallId;\n  }\n  set toolCallId(value: string) {\n    this._toolCallId = value;\n  }\n  get endTime(): googleProtobuf005.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf005.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n  get result(): googleProtobuf004.Struct | undefined {\n    return this._result;\n  }\n  set result(value: googleProtobuf004.Struct | undefined) {\n    this._result = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmToolCallFinishedEvent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmToolCallFinishedEvent.AsObject {\n    return {\n      toolCallId: this.toolCallId,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      durationInS: this.durationInS,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined,\n      result: this.result ? this.result.toObject() : undefined,\n      errorMessage: this.errorMessage,\n      llmCallId: this.llmCallId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmToolCallFinishedEvent.AsProtobufJSON {\n    return {\n      toolCallId: this.toolCallId,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      durationInS: this.durationInS,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null,\n      result: this.result ? this.result.toProtobufJSON(options) : null,\n      errorMessage: this.errorMessage,\n      llmCallId: this.llmCallId\n    };\n  }\n}\nexport module LlmToolCallFinishedEvent {\n  /**\n   * Standard JavaScript object representation for LlmToolCallFinishedEvent\n   */\n  export interface AsObject {\n    toolCallId: string;\n    endTime?: googleProtobuf005.Timestamp.AsObject;\n    durationInS: number;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n    result?: googleProtobuf004.Struct.AsObject;\n    errorMessage: string;\n    llmCallId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmToolCallFinishedEvent\n   */\n  export interface AsProtobufJSON {\n    toolCallId: string;\n    endTime: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    durationInS: number;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n    result: googleProtobuf004.Struct.AsProtobufJSON | null;\n    errorMessage: string;\n    llmCallId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmThinkingDeltaEvent\n */\nexport class LlmThinkingDeltaEvent implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmThinkingDeltaEvent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmThinkingDeltaEvent();\n    LlmThinkingDeltaEvent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmThinkingDeltaEvent) {\n    _instance.llmCallId = _instance.llmCallId || '';\n    _instance.textDelta = _instance.textDelta || '';\n    _instance.timestamp = _instance.timestamp || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmThinkingDeltaEvent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmCallId = _reader.readString();\n          break;\n        case 2:\n          _instance.textDelta = _reader.readString();\n          break;\n        case 3:\n          _instance.timestamp = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.timestamp,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmThinkingDeltaEvent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmThinkingDeltaEvent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmCallId) {\n      _writer.writeString(1, _instance.llmCallId);\n    }\n    if (_instance.textDelta) {\n      _writer.writeString(2, _instance.textDelta);\n    }\n    if (_instance.timestamp) {\n      _writer.writeMessage(\n        3,\n        _instance.timestamp as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmCallId: string;\n  private _textDelta: string;\n  private _timestamp?: googleProtobuf005.Timestamp;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmThinkingDeltaEvent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmThinkingDeltaEvent.AsObject>) {\n    _value = _value || {};\n    this.llmCallId = _value.llmCallId;\n    this.textDelta = _value.textDelta;\n    this.timestamp = _value.timestamp\n      ? new googleProtobuf005.Timestamp(_value.timestamp)\n      : undefined;\n    LlmThinkingDeltaEvent.refineValues(this);\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n  get textDelta(): string {\n    return this._textDelta;\n  }\n  set textDelta(value: string) {\n    this._textDelta = value;\n  }\n  get timestamp(): googleProtobuf005.Timestamp | undefined {\n    return this._timestamp;\n  }\n  set timestamp(value: googleProtobuf005.Timestamp | undefined) {\n    this._timestamp = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmThinkingDeltaEvent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmThinkingDeltaEvent.AsObject {\n    return {\n      llmCallId: this.llmCallId,\n      textDelta: this.textDelta,\n      timestamp: this.timestamp ? this.timestamp.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmThinkingDeltaEvent.AsProtobufJSON {\n    return {\n      llmCallId: this.llmCallId,\n      textDelta: this.textDelta,\n      timestamp: this.timestamp ? this.timestamp.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module LlmThinkingDeltaEvent {\n  /**\n   * Standard JavaScript object representation for LlmThinkingDeltaEvent\n   */\n  export interface AsObject {\n    llmCallId: string;\n    textDelta: string;\n    timestamp?: googleProtobuf005.Timestamp.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmThinkingDeltaEvent\n   */\n  export interface AsProtobufJSON {\n    llmCallId: string;\n    textDelta: string;\n    timestamp: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmTokenUsageUpdateEvent\n */\nexport class LlmTokenUsageUpdateEvent implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmTokenUsageUpdateEvent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmTokenUsageUpdateEvent();\n    LlmTokenUsageUpdateEvent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmTokenUsageUpdateEvent) {\n    _instance.llmCallId = _instance.llmCallId || '';\n    _instance.llmTokenUsage = _instance.llmTokenUsage || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmTokenUsageUpdateEvent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmCallId = _reader.readString();\n          break;\n        case 2:\n          _instance.llmTokenUsage = new LlmTokenUsage();\n          _reader.readMessage(\n            _instance.llmTokenUsage,\n            LlmTokenUsage.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmTokenUsageUpdateEvent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmTokenUsageUpdateEvent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmCallId) {\n      _writer.writeString(1, _instance.llmCallId);\n    }\n    if (_instance.llmTokenUsage) {\n      _writer.writeMessage(\n        2,\n        _instance.llmTokenUsage as any,\n        LlmTokenUsage.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmCallId: string;\n  private _llmTokenUsage?: LlmTokenUsage;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmTokenUsageUpdateEvent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmTokenUsageUpdateEvent.AsObject>) {\n    _value = _value || {};\n    this.llmCallId = _value.llmCallId;\n    this.llmTokenUsage = _value.llmTokenUsage\n      ? new LlmTokenUsage(_value.llmTokenUsage)\n      : undefined;\n    LlmTokenUsageUpdateEvent.refineValues(this);\n  }\n  get llmCallId(): string {\n    return this._llmCallId;\n  }\n  set llmCallId(value: string) {\n    this._llmCallId = value;\n  }\n  get llmTokenUsage(): LlmTokenUsage | undefined {\n    return this._llmTokenUsage;\n  }\n  set llmTokenUsage(value: LlmTokenUsage | undefined) {\n    this._llmTokenUsage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmTokenUsageUpdateEvent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmTokenUsageUpdateEvent.AsObject {\n    return {\n      llmCallId: this.llmCallId,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmTokenUsageUpdateEvent.AsProtobufJSON {\n    return {\n      llmCallId: this.llmCallId,\n      llmTokenUsage: this.llmTokenUsage\n        ? this.llmTokenUsage.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmTokenUsageUpdateEvent {\n  /**\n   * Standard JavaScript object representation for LlmTokenUsageUpdateEvent\n   */\n  export interface AsObject {\n    llmCallId: string;\n    llmTokenUsage?: LlmTokenUsage.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmTokenUsageUpdateEvent\n   */\n  export interface AsProtobufJSON {\n    llmCallId: string;\n    llmTokenUsage: LlmTokenUsage.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ReferencedChunk\n */\nexport class ReferencedChunk implements GrpcMessage {\n  static id = 'ondewo.nlu.ReferencedChunk';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ReferencedChunk();\n    ReferencedChunk.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ReferencedChunk) {\n    _instance.referenceIndex = _instance.referenceIndex || 0;\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.documentId = _instance.documentId || '';\n    _instance.chunkId = _instance.chunkId || '';\n    _instance.documentName = _instance.documentName || '';\n    _instance.content = _instance.content || '';\n    _instance.similarity = _instance.similarity || 0;\n    _instance.documentUrl = _instance.documentUrl || '';\n    _instance.deepLinkUrl = _instance.deepLinkUrl || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ReferencedChunk,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.referenceIndex = _reader.readInt32();\n          break;\n        case 2:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 3:\n          _instance.documentId = _reader.readString();\n          break;\n        case 4:\n          _instance.chunkId = _reader.readString();\n          break;\n        case 5:\n          _instance.documentName = _reader.readString();\n          break;\n        case 6:\n          _instance.content = _reader.readString();\n          break;\n        case 7:\n          _instance.similarity = _reader.readFloat();\n          break;\n        case 8:\n          _instance.documentUrl = _reader.readString();\n          break;\n        case 9:\n          _instance.deepLinkUrl = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ReferencedChunk.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ReferencedChunk,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.referenceIndex) {\n      _writer.writeInt32(1, _instance.referenceIndex);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(2, _instance.datasetId);\n    }\n    if (_instance.documentId) {\n      _writer.writeString(3, _instance.documentId);\n    }\n    if (_instance.chunkId) {\n      _writer.writeString(4, _instance.chunkId);\n    }\n    if (_instance.documentName) {\n      _writer.writeString(5, _instance.documentName);\n    }\n    if (_instance.content) {\n      _writer.writeString(6, _instance.content);\n    }\n    if (_instance.similarity) {\n      _writer.writeFloat(7, _instance.similarity);\n    }\n    if (_instance.documentUrl) {\n      _writer.writeString(8, _instance.documentUrl);\n    }\n    if (_instance.deepLinkUrl) {\n      _writer.writeString(9, _instance.deepLinkUrl);\n    }\n  }\n\n  private _referenceIndex: number;\n  private _datasetId: string;\n  private _documentId: string;\n  private _chunkId: string;\n  private _documentName: string;\n  private _content: string;\n  private _similarity: number;\n  private _documentUrl: string;\n  private _deepLinkUrl: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ReferencedChunk to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ReferencedChunk.AsObject>) {\n    _value = _value || {};\n    this.referenceIndex = _value.referenceIndex;\n    this.datasetId = _value.datasetId;\n    this.documentId = _value.documentId;\n    this.chunkId = _value.chunkId;\n    this.documentName = _value.documentName;\n    this.content = _value.content;\n    this.similarity = _value.similarity;\n    this.documentUrl = _value.documentUrl;\n    this.deepLinkUrl = _value.deepLinkUrl;\n    ReferencedChunk.refineValues(this);\n  }\n  get referenceIndex(): number {\n    return this._referenceIndex;\n  }\n  set referenceIndex(value: number) {\n    this._referenceIndex = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get documentId(): string {\n    return this._documentId;\n  }\n  set documentId(value: string) {\n    this._documentId = value;\n  }\n  get chunkId(): string {\n    return this._chunkId;\n  }\n  set chunkId(value: string) {\n    this._chunkId = value;\n  }\n  get documentName(): string {\n    return this._documentName;\n  }\n  set documentName(value: string) {\n    this._documentName = value;\n  }\n  get content(): string {\n    return this._content;\n  }\n  set content(value: string) {\n    this._content = value;\n  }\n  get similarity(): number {\n    return this._similarity;\n  }\n  set similarity(value: number) {\n    this._similarity = value;\n  }\n  get documentUrl(): string {\n    return this._documentUrl;\n  }\n  set documentUrl(value: string) {\n    this._documentUrl = value;\n  }\n  get deepLinkUrl(): string {\n    return this._deepLinkUrl;\n  }\n  set deepLinkUrl(value: string) {\n    this._deepLinkUrl = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ReferencedChunk.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ReferencedChunk.AsObject {\n    return {\n      referenceIndex: this.referenceIndex,\n      datasetId: this.datasetId,\n      documentId: this.documentId,\n      chunkId: this.chunkId,\n      documentName: this.documentName,\n      content: this.content,\n      similarity: this.similarity,\n      documentUrl: this.documentUrl,\n      deepLinkUrl: this.deepLinkUrl\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ReferencedChunk.AsProtobufJSON {\n    return {\n      referenceIndex: this.referenceIndex,\n      datasetId: this.datasetId,\n      documentId: this.documentId,\n      chunkId: this.chunkId,\n      documentName: this.documentName,\n      content: this.content,\n      similarity: this.similarity,\n      documentUrl: this.documentUrl,\n      deepLinkUrl: this.deepLinkUrl\n    };\n  }\n}\nexport module ReferencedChunk {\n  /**\n   * Standard JavaScript object representation for ReferencedChunk\n   */\n  export interface AsObject {\n    referenceIndex: number;\n    datasetId: string;\n    documentId: string;\n    chunkId: string;\n    documentName: string;\n    content: string;\n    similarity: number;\n    documentUrl: string;\n    deepLinkUrl: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ReferencedChunk\n   */\n  export interface AsProtobufJSON {\n    referenceIndex: number;\n    datasetId: string;\n    documentId: string;\n    chunkId: string;\n    documentName: string;\n    content: string;\n    similarity: number;\n    documentUrl: string;\n    deepLinkUrl: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.QueryResult\n */\nexport class QueryResult implements GrpcMessage {\n  static id = 'ondewo.nlu.QueryResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new QueryResult();\n    QueryResult.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: QueryResult) {\n    _instance.queryText = _instance.queryText || '';\n    _instance.speechRecognitionConfidence =\n      _instance.speechRecognitionConfidence || 0;\n    _instance.action = _instance.action || '';\n    _instance.parameters = _instance.parameters || undefined;\n    _instance.allRequiredParamsPresent =\n      _instance.allRequiredParamsPresent || false;\n    _instance.fulfillmentText = _instance.fulfillmentText || '';\n    _instance.fulfillmentMessages = _instance.fulfillmentMessages || [];\n    _instance.webhookSource = _instance.webhookSource || '';\n    _instance.webhookPayload = _instance.webhookPayload || undefined;\n    _instance.outputContexts = _instance.outputContexts || [];\n    _instance.intent = _instance.intent || undefined;\n    _instance.intentDetectionConfidence =\n      _instance.intentDetectionConfidence || 0;\n    _instance.queryTextOriginal = _instance.queryTextOriginal || '';\n    _instance.diagnosticInfo = _instance.diagnosticInfo || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.fileResources = _instance.fileResources || [];\n    _instance.llmTelemetryReport = _instance.llmTelemetryReport || undefined;\n    _instance.referencedChunks = _instance.referencedChunks || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: QueryResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.queryText = _reader.readString();\n          break;\n        case 2:\n          _instance.speechRecognitionConfidence = _reader.readFloat();\n          break;\n        case 3:\n          _instance.action = _reader.readString();\n          break;\n        case 4:\n          _instance.parameters = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.parameters,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.allRequiredParamsPresent = _reader.readBool();\n          break;\n        case 6:\n          _instance.fulfillmentText = _reader.readString();\n          break;\n        case 7:\n          const messageInitializer7 = new ondewoNlu015.Intent.Message();\n          _reader.readMessage(\n            messageInitializer7,\n            ondewoNlu015.Intent.Message.deserializeBinaryFromReader\n          );\n          (_instance.fulfillmentMessages =\n            _instance.fulfillmentMessages || []).push(messageInitializer7);\n          break;\n        case 8:\n          _instance.webhookSource = _reader.readString();\n          break;\n        case 9:\n          _instance.webhookPayload = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.webhookPayload,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          const messageInitializer10 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer10,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.outputContexts = _instance.outputContexts || []).push(\n            messageInitializer10\n          );\n          break;\n        case 11:\n          _instance.intent = new ondewoNlu015.Intent();\n          _reader.readMessage(\n            _instance.intent,\n            ondewoNlu015.Intent.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.intentDetectionConfidence = _reader.readFloat();\n          break;\n        case 13:\n          _instance.queryTextOriginal = _reader.readString();\n          break;\n        case 14:\n          _instance.diagnosticInfo = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.diagnosticInfo,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 15:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 16:\n          const messageInitializer16 = new FileResource();\n          _reader.readMessage(\n            messageInitializer16,\n            FileResource.deserializeBinaryFromReader\n          );\n          (_instance.fileResources = _instance.fileResources || []).push(\n            messageInitializer16\n          );\n          break;\n        case 17:\n          _instance.llmTelemetryReport = new LlmTelemetryReport();\n          _reader.readMessage(\n            _instance.llmTelemetryReport,\n            LlmTelemetryReport.deserializeBinaryFromReader\n          );\n          break;\n        case 18:\n          const messageInitializer18 = new ReferencedChunk();\n          _reader.readMessage(\n            messageInitializer18,\n            ReferencedChunk.deserializeBinaryFromReader\n          );\n          (_instance.referencedChunks = _instance.referencedChunks || []).push(\n            messageInitializer18\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    QueryResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: QueryResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.queryText) {\n      _writer.writeString(1, _instance.queryText);\n    }\n    if (_instance.speechRecognitionConfidence) {\n      _writer.writeFloat(2, _instance.speechRecognitionConfidence);\n    }\n    if (_instance.action) {\n      _writer.writeString(3, _instance.action);\n    }\n    if (_instance.parameters) {\n      _writer.writeMessage(\n        4,\n        _instance.parameters as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.allRequiredParamsPresent) {\n      _writer.writeBool(5, _instance.allRequiredParamsPresent);\n    }\n    if (_instance.fulfillmentText) {\n      _writer.writeString(6, _instance.fulfillmentText);\n    }\n    if (_instance.fulfillmentMessages && _instance.fulfillmentMessages.length) {\n      _writer.writeRepeatedMessage(\n        7,\n        _instance.fulfillmentMessages as any,\n        ondewoNlu015.Intent.Message.serializeBinaryToWriter\n      );\n    }\n    if (_instance.webhookSource) {\n      _writer.writeString(8, _instance.webhookSource);\n    }\n    if (_instance.webhookPayload) {\n      _writer.writeMessage(\n        9,\n        _instance.webhookPayload as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.outputContexts && _instance.outputContexts.length) {\n      _writer.writeRepeatedMessage(\n        10,\n        _instance.outputContexts as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.intent) {\n      _writer.writeMessage(\n        11,\n        _instance.intent as any,\n        ondewoNlu015.Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.intentDetectionConfidence) {\n      _writer.writeFloat(12, _instance.intentDetectionConfidence);\n    }\n    if (_instance.queryTextOriginal) {\n      _writer.writeString(13, _instance.queryTextOriginal);\n    }\n    if (_instance.diagnosticInfo) {\n      _writer.writeMessage(\n        14,\n        _instance.diagnosticInfo as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(15, _instance.languageCode);\n    }\n    if (_instance.fileResources && _instance.fileResources.length) {\n      _writer.writeRepeatedMessage(\n        16,\n        _instance.fileResources as any,\n        FileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmTelemetryReport) {\n      _writer.writeMessage(\n        17,\n        _instance.llmTelemetryReport as any,\n        LlmTelemetryReport.serializeBinaryToWriter\n      );\n    }\n    if (_instance.referencedChunks && _instance.referencedChunks.length) {\n      _writer.writeRepeatedMessage(\n        18,\n        _instance.referencedChunks as any,\n        ReferencedChunk.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _queryText: string;\n  private _speechRecognitionConfidence: number;\n  private _action: string;\n  private _parameters?: googleProtobuf004.Struct;\n  private _allRequiredParamsPresent: boolean;\n  private _fulfillmentText: string;\n  private _fulfillmentMessages?: ondewoNlu015.Intent.Message[];\n  private _webhookSource: string;\n  private _webhookPayload?: googleProtobuf004.Struct;\n  private _outputContexts?: ondewoNlu010.Context[];\n  private _intent?: ondewoNlu015.Intent;\n  private _intentDetectionConfidence: number;\n  private _queryTextOriginal: string;\n  private _diagnosticInfo?: googleProtobuf004.Struct;\n  private _languageCode: string;\n  private _fileResources?: FileResource[];\n  private _llmTelemetryReport?: LlmTelemetryReport;\n  private _referencedChunks?: ReferencedChunk[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of QueryResult to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<QueryResult.AsObject>) {\n    _value = _value || {};\n    this.queryText = _value.queryText;\n    this.speechRecognitionConfidence = _value.speechRecognitionConfidence;\n    this.action = _value.action;\n    this.parameters = _value.parameters\n      ? new googleProtobuf004.Struct(_value.parameters)\n      : undefined;\n    this.allRequiredParamsPresent = _value.allRequiredParamsPresent;\n    this.fulfillmentText = _value.fulfillmentText;\n    this.fulfillmentMessages = (_value.fulfillmentMessages || []).map(\n      m => new ondewoNlu015.Intent.Message(m)\n    );\n    this.webhookSource = _value.webhookSource;\n    this.webhookPayload = _value.webhookPayload\n      ? new googleProtobuf004.Struct(_value.webhookPayload)\n      : undefined;\n    this.outputContexts = (_value.outputContexts || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    this.intent = _value.intent\n      ? new ondewoNlu015.Intent(_value.intent)\n      : undefined;\n    this.intentDetectionConfidence = _value.intentDetectionConfidence;\n    this.queryTextOriginal = _value.queryTextOriginal;\n    this.diagnosticInfo = _value.diagnosticInfo\n      ? new googleProtobuf004.Struct(_value.diagnosticInfo)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.fileResources = (_value.fileResources || []).map(\n      m => new FileResource(m)\n    );\n    this.llmTelemetryReport = _value.llmTelemetryReport\n      ? new LlmTelemetryReport(_value.llmTelemetryReport)\n      : undefined;\n    this.referencedChunks = (_value.referencedChunks || []).map(\n      m => new ReferencedChunk(m)\n    );\n    QueryResult.refineValues(this);\n  }\n  get queryText(): string {\n    return this._queryText;\n  }\n  set queryText(value: string) {\n    this._queryText = value;\n  }\n  get speechRecognitionConfidence(): number {\n    return this._speechRecognitionConfidence;\n  }\n  set speechRecognitionConfidence(value: number) {\n    this._speechRecognitionConfidence = value;\n  }\n  get action(): string {\n    return this._action;\n  }\n  set action(value: string) {\n    this._action = value;\n  }\n  get parameters(): googleProtobuf004.Struct | undefined {\n    return this._parameters;\n  }\n  set parameters(value: googleProtobuf004.Struct | undefined) {\n    this._parameters = value;\n  }\n  get allRequiredParamsPresent(): boolean {\n    return this._allRequiredParamsPresent;\n  }\n  set allRequiredParamsPresent(value: boolean) {\n    this._allRequiredParamsPresent = value;\n  }\n  get fulfillmentText(): string {\n    return this._fulfillmentText;\n  }\n  set fulfillmentText(value: string) {\n    this._fulfillmentText = value;\n  }\n  get fulfillmentMessages(): ondewoNlu015.Intent.Message[] | undefined {\n    return this._fulfillmentMessages;\n  }\n  set fulfillmentMessages(value: ondewoNlu015.Intent.Message[] | undefined) {\n    this._fulfillmentMessages = value;\n  }\n  get webhookSource(): string {\n    return this._webhookSource;\n  }\n  set webhookSource(value: string) {\n    this._webhookSource = value;\n  }\n  get webhookPayload(): googleProtobuf004.Struct | undefined {\n    return this._webhookPayload;\n  }\n  set webhookPayload(value: googleProtobuf004.Struct | undefined) {\n    this._webhookPayload = value;\n  }\n  get outputContexts(): ondewoNlu010.Context[] | undefined {\n    return this._outputContexts;\n  }\n  set outputContexts(value: ondewoNlu010.Context[] | undefined) {\n    this._outputContexts = value;\n  }\n  get intent(): ondewoNlu015.Intent | undefined {\n    return this._intent;\n  }\n  set intent(value: ondewoNlu015.Intent | undefined) {\n    this._intent = value;\n  }\n  get intentDetectionConfidence(): number {\n    return this._intentDetectionConfidence;\n  }\n  set intentDetectionConfidence(value: number) {\n    this._intentDetectionConfidence = value;\n  }\n  get queryTextOriginal(): string {\n    return this._queryTextOriginal;\n  }\n  set queryTextOriginal(value: string) {\n    this._queryTextOriginal = value;\n  }\n  get diagnosticInfo(): googleProtobuf004.Struct | undefined {\n    return this._diagnosticInfo;\n  }\n  set diagnosticInfo(value: googleProtobuf004.Struct | undefined) {\n    this._diagnosticInfo = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get fileResources(): FileResource[] | undefined {\n    return this._fileResources;\n  }\n  set fileResources(value: FileResource[] | undefined) {\n    this._fileResources = value;\n  }\n  get llmTelemetryReport(): LlmTelemetryReport | undefined {\n    return this._llmTelemetryReport;\n  }\n  set llmTelemetryReport(value: LlmTelemetryReport | undefined) {\n    this._llmTelemetryReport = value;\n  }\n  get referencedChunks(): ReferencedChunk[] | undefined {\n    return this._referencedChunks;\n  }\n  set referencedChunks(value: ReferencedChunk[] | undefined) {\n    this._referencedChunks = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    QueryResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): QueryResult.AsObject {\n    return {\n      queryText: this.queryText,\n      speechRecognitionConfidence: this.speechRecognitionConfidence,\n      action: this.action,\n      parameters: this.parameters ? this.parameters.toObject() : undefined,\n      allRequiredParamsPresent: this.allRequiredParamsPresent,\n      fulfillmentText: this.fulfillmentText,\n      fulfillmentMessages: (this.fulfillmentMessages || []).map(m =>\n        m.toObject()\n      ),\n      webhookSource: this.webhookSource,\n      webhookPayload: this.webhookPayload\n        ? this.webhookPayload.toObject()\n        : undefined,\n      outputContexts: (this.outputContexts || []).map(m => m.toObject()),\n      intent: this.intent ? this.intent.toObject() : undefined,\n      intentDetectionConfidence: this.intentDetectionConfidence,\n      queryTextOriginal: this.queryTextOriginal,\n      diagnosticInfo: this.diagnosticInfo\n        ? this.diagnosticInfo.toObject()\n        : undefined,\n      languageCode: this.languageCode,\n      fileResources: (this.fileResources || []).map(m => m.toObject()),\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toObject()\n        : undefined,\n      referencedChunks: (this.referencedChunks || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): QueryResult.AsProtobufJSON {\n    return {\n      queryText: this.queryText,\n      speechRecognitionConfidence: this.speechRecognitionConfidence,\n      action: this.action,\n      parameters: this.parameters\n        ? this.parameters.toProtobufJSON(options)\n        : null,\n      allRequiredParamsPresent: this.allRequiredParamsPresent,\n      fulfillmentText: this.fulfillmentText,\n      fulfillmentMessages: (this.fulfillmentMessages || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      webhookSource: this.webhookSource,\n      webhookPayload: this.webhookPayload\n        ? this.webhookPayload.toProtobufJSON(options)\n        : null,\n      outputContexts: (this.outputContexts || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      intent: this.intent ? this.intent.toProtobufJSON(options) : null,\n      intentDetectionConfidence: this.intentDetectionConfidence,\n      queryTextOriginal: this.queryTextOriginal,\n      diagnosticInfo: this.diagnosticInfo\n        ? this.diagnosticInfo.toProtobufJSON(options)\n        : null,\n      languageCode: this.languageCode,\n      fileResources: (this.fileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toProtobufJSON(options)\n        : null,\n      referencedChunks: (this.referencedChunks || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module QueryResult {\n  /**\n   * Standard JavaScript object representation for QueryResult\n   */\n  export interface AsObject {\n    queryText: string;\n    speechRecognitionConfidence: number;\n    action: string;\n    parameters?: googleProtobuf004.Struct.AsObject;\n    allRequiredParamsPresent: boolean;\n    fulfillmentText: string;\n    fulfillmentMessages?: ondewoNlu015.Intent.Message.AsObject[];\n    webhookSource: string;\n    webhookPayload?: googleProtobuf004.Struct.AsObject;\n    outputContexts?: ondewoNlu010.Context.AsObject[];\n    intent?: ondewoNlu015.Intent.AsObject;\n    intentDetectionConfidence: number;\n    queryTextOriginal: string;\n    diagnosticInfo?: googleProtobuf004.Struct.AsObject;\n    languageCode: string;\n    fileResources?: FileResource.AsObject[];\n    llmTelemetryReport?: LlmTelemetryReport.AsObject;\n    referencedChunks?: ReferencedChunk.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for QueryResult\n   */\n  export interface AsProtobufJSON {\n    queryText: string;\n    speechRecognitionConfidence: number;\n    action: string;\n    parameters: googleProtobuf004.Struct.AsProtobufJSON | null;\n    allRequiredParamsPresent: boolean;\n    fulfillmentText: string;\n    fulfillmentMessages: ondewoNlu015.Intent.Message.AsProtobufJSON[] | null;\n    webhookSource: string;\n    webhookPayload: googleProtobuf004.Struct.AsProtobufJSON | null;\n    outputContexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    intent: ondewoNlu015.Intent.AsProtobufJSON | null;\n    intentDetectionConfidence: number;\n    queryTextOriginal: string;\n    diagnosticInfo: googleProtobuf004.Struct.AsProtobufJSON | null;\n    languageCode: string;\n    fileResources: FileResource.AsProtobufJSON[] | null;\n    llmTelemetryReport: LlmTelemetryReport.AsProtobufJSON | null;\n    referencedChunks: ReferencedChunk.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StreamingDetectIntentRequest\n */\nexport class StreamingDetectIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.StreamingDetectIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StreamingDetectIntentRequest();\n    StreamingDetectIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StreamingDetectIntentRequest) {\n    _instance.session = _instance.session || '';\n    _instance.queryParams = _instance.queryParams || undefined;\n    _instance.queryInput = _instance.queryInput || undefined;\n    _instance.singleUtterance = _instance.singleUtterance || false;\n    _instance.inputAudio = _instance.inputAudio || new Uint8Array();\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StreamingDetectIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.session = _reader.readString();\n          break;\n        case 2:\n          _instance.queryParams = new QueryParameters();\n          _reader.readMessage(\n            _instance.queryParams,\n            QueryParameters.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.queryInput = new QueryInput();\n          _reader.readMessage(\n            _instance.queryInput,\n            QueryInput.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.singleUtterance = _reader.readBool();\n          break;\n        case 6:\n          _instance.inputAudio = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StreamingDetectIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StreamingDetectIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.session) {\n      _writer.writeString(1, _instance.session);\n    }\n    if (_instance.queryParams) {\n      _writer.writeMessage(\n        2,\n        _instance.queryParams as any,\n        QueryParameters.serializeBinaryToWriter\n      );\n    }\n    if (_instance.queryInput) {\n      _writer.writeMessage(\n        3,\n        _instance.queryInput as any,\n        QueryInput.serializeBinaryToWriter\n      );\n    }\n    if (_instance.singleUtterance) {\n      _writer.writeBool(4, _instance.singleUtterance);\n    }\n    if (_instance.inputAudio && _instance.inputAudio.length) {\n      _writer.writeBytes(6, _instance.inputAudio);\n    }\n  }\n\n  private _session: string;\n  private _queryParams?: QueryParameters;\n  private _queryInput?: QueryInput;\n  private _singleUtterance: boolean;\n  private _inputAudio: Uint8Array;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StreamingDetectIntentRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<StreamingDetectIntentRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.session = _value.session;\n    this.queryParams = _value.queryParams\n      ? new QueryParameters(_value.queryParams)\n      : undefined;\n    this.queryInput = _value.queryInput\n      ? new QueryInput(_value.queryInput)\n      : undefined;\n    this.singleUtterance = _value.singleUtterance;\n    this.inputAudio = _value.inputAudio;\n    StreamingDetectIntentRequest.refineValues(this);\n  }\n  get session(): string {\n    return this._session;\n  }\n  set session(value: string) {\n    this._session = value;\n  }\n  get queryParams(): QueryParameters | undefined {\n    return this._queryParams;\n  }\n  set queryParams(value: QueryParameters | undefined) {\n    this._queryParams = value;\n  }\n  get queryInput(): QueryInput | undefined {\n    return this._queryInput;\n  }\n  set queryInput(value: QueryInput | undefined) {\n    this._queryInput = value;\n  }\n  get singleUtterance(): boolean {\n    return this._singleUtterance;\n  }\n  set singleUtterance(value: boolean) {\n    this._singleUtterance = value;\n  }\n  get inputAudio(): Uint8Array {\n    return this._inputAudio;\n  }\n  set inputAudio(value: Uint8Array) {\n    this._inputAudio = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StreamingDetectIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StreamingDetectIntentRequest.AsObject {\n    return {\n      session: this.session,\n      queryParams: this.queryParams ? this.queryParams.toObject() : undefined,\n      queryInput: this.queryInput ? this.queryInput.toObject() : undefined,\n      singleUtterance: this.singleUtterance,\n      inputAudio: this.inputAudio\n        ? this.inputAudio.subarray(0)\n        : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StreamingDetectIntentRequest.AsProtobufJSON {\n    return {\n      session: this.session,\n      queryParams: this.queryParams\n        ? this.queryParams.toProtobufJSON(options)\n        : null,\n      queryInput: this.queryInput\n        ? this.queryInput.toProtobufJSON(options)\n        : null,\n      singleUtterance: this.singleUtterance,\n      inputAudio: this.inputAudio ? uint8ArrayToBase64(this.inputAudio) : ''\n    };\n  }\n}\nexport module StreamingDetectIntentRequest {\n  /**\n   * Standard JavaScript object representation for StreamingDetectIntentRequest\n   */\n  export interface AsObject {\n    session: string;\n    queryParams?: QueryParameters.AsObject;\n    queryInput?: QueryInput.AsObject;\n    singleUtterance: boolean;\n    inputAudio: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for StreamingDetectIntentRequest\n   */\n  export interface AsProtobufJSON {\n    session: string;\n    queryParams: QueryParameters.AsProtobufJSON | null;\n    queryInput: QueryInput.AsProtobufJSON | null;\n    singleUtterance: boolean;\n    inputAudio: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StreamingDetectIntentResponse\n */\nexport class StreamingDetectIntentResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.StreamingDetectIntentResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StreamingDetectIntentResponse();\n    StreamingDetectIntentResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StreamingDetectIntentResponse) {\n    _instance.responseId = _instance.responseId || '';\n    _instance.recognitionResult = _instance.recognitionResult || undefined;\n    _instance.queryResult = _instance.queryResult || undefined;\n    _instance.webhookStatus = _instance.webhookStatus || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StreamingDetectIntentResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.responseId = _reader.readString();\n          break;\n        case 2:\n          _instance.recognitionResult = new StreamingRecognitionResult();\n          _reader.readMessage(\n            _instance.recognitionResult,\n            StreamingRecognitionResult.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.queryResult = new QueryResult();\n          _reader.readMessage(\n            _instance.queryResult,\n            QueryResult.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.webhookStatus = new googleRpc011.Status();\n          _reader.readMessage(\n            _instance.webhookStatus,\n            googleRpc011.Status.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.llmCallStarted = new LlmCallStartedEvent();\n          _reader.readMessage(\n            _instance.llmCallStarted,\n            LlmCallStartedEvent.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.llmCallFinished = new LlmCallFinishedEvent();\n          _reader.readMessage(\n            _instance.llmCallFinished,\n            LlmCallFinishedEvent.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.llmToolCallStarted = new LlmToolCallStartedEvent();\n          _reader.readMessage(\n            _instance.llmToolCallStarted,\n            LlmToolCallStartedEvent.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.llmToolCallFinished = new LlmToolCallFinishedEvent();\n          _reader.readMessage(\n            _instance.llmToolCallFinished,\n            LlmToolCallFinishedEvent.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.llmThinkingDelta = new LlmThinkingDeltaEvent();\n          _reader.readMessage(\n            _instance.llmThinkingDelta,\n            LlmThinkingDeltaEvent.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.llmTokenUsageUpdate = new LlmTokenUsageUpdateEvent();\n          _reader.readMessage(\n            _instance.llmTokenUsageUpdate,\n            LlmTokenUsageUpdateEvent.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StreamingDetectIntentResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StreamingDetectIntentResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.responseId) {\n      _writer.writeString(1, _instance.responseId);\n    }\n    if (_instance.recognitionResult) {\n      _writer.writeMessage(\n        2,\n        _instance.recognitionResult as any,\n        StreamingRecognitionResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.queryResult) {\n      _writer.writeMessage(\n        3,\n        _instance.queryResult as any,\n        QueryResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.webhookStatus) {\n      _writer.writeMessage(\n        4,\n        _instance.webhookStatus as any,\n        googleRpc011.Status.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmCallStarted) {\n      _writer.writeMessage(\n        5,\n        _instance.llmCallStarted as any,\n        LlmCallStartedEvent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmCallFinished) {\n      _writer.writeMessage(\n        6,\n        _instance.llmCallFinished as any,\n        LlmCallFinishedEvent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmToolCallStarted) {\n      _writer.writeMessage(\n        7,\n        _instance.llmToolCallStarted as any,\n        LlmToolCallStartedEvent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmToolCallFinished) {\n      _writer.writeMessage(\n        8,\n        _instance.llmToolCallFinished as any,\n        LlmToolCallFinishedEvent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmThinkingDelta) {\n      _writer.writeMessage(\n        9,\n        _instance.llmThinkingDelta as any,\n        LlmThinkingDeltaEvent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmTokenUsageUpdate) {\n      _writer.writeMessage(\n        10,\n        _instance.llmTokenUsageUpdate as any,\n        LlmTokenUsageUpdateEvent.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _responseId: string;\n  private _recognitionResult?: StreamingRecognitionResult;\n  private _queryResult?: QueryResult;\n  private _webhookStatus?: googleRpc011.Status;\n  private _llmCallStarted?: LlmCallStartedEvent;\n  private _llmCallFinished?: LlmCallFinishedEvent;\n  private _llmToolCallStarted?: LlmToolCallStartedEvent;\n  private _llmToolCallFinished?: LlmToolCallFinishedEvent;\n  private _llmThinkingDelta?: LlmThinkingDeltaEvent;\n  private _llmTokenUsageUpdate?: LlmTokenUsageUpdateEvent;\n\n  private _telemetryEvent: StreamingDetectIntentResponse.TelemetryEventCase =\n    StreamingDetectIntentResponse.TelemetryEventCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StreamingDetectIntentResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<StreamingDetectIntentResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.responseId = _value.responseId;\n    this.recognitionResult = _value.recognitionResult\n      ? new StreamingRecognitionResult(_value.recognitionResult)\n      : undefined;\n    this.queryResult = _value.queryResult\n      ? new QueryResult(_value.queryResult)\n      : undefined;\n    this.webhookStatus = _value.webhookStatus\n      ? new googleRpc011.Status(_value.webhookStatus)\n      : undefined;\n    this.llmCallStarted = _value.llmCallStarted\n      ? new LlmCallStartedEvent(_value.llmCallStarted)\n      : undefined;\n    this.llmCallFinished = _value.llmCallFinished\n      ? new LlmCallFinishedEvent(_value.llmCallFinished)\n      : undefined;\n    this.llmToolCallStarted = _value.llmToolCallStarted\n      ? new LlmToolCallStartedEvent(_value.llmToolCallStarted)\n      : undefined;\n    this.llmToolCallFinished = _value.llmToolCallFinished\n      ? new LlmToolCallFinishedEvent(_value.llmToolCallFinished)\n      : undefined;\n    this.llmThinkingDelta = _value.llmThinkingDelta\n      ? new LlmThinkingDeltaEvent(_value.llmThinkingDelta)\n      : undefined;\n    this.llmTokenUsageUpdate = _value.llmTokenUsageUpdate\n      ? new LlmTokenUsageUpdateEvent(_value.llmTokenUsageUpdate)\n      : undefined;\n    StreamingDetectIntentResponse.refineValues(this);\n  }\n  get responseId(): string {\n    return this._responseId;\n  }\n  set responseId(value: string) {\n    this._responseId = value;\n  }\n  get recognitionResult(): StreamingRecognitionResult | undefined {\n    return this._recognitionResult;\n  }\n  set recognitionResult(value: StreamingRecognitionResult | undefined) {\n    this._recognitionResult = value;\n  }\n  get queryResult(): QueryResult | undefined {\n    return this._queryResult;\n  }\n  set queryResult(value: QueryResult | undefined) {\n    this._queryResult = value;\n  }\n  get webhookStatus(): googleRpc011.Status | undefined {\n    return this._webhookStatus;\n  }\n  set webhookStatus(value: googleRpc011.Status | undefined) {\n    this._webhookStatus = value;\n  }\n  get llmCallStarted(): LlmCallStartedEvent | undefined {\n    return this._llmCallStarted;\n  }\n  set llmCallStarted(value: LlmCallStartedEvent | undefined) {\n    if (value !== undefined && value !== null) {\n      this._llmCallFinished = this._llmToolCallStarted = this._llmToolCallFinished = this._llmThinkingDelta = this._llmTokenUsageUpdate = undefined;\n      this._telemetryEvent =\n        StreamingDetectIntentResponse.TelemetryEventCase.llmCallStarted;\n    }\n    this._llmCallStarted = value;\n  }\n  get llmCallFinished(): LlmCallFinishedEvent | undefined {\n    return this._llmCallFinished;\n  }\n  set llmCallFinished(value: LlmCallFinishedEvent | undefined) {\n    if (value !== undefined && value !== null) {\n      this._llmCallStarted = this._llmToolCallStarted = this._llmToolCallFinished = this._llmThinkingDelta = this._llmTokenUsageUpdate = undefined;\n      this._telemetryEvent =\n        StreamingDetectIntentResponse.TelemetryEventCase.llmCallFinished;\n    }\n    this._llmCallFinished = value;\n  }\n  get llmToolCallStarted(): LlmToolCallStartedEvent | undefined {\n    return this._llmToolCallStarted;\n  }\n  set llmToolCallStarted(value: LlmToolCallStartedEvent | undefined) {\n    if (value !== undefined && value !== null) {\n      this._llmCallStarted = this._llmCallFinished = this._llmToolCallFinished = this._llmThinkingDelta = this._llmTokenUsageUpdate = undefined;\n      this._telemetryEvent =\n        StreamingDetectIntentResponse.TelemetryEventCase.llmToolCallStarted;\n    }\n    this._llmToolCallStarted = value;\n  }\n  get llmToolCallFinished(): LlmToolCallFinishedEvent | undefined {\n    return this._llmToolCallFinished;\n  }\n  set llmToolCallFinished(value: LlmToolCallFinishedEvent | undefined) {\n    if (value !== undefined && value !== null) {\n      this._llmCallStarted = this._llmCallFinished = this._llmToolCallStarted = this._llmThinkingDelta = this._llmTokenUsageUpdate = undefined;\n      this._telemetryEvent =\n        StreamingDetectIntentResponse.TelemetryEventCase.llmToolCallFinished;\n    }\n    this._llmToolCallFinished = value;\n  }\n  get llmThinkingDelta(): LlmThinkingDeltaEvent | undefined {\n    return this._llmThinkingDelta;\n  }\n  set llmThinkingDelta(value: LlmThinkingDeltaEvent | undefined) {\n    if (value !== undefined && value !== null) {\n      this._llmCallStarted = this._llmCallFinished = this._llmToolCallStarted = this._llmToolCallFinished = this._llmTokenUsageUpdate = undefined;\n      this._telemetryEvent =\n        StreamingDetectIntentResponse.TelemetryEventCase.llmThinkingDelta;\n    }\n    this._llmThinkingDelta = value;\n  }\n  get llmTokenUsageUpdate(): LlmTokenUsageUpdateEvent | undefined {\n    return this._llmTokenUsageUpdate;\n  }\n  set llmTokenUsageUpdate(value: LlmTokenUsageUpdateEvent | undefined) {\n    if (value !== undefined && value !== null) {\n      this._llmCallStarted = this._llmCallFinished = this._llmToolCallStarted = this._llmToolCallFinished = this._llmThinkingDelta = undefined;\n      this._telemetryEvent =\n        StreamingDetectIntentResponse.TelemetryEventCase.llmTokenUsageUpdate;\n    }\n    this._llmTokenUsageUpdate = value;\n  }\n  get telemetryEvent() {\n    return this._telemetryEvent;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StreamingDetectIntentResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StreamingDetectIntentResponse.AsObject {\n    return {\n      responseId: this.responseId,\n      recognitionResult: this.recognitionResult\n        ? this.recognitionResult.toObject()\n        : undefined,\n      queryResult: this.queryResult ? this.queryResult.toObject() : undefined,\n      webhookStatus: this.webhookStatus\n        ? this.webhookStatus.toObject()\n        : undefined,\n      llmCallStarted: this.llmCallStarted\n        ? this.llmCallStarted.toObject()\n        : undefined,\n      llmCallFinished: this.llmCallFinished\n        ? this.llmCallFinished.toObject()\n        : undefined,\n      llmToolCallStarted: this.llmToolCallStarted\n        ? this.llmToolCallStarted.toObject()\n        : undefined,\n      llmToolCallFinished: this.llmToolCallFinished\n        ? this.llmToolCallFinished.toObject()\n        : undefined,\n      llmThinkingDelta: this.llmThinkingDelta\n        ? this.llmThinkingDelta.toObject()\n        : undefined,\n      llmTokenUsageUpdate: this.llmTokenUsageUpdate\n        ? this.llmTokenUsageUpdate.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StreamingDetectIntentResponse.AsProtobufJSON {\n    return {\n      responseId: this.responseId,\n      recognitionResult: this.recognitionResult\n        ? this.recognitionResult.toProtobufJSON(options)\n        : null,\n      queryResult: this.queryResult\n        ? this.queryResult.toProtobufJSON(options)\n        : null,\n      webhookStatus: this.webhookStatus\n        ? this.webhookStatus.toProtobufJSON(options)\n        : null,\n      llmCallStarted: this.llmCallStarted\n        ? this.llmCallStarted.toProtobufJSON(options)\n        : null,\n      llmCallFinished: this.llmCallFinished\n        ? this.llmCallFinished.toProtobufJSON(options)\n        : null,\n      llmToolCallStarted: this.llmToolCallStarted\n        ? this.llmToolCallStarted.toProtobufJSON(options)\n        : null,\n      llmToolCallFinished: this.llmToolCallFinished\n        ? this.llmToolCallFinished.toProtobufJSON(options)\n        : null,\n      llmThinkingDelta: this.llmThinkingDelta\n        ? this.llmThinkingDelta.toProtobufJSON(options)\n        : null,\n      llmTokenUsageUpdate: this.llmTokenUsageUpdate\n        ? this.llmTokenUsageUpdate.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module StreamingDetectIntentResponse {\n  /**\n   * Standard JavaScript object representation for StreamingDetectIntentResponse\n   */\n  export interface AsObject {\n    responseId: string;\n    recognitionResult?: StreamingRecognitionResult.AsObject;\n    queryResult?: QueryResult.AsObject;\n    webhookStatus?: googleRpc011.Status.AsObject;\n    llmCallStarted?: LlmCallStartedEvent.AsObject;\n    llmCallFinished?: LlmCallFinishedEvent.AsObject;\n    llmToolCallStarted?: LlmToolCallStartedEvent.AsObject;\n    llmToolCallFinished?: LlmToolCallFinishedEvent.AsObject;\n    llmThinkingDelta?: LlmThinkingDeltaEvent.AsObject;\n    llmTokenUsageUpdate?: LlmTokenUsageUpdateEvent.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for StreamingDetectIntentResponse\n   */\n  export interface AsProtobufJSON {\n    responseId: string;\n    recognitionResult: StreamingRecognitionResult.AsProtobufJSON | null;\n    queryResult: QueryResult.AsProtobufJSON | null;\n    webhookStatus: googleRpc011.Status.AsProtobufJSON | null;\n    llmCallStarted: LlmCallStartedEvent.AsProtobufJSON | null;\n    llmCallFinished: LlmCallFinishedEvent.AsProtobufJSON | null;\n    llmToolCallStarted: LlmToolCallStartedEvent.AsProtobufJSON | null;\n    llmToolCallFinished: LlmToolCallFinishedEvent.AsProtobufJSON | null;\n    llmThinkingDelta: LlmThinkingDeltaEvent.AsProtobufJSON | null;\n    llmTokenUsageUpdate: LlmTokenUsageUpdateEvent.AsProtobufJSON | null;\n  }\n  export enum TelemetryEventCase {\n    none = 0,\n    llmCallStarted = 1,\n    llmCallFinished = 2,\n    llmToolCallStarted = 3,\n    llmToolCallFinished = 4,\n    llmThinkingDelta = 5,\n    llmTokenUsageUpdate = 6\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StreamingRecognitionResult\n */\nexport class StreamingRecognitionResult implements GrpcMessage {\n  static id = 'ondewo.nlu.StreamingRecognitionResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StreamingRecognitionResult();\n    StreamingRecognitionResult.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StreamingRecognitionResult) {\n    _instance.messageType = _instance.messageType || 0;\n    _instance.transcript = _instance.transcript || '';\n    _instance.isFinal = _instance.isFinal || false;\n    _instance.confidence = _instance.confidence || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StreamingRecognitionResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.messageType = _reader.readEnum();\n          break;\n        case 2:\n          _instance.transcript = _reader.readString();\n          break;\n        case 3:\n          _instance.isFinal = _reader.readBool();\n          break;\n        case 4:\n          _instance.confidence = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StreamingRecognitionResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StreamingRecognitionResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.messageType) {\n      _writer.writeEnum(1, _instance.messageType);\n    }\n    if (_instance.transcript) {\n      _writer.writeString(2, _instance.transcript);\n    }\n    if (_instance.isFinal) {\n      _writer.writeBool(3, _instance.isFinal);\n    }\n    if (_instance.confidence) {\n      _writer.writeFloat(4, _instance.confidence);\n    }\n  }\n\n  private _messageType: StreamingRecognitionResult.MessageType;\n  private _transcript: string;\n  private _isFinal: boolean;\n  private _confidence: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StreamingRecognitionResult to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<StreamingRecognitionResult.AsObject>) {\n    _value = _value || {};\n    this.messageType = _value.messageType;\n    this.transcript = _value.transcript;\n    this.isFinal = _value.isFinal;\n    this.confidence = _value.confidence;\n    StreamingRecognitionResult.refineValues(this);\n  }\n  get messageType(): StreamingRecognitionResult.MessageType {\n    return this._messageType;\n  }\n  set messageType(value: StreamingRecognitionResult.MessageType) {\n    this._messageType = value;\n  }\n  get transcript(): string {\n    return this._transcript;\n  }\n  set transcript(value: string) {\n    this._transcript = value;\n  }\n  get isFinal(): boolean {\n    return this._isFinal;\n  }\n  set isFinal(value: boolean) {\n    this._isFinal = value;\n  }\n  get confidence(): number {\n    return this._confidence;\n  }\n  set confidence(value: number) {\n    this._confidence = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StreamingRecognitionResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StreamingRecognitionResult.AsObject {\n    return {\n      messageType: this.messageType,\n      transcript: this.transcript,\n      isFinal: this.isFinal,\n      confidence: this.confidence\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StreamingRecognitionResult.AsProtobufJSON {\n    return {\n      messageType:\n        StreamingRecognitionResult.MessageType[\n          this.messageType === null || this.messageType === undefined\n            ? 0\n            : this.messageType\n        ],\n      transcript: this.transcript,\n      isFinal: this.isFinal,\n      confidence: this.confidence\n    };\n  }\n}\nexport module StreamingRecognitionResult {\n  /**\n   * Standard JavaScript object representation for StreamingRecognitionResult\n   */\n  export interface AsObject {\n    messageType: StreamingRecognitionResult.MessageType;\n    transcript: string;\n    isFinal: boolean;\n    confidence: number;\n  }\n\n  /**\n   * Protobuf JSON representation for StreamingRecognitionResult\n   */\n  export interface AsProtobufJSON {\n    messageType: string;\n    transcript: string;\n    isFinal: boolean;\n    confidence: number;\n  }\n  export enum MessageType {\n    MESSAGE_TYPE_UNSPECIFIED = 0,\n    TRANSCRIPT = 1,\n    END_OF_SINGLE_UTTERANCE = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.InputAudioConfig\n */\nexport class InputAudioConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.InputAudioConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new InputAudioConfig();\n    InputAudioConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: InputAudioConfig) {\n    _instance.audioEncoding = _instance.audioEncoding || 0;\n    _instance.sampleRateHertz = _instance.sampleRateHertz || 0;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.phraseHints = _instance.phraseHints || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: InputAudioConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.audioEncoding = _reader.readEnum();\n          break;\n        case 2:\n          _instance.sampleRateHertz = _reader.readInt32();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          (_instance.phraseHints = _instance.phraseHints || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    InputAudioConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: InputAudioConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.audioEncoding) {\n      _writer.writeEnum(1, _instance.audioEncoding);\n    }\n    if (_instance.sampleRateHertz) {\n      _writer.writeInt32(2, _instance.sampleRateHertz);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.phraseHints && _instance.phraseHints.length) {\n      _writer.writeRepeatedString(4, _instance.phraseHints);\n    }\n  }\n\n  private _audioEncoding: AudioEncoding;\n  private _sampleRateHertz: number;\n  private _languageCode: string;\n  private _phraseHints: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of InputAudioConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<InputAudioConfig.AsObject>) {\n    _value = _value || {};\n    this.audioEncoding = _value.audioEncoding;\n    this.sampleRateHertz = _value.sampleRateHertz;\n    this.languageCode = _value.languageCode;\n    this.phraseHints = (_value.phraseHints || []).slice();\n    InputAudioConfig.refineValues(this);\n  }\n  get audioEncoding(): AudioEncoding {\n    return this._audioEncoding;\n  }\n  set audioEncoding(value: AudioEncoding) {\n    this._audioEncoding = value;\n  }\n  get sampleRateHertz(): number {\n    return this._sampleRateHertz;\n  }\n  set sampleRateHertz(value: number) {\n    this._sampleRateHertz = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get phraseHints(): string[] {\n    return this._phraseHints;\n  }\n  set phraseHints(value: string[]) {\n    this._phraseHints = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    InputAudioConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): InputAudioConfig.AsObject {\n    return {\n      audioEncoding: this.audioEncoding,\n      sampleRateHertz: this.sampleRateHertz,\n      languageCode: this.languageCode,\n      phraseHints: (this.phraseHints || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): InputAudioConfig.AsProtobufJSON {\n    return {\n      audioEncoding:\n        AudioEncoding[\n          this.audioEncoding === null || this.audioEncoding === undefined\n            ? 0\n            : this.audioEncoding\n        ],\n      sampleRateHertz: this.sampleRateHertz,\n      languageCode: this.languageCode,\n      phraseHints: (this.phraseHints || []).slice()\n    };\n  }\n}\nexport module InputAudioConfig {\n  /**\n   * Standard JavaScript object representation for InputAudioConfig\n   */\n  export interface AsObject {\n    audioEncoding: AudioEncoding;\n    sampleRateHertz: number;\n    languageCode: string;\n    phraseHints: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for InputAudioConfig\n   */\n  export interface AsProtobufJSON {\n    audioEncoding: string;\n    sampleRateHertz: number;\n    languageCode: string;\n    phraseHints: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.TextInput\n */\nexport class TextInput implements GrpcMessage {\n  static id = 'ondewo.nlu.TextInput';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new TextInput();\n    TextInput.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: TextInput) {\n    _instance.text = _instance.text || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: TextInput,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.text = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    TextInput.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: TextInput, _writer: BinaryWriter) {\n    if (_instance.text) {\n      _writer.writeString(1, _instance.text);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n  }\n\n  private _text: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of TextInput to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<TextInput.AsObject>) {\n    _value = _value || {};\n    this.text = _value.text;\n    this.languageCode = _value.languageCode;\n    TextInput.refineValues(this);\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    TextInput.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): TextInput.AsObject {\n    return {\n      text: this.text,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): TextInput.AsProtobufJSON {\n    return {\n      text: this.text,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module TextInput {\n  /**\n   * Standard JavaScript object representation for TextInput\n   */\n  export interface AsObject {\n    text: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for TextInput\n   */\n  export interface AsProtobufJSON {\n    text: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EventInput\n */\nexport class EventInput implements GrpcMessage {\n  static id = 'ondewo.nlu.EventInput';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EventInput();\n    EventInput.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EventInput) {\n    _instance.name = _instance.name || '';\n    _instance.parameters = _instance.parameters || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EventInput,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parameters = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.parameters,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EventInput.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: EventInput, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parameters) {\n      _writer.writeMessage(\n        2,\n        _instance.parameters as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parameters?: googleProtobuf004.Struct;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EventInput to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EventInput.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parameters = _value.parameters\n      ? new googleProtobuf004.Struct(_value.parameters)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    EventInput.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parameters(): googleProtobuf004.Struct | undefined {\n    return this._parameters;\n  }\n  set parameters(value: googleProtobuf004.Struct | undefined) {\n    this._parameters = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EventInput.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EventInput.AsObject {\n    return {\n      name: this.name,\n      parameters: this.parameters ? this.parameters.toObject() : undefined,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EventInput.AsProtobufJSON {\n    return {\n      name: this.name,\n      parameters: this.parameters\n        ? this.parameters.toProtobufJSON(options)\n        : null,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module EventInput {\n  /**\n   * Standard JavaScript object representation for EventInput\n   */\n  export interface AsObject {\n    name: string;\n    parameters?: googleProtobuf004.Struct.AsObject;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for EventInput\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parameters: googleProtobuf004.Struct.AsProtobufJSON | null;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.Session\n */\nexport class Session implements GrpcMessage {\n  static id = 'ondewo.nlu.Session';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Session();\n    Session.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Session) {\n    _instance.name = _instance.name || '';\n    _instance.sessionSteps = _instance.sessionSteps || [];\n    _instance.sessionInfo = _instance.sessionInfo || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: Session,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new SessionStep();\n          _reader.readMessage(\n            messageInitializer2,\n            SessionStep.deserializeBinaryFromReader\n          );\n          (_instance.sessionSteps = _instance.sessionSteps || []).push(\n            messageInitializer2\n          );\n          break;\n        case 3:\n          _instance.sessionInfo = new SessionInfo();\n          _reader.readMessage(\n            _instance.sessionInfo,\n            SessionInfo.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Session.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Session, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.sessionSteps && _instance.sessionSteps.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.sessionSteps as any,\n        SessionStep.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sessionInfo) {\n      _writer.writeMessage(\n        3,\n        _instance.sessionInfo as any,\n        SessionInfo.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        4,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        5,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(7, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _sessionSteps?: SessionStep[];\n  private _sessionInfo?: SessionInfo;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Session to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Session.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.sessionSteps = (_value.sessionSteps || []).map(\n      m => new SessionStep(m)\n    );\n    this.sessionInfo = _value.sessionInfo\n      ? new SessionInfo(_value.sessionInfo)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    Session.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get sessionSteps(): SessionStep[] | undefined {\n    return this._sessionSteps;\n  }\n  set sessionSteps(value: SessionStep[] | undefined) {\n    this._sessionSteps = value;\n  }\n  get sessionInfo(): SessionInfo | undefined {\n    return this._sessionInfo;\n  }\n  set sessionInfo(value: SessionInfo | undefined) {\n    this._sessionInfo = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Session.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Session.AsObject {\n    return {\n      name: this.name,\n      sessionSteps: (this.sessionSteps || []).map(m => m.toObject()),\n      sessionInfo: this.sessionInfo ? this.sessionInfo.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Session.AsProtobufJSON {\n    return {\n      name: this.name,\n      sessionSteps: (this.sessionSteps || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      sessionInfo: this.sessionInfo\n        ? this.sessionInfo.toProtobufJSON(options)\n        : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module Session {\n  /**\n   * Standard JavaScript object representation for Session\n   */\n  export interface AsObject {\n    name: string;\n    sessionSteps?: SessionStep.AsObject[];\n    sessionInfo?: SessionInfo.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for Session\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    sessionSteps: SessionStep.AsProtobufJSON[] | null;\n    sessionInfo: SessionInfo.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n  export enum View {\n    VIEW_UNSPECIFIED = 0,\n    VIEW_FULL = 1,\n    VIEW_SPARSE = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SessionStep\n */\nexport class SessionStep implements GrpcMessage {\n  static id = 'ondewo.nlu.SessionStep';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SessionStep();\n    SessionStep.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SessionStep) {\n    _instance.name = _instance.name || '';\n    _instance.detectIntentRequest = _instance.detectIntentRequest || undefined;\n    _instance.detectIntentResponse =\n      _instance.detectIntentResponse || undefined;\n    _instance.contexts = _instance.contexts || [];\n    _instance.timestamp = _instance.timestamp || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.audioFileResources = _instance.audioFileResources || [];\n    _instance.llmTelemetryReport = _instance.llmTelemetryReport || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SessionStep,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.detectIntentRequest = new DetectIntentRequest();\n          _reader.readMessage(\n            _instance.detectIntentRequest,\n            DetectIntentRequest.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.detectIntentResponse = new DetectIntentResponse();\n          _reader.readMessage(\n            _instance.detectIntentResponse,\n            DetectIntentResponse.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          const messageInitializer4 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer4,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.contexts = _instance.contexts || []).push(\n            messageInitializer4\n          );\n          break;\n        case 5:\n          _instance.timestamp = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.timestamp,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 9:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 10:\n          const messageInitializer10 = new AudioFileResource();\n          _reader.readMessage(\n            messageInitializer10,\n            AudioFileResource.deserializeBinaryFromReader\n          );\n          (_instance.audioFileResources =\n            _instance.audioFileResources || []).push(messageInitializer10);\n          break;\n        case 11:\n          _instance.llmTelemetryReport = new LlmTelemetryReport();\n          _reader.readMessage(\n            _instance.llmTelemetryReport,\n            LlmTelemetryReport.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SessionStep.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SessionStep,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.detectIntentRequest) {\n      _writer.writeMessage(\n        2,\n        _instance.detectIntentRequest as any,\n        DetectIntentRequest.serializeBinaryToWriter\n      );\n    }\n    if (_instance.detectIntentResponse) {\n      _writer.writeMessage(\n        3,\n        _instance.detectIntentResponse as any,\n        DetectIntentResponse.serializeBinaryToWriter\n      );\n    }\n    if (_instance.contexts && _instance.contexts.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.contexts as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.timestamp) {\n      _writer.writeMessage(\n        5,\n        _instance.timestamp as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        6,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        7,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(8, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(9, _instance.modifiedBy);\n    }\n    if (_instance.audioFileResources && _instance.audioFileResources.length) {\n      _writer.writeRepeatedMessage(\n        10,\n        _instance.audioFileResources as any,\n        AudioFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmTelemetryReport) {\n      _writer.writeMessage(\n        11,\n        _instance.llmTelemetryReport as any,\n        LlmTelemetryReport.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _detectIntentRequest?: DetectIntentRequest;\n  private _detectIntentResponse?: DetectIntentResponse;\n  private _contexts?: ondewoNlu010.Context[];\n  private _timestamp?: googleProtobuf005.Timestamp;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _audioFileResources?: AudioFileResource[];\n  private _llmTelemetryReport?: LlmTelemetryReport;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SessionStep to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SessionStep.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.detectIntentRequest = _value.detectIntentRequest\n      ? new DetectIntentRequest(_value.detectIntentRequest)\n      : undefined;\n    this.detectIntentResponse = _value.detectIntentResponse\n      ? new DetectIntentResponse(_value.detectIntentResponse)\n      : undefined;\n    this.contexts = (_value.contexts || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    this.timestamp = _value.timestamp\n      ? new googleProtobuf005.Timestamp(_value.timestamp)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.audioFileResources = (_value.audioFileResources || []).map(\n      m => new AudioFileResource(m)\n    );\n    this.llmTelemetryReport = _value.llmTelemetryReport\n      ? new LlmTelemetryReport(_value.llmTelemetryReport)\n      : undefined;\n    SessionStep.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get detectIntentRequest(): DetectIntentRequest | undefined {\n    return this._detectIntentRequest;\n  }\n  set detectIntentRequest(value: DetectIntentRequest | undefined) {\n    this._detectIntentRequest = value;\n  }\n  get detectIntentResponse(): DetectIntentResponse | undefined {\n    return this._detectIntentResponse;\n  }\n  set detectIntentResponse(value: DetectIntentResponse | undefined) {\n    this._detectIntentResponse = value;\n  }\n  get contexts(): ondewoNlu010.Context[] | undefined {\n    return this._contexts;\n  }\n  set contexts(value: ondewoNlu010.Context[] | undefined) {\n    this._contexts = value;\n  }\n  get timestamp(): googleProtobuf005.Timestamp | undefined {\n    return this._timestamp;\n  }\n  set timestamp(value: googleProtobuf005.Timestamp | undefined) {\n    this._timestamp = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get audioFileResources(): AudioFileResource[] | undefined {\n    return this._audioFileResources;\n  }\n  set audioFileResources(value: AudioFileResource[] | undefined) {\n    this._audioFileResources = value;\n  }\n  get llmTelemetryReport(): LlmTelemetryReport | undefined {\n    return this._llmTelemetryReport;\n  }\n  set llmTelemetryReport(value: LlmTelemetryReport | undefined) {\n    this._llmTelemetryReport = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SessionStep.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SessionStep.AsObject {\n    return {\n      name: this.name,\n      detectIntentRequest: this.detectIntentRequest\n        ? this.detectIntentRequest.toObject()\n        : undefined,\n      detectIntentResponse: this.detectIntentResponse\n        ? this.detectIntentResponse.toObject()\n        : undefined,\n      contexts: (this.contexts || []).map(m => m.toObject()),\n      timestamp: this.timestamp ? this.timestamp.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      audioFileResources: (this.audioFileResources || []).map(m =>\n        m.toObject()\n      ),\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SessionStep.AsProtobufJSON {\n    return {\n      name: this.name,\n      detectIntentRequest: this.detectIntentRequest\n        ? this.detectIntentRequest.toProtobufJSON(options)\n        : null,\n      detectIntentResponse: this.detectIntentResponse\n        ? this.detectIntentResponse.toProtobufJSON(options)\n        : null,\n      contexts: (this.contexts || []).map(m => m.toProtobufJSON(options)),\n      timestamp: this.timestamp ? this.timestamp.toProtobufJSON(options) : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      audioFileResources: (this.audioFileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module SessionStep {\n  /**\n   * Standard JavaScript object representation for SessionStep\n   */\n  export interface AsObject {\n    name: string;\n    detectIntentRequest?: DetectIntentRequest.AsObject;\n    detectIntentResponse?: DetectIntentResponse.AsObject;\n    contexts?: ondewoNlu010.Context.AsObject[];\n    timestamp?: googleProtobuf005.Timestamp.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    audioFileResources?: AudioFileResource.AsObject[];\n    llmTelemetryReport?: LlmTelemetryReport.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for SessionStep\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    detectIntentRequest: DetectIntentRequest.AsProtobufJSON | null;\n    detectIntentResponse: DetectIntentResponse.AsProtobufJSON | null;\n    contexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    timestamp: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    audioFileResources: AudioFileResource.AsProtobufJSON[] | null;\n    llmTelemetryReport: LlmTelemetryReport.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionStepRequest\n */\nexport class GetSessionStepRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionStepRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionStepRequest();\n    GetSessionStepRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionStepRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionStepRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionStepRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionStepRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionStepRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetSessionStepRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetSessionStepRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionStepRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionStepRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionStepRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetSessionStepRequest {\n  /**\n   * Standard JavaScript object representation for GetSessionStepRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionStepRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateSessionStepRequest\n */\nexport class UpdateSessionStepRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateSessionStepRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateSessionStepRequest();\n    UpdateSessionStepRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateSessionStepRequest) {\n    _instance.sessionStep = _instance.sessionStep || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateSessionStepRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionStep = new SessionStep();\n          _reader.readMessage(\n            _instance.sessionStep,\n            SessionStep.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateSessionStepRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateSessionStepRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionStep) {\n      _writer.writeMessage(\n        1,\n        _instance.sessionStep as any,\n        SessionStep.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionStep?: SessionStep;\n  private _updateMask?: googleProtobuf003.FieldMask;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateSessionStepRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateSessionStepRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionStep = _value.sessionStep\n      ? new SessionStep(_value.sessionStep)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    UpdateSessionStepRequest.refineValues(this);\n  }\n  get sessionStep(): SessionStep | undefined {\n    return this._sessionStep;\n  }\n  set sessionStep(value: SessionStep | undefined) {\n    this._sessionStep = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateSessionStepRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateSessionStepRequest.AsObject {\n    return {\n      sessionStep: this.sessionStep ? this.sessionStep.toObject() : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateSessionStepRequest.AsProtobufJSON {\n    return {\n      sessionStep: this.sessionStep\n        ? this.sessionStep.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module UpdateSessionStepRequest {\n  /**\n   * Standard JavaScript object representation for UpdateSessionStepRequest\n   */\n  export interface AsObject {\n    sessionStep?: SessionStep.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateSessionStepRequest\n   */\n  export interface AsProtobufJSON {\n    sessionStep: SessionStep.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteSessionStepRequest\n */\nexport class DeleteSessionStepRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteSessionStepRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteSessionStepRequest();\n    DeleteSessionStepRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteSessionStepRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteSessionStepRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteSessionStepRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteSessionStepRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteSessionStepRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteSessionStepRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteSessionStepRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteSessionStepRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteSessionStepRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteSessionStepRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteSessionStepRequest {\n  /**\n   * Standard JavaScript object representation for DeleteSessionStepRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteSessionStepRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateSessionStepRequest\n */\nexport class CreateSessionStepRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateSessionStepRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateSessionStepRequest();\n    CreateSessionStepRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateSessionStepRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.sessionStep = _instance.sessionStep || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateSessionStepRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionStep = new SessionStep();\n          _reader.readMessage(\n            _instance.sessionStep,\n            SessionStep.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateSessionStepRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateSessionStepRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.sessionStep) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionStep as any,\n        SessionStep.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _sessionStep?: SessionStep;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateSessionStepRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateSessionStepRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.sessionStep = _value.sessionStep\n      ? new SessionStep(_value.sessionStep)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    CreateSessionStepRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get sessionStep(): SessionStep | undefined {\n    return this._sessionStep;\n  }\n  set sessionStep(value: SessionStep | undefined) {\n    this._sessionStep = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateSessionStepRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateSessionStepRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      sessionStep: this.sessionStep ? this.sessionStep.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateSessionStepRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      sessionStep: this.sessionStep\n        ? this.sessionStep.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module CreateSessionStepRequest {\n  /**\n   * Standard JavaScript object representation for CreateSessionStepRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    sessionStep?: SessionStep.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateSessionStepRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    sessionStep: SessionStep.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionsRequest\n */\nexport class ListSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionsRequest();\n    ListSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionView = _instance.sessionView || 0;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionView = _reader.readEnum();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionView) {\n      _writer.writeEnum(2, _instance.sessionView);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionView: Session.View;\n  private _pageToken: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionView = _value.sessionView;\n    this.pageToken = _value.pageToken;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionView(): Session.View {\n    return this._sessionView;\n  }\n  set sessionView(value: Session.View) {\n    this._sessionView = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionView: this.sessionView,\n      pageToken: this.pageToken,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionView:\n        Session.View[\n          this.sessionView === null || this.sessionView === undefined\n            ? 0\n            : this.sessionView\n        ],\n      pageToken: this.pageToken,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionView: Session.View;\n    pageToken: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionView: string;\n    pageToken: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ContextFilter\n */\nexport class ContextFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.ContextFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ContextFilter();\n    ContextFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ContextFilter) {\n    _instance.contextName = _instance.contextName || '';\n    _instance.key = _instance.key || '';\n    _instance.value = _instance.value || '';\n    _instance.operator = _instance.operator || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ContextFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.contextName = _reader.readString();\n          break;\n        case 2:\n          _instance.key = _reader.readString();\n          break;\n        case 3:\n          _instance.value = _reader.readString();\n          break;\n        case 4:\n          _instance.operator = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ContextFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ContextFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.contextName) {\n      _writer.writeString(1, _instance.contextName);\n    }\n    if (_instance.key) {\n      _writer.writeString(2, _instance.key);\n    }\n    if (_instance.value) {\n      _writer.writeString(3, _instance.value);\n    }\n    if (_instance.operator) {\n      _writer.writeEnum(4, _instance.operator);\n    }\n  }\n\n  private _contextName: string;\n  private _key: string;\n  private _value: string;\n  private _operator: ComparisonOperator;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ContextFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ContextFilter.AsObject>) {\n    _value = _value || {};\n    this.contextName = _value.contextName;\n    this.key = _value.key;\n    this.value = _value.value;\n    this.operator = _value.operator;\n    ContextFilter.refineValues(this);\n  }\n  get contextName(): string {\n    return this._contextName;\n  }\n  set contextName(value: string) {\n    this._contextName = value;\n  }\n  get key(): string {\n    return this._key;\n  }\n  set key(value: string) {\n    this._key = value;\n  }\n  get value(): string {\n    return this._value;\n  }\n  set value(value: string) {\n    this._value = value;\n  }\n  get operator(): ComparisonOperator {\n    return this._operator;\n  }\n  set operator(value: ComparisonOperator) {\n    this._operator = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ContextFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ContextFilter.AsObject {\n    return {\n      contextName: this.contextName,\n      key: this.key,\n      value: this.value,\n      operator: this.operator\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ContextFilter.AsProtobufJSON {\n    return {\n      contextName: this.contextName,\n      key: this.key,\n      value: this.value,\n      operator:\n        ComparisonOperator[\n          this.operator === null || this.operator === undefined\n            ? 0\n            : this.operator\n        ]\n    };\n  }\n}\nexport module ContextFilter {\n  /**\n   * Standard JavaScript object representation for ContextFilter\n   */\n  export interface AsObject {\n    contextName: string;\n    key: string;\n    value: string;\n    operator: ComparisonOperator;\n  }\n\n  /**\n   * Protobuf JSON representation for ContextFilter\n   */\n  export interface AsProtobufJSON {\n    contextName: string;\n    key: string;\n    value: string;\n    operator: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SessionFilter\n */\nexport class SessionFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.SessionFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SessionFilter();\n    SessionFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SessionFilter) {\n    _instance.languageCodes = _instance.languageCodes || [];\n    _instance.matchedIntents = _instance.matchedIntents || [];\n    _instance.matchedEntityTypes = _instance.matchedEntityTypes || [];\n    _instance.minIntentsConfidenceMin = _instance.minIntentsConfidenceMin || 0;\n    _instance.minIntentsConfidenceMax = _instance.minIntentsConfidenceMax || 0;\n    _instance.minEntityTypesConfidenceMin =\n      _instance.minEntityTypesConfidenceMin || 0;\n    _instance.minEntityTypesConfidenceMax =\n      _instance.minEntityTypesConfidenceMax || 0;\n    _instance.earliest = _instance.earliest || 0;\n    _instance.latest = _instance.latest || 0;\n    _instance.minNumberTurns = _instance.minNumberTurns || 0;\n    _instance.maxNumberTurns = _instance.maxNumberTurns || 0;\n    _instance.labels = _instance.labels || [];\n    _instance.userIds = _instance.userIds || [];\n    _instance.intentTags = _instance.intentTags || [];\n    _instance.sessionIds = _instance.sessionIds || [];\n    _instance.inputContexts = _instance.inputContexts || [];\n    _instance.outputContexts = _instance.outputContexts || [];\n    _instance.durationInSMin = _instance.durationInSMin || 0;\n    _instance.durationInSMax = _instance.durationInSMax || 0;\n    _instance.durationInMMin = _instance.durationInMMin || 0;\n    _instance.durationInMMax = _instance.durationInMMax || 0;\n    _instance.durationInMRoundedMin = _instance.durationInMRoundedMin || 0;\n    _instance.durationInMRoundedMax = _instance.durationInMRoundedMax || 0;\n    _instance.durationInterval15sRoundedMin =\n      _instance.durationInterval15sRoundedMin || 0;\n    _instance.durationInterval15sRoundedMax =\n      _instance.durationInterval15sRoundedMax || 0;\n    _instance.durationInterval30sRoundedMin =\n      _instance.durationInterval30sRoundedMin || 0;\n    _instance.durationInterval30sRoundedMax =\n      _instance.durationInterval30sRoundedMax || 0;\n    _instance.durationInterval45sRoundedMin =\n      _instance.durationInterval45sRoundedMin || 0;\n    _instance.durationInterval45sRoundedMax =\n      _instance.durationInterval45sRoundedMax || 0;\n    _instance.startedTimeSlotPerHourMin =\n      _instance.startedTimeSlotPerHourMin || '';\n    _instance.startedTimeSlotPerHourMax =\n      _instance.startedTimeSlotPerHourMax || '';\n    _instance.startedTimeSlotPerQuarterHourMin =\n      _instance.startedTimeSlotPerQuarterHourMin || '';\n    _instance.startedTimeSlotPerQuarterHourMax =\n      _instance.startedTimeSlotPerQuarterHourMax || '';\n    _instance.startedTimeSlotPerHalfHourMin =\n      _instance.startedTimeSlotPerHalfHourMin || '';\n    _instance.startedTimeSlotPerHalfHourMax =\n      _instance.startedTimeSlotPerHalfHourMax || '';\n    _instance.startedTimeSlotPerDayPhaseMin =\n      _instance.startedTimeSlotPerDayPhaseMin || '';\n    _instance.startedTimeSlotPerDayPhaseMax =\n      _instance.startedTimeSlotPerDayPhaseMax || '';\n    _instance.startedTimeSlotPerMinuteMin =\n      _instance.startedTimeSlotPerMinuteMin || '';\n    _instance.startedTimeSlotPerMinuteMax =\n      _instance.startedTimeSlotPerMinuteMax || '';\n    _instance.durationInSRoundedMin = _instance.durationInSRoundedMin || 0;\n    _instance.durationInSRoundedMax = _instance.durationInSRoundedMax || 0;\n    _instance.platforms = _instance.platforms || [];\n    _instance.accountIds = _instance.accountIds || [];\n    _instance.propertyIds = _instance.propertyIds || [];\n    _instance.datastreamIds = _instance.datastreamIds || [];\n    _instance.originIds = _instance.originIds || [];\n    _instance.identifiedUserIds = _instance.identifiedUserIds || [];\n    _instance.durationInterval60sRoundedMin =\n      _instance.durationInterval60sRoundedMin || 0;\n    _instance.durationInterval60sRoundedMax =\n      _instance.durationInterval60sRoundedMax || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SessionFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu015.Intent();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu015.Intent.deserializeBinaryFromReader\n          );\n          (_instance.matchedIntents = _instance.matchedIntents || []).push(\n            messageInitializer2\n          );\n          break;\n        case 3:\n          const messageInitializer3 = new ondewoNlu014.EntityType();\n          _reader.readMessage(\n            messageInitializer3,\n            ondewoNlu014.EntityType.deserializeBinaryFromReader\n          );\n          (_instance.matchedEntityTypes =\n            _instance.matchedEntityTypes || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.minIntentsConfidenceMin = _reader.readFloat();\n          break;\n        case 5:\n          _instance.minIntentsConfidenceMax = _reader.readFloat();\n          break;\n        case 6:\n          _instance.minEntityTypesConfidenceMin = _reader.readFloat();\n          break;\n        case 7:\n          _instance.minEntityTypesConfidenceMax = _reader.readFloat();\n          break;\n        case 8:\n          _instance.earliest = _reader.readDouble();\n          break;\n        case 9:\n          _instance.latest = _reader.readDouble();\n          break;\n        case 10:\n          _instance.minNumberTurns = _reader.readInt32();\n          break;\n        case 11:\n          _instance.maxNumberTurns = _reader.readInt32();\n          break;\n        case 12:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        case 13:\n          (_instance.userIds = _instance.userIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 14:\n          (_instance.intentTags = _instance.intentTags || []).push(\n            _reader.readString()\n          );\n          break;\n        case 15:\n          (_instance.sessionIds = _instance.sessionIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 16:\n          const messageInitializer16 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer16,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.inputContexts = _instance.inputContexts || []).push(\n            messageInitializer16\n          );\n          break;\n        case 17:\n          const messageInitializer17 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer17,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.outputContexts = _instance.outputContexts || []).push(\n            messageInitializer17\n          );\n          break;\n        case 18:\n          _instance.durationInSMin = _reader.readFloat();\n          break;\n        case 19:\n          _instance.durationInSMax = _reader.readFloat();\n          break;\n        case 20:\n          _instance.durationInMMin = _reader.readFloat();\n          break;\n        case 21:\n          _instance.durationInMMax = _reader.readFloat();\n          break;\n        case 22:\n          _instance.durationInMRoundedMin = _reader.readFloat();\n          break;\n        case 23:\n          _instance.durationInMRoundedMax = _reader.readFloat();\n          break;\n        case 24:\n          _instance.durationInterval15sRoundedMin = _reader.readFloat();\n          break;\n        case 25:\n          _instance.durationInterval15sRoundedMax = _reader.readFloat();\n          break;\n        case 26:\n          _instance.durationInterval30sRoundedMin = _reader.readFloat();\n          break;\n        case 27:\n          _instance.durationInterval30sRoundedMax = _reader.readFloat();\n          break;\n        case 28:\n          _instance.durationInterval45sRoundedMin = _reader.readFloat();\n          break;\n        case 29:\n          _instance.durationInterval45sRoundedMax = _reader.readFloat();\n          break;\n        case 30:\n          _instance.startedTimeSlotPerHourMin = _reader.readString();\n          break;\n        case 31:\n          _instance.startedTimeSlotPerHourMax = _reader.readString();\n          break;\n        case 32:\n          _instance.startedTimeSlotPerQuarterHourMin = _reader.readString();\n          break;\n        case 33:\n          _instance.startedTimeSlotPerQuarterHourMax = _reader.readString();\n          break;\n        case 34:\n          _instance.startedTimeSlotPerHalfHourMin = _reader.readString();\n          break;\n        case 35:\n          _instance.startedTimeSlotPerHalfHourMax = _reader.readString();\n          break;\n        case 36:\n          _instance.startedTimeSlotPerDayPhaseMin = _reader.readString();\n          break;\n        case 37:\n          _instance.startedTimeSlotPerDayPhaseMax = _reader.readString();\n          break;\n        case 38:\n          _instance.startedTimeSlotPerMinuteMin = _reader.readString();\n          break;\n        case 39:\n          _instance.startedTimeSlotPerMinuteMax = _reader.readString();\n          break;\n        case 40:\n          _instance.durationInSRoundedMin = _reader.readFloat();\n          break;\n        case 41:\n          _instance.durationInSRoundedMax = _reader.readFloat();\n          break;\n        case 42:\n          _reader.readPackableEnumInto(\n            (_instance.platforms = _instance.platforms || [])\n          );\n          break;\n        case 43:\n          (_instance.accountIds = _instance.accountIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 44:\n          (_instance.propertyIds = _instance.propertyIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 45:\n          (_instance.datastreamIds = _instance.datastreamIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 46:\n          (_instance.originIds = _instance.originIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 47:\n          (_instance.identifiedUserIds =\n            _instance.identifiedUserIds || []).push(_reader.readString());\n          break;\n        case 48:\n          _instance.durationInterval60sRoundedMin = _reader.readFloat();\n          break;\n        case 49:\n          _instance.durationInterval60sRoundedMax = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SessionFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SessionFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(1, _instance.languageCodes);\n    }\n    if (_instance.matchedIntents && _instance.matchedIntents.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.matchedIntents as any,\n        ondewoNlu015.Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.matchedEntityTypes && _instance.matchedEntityTypes.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.matchedEntityTypes as any,\n        ondewoNlu014.EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.minIntentsConfidenceMin) {\n      _writer.writeFloat(4, _instance.minIntentsConfidenceMin);\n    }\n    if (_instance.minIntentsConfidenceMax) {\n      _writer.writeFloat(5, _instance.minIntentsConfidenceMax);\n    }\n    if (_instance.minEntityTypesConfidenceMin) {\n      _writer.writeFloat(6, _instance.minEntityTypesConfidenceMin);\n    }\n    if (_instance.minEntityTypesConfidenceMax) {\n      _writer.writeFloat(7, _instance.minEntityTypesConfidenceMax);\n    }\n    if (_instance.earliest) {\n      _writer.writeDouble(8, _instance.earliest);\n    }\n    if (_instance.latest) {\n      _writer.writeDouble(9, _instance.latest);\n    }\n    if (_instance.minNumberTurns) {\n      _writer.writeInt32(10, _instance.minNumberTurns);\n    }\n    if (_instance.maxNumberTurns) {\n      _writer.writeInt32(11, _instance.maxNumberTurns);\n    }\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(12, _instance.labels);\n    }\n    if (_instance.userIds && _instance.userIds.length) {\n      _writer.writeRepeatedString(13, _instance.userIds);\n    }\n    if (_instance.intentTags && _instance.intentTags.length) {\n      _writer.writeRepeatedString(14, _instance.intentTags);\n    }\n    if (_instance.sessionIds && _instance.sessionIds.length) {\n      _writer.writeRepeatedString(15, _instance.sessionIds);\n    }\n    if (_instance.inputContexts && _instance.inputContexts.length) {\n      _writer.writeRepeatedMessage(\n        16,\n        _instance.inputContexts as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.outputContexts && _instance.outputContexts.length) {\n      _writer.writeRepeatedMessage(\n        17,\n        _instance.outputContexts as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInSMin) {\n      _writer.writeFloat(18, _instance.durationInSMin);\n    }\n    if (_instance.durationInSMax) {\n      _writer.writeFloat(19, _instance.durationInSMax);\n    }\n    if (_instance.durationInMMin) {\n      _writer.writeFloat(20, _instance.durationInMMin);\n    }\n    if (_instance.durationInMMax) {\n      _writer.writeFloat(21, _instance.durationInMMax);\n    }\n    if (_instance.durationInMRoundedMin) {\n      _writer.writeFloat(22, _instance.durationInMRoundedMin);\n    }\n    if (_instance.durationInMRoundedMax) {\n      _writer.writeFloat(23, _instance.durationInMRoundedMax);\n    }\n    if (_instance.durationInterval15sRoundedMin) {\n      _writer.writeFloat(24, _instance.durationInterval15sRoundedMin);\n    }\n    if (_instance.durationInterval15sRoundedMax) {\n      _writer.writeFloat(25, _instance.durationInterval15sRoundedMax);\n    }\n    if (_instance.durationInterval30sRoundedMin) {\n      _writer.writeFloat(26, _instance.durationInterval30sRoundedMin);\n    }\n    if (_instance.durationInterval30sRoundedMax) {\n      _writer.writeFloat(27, _instance.durationInterval30sRoundedMax);\n    }\n    if (_instance.durationInterval45sRoundedMin) {\n      _writer.writeFloat(28, _instance.durationInterval45sRoundedMin);\n    }\n    if (_instance.durationInterval45sRoundedMax) {\n      _writer.writeFloat(29, _instance.durationInterval45sRoundedMax);\n    }\n    if (_instance.startedTimeSlotPerHourMin) {\n      _writer.writeString(30, _instance.startedTimeSlotPerHourMin);\n    }\n    if (_instance.startedTimeSlotPerHourMax) {\n      _writer.writeString(31, _instance.startedTimeSlotPerHourMax);\n    }\n    if (_instance.startedTimeSlotPerQuarterHourMin) {\n      _writer.writeString(32, _instance.startedTimeSlotPerQuarterHourMin);\n    }\n    if (_instance.startedTimeSlotPerQuarterHourMax) {\n      _writer.writeString(33, _instance.startedTimeSlotPerQuarterHourMax);\n    }\n    if (_instance.startedTimeSlotPerHalfHourMin) {\n      _writer.writeString(34, _instance.startedTimeSlotPerHalfHourMin);\n    }\n    if (_instance.startedTimeSlotPerHalfHourMax) {\n      _writer.writeString(35, _instance.startedTimeSlotPerHalfHourMax);\n    }\n    if (_instance.startedTimeSlotPerDayPhaseMin) {\n      _writer.writeString(36, _instance.startedTimeSlotPerDayPhaseMin);\n    }\n    if (_instance.startedTimeSlotPerDayPhaseMax) {\n      _writer.writeString(37, _instance.startedTimeSlotPerDayPhaseMax);\n    }\n    if (_instance.startedTimeSlotPerMinuteMin) {\n      _writer.writeString(38, _instance.startedTimeSlotPerMinuteMin);\n    }\n    if (_instance.startedTimeSlotPerMinuteMax) {\n      _writer.writeString(39, _instance.startedTimeSlotPerMinuteMax);\n    }\n    if (_instance.durationInSRoundedMin) {\n      _writer.writeFloat(40, _instance.durationInSRoundedMin);\n    }\n    if (_instance.durationInSRoundedMax) {\n      _writer.writeFloat(41, _instance.durationInSRoundedMax);\n    }\n    if (_instance.platforms && _instance.platforms.length) {\n      _writer.writePackedEnum(42, _instance.platforms);\n    }\n    if (_instance.accountIds && _instance.accountIds.length) {\n      _writer.writeRepeatedString(43, _instance.accountIds);\n    }\n    if (_instance.propertyIds && _instance.propertyIds.length) {\n      _writer.writeRepeatedString(44, _instance.propertyIds);\n    }\n    if (_instance.datastreamIds && _instance.datastreamIds.length) {\n      _writer.writeRepeatedString(45, _instance.datastreamIds);\n    }\n    if (_instance.originIds && _instance.originIds.length) {\n      _writer.writeRepeatedString(46, _instance.originIds);\n    }\n    if (_instance.identifiedUserIds && _instance.identifiedUserIds.length) {\n      _writer.writeRepeatedString(47, _instance.identifiedUserIds);\n    }\n    if (_instance.durationInterval60sRoundedMin) {\n      _writer.writeFloat(48, _instance.durationInterval60sRoundedMin);\n    }\n    if (_instance.durationInterval60sRoundedMax) {\n      _writer.writeFloat(49, _instance.durationInterval60sRoundedMax);\n    }\n  }\n\n  private _languageCodes: string[];\n  private _matchedIntents?: ondewoNlu015.Intent[];\n  private _matchedEntityTypes?: ondewoNlu014.EntityType[];\n  private _minIntentsConfidenceMin: number;\n  private _minIntentsConfidenceMax: number;\n  private _minEntityTypesConfidenceMin: number;\n  private _minEntityTypesConfidenceMax: number;\n  private _earliest: number;\n  private _latest: number;\n  private _minNumberTurns: number;\n  private _maxNumberTurns: number;\n  private _labels: string[];\n  private _userIds: string[];\n  private _intentTags: string[];\n  private _sessionIds: string[];\n  private _inputContexts?: ondewoNlu010.Context[];\n  private _outputContexts?: ondewoNlu010.Context[];\n  private _durationInSMin: number;\n  private _durationInSMax: number;\n  private _durationInMMin: number;\n  private _durationInMMax: number;\n  private _durationInMRoundedMin: number;\n  private _durationInMRoundedMax: number;\n  private _durationInterval15sRoundedMin: number;\n  private _durationInterval15sRoundedMax: number;\n  private _durationInterval30sRoundedMin: number;\n  private _durationInterval30sRoundedMax: number;\n  private _durationInterval45sRoundedMin: number;\n  private _durationInterval45sRoundedMax: number;\n  private _startedTimeSlotPerHourMin: string;\n  private _startedTimeSlotPerHourMax: string;\n  private _startedTimeSlotPerQuarterHourMin: string;\n  private _startedTimeSlotPerQuarterHourMax: string;\n  private _startedTimeSlotPerHalfHourMin: string;\n  private _startedTimeSlotPerHalfHourMax: string;\n  private _startedTimeSlotPerDayPhaseMin: string;\n  private _startedTimeSlotPerDayPhaseMax: string;\n  private _startedTimeSlotPerMinuteMin: string;\n  private _startedTimeSlotPerMinuteMax: string;\n  private _durationInSRoundedMin: number;\n  private _durationInSRoundedMax: number;\n  private _platforms: ondewoNlu015.Intent.Message.Platform[];\n  private _accountIds: string[];\n  private _propertyIds: string[];\n  private _datastreamIds: string[];\n  private _originIds: string[];\n  private _identifiedUserIds: string[];\n  private _durationInterval60sRoundedMin: number;\n  private _durationInterval60sRoundedMax: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SessionFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SessionFilter.AsObject>) {\n    _value = _value || {};\n    this.languageCodes = (_value.languageCodes || []).slice();\n    this.matchedIntents = (_value.matchedIntents || []).map(\n      m => new ondewoNlu015.Intent(m)\n    );\n    this.matchedEntityTypes = (_value.matchedEntityTypes || []).map(\n      m => new ondewoNlu014.EntityType(m)\n    );\n    this.minIntentsConfidenceMin = _value.minIntentsConfidenceMin;\n    this.minIntentsConfidenceMax = _value.minIntentsConfidenceMax;\n    this.minEntityTypesConfidenceMin = _value.minEntityTypesConfidenceMin;\n    this.minEntityTypesConfidenceMax = _value.minEntityTypesConfidenceMax;\n    this.earliest = _value.earliest;\n    this.latest = _value.latest;\n    this.minNumberTurns = _value.minNumberTurns;\n    this.maxNumberTurns = _value.maxNumberTurns;\n    this.labels = (_value.labels || []).slice();\n    this.userIds = (_value.userIds || []).slice();\n    this.intentTags = (_value.intentTags || []).slice();\n    this.sessionIds = (_value.sessionIds || []).slice();\n    this.inputContexts = (_value.inputContexts || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    this.outputContexts = (_value.outputContexts || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    this.durationInSMin = _value.durationInSMin;\n    this.durationInSMax = _value.durationInSMax;\n    this.durationInMMin = _value.durationInMMin;\n    this.durationInMMax = _value.durationInMMax;\n    this.durationInMRoundedMin = _value.durationInMRoundedMin;\n    this.durationInMRoundedMax = _value.durationInMRoundedMax;\n    this.durationInterval15sRoundedMin = _value.durationInterval15sRoundedMin;\n    this.durationInterval15sRoundedMax = _value.durationInterval15sRoundedMax;\n    this.durationInterval30sRoundedMin = _value.durationInterval30sRoundedMin;\n    this.durationInterval30sRoundedMax = _value.durationInterval30sRoundedMax;\n    this.durationInterval45sRoundedMin = _value.durationInterval45sRoundedMin;\n    this.durationInterval45sRoundedMax = _value.durationInterval45sRoundedMax;\n    this.startedTimeSlotPerHourMin = _value.startedTimeSlotPerHourMin;\n    this.startedTimeSlotPerHourMax = _value.startedTimeSlotPerHourMax;\n    this.startedTimeSlotPerQuarterHourMin =\n      _value.startedTimeSlotPerQuarterHourMin;\n    this.startedTimeSlotPerQuarterHourMax =\n      _value.startedTimeSlotPerQuarterHourMax;\n    this.startedTimeSlotPerHalfHourMin = _value.startedTimeSlotPerHalfHourMin;\n    this.startedTimeSlotPerHalfHourMax = _value.startedTimeSlotPerHalfHourMax;\n    this.startedTimeSlotPerDayPhaseMin = _value.startedTimeSlotPerDayPhaseMin;\n    this.startedTimeSlotPerDayPhaseMax = _value.startedTimeSlotPerDayPhaseMax;\n    this.startedTimeSlotPerMinuteMin = _value.startedTimeSlotPerMinuteMin;\n    this.startedTimeSlotPerMinuteMax = _value.startedTimeSlotPerMinuteMax;\n    this.durationInSRoundedMin = _value.durationInSRoundedMin;\n    this.durationInSRoundedMax = _value.durationInSRoundedMax;\n    this.platforms = (_value.platforms || []).slice();\n    this.accountIds = (_value.accountIds || []).slice();\n    this.propertyIds = (_value.propertyIds || []).slice();\n    this.datastreamIds = (_value.datastreamIds || []).slice();\n    this.originIds = (_value.originIds || []).slice();\n    this.identifiedUserIds = (_value.identifiedUserIds || []).slice();\n    this.durationInterval60sRoundedMin = _value.durationInterval60sRoundedMin;\n    this.durationInterval60sRoundedMax = _value.durationInterval60sRoundedMax;\n    SessionFilter.refineValues(this);\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n  get matchedIntents(): ondewoNlu015.Intent[] | undefined {\n    return this._matchedIntents;\n  }\n  set matchedIntents(value: ondewoNlu015.Intent[] | undefined) {\n    this._matchedIntents = value;\n  }\n  get matchedEntityTypes(): ondewoNlu014.EntityType[] | undefined {\n    return this._matchedEntityTypes;\n  }\n  set matchedEntityTypes(value: ondewoNlu014.EntityType[] | undefined) {\n    this._matchedEntityTypes = value;\n  }\n  get minIntentsConfidenceMin(): number {\n    return this._minIntentsConfidenceMin;\n  }\n  set minIntentsConfidenceMin(value: number) {\n    this._minIntentsConfidenceMin = value;\n  }\n  get minIntentsConfidenceMax(): number {\n    return this._minIntentsConfidenceMax;\n  }\n  set minIntentsConfidenceMax(value: number) {\n    this._minIntentsConfidenceMax = value;\n  }\n  get minEntityTypesConfidenceMin(): number {\n    return this._minEntityTypesConfidenceMin;\n  }\n  set minEntityTypesConfidenceMin(value: number) {\n    this._minEntityTypesConfidenceMin = value;\n  }\n  get minEntityTypesConfidenceMax(): number {\n    return this._minEntityTypesConfidenceMax;\n  }\n  set minEntityTypesConfidenceMax(value: number) {\n    this._minEntityTypesConfidenceMax = value;\n  }\n  get earliest(): number {\n    return this._earliest;\n  }\n  set earliest(value: number) {\n    this._earliest = value;\n  }\n  get latest(): number {\n    return this._latest;\n  }\n  set latest(value: number) {\n    this._latest = value;\n  }\n  get minNumberTurns(): number {\n    return this._minNumberTurns;\n  }\n  set minNumberTurns(value: number) {\n    this._minNumberTurns = value;\n  }\n  get maxNumberTurns(): number {\n    return this._maxNumberTurns;\n  }\n  set maxNumberTurns(value: number) {\n    this._maxNumberTurns = value;\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n  get userIds(): string[] {\n    return this._userIds;\n  }\n  set userIds(value: string[]) {\n    this._userIds = value;\n  }\n  get intentTags(): string[] {\n    return this._intentTags;\n  }\n  set intentTags(value: string[]) {\n    this._intentTags = value;\n  }\n  get sessionIds(): string[] {\n    return this._sessionIds;\n  }\n  set sessionIds(value: string[]) {\n    this._sessionIds = value;\n  }\n  get inputContexts(): ondewoNlu010.Context[] | undefined {\n    return this._inputContexts;\n  }\n  set inputContexts(value: ondewoNlu010.Context[] | undefined) {\n    this._inputContexts = value;\n  }\n  get outputContexts(): ondewoNlu010.Context[] | undefined {\n    return this._outputContexts;\n  }\n  set outputContexts(value: ondewoNlu010.Context[] | undefined) {\n    this._outputContexts = value;\n  }\n  get durationInSMin(): number {\n    return this._durationInSMin;\n  }\n  set durationInSMin(value: number) {\n    this._durationInSMin = value;\n  }\n  get durationInSMax(): number {\n    return this._durationInSMax;\n  }\n  set durationInSMax(value: number) {\n    this._durationInSMax = value;\n  }\n  get durationInMMin(): number {\n    return this._durationInMMin;\n  }\n  set durationInMMin(value: number) {\n    this._durationInMMin = value;\n  }\n  get durationInMMax(): number {\n    return this._durationInMMax;\n  }\n  set durationInMMax(value: number) {\n    this._durationInMMax = value;\n  }\n  get durationInMRoundedMin(): number {\n    return this._durationInMRoundedMin;\n  }\n  set durationInMRoundedMin(value: number) {\n    this._durationInMRoundedMin = value;\n  }\n  get durationInMRoundedMax(): number {\n    return this._durationInMRoundedMax;\n  }\n  set durationInMRoundedMax(value: number) {\n    this._durationInMRoundedMax = value;\n  }\n  get durationInterval15sRoundedMin(): number {\n    return this._durationInterval15sRoundedMin;\n  }\n  set durationInterval15sRoundedMin(value: number) {\n    this._durationInterval15sRoundedMin = value;\n  }\n  get durationInterval15sRoundedMax(): number {\n    return this._durationInterval15sRoundedMax;\n  }\n  set durationInterval15sRoundedMax(value: number) {\n    this._durationInterval15sRoundedMax = value;\n  }\n  get durationInterval30sRoundedMin(): number {\n    return this._durationInterval30sRoundedMin;\n  }\n  set durationInterval30sRoundedMin(value: number) {\n    this._durationInterval30sRoundedMin = value;\n  }\n  get durationInterval30sRoundedMax(): number {\n    return this._durationInterval30sRoundedMax;\n  }\n  set durationInterval30sRoundedMax(value: number) {\n    this._durationInterval30sRoundedMax = value;\n  }\n  get durationInterval45sRoundedMin(): number {\n    return this._durationInterval45sRoundedMin;\n  }\n  set durationInterval45sRoundedMin(value: number) {\n    this._durationInterval45sRoundedMin = value;\n  }\n  get durationInterval45sRoundedMax(): number {\n    return this._durationInterval45sRoundedMax;\n  }\n  set durationInterval45sRoundedMax(value: number) {\n    this._durationInterval45sRoundedMax = value;\n  }\n  get startedTimeSlotPerHourMin(): string {\n    return this._startedTimeSlotPerHourMin;\n  }\n  set startedTimeSlotPerHourMin(value: string) {\n    this._startedTimeSlotPerHourMin = value;\n  }\n  get startedTimeSlotPerHourMax(): string {\n    return this._startedTimeSlotPerHourMax;\n  }\n  set startedTimeSlotPerHourMax(value: string) {\n    this._startedTimeSlotPerHourMax = value;\n  }\n  get startedTimeSlotPerQuarterHourMin(): string {\n    return this._startedTimeSlotPerQuarterHourMin;\n  }\n  set startedTimeSlotPerQuarterHourMin(value: string) {\n    this._startedTimeSlotPerQuarterHourMin = value;\n  }\n  get startedTimeSlotPerQuarterHourMax(): string {\n    return this._startedTimeSlotPerQuarterHourMax;\n  }\n  set startedTimeSlotPerQuarterHourMax(value: string) {\n    this._startedTimeSlotPerQuarterHourMax = value;\n  }\n  get startedTimeSlotPerHalfHourMin(): string {\n    return this._startedTimeSlotPerHalfHourMin;\n  }\n  set startedTimeSlotPerHalfHourMin(value: string) {\n    this._startedTimeSlotPerHalfHourMin = value;\n  }\n  get startedTimeSlotPerHalfHourMax(): string {\n    return this._startedTimeSlotPerHalfHourMax;\n  }\n  set startedTimeSlotPerHalfHourMax(value: string) {\n    this._startedTimeSlotPerHalfHourMax = value;\n  }\n  get startedTimeSlotPerDayPhaseMin(): string {\n    return this._startedTimeSlotPerDayPhaseMin;\n  }\n  set startedTimeSlotPerDayPhaseMin(value: string) {\n    this._startedTimeSlotPerDayPhaseMin = value;\n  }\n  get startedTimeSlotPerDayPhaseMax(): string {\n    return this._startedTimeSlotPerDayPhaseMax;\n  }\n  set startedTimeSlotPerDayPhaseMax(value: string) {\n    this._startedTimeSlotPerDayPhaseMax = value;\n  }\n  get startedTimeSlotPerMinuteMin(): string {\n    return this._startedTimeSlotPerMinuteMin;\n  }\n  set startedTimeSlotPerMinuteMin(value: string) {\n    this._startedTimeSlotPerMinuteMin = value;\n  }\n  get startedTimeSlotPerMinuteMax(): string {\n    return this._startedTimeSlotPerMinuteMax;\n  }\n  set startedTimeSlotPerMinuteMax(value: string) {\n    this._startedTimeSlotPerMinuteMax = value;\n  }\n  get durationInSRoundedMin(): number {\n    return this._durationInSRoundedMin;\n  }\n  set durationInSRoundedMin(value: number) {\n    this._durationInSRoundedMin = value;\n  }\n  get durationInSRoundedMax(): number {\n    return this._durationInSRoundedMax;\n  }\n  set durationInSRoundedMax(value: number) {\n    this._durationInSRoundedMax = value;\n  }\n  get platforms(): ondewoNlu015.Intent.Message.Platform[] {\n    return this._platforms;\n  }\n  set platforms(value: ondewoNlu015.Intent.Message.Platform[]) {\n    this._platforms = value;\n  }\n  get accountIds(): string[] {\n    return this._accountIds;\n  }\n  set accountIds(value: string[]) {\n    this._accountIds = value;\n  }\n  get propertyIds(): string[] {\n    return this._propertyIds;\n  }\n  set propertyIds(value: string[]) {\n    this._propertyIds = value;\n  }\n  get datastreamIds(): string[] {\n    return this._datastreamIds;\n  }\n  set datastreamIds(value: string[]) {\n    this._datastreamIds = value;\n  }\n  get originIds(): string[] {\n    return this._originIds;\n  }\n  set originIds(value: string[]) {\n    this._originIds = value;\n  }\n  get identifiedUserIds(): string[] {\n    return this._identifiedUserIds;\n  }\n  set identifiedUserIds(value: string[]) {\n    this._identifiedUserIds = value;\n  }\n  get durationInterval60sRoundedMin(): number {\n    return this._durationInterval60sRoundedMin;\n  }\n  set durationInterval60sRoundedMin(value: number) {\n    this._durationInterval60sRoundedMin = value;\n  }\n  get durationInterval60sRoundedMax(): number {\n    return this._durationInterval60sRoundedMax;\n  }\n  set durationInterval60sRoundedMax(value: number) {\n    this._durationInterval60sRoundedMax = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SessionFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SessionFilter.AsObject {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      matchedIntents: (this.matchedIntents || []).map(m => m.toObject()),\n      matchedEntityTypes: (this.matchedEntityTypes || []).map(m =>\n        m.toObject()\n      ),\n      minIntentsConfidenceMin: this.minIntentsConfidenceMin,\n      minIntentsConfidenceMax: this.minIntentsConfidenceMax,\n      minEntityTypesConfidenceMin: this.minEntityTypesConfidenceMin,\n      minEntityTypesConfidenceMax: this.minEntityTypesConfidenceMax,\n      earliest: this.earliest,\n      latest: this.latest,\n      minNumberTurns: this.minNumberTurns,\n      maxNumberTurns: this.maxNumberTurns,\n      labels: (this.labels || []).slice(),\n      userIds: (this.userIds || []).slice(),\n      intentTags: (this.intentTags || []).slice(),\n      sessionIds: (this.sessionIds || []).slice(),\n      inputContexts: (this.inputContexts || []).map(m => m.toObject()),\n      outputContexts: (this.outputContexts || []).map(m => m.toObject()),\n      durationInSMin: this.durationInSMin,\n      durationInSMax: this.durationInSMax,\n      durationInMMin: this.durationInMMin,\n      durationInMMax: this.durationInMMax,\n      durationInMRoundedMin: this.durationInMRoundedMin,\n      durationInMRoundedMax: this.durationInMRoundedMax,\n      durationInterval15sRoundedMin: this.durationInterval15sRoundedMin,\n      durationInterval15sRoundedMax: this.durationInterval15sRoundedMax,\n      durationInterval30sRoundedMin: this.durationInterval30sRoundedMin,\n      durationInterval30sRoundedMax: this.durationInterval30sRoundedMax,\n      durationInterval45sRoundedMin: this.durationInterval45sRoundedMin,\n      durationInterval45sRoundedMax: this.durationInterval45sRoundedMax,\n      startedTimeSlotPerHourMin: this.startedTimeSlotPerHourMin,\n      startedTimeSlotPerHourMax: this.startedTimeSlotPerHourMax,\n      startedTimeSlotPerQuarterHourMin: this.startedTimeSlotPerQuarterHourMin,\n      startedTimeSlotPerQuarterHourMax: this.startedTimeSlotPerQuarterHourMax,\n      startedTimeSlotPerHalfHourMin: this.startedTimeSlotPerHalfHourMin,\n      startedTimeSlotPerHalfHourMax: this.startedTimeSlotPerHalfHourMax,\n      startedTimeSlotPerDayPhaseMin: this.startedTimeSlotPerDayPhaseMin,\n      startedTimeSlotPerDayPhaseMax: this.startedTimeSlotPerDayPhaseMax,\n      startedTimeSlotPerMinuteMin: this.startedTimeSlotPerMinuteMin,\n      startedTimeSlotPerMinuteMax: this.startedTimeSlotPerMinuteMax,\n      durationInSRoundedMin: this.durationInSRoundedMin,\n      durationInSRoundedMax: this.durationInSRoundedMax,\n      platforms: (this.platforms || []).slice(),\n      accountIds: (this.accountIds || []).slice(),\n      propertyIds: (this.propertyIds || []).slice(),\n      datastreamIds: (this.datastreamIds || []).slice(),\n      originIds: (this.originIds || []).slice(),\n      identifiedUserIds: (this.identifiedUserIds || []).slice(),\n      durationInterval60sRoundedMin: this.durationInterval60sRoundedMin,\n      durationInterval60sRoundedMax: this.durationInterval60sRoundedMax\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SessionFilter.AsProtobufJSON {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      matchedIntents: (this.matchedIntents || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      matchedEntityTypes: (this.matchedEntityTypes || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      minIntentsConfidenceMin: this.minIntentsConfidenceMin,\n      minIntentsConfidenceMax: this.minIntentsConfidenceMax,\n      minEntityTypesConfidenceMin: this.minEntityTypesConfidenceMin,\n      minEntityTypesConfidenceMax: this.minEntityTypesConfidenceMax,\n      earliest: this.earliest,\n      latest: this.latest,\n      minNumberTurns: this.minNumberTurns,\n      maxNumberTurns: this.maxNumberTurns,\n      labels: (this.labels || []).slice(),\n      userIds: (this.userIds || []).slice(),\n      intentTags: (this.intentTags || []).slice(),\n      sessionIds: (this.sessionIds || []).slice(),\n      inputContexts: (this.inputContexts || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      outputContexts: (this.outputContexts || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      durationInSMin: this.durationInSMin,\n      durationInSMax: this.durationInSMax,\n      durationInMMin: this.durationInMMin,\n      durationInMMax: this.durationInMMax,\n      durationInMRoundedMin: this.durationInMRoundedMin,\n      durationInMRoundedMax: this.durationInMRoundedMax,\n      durationInterval15sRoundedMin: this.durationInterval15sRoundedMin,\n      durationInterval15sRoundedMax: this.durationInterval15sRoundedMax,\n      durationInterval30sRoundedMin: this.durationInterval30sRoundedMin,\n      durationInterval30sRoundedMax: this.durationInterval30sRoundedMax,\n      durationInterval45sRoundedMin: this.durationInterval45sRoundedMin,\n      durationInterval45sRoundedMax: this.durationInterval45sRoundedMax,\n      startedTimeSlotPerHourMin: this.startedTimeSlotPerHourMin,\n      startedTimeSlotPerHourMax: this.startedTimeSlotPerHourMax,\n      startedTimeSlotPerQuarterHourMin: this.startedTimeSlotPerQuarterHourMin,\n      startedTimeSlotPerQuarterHourMax: this.startedTimeSlotPerQuarterHourMax,\n      startedTimeSlotPerHalfHourMin: this.startedTimeSlotPerHalfHourMin,\n      startedTimeSlotPerHalfHourMax: this.startedTimeSlotPerHalfHourMax,\n      startedTimeSlotPerDayPhaseMin: this.startedTimeSlotPerDayPhaseMin,\n      startedTimeSlotPerDayPhaseMax: this.startedTimeSlotPerDayPhaseMax,\n      startedTimeSlotPerMinuteMin: this.startedTimeSlotPerMinuteMin,\n      startedTimeSlotPerMinuteMax: this.startedTimeSlotPerMinuteMax,\n      durationInSRoundedMin: this.durationInSRoundedMin,\n      durationInSRoundedMax: this.durationInSRoundedMax,\n      platforms: (this.platforms || []).map(\n        v => ondewoNlu015.Intent.Message.Platform[v]\n      ),\n      accountIds: (this.accountIds || []).slice(),\n      propertyIds: (this.propertyIds || []).slice(),\n      datastreamIds: (this.datastreamIds || []).slice(),\n      originIds: (this.originIds || []).slice(),\n      identifiedUserIds: (this.identifiedUserIds || []).slice(),\n      durationInterval60sRoundedMin: this.durationInterval60sRoundedMin,\n      durationInterval60sRoundedMax: this.durationInterval60sRoundedMax\n    };\n  }\n}\nexport module SessionFilter {\n  /**\n   * Standard JavaScript object representation for SessionFilter\n   */\n  export interface AsObject {\n    languageCodes: string[];\n    matchedIntents?: ondewoNlu015.Intent.AsObject[];\n    matchedEntityTypes?: ondewoNlu014.EntityType.AsObject[];\n    minIntentsConfidenceMin: number;\n    minIntentsConfidenceMax: number;\n    minEntityTypesConfidenceMin: number;\n    minEntityTypesConfidenceMax: number;\n    earliest: number;\n    latest: number;\n    minNumberTurns: number;\n    maxNumberTurns: number;\n    labels: string[];\n    userIds: string[];\n    intentTags: string[];\n    sessionIds: string[];\n    inputContexts?: ondewoNlu010.Context.AsObject[];\n    outputContexts?: ondewoNlu010.Context.AsObject[];\n    durationInSMin: number;\n    durationInSMax: number;\n    durationInMMin: number;\n    durationInMMax: number;\n    durationInMRoundedMin: number;\n    durationInMRoundedMax: number;\n    durationInterval15sRoundedMin: number;\n    durationInterval15sRoundedMax: number;\n    durationInterval30sRoundedMin: number;\n    durationInterval30sRoundedMax: number;\n    durationInterval45sRoundedMin: number;\n    durationInterval45sRoundedMax: number;\n    startedTimeSlotPerHourMin: string;\n    startedTimeSlotPerHourMax: string;\n    startedTimeSlotPerQuarterHourMin: string;\n    startedTimeSlotPerQuarterHourMax: string;\n    startedTimeSlotPerHalfHourMin: string;\n    startedTimeSlotPerHalfHourMax: string;\n    startedTimeSlotPerDayPhaseMin: string;\n    startedTimeSlotPerDayPhaseMax: string;\n    startedTimeSlotPerMinuteMin: string;\n    startedTimeSlotPerMinuteMax: string;\n    durationInSRoundedMin: number;\n    durationInSRoundedMax: number;\n    platforms: ondewoNlu015.Intent.Message.Platform[];\n    accountIds: string[];\n    propertyIds: string[];\n    datastreamIds: string[];\n    originIds: string[];\n    identifiedUserIds: string[];\n    durationInterval60sRoundedMin: number;\n    durationInterval60sRoundedMax: number;\n  }\n\n  /**\n   * Protobuf JSON representation for SessionFilter\n   */\n  export interface AsProtobufJSON {\n    languageCodes: string[];\n    matchedIntents: ondewoNlu015.Intent.AsProtobufJSON[] | null;\n    matchedEntityTypes: ondewoNlu014.EntityType.AsProtobufJSON[] | null;\n    minIntentsConfidenceMin: number;\n    minIntentsConfidenceMax: number;\n    minEntityTypesConfidenceMin: number;\n    minEntityTypesConfidenceMax: number;\n    earliest: number;\n    latest: number;\n    minNumberTurns: number;\n    maxNumberTurns: number;\n    labels: string[];\n    userIds: string[];\n    intentTags: string[];\n    sessionIds: string[];\n    inputContexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    outputContexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    durationInSMin: number;\n    durationInSMax: number;\n    durationInMMin: number;\n    durationInMMax: number;\n    durationInMRoundedMin: number;\n    durationInMRoundedMax: number;\n    durationInterval15sRoundedMin: number;\n    durationInterval15sRoundedMax: number;\n    durationInterval30sRoundedMin: number;\n    durationInterval30sRoundedMax: number;\n    durationInterval45sRoundedMin: number;\n    durationInterval45sRoundedMax: number;\n    startedTimeSlotPerHourMin: string;\n    startedTimeSlotPerHourMax: string;\n    startedTimeSlotPerQuarterHourMin: string;\n    startedTimeSlotPerQuarterHourMax: string;\n    startedTimeSlotPerHalfHourMin: string;\n    startedTimeSlotPerHalfHourMax: string;\n    startedTimeSlotPerDayPhaseMin: string;\n    startedTimeSlotPerDayPhaseMax: string;\n    startedTimeSlotPerMinuteMin: string;\n    startedTimeSlotPerMinuteMax: string;\n    durationInSRoundedMin: number;\n    durationInSRoundedMax: number;\n    platforms: string[];\n    accountIds: string[];\n    propertyIds: string[];\n    datastreamIds: string[];\n    originIds: string[];\n    identifiedUserIds: string[];\n    durationInterval60sRoundedMin: number;\n    durationInterval60sRoundedMax: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SessionInfo\n */\nexport class SessionInfo implements GrpcMessage {\n  static id = 'ondewo.nlu.SessionInfo';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SessionInfo();\n    SessionInfo.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SessionInfo) {\n    _instance.languageCodes = _instance.languageCodes || [];\n    _instance.matchedIntents = _instance.matchedIntents || [];\n    _instance.matchedEntityTypes = _instance.matchedEntityTypes || [];\n    _instance.minIntentsConfidence = _instance.minIntentsConfidence || 0;\n    _instance.minEntityTypesConfidence =\n      _instance.minEntityTypesConfidence || 0;\n    _instance.earliest = _instance.earliest || 0;\n    _instance.latest = _instance.latest || 0;\n    _instance.numberTurns = _instance.numberTurns || 0;\n    _instance.labels = _instance.labels || [];\n    _instance.userIds = _instance.userIds || [];\n    _instance.intentTags = _instance.intentTags || [];\n    _instance.inputContextSteps = _instance.inputContextSteps || [];\n    _instance.outputContextSteps = _instance.outputContextSteps || [];\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.durationInM = _instance.durationInM || 0;\n    _instance.durationInMRounded = _instance.durationInMRounded || 0;\n    _instance.durationInterval15sRounded =\n      _instance.durationInterval15sRounded || 0;\n    _instance.durationInterval30sRounded =\n      _instance.durationInterval30sRounded || 0;\n    _instance.durationInterval45sRounded =\n      _instance.durationInterval45sRounded || 0;\n    _instance.startedTimeSlotPerHour = _instance.startedTimeSlotPerHour || '';\n    _instance.startedTimeSlotPerQuarterHour =\n      _instance.startedTimeSlotPerQuarterHour || '';\n    _instance.startedTimeSlotPerHalfHour =\n      _instance.startedTimeSlotPerHalfHour || '';\n    _instance.startedTimeSlotPerDayPhase =\n      _instance.startedTimeSlotPerDayPhase || '';\n    _instance.startedTimeSlotPerMinute =\n      _instance.startedTimeSlotPerMinute || '';\n    _instance.durationInSRounded = _instance.durationInSRounded || 0;\n    _instance.platforms = _instance.platforms || [];\n    _instance.accountIds = _instance.accountIds || [];\n    _instance.propertyIds = _instance.propertyIds || [];\n    _instance.datastreamIds = _instance.datastreamIds || [];\n    _instance.originIds = _instance.originIds || [];\n    _instance.identifiedUserIds = _instance.identifiedUserIds || [];\n    _instance.durationInterval60sRounded =\n      _instance.durationInterval60sRounded || 0;\n    _instance.parentComment = _instance.parentComment || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SessionInfo,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu015.Intent();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu015.Intent.deserializeBinaryFromReader\n          );\n          (_instance.matchedIntents = _instance.matchedIntents || []).push(\n            messageInitializer2\n          );\n          break;\n        case 3:\n          const messageInitializer3 = new ondewoNlu014.EntityType();\n          _reader.readMessage(\n            messageInitializer3,\n            ondewoNlu014.EntityType.deserializeBinaryFromReader\n          );\n          (_instance.matchedEntityTypes =\n            _instance.matchedEntityTypes || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.minIntentsConfidence = _reader.readFloat();\n          break;\n        case 5:\n          _instance.minEntityTypesConfidence = _reader.readFloat();\n          break;\n        case 6:\n          _instance.earliest = _reader.readDouble();\n          break;\n        case 7:\n          _instance.latest = _reader.readDouble();\n          break;\n        case 8:\n          _instance.numberTurns = _reader.readInt32();\n          break;\n        case 9:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        case 10:\n          (_instance.userIds = _instance.userIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 11:\n          (_instance.intentTags = _instance.intentTags || []).push(\n            _reader.readString()\n          );\n          break;\n        case 12:\n          const messageInitializer12 = new SessionInfo.ContextSteps();\n          _reader.readMessage(\n            messageInitializer12,\n            SessionInfo.ContextSteps.deserializeBinaryFromReader\n          );\n          (_instance.inputContextSteps =\n            _instance.inputContextSteps || []).push(messageInitializer12);\n          break;\n        case 13:\n          const messageInitializer13 = new SessionInfo.ContextSteps();\n          _reader.readMessage(\n            messageInitializer13,\n            SessionInfo.ContextSteps.deserializeBinaryFromReader\n          );\n          (_instance.outputContextSteps =\n            _instance.outputContextSteps || []).push(messageInitializer13);\n          break;\n        case 14:\n          _instance.durationInS = _reader.readFloat();\n          break;\n        case 15:\n          _instance.durationInM = _reader.readFloat();\n          break;\n        case 16:\n          _instance.durationInMRounded = _reader.readFloat();\n          break;\n        case 17:\n          _instance.durationInterval15sRounded = _reader.readFloat();\n          break;\n        case 18:\n          _instance.durationInterval30sRounded = _reader.readFloat();\n          break;\n        case 19:\n          _instance.durationInterval45sRounded = _reader.readFloat();\n          break;\n        case 20:\n          _instance.startedTimeSlotPerHour = _reader.readString();\n          break;\n        case 21:\n          _instance.startedTimeSlotPerQuarterHour = _reader.readString();\n          break;\n        case 22:\n          _instance.startedTimeSlotPerHalfHour = _reader.readString();\n          break;\n        case 23:\n          _instance.startedTimeSlotPerDayPhase = _reader.readString();\n          break;\n        case 24:\n          _instance.startedTimeSlotPerMinute = _reader.readString();\n          break;\n        case 25:\n          _instance.durationInSRounded = _reader.readFloat();\n          break;\n        case 26:\n          _reader.readPackableEnumInto(\n            (_instance.platforms = _instance.platforms || [])\n          );\n          break;\n        case 27:\n          (_instance.accountIds = _instance.accountIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 28:\n          (_instance.propertyIds = _instance.propertyIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 29:\n          (_instance.datastreamIds = _instance.datastreamIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 30:\n          (_instance.originIds = _instance.originIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 31:\n          (_instance.identifiedUserIds =\n            _instance.identifiedUserIds || []).push(_reader.readString());\n          break;\n        case 32:\n          _instance.durationInterval60sRounded = _reader.readFloat();\n          break;\n        case 33:\n          const messageInitializer33 = new ondewoNlu006.Comment();\n          _reader.readMessage(\n            messageInitializer33,\n            ondewoNlu006.Comment.deserializeBinaryFromReader\n          );\n          (_instance.parentComment = _instance.parentComment || []).push(\n            messageInitializer33\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SessionInfo.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SessionInfo,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(1, _instance.languageCodes);\n    }\n    if (_instance.matchedIntents && _instance.matchedIntents.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.matchedIntents as any,\n        ondewoNlu015.Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.matchedEntityTypes && _instance.matchedEntityTypes.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.matchedEntityTypes as any,\n        ondewoNlu014.EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.minIntentsConfidence) {\n      _writer.writeFloat(4, _instance.minIntentsConfidence);\n    }\n    if (_instance.minEntityTypesConfidence) {\n      _writer.writeFloat(5, _instance.minEntityTypesConfidence);\n    }\n    if (_instance.earliest) {\n      _writer.writeDouble(6, _instance.earliest);\n    }\n    if (_instance.latest) {\n      _writer.writeDouble(7, _instance.latest);\n    }\n    if (_instance.numberTurns) {\n      _writer.writeInt32(8, _instance.numberTurns);\n    }\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(9, _instance.labels);\n    }\n    if (_instance.userIds && _instance.userIds.length) {\n      _writer.writeRepeatedString(10, _instance.userIds);\n    }\n    if (_instance.intentTags && _instance.intentTags.length) {\n      _writer.writeRepeatedString(11, _instance.intentTags);\n    }\n    if (_instance.inputContextSteps && _instance.inputContextSteps.length) {\n      _writer.writeRepeatedMessage(\n        12,\n        _instance.inputContextSteps as any,\n        SessionInfo.ContextSteps.serializeBinaryToWriter\n      );\n    }\n    if (_instance.outputContextSteps && _instance.outputContextSteps.length) {\n      _writer.writeRepeatedMessage(\n        13,\n        _instance.outputContextSteps as any,\n        SessionInfo.ContextSteps.serializeBinaryToWriter\n      );\n    }\n    if (_instance.durationInS) {\n      _writer.writeFloat(14, _instance.durationInS);\n    }\n    if (_instance.durationInM) {\n      _writer.writeFloat(15, _instance.durationInM);\n    }\n    if (_instance.durationInMRounded) {\n      _writer.writeFloat(16, _instance.durationInMRounded);\n    }\n    if (_instance.durationInterval15sRounded) {\n      _writer.writeFloat(17, _instance.durationInterval15sRounded);\n    }\n    if (_instance.durationInterval30sRounded) {\n      _writer.writeFloat(18, _instance.durationInterval30sRounded);\n    }\n    if (_instance.durationInterval45sRounded) {\n      _writer.writeFloat(19, _instance.durationInterval45sRounded);\n    }\n    if (_instance.startedTimeSlotPerHour) {\n      _writer.writeString(20, _instance.startedTimeSlotPerHour);\n    }\n    if (_instance.startedTimeSlotPerQuarterHour) {\n      _writer.writeString(21, _instance.startedTimeSlotPerQuarterHour);\n    }\n    if (_instance.startedTimeSlotPerHalfHour) {\n      _writer.writeString(22, _instance.startedTimeSlotPerHalfHour);\n    }\n    if (_instance.startedTimeSlotPerDayPhase) {\n      _writer.writeString(23, _instance.startedTimeSlotPerDayPhase);\n    }\n    if (_instance.startedTimeSlotPerMinute) {\n      _writer.writeString(24, _instance.startedTimeSlotPerMinute);\n    }\n    if (_instance.durationInSRounded) {\n      _writer.writeFloat(25, _instance.durationInSRounded);\n    }\n    if (_instance.platforms && _instance.platforms.length) {\n      _writer.writePackedEnum(26, _instance.platforms);\n    }\n    if (_instance.accountIds && _instance.accountIds.length) {\n      _writer.writeRepeatedString(27, _instance.accountIds);\n    }\n    if (_instance.propertyIds && _instance.propertyIds.length) {\n      _writer.writeRepeatedString(28, _instance.propertyIds);\n    }\n    if (_instance.datastreamIds && _instance.datastreamIds.length) {\n      _writer.writeRepeatedString(29, _instance.datastreamIds);\n    }\n    if (_instance.originIds && _instance.originIds.length) {\n      _writer.writeRepeatedString(30, _instance.originIds);\n    }\n    if (_instance.identifiedUserIds && _instance.identifiedUserIds.length) {\n      _writer.writeRepeatedString(31, _instance.identifiedUserIds);\n    }\n    if (_instance.durationInterval60sRounded) {\n      _writer.writeFloat(32, _instance.durationInterval60sRounded);\n    }\n    if (_instance.parentComment && _instance.parentComment.length) {\n      _writer.writeRepeatedMessage(\n        33,\n        _instance.parentComment as any,\n        ondewoNlu006.Comment.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _languageCodes: string[];\n  private _matchedIntents?: ondewoNlu015.Intent[];\n  private _matchedEntityTypes?: ondewoNlu014.EntityType[];\n  private _minIntentsConfidence: number;\n  private _minEntityTypesConfidence: number;\n  private _earliest: number;\n  private _latest: number;\n  private _numberTurns: number;\n  private _labels: string[];\n  private _userIds: string[];\n  private _intentTags: string[];\n  private _inputContextSteps?: SessionInfo.ContextSteps[];\n  private _outputContextSteps?: SessionInfo.ContextSteps[];\n  private _durationInS: number;\n  private _durationInM: number;\n  private _durationInMRounded: number;\n  private _durationInterval15sRounded: number;\n  private _durationInterval30sRounded: number;\n  private _durationInterval45sRounded: number;\n  private _startedTimeSlotPerHour: string;\n  private _startedTimeSlotPerQuarterHour: string;\n  private _startedTimeSlotPerHalfHour: string;\n  private _startedTimeSlotPerDayPhase: string;\n  private _startedTimeSlotPerMinute: string;\n  private _durationInSRounded: number;\n  private _platforms: ondewoNlu015.Intent.Message.Platform[];\n  private _accountIds: string[];\n  private _propertyIds: string[];\n  private _datastreamIds: string[];\n  private _originIds: string[];\n  private _identifiedUserIds: string[];\n  private _durationInterval60sRounded: number;\n  private _parentComment?: ondewoNlu006.Comment[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SessionInfo to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SessionInfo.AsObject>) {\n    _value = _value || {};\n    this.languageCodes = (_value.languageCodes || []).slice();\n    this.matchedIntents = (_value.matchedIntents || []).map(\n      m => new ondewoNlu015.Intent(m)\n    );\n    this.matchedEntityTypes = (_value.matchedEntityTypes || []).map(\n      m => new ondewoNlu014.EntityType(m)\n    );\n    this.minIntentsConfidence = _value.minIntentsConfidence;\n    this.minEntityTypesConfidence = _value.minEntityTypesConfidence;\n    this.earliest = _value.earliest;\n    this.latest = _value.latest;\n    this.numberTurns = _value.numberTurns;\n    this.labels = (_value.labels || []).slice();\n    this.userIds = (_value.userIds || []).slice();\n    this.intentTags = (_value.intentTags || []).slice();\n    this.inputContextSteps = (_value.inputContextSteps || []).map(\n      m => new SessionInfo.ContextSteps(m)\n    );\n    this.outputContextSteps = (_value.outputContextSteps || []).map(\n      m => new SessionInfo.ContextSteps(m)\n    );\n    this.durationInS = _value.durationInS;\n    this.durationInM = _value.durationInM;\n    this.durationInMRounded = _value.durationInMRounded;\n    this.durationInterval15sRounded = _value.durationInterval15sRounded;\n    this.durationInterval30sRounded = _value.durationInterval30sRounded;\n    this.durationInterval45sRounded = _value.durationInterval45sRounded;\n    this.startedTimeSlotPerHour = _value.startedTimeSlotPerHour;\n    this.startedTimeSlotPerQuarterHour = _value.startedTimeSlotPerQuarterHour;\n    this.startedTimeSlotPerHalfHour = _value.startedTimeSlotPerHalfHour;\n    this.startedTimeSlotPerDayPhase = _value.startedTimeSlotPerDayPhase;\n    this.startedTimeSlotPerMinute = _value.startedTimeSlotPerMinute;\n    this.durationInSRounded = _value.durationInSRounded;\n    this.platforms = (_value.platforms || []).slice();\n    this.accountIds = (_value.accountIds || []).slice();\n    this.propertyIds = (_value.propertyIds || []).slice();\n    this.datastreamIds = (_value.datastreamIds || []).slice();\n    this.originIds = (_value.originIds || []).slice();\n    this.identifiedUserIds = (_value.identifiedUserIds || []).slice();\n    this.durationInterval60sRounded = _value.durationInterval60sRounded;\n    this.parentComment = (_value.parentComment || []).map(\n      m => new ondewoNlu006.Comment(m)\n    );\n    SessionInfo.refineValues(this);\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n  get matchedIntents(): ondewoNlu015.Intent[] | undefined {\n    return this._matchedIntents;\n  }\n  set matchedIntents(value: ondewoNlu015.Intent[] | undefined) {\n    this._matchedIntents = value;\n  }\n  get matchedEntityTypes(): ondewoNlu014.EntityType[] | undefined {\n    return this._matchedEntityTypes;\n  }\n  set matchedEntityTypes(value: ondewoNlu014.EntityType[] | undefined) {\n    this._matchedEntityTypes = value;\n  }\n  get minIntentsConfidence(): number {\n    return this._minIntentsConfidence;\n  }\n  set minIntentsConfidence(value: number) {\n    this._minIntentsConfidence = value;\n  }\n  get minEntityTypesConfidence(): number {\n    return this._minEntityTypesConfidence;\n  }\n  set minEntityTypesConfidence(value: number) {\n    this._minEntityTypesConfidence = value;\n  }\n  get earliest(): number {\n    return this._earliest;\n  }\n  set earliest(value: number) {\n    this._earliest = value;\n  }\n  get latest(): number {\n    return this._latest;\n  }\n  set latest(value: number) {\n    this._latest = value;\n  }\n  get numberTurns(): number {\n    return this._numberTurns;\n  }\n  set numberTurns(value: number) {\n    this._numberTurns = value;\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n  get userIds(): string[] {\n    return this._userIds;\n  }\n  set userIds(value: string[]) {\n    this._userIds = value;\n  }\n  get intentTags(): string[] {\n    return this._intentTags;\n  }\n  set intentTags(value: string[]) {\n    this._intentTags = value;\n  }\n  get inputContextSteps(): SessionInfo.ContextSteps[] | undefined {\n    return this._inputContextSteps;\n  }\n  set inputContextSteps(value: SessionInfo.ContextSteps[] | undefined) {\n    this._inputContextSteps = value;\n  }\n  get outputContextSteps(): SessionInfo.ContextSteps[] | undefined {\n    return this._outputContextSteps;\n  }\n  set outputContextSteps(value: SessionInfo.ContextSteps[] | undefined) {\n    this._outputContextSteps = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get durationInM(): number {\n    return this._durationInM;\n  }\n  set durationInM(value: number) {\n    this._durationInM = value;\n  }\n  get durationInMRounded(): number {\n    return this._durationInMRounded;\n  }\n  set durationInMRounded(value: number) {\n    this._durationInMRounded = value;\n  }\n  get durationInterval15sRounded(): number {\n    return this._durationInterval15sRounded;\n  }\n  set durationInterval15sRounded(value: number) {\n    this._durationInterval15sRounded = value;\n  }\n  get durationInterval30sRounded(): number {\n    return this._durationInterval30sRounded;\n  }\n  set durationInterval30sRounded(value: number) {\n    this._durationInterval30sRounded = value;\n  }\n  get durationInterval45sRounded(): number {\n    return this._durationInterval45sRounded;\n  }\n  set durationInterval45sRounded(value: number) {\n    this._durationInterval45sRounded = value;\n  }\n  get startedTimeSlotPerHour(): string {\n    return this._startedTimeSlotPerHour;\n  }\n  set startedTimeSlotPerHour(value: string) {\n    this._startedTimeSlotPerHour = value;\n  }\n  get startedTimeSlotPerQuarterHour(): string {\n    return this._startedTimeSlotPerQuarterHour;\n  }\n  set startedTimeSlotPerQuarterHour(value: string) {\n    this._startedTimeSlotPerQuarterHour = value;\n  }\n  get startedTimeSlotPerHalfHour(): string {\n    return this._startedTimeSlotPerHalfHour;\n  }\n  set startedTimeSlotPerHalfHour(value: string) {\n    this._startedTimeSlotPerHalfHour = value;\n  }\n  get startedTimeSlotPerDayPhase(): string {\n    return this._startedTimeSlotPerDayPhase;\n  }\n  set startedTimeSlotPerDayPhase(value: string) {\n    this._startedTimeSlotPerDayPhase = value;\n  }\n  get startedTimeSlotPerMinute(): string {\n    return this._startedTimeSlotPerMinute;\n  }\n  set startedTimeSlotPerMinute(value: string) {\n    this._startedTimeSlotPerMinute = value;\n  }\n  get durationInSRounded(): number {\n    return this._durationInSRounded;\n  }\n  set durationInSRounded(value: number) {\n    this._durationInSRounded = value;\n  }\n  get platforms(): ondewoNlu015.Intent.Message.Platform[] {\n    return this._platforms;\n  }\n  set platforms(value: ondewoNlu015.Intent.Message.Platform[]) {\n    this._platforms = value;\n  }\n  get accountIds(): string[] {\n    return this._accountIds;\n  }\n  set accountIds(value: string[]) {\n    this._accountIds = value;\n  }\n  get propertyIds(): string[] {\n    return this._propertyIds;\n  }\n  set propertyIds(value: string[]) {\n    this._propertyIds = value;\n  }\n  get datastreamIds(): string[] {\n    return this._datastreamIds;\n  }\n  set datastreamIds(value: string[]) {\n    this._datastreamIds = value;\n  }\n  get originIds(): string[] {\n    return this._originIds;\n  }\n  set originIds(value: string[]) {\n    this._originIds = value;\n  }\n  get identifiedUserIds(): string[] {\n    return this._identifiedUserIds;\n  }\n  set identifiedUserIds(value: string[]) {\n    this._identifiedUserIds = value;\n  }\n  get durationInterval60sRounded(): number {\n    return this._durationInterval60sRounded;\n  }\n  set durationInterval60sRounded(value: number) {\n    this._durationInterval60sRounded = value;\n  }\n  get parentComment(): ondewoNlu006.Comment[] | undefined {\n    return this._parentComment;\n  }\n  set parentComment(value: ondewoNlu006.Comment[] | undefined) {\n    this._parentComment = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SessionInfo.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SessionInfo.AsObject {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      matchedIntents: (this.matchedIntents || []).map(m => m.toObject()),\n      matchedEntityTypes: (this.matchedEntityTypes || []).map(m =>\n        m.toObject()\n      ),\n      minIntentsConfidence: this.minIntentsConfidence,\n      minEntityTypesConfidence: this.minEntityTypesConfidence,\n      earliest: this.earliest,\n      latest: this.latest,\n      numberTurns: this.numberTurns,\n      labels: (this.labels || []).slice(),\n      userIds: (this.userIds || []).slice(),\n      intentTags: (this.intentTags || []).slice(),\n      inputContextSteps: (this.inputContextSteps || []).map(m => m.toObject()),\n      outputContextSteps: (this.outputContextSteps || []).map(m =>\n        m.toObject()\n      ),\n      durationInS: this.durationInS,\n      durationInM: this.durationInM,\n      durationInMRounded: this.durationInMRounded,\n      durationInterval15sRounded: this.durationInterval15sRounded,\n      durationInterval30sRounded: this.durationInterval30sRounded,\n      durationInterval45sRounded: this.durationInterval45sRounded,\n      startedTimeSlotPerHour: this.startedTimeSlotPerHour,\n      startedTimeSlotPerQuarterHour: this.startedTimeSlotPerQuarterHour,\n      startedTimeSlotPerHalfHour: this.startedTimeSlotPerHalfHour,\n      startedTimeSlotPerDayPhase: this.startedTimeSlotPerDayPhase,\n      startedTimeSlotPerMinute: this.startedTimeSlotPerMinute,\n      durationInSRounded: this.durationInSRounded,\n      platforms: (this.platforms || []).slice(),\n      accountIds: (this.accountIds || []).slice(),\n      propertyIds: (this.propertyIds || []).slice(),\n      datastreamIds: (this.datastreamIds || []).slice(),\n      originIds: (this.originIds || []).slice(),\n      identifiedUserIds: (this.identifiedUserIds || []).slice(),\n      durationInterval60sRounded: this.durationInterval60sRounded,\n      parentComment: (this.parentComment || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SessionInfo.AsProtobufJSON {\n    return {\n      languageCodes: (this.languageCodes || []).slice(),\n      matchedIntents: (this.matchedIntents || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      matchedEntityTypes: (this.matchedEntityTypes || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      minIntentsConfidence: this.minIntentsConfidence,\n      minEntityTypesConfidence: this.minEntityTypesConfidence,\n      earliest: this.earliest,\n      latest: this.latest,\n      numberTurns: this.numberTurns,\n      labels: (this.labels || []).slice(),\n      userIds: (this.userIds || []).slice(),\n      intentTags: (this.intentTags || []).slice(),\n      inputContextSteps: (this.inputContextSteps || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      outputContextSteps: (this.outputContextSteps || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      durationInS: this.durationInS,\n      durationInM: this.durationInM,\n      durationInMRounded: this.durationInMRounded,\n      durationInterval15sRounded: this.durationInterval15sRounded,\n      durationInterval30sRounded: this.durationInterval30sRounded,\n      durationInterval45sRounded: this.durationInterval45sRounded,\n      startedTimeSlotPerHour: this.startedTimeSlotPerHour,\n      startedTimeSlotPerQuarterHour: this.startedTimeSlotPerQuarterHour,\n      startedTimeSlotPerHalfHour: this.startedTimeSlotPerHalfHour,\n      startedTimeSlotPerDayPhase: this.startedTimeSlotPerDayPhase,\n      startedTimeSlotPerMinute: this.startedTimeSlotPerMinute,\n      durationInSRounded: this.durationInSRounded,\n      platforms: (this.platforms || []).map(\n        v => ondewoNlu015.Intent.Message.Platform[v]\n      ),\n      accountIds: (this.accountIds || []).slice(),\n      propertyIds: (this.propertyIds || []).slice(),\n      datastreamIds: (this.datastreamIds || []).slice(),\n      originIds: (this.originIds || []).slice(),\n      identifiedUserIds: (this.identifiedUserIds || []).slice(),\n      durationInterval60sRounded: this.durationInterval60sRounded,\n      parentComment: (this.parentComment || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module SessionInfo {\n  /**\n   * Standard JavaScript object representation for SessionInfo\n   */\n  export interface AsObject {\n    languageCodes: string[];\n    matchedIntents?: ondewoNlu015.Intent.AsObject[];\n    matchedEntityTypes?: ondewoNlu014.EntityType.AsObject[];\n    minIntentsConfidence: number;\n    minEntityTypesConfidence: number;\n    earliest: number;\n    latest: number;\n    numberTurns: number;\n    labels: string[];\n    userIds: string[];\n    intentTags: string[];\n    inputContextSteps?: SessionInfo.ContextSteps.AsObject[];\n    outputContextSteps?: SessionInfo.ContextSteps.AsObject[];\n    durationInS: number;\n    durationInM: number;\n    durationInMRounded: number;\n    durationInterval15sRounded: number;\n    durationInterval30sRounded: number;\n    durationInterval45sRounded: number;\n    startedTimeSlotPerHour: string;\n    startedTimeSlotPerQuarterHour: string;\n    startedTimeSlotPerHalfHour: string;\n    startedTimeSlotPerDayPhase: string;\n    startedTimeSlotPerMinute: string;\n    durationInSRounded: number;\n    platforms: ondewoNlu015.Intent.Message.Platform[];\n    accountIds: string[];\n    propertyIds: string[];\n    datastreamIds: string[];\n    originIds: string[];\n    identifiedUserIds: string[];\n    durationInterval60sRounded: number;\n    parentComment?: ondewoNlu006.Comment.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for SessionInfo\n   */\n  export interface AsProtobufJSON {\n    languageCodes: string[];\n    matchedIntents: ondewoNlu015.Intent.AsProtobufJSON[] | null;\n    matchedEntityTypes: ondewoNlu014.EntityType.AsProtobufJSON[] | null;\n    minIntentsConfidence: number;\n    minEntityTypesConfidence: number;\n    earliest: number;\n    latest: number;\n    numberTurns: number;\n    labels: string[];\n    userIds: string[];\n    intentTags: string[];\n    inputContextSteps: SessionInfo.ContextSteps.AsProtobufJSON[] | null;\n    outputContextSteps: SessionInfo.ContextSteps.AsProtobufJSON[] | null;\n    durationInS: number;\n    durationInM: number;\n    durationInMRounded: number;\n    durationInterval15sRounded: number;\n    durationInterval30sRounded: number;\n    durationInterval45sRounded: number;\n    startedTimeSlotPerHour: string;\n    startedTimeSlotPerQuarterHour: string;\n    startedTimeSlotPerHalfHour: string;\n    startedTimeSlotPerDayPhase: string;\n    startedTimeSlotPerMinute: string;\n    durationInSRounded: number;\n    platforms: string[];\n    accountIds: string[];\n    propertyIds: string[];\n    datastreamIds: string[];\n    originIds: string[];\n    identifiedUserIds: string[];\n    durationInterval60sRounded: number;\n    parentComment: ondewoNlu006.Comment.AsProtobufJSON[] | null;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.SessionInfo.ContextSteps\n   */\n  export class ContextSteps implements GrpcMessage {\n    static id = 'ondewo.nlu.SessionInfo.ContextSteps';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new ContextSteps();\n      ContextSteps.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: ContextSteps) {\n      _instance.contexts = _instance.contexts || [];\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: ContextSteps,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            const messageInitializer1 = new ondewoNlu010.Context();\n            _reader.readMessage(\n              messageInitializer1,\n              ondewoNlu010.Context.deserializeBinaryFromReader\n            );\n            (_instance.contexts = _instance.contexts || []).push(\n              messageInitializer1\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      ContextSteps.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: ContextSteps,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.contexts && _instance.contexts.length) {\n        _writer.writeRepeatedMessage(\n          1,\n          _instance.contexts as any,\n          ondewoNlu010.Context.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _contexts?: ondewoNlu010.Context[];\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of ContextSteps to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<ContextSteps.AsObject>) {\n      _value = _value || {};\n      this.contexts = (_value.contexts || []).map(\n        m => new ondewoNlu010.Context(m)\n      );\n      ContextSteps.refineValues(this);\n    }\n    get contexts(): ondewoNlu010.Context[] | undefined {\n      return this._contexts;\n    }\n    set contexts(value: ondewoNlu010.Context[] | undefined) {\n      this._contexts = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      ContextSteps.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): ContextSteps.AsObject {\n      return {\n        contexts: (this.contexts || []).map(m => m.toObject())\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): ContextSteps.AsProtobufJSON {\n      return {\n        contexts: (this.contexts || []).map(m => m.toProtobufJSON(options))\n      };\n    }\n  }\n  export module ContextSteps {\n    /**\n     * Standard JavaScript object representation for ContextSteps\n     */\n    export interface AsObject {\n      contexts?: ondewoNlu010.Context.AsObject[];\n    }\n\n    /**\n     * Protobuf JSON representation for ContextSteps\n     */\n    export interface AsProtobufJSON {\n      contexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionsResponse\n */\nexport class ListSessionsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionsResponse();\n    ListSessionsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionsResponse) {\n    _instance.sessions = _instance.sessions || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Session();\n          _reader.readMessage(\n            messageInitializer1,\n            Session.deserializeBinaryFromReader\n          );\n          (_instance.sessions = _instance.sessions || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessions && _instance.sessions.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.sessions as any,\n        Session.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _sessions?: Session[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionsResponse.AsObject>) {\n    _value = _value || {};\n    this.sessions = (_value.sessions || []).map(m => new Session(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListSessionsResponse.refineValues(this);\n  }\n  get sessions(): Session[] | undefined {\n    return this._sessions;\n  }\n  set sessions(value: Session[] | undefined) {\n    this._sessions = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionsResponse.AsObject {\n    return {\n      sessions: (this.sessions || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionsResponse.AsProtobufJSON {\n    return {\n      sessions: (this.sessions || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListSessionsResponse {\n  /**\n   * Standard JavaScript object representation for ListSessionsResponse\n   */\n  export interface AsObject {\n    sessions?: Session.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionsResponse\n   */\n  export interface AsProtobufJSON {\n    sessions: Session.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionRequest\n */\nexport class GetSessionRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionRequest();\n    GetSessionRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.sessionView = _instance.sessionView || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionView = _reader.readEnum();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.sessionView) {\n      _writer.writeEnum(2, _instance.sessionView);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _sessionView: Session.View;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetSessionRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.sessionView = _value.sessionView;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetSessionRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get sessionView(): Session.View {\n    return this._sessionView;\n  }\n  set sessionView(value: Session.View) {\n    this._sessionView = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      sessionView: this.sessionView,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      sessionView:\n        Session.View[\n          this.sessionView === null || this.sessionView === undefined\n            ? 0\n            : this.sessionView\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetSessionRequest {\n  /**\n   * Standard JavaScript object representation for GetSessionRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    sessionView: Session.View;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    sessionView: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateSessionRequest\n */\nexport class CreateSessionRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateSessionRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateSessionRequest();\n    CreateSessionRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateSessionRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionUuid = _instance.sessionUuid || '';\n    _instance.labels = _instance.labels || [];\n    _instance.contexts = _instance.contexts || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateSessionRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionUuid = _reader.readString();\n          break;\n        case 3:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          const messageInitializer4 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer4,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.contexts = _instance.contexts || []).push(\n            messageInitializer4\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateSessionRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateSessionRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionUuid) {\n      _writer.writeString(2, _instance.sessionUuid);\n    }\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(3, _instance.labels);\n    }\n    if (_instance.contexts && _instance.contexts.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.contexts as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionUuid: string;\n  private _labels: string[];\n  private _contexts?: ondewoNlu010.Context[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateSessionRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateSessionRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionUuid = _value.sessionUuid;\n    this.labels = (_value.labels || []).slice();\n    this.contexts = (_value.contexts || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    CreateSessionRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionUuid(): string {\n    return this._sessionUuid;\n  }\n  set sessionUuid(value: string) {\n    this._sessionUuid = value;\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n  get contexts(): ondewoNlu010.Context[] | undefined {\n    return this._contexts;\n  }\n  set contexts(value: ondewoNlu010.Context[] | undefined) {\n    this._contexts = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateSessionRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateSessionRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionUuid: this.sessionUuid,\n      labels: (this.labels || []).slice(),\n      contexts: (this.contexts || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateSessionRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionUuid: this.sessionUuid,\n      labels: (this.labels || []).slice(),\n      contexts: (this.contexts || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module CreateSessionRequest {\n  /**\n   * Standard JavaScript object representation for CreateSessionRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionUuid: string;\n    labels: string[];\n    contexts?: ondewoNlu010.Context.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for CreateSessionRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionUuid: string;\n    labels: string[];\n    contexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteSessionRequest\n */\nexport class DeleteSessionRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteSessionRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteSessionRequest();\n    DeleteSessionRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteSessionRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteSessionRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteSessionRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteSessionRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n  }\n\n  private _sessionId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteSessionRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteSessionRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    DeleteSessionRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteSessionRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteSessionRequest.AsObject {\n    return {\n      sessionId: this.sessionId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteSessionRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId\n    };\n  }\n}\nexport module DeleteSessionRequest {\n  /**\n   * Standard JavaScript object representation for DeleteSessionRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteSessionRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateSessionReviewRequest\n */\nexport class CreateSessionReviewRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateSessionReviewRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateSessionReviewRequest();\n    CreateSessionReviewRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateSessionReviewRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.parentReviewId = _instance.parentReviewId || '';\n    _instance.sessionReview = _instance.sessionReview || undefined;\n    _instance.sessionReviewView = _instance.sessionReviewView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateSessionReviewRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.parentReviewId = _reader.readString();\n          break;\n        case 3:\n          _instance.sessionReview = new SessionReview();\n          _reader.readMessage(\n            _instance.sessionReview,\n            SessionReview.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.sessionReviewView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateSessionReviewRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateSessionReviewRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.parentReviewId) {\n      _writer.writeString(2, _instance.parentReviewId);\n    }\n    if (_instance.sessionReview) {\n      _writer.writeMessage(\n        3,\n        _instance.sessionReview as any,\n        SessionReview.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sessionReviewView) {\n      _writer.writeEnum(4, _instance.sessionReviewView);\n    }\n  }\n\n  private _sessionId: string;\n  private _parentReviewId: string;\n  private _sessionReview?: SessionReview;\n  private _sessionReviewView: SessionReview.View;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateSessionReviewRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateSessionReviewRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.parentReviewId = _value.parentReviewId;\n    this.sessionReview = _value.sessionReview\n      ? new SessionReview(_value.sessionReview)\n      : undefined;\n    this.sessionReviewView = _value.sessionReviewView;\n    CreateSessionReviewRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get parentReviewId(): string {\n    return this._parentReviewId;\n  }\n  set parentReviewId(value: string) {\n    this._parentReviewId = value;\n  }\n  get sessionReview(): SessionReview | undefined {\n    return this._sessionReview;\n  }\n  set sessionReview(value: SessionReview | undefined) {\n    this._sessionReview = value;\n  }\n  get sessionReviewView(): SessionReview.View {\n    return this._sessionReviewView;\n  }\n  set sessionReviewView(value: SessionReview.View) {\n    this._sessionReviewView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateSessionReviewRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateSessionReviewRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      parentReviewId: this.parentReviewId,\n      sessionReview: this.sessionReview\n        ? this.sessionReview.toObject()\n        : undefined,\n      sessionReviewView: this.sessionReviewView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateSessionReviewRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      parentReviewId: this.parentReviewId,\n      sessionReview: this.sessionReview\n        ? this.sessionReview.toProtobufJSON(options)\n        : null,\n      sessionReviewView:\n        SessionReview.View[\n          this.sessionReviewView === null ||\n          this.sessionReviewView === undefined\n            ? 0\n            : this.sessionReviewView\n        ]\n    };\n  }\n}\nexport module CreateSessionReviewRequest {\n  /**\n   * Standard JavaScript object representation for CreateSessionReviewRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    parentReviewId: string;\n    sessionReview?: SessionReview.AsObject;\n    sessionReviewView: SessionReview.View;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateSessionReviewRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    parentReviewId: string;\n    sessionReview: SessionReview.AsProtobufJSON | null;\n    sessionReviewView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SessionReview\n */\nexport class SessionReview implements GrpcMessage {\n  static id = 'ondewo.nlu.SessionReview';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SessionReview();\n    SessionReview.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SessionReview) {\n    _instance.name = _instance.name || '';\n    _instance.sessionReviewSteps = _instance.sessionReviewSteps || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SessionReview,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new SessionReviewStep();\n          _reader.readMessage(\n            messageInitializer2,\n            SessionReviewStep.deserializeBinaryFromReader\n          );\n          (_instance.sessionReviewSteps =\n            _instance.sessionReviewSteps || []).push(messageInitializer2);\n          break;\n        case 3:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 6:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SessionReview.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SessionReview,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.sessionReviewSteps && _instance.sessionReviewSteps.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.sessionReviewSteps as any,\n        SessionReviewStep.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        3,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        4,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(5, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(6, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _sessionReviewSteps?: SessionReviewStep[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SessionReview to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SessionReview.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.sessionReviewSteps = (_value.sessionReviewSteps || []).map(\n      m => new SessionReviewStep(m)\n    );\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    SessionReview.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get sessionReviewSteps(): SessionReviewStep[] | undefined {\n    return this._sessionReviewSteps;\n  }\n  set sessionReviewSteps(value: SessionReviewStep[] | undefined) {\n    this._sessionReviewSteps = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SessionReview.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SessionReview.AsObject {\n    return {\n      name: this.name,\n      sessionReviewSteps: (this.sessionReviewSteps || []).map(m =>\n        m.toObject()\n      ),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SessionReview.AsProtobufJSON {\n    return {\n      name: this.name,\n      sessionReviewSteps: (this.sessionReviewSteps || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module SessionReview {\n  /**\n   * Standard JavaScript object representation for SessionReview\n   */\n  export interface AsObject {\n    name: string;\n    sessionReviewSteps?: SessionReviewStep.AsObject[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for SessionReview\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    sessionReviewSteps: SessionReviewStep.AsProtobufJSON[] | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n  export enum View {\n    VIEW_UNSPECIFIED = 0,\n    VIEW_FULL = 1,\n    VIEW_SPARSE = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SessionReviewStep\n */\nexport class SessionReviewStep implements GrpcMessage {\n  static id = 'ondewo.nlu.SessionReviewStep';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SessionReviewStep();\n    SessionReviewStep.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SessionReviewStep) {\n    _instance.name = _instance.name || '';\n    _instance.annotatedUsersays = _instance.annotatedUsersays || undefined;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.detectedIntents = _instance.detectedIntents || [];\n    _instance.contexts = _instance.contexts || [];\n    _instance.contextsOut = _instance.contextsOut || [];\n    _instance.queryTextOriginal = _instance.queryTextOriginal || '';\n    _instance.platforms = _instance.platforms || [];\n    _instance.timestamp = _instance.timestamp || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.audioFileResources = _instance.audioFileResources || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SessionReviewStep,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.annotatedUsersays = new ondewoNlu015.Intent.TrainingPhrase();\n          _reader.readMessage(\n            _instance.annotatedUsersays,\n            ondewoNlu015.Intent.TrainingPhrase.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          const messageInitializer4 = new DetectedIntent();\n          _reader.readMessage(\n            messageInitializer4,\n            DetectedIntent.deserializeBinaryFromReader\n          );\n          (_instance.detectedIntents = _instance.detectedIntents || []).push(\n            messageInitializer4\n          );\n          break;\n        case 5:\n          const messageInitializer5 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer5,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.contexts = _instance.contexts || []).push(\n            messageInitializer5\n          );\n          break;\n        case 6:\n          const messageInitializer6 = new ondewoNlu010.Context();\n          _reader.readMessage(\n            messageInitializer6,\n            ondewoNlu010.Context.deserializeBinaryFromReader\n          );\n          (_instance.contextsOut = _instance.contextsOut || []).push(\n            messageInitializer6\n          );\n          break;\n        case 7:\n          _instance.queryTextOriginal = _reader.readString();\n          break;\n        case 8:\n          _reader.readPackableEnumInto(\n            (_instance.platforms = _instance.platforms || [])\n          );\n          break;\n        case 9:\n          _instance.timestamp = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.timestamp,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 13:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 14:\n          const messageInitializer14 = new AudioFileResource();\n          _reader.readMessage(\n            messageInitializer14,\n            AudioFileResource.deserializeBinaryFromReader\n          );\n          (_instance.audioFileResources =\n            _instance.audioFileResources || []).push(messageInitializer14);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SessionReviewStep.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SessionReviewStep,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.annotatedUsersays) {\n      _writer.writeMessage(\n        2,\n        _instance.annotatedUsersays as any,\n        ondewoNlu015.Intent.TrainingPhrase.serializeBinaryToWriter\n      );\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.detectedIntents && _instance.detectedIntents.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.detectedIntents as any,\n        DetectedIntent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.contexts && _instance.contexts.length) {\n      _writer.writeRepeatedMessage(\n        5,\n        _instance.contexts as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.contextsOut && _instance.contextsOut.length) {\n      _writer.writeRepeatedMessage(\n        6,\n        _instance.contextsOut as any,\n        ondewoNlu010.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.queryTextOriginal) {\n      _writer.writeString(7, _instance.queryTextOriginal);\n    }\n    if (_instance.platforms && _instance.platforms.length) {\n      _writer.writePackedEnum(8, _instance.platforms);\n    }\n    if (_instance.timestamp) {\n      _writer.writeMessage(\n        9,\n        _instance.timestamp as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        10,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        11,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(12, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(13, _instance.modifiedBy);\n    }\n    if (_instance.audioFileResources && _instance.audioFileResources.length) {\n      _writer.writeRepeatedMessage(\n        14,\n        _instance.audioFileResources as any,\n        AudioFileResource.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _annotatedUsersays?: ondewoNlu015.Intent.TrainingPhrase;\n  private _languageCode: string;\n  private _detectedIntents?: DetectedIntent[];\n  private _contexts?: ondewoNlu010.Context[];\n  private _contextsOut?: ondewoNlu010.Context[];\n  private _queryTextOriginal: string;\n  private _platforms: ondewoNlu015.Intent.Message.Platform[];\n  private _timestamp?: googleProtobuf005.Timestamp;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _audioFileResources?: AudioFileResource[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SessionReviewStep to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SessionReviewStep.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.annotatedUsersays = _value.annotatedUsersays\n      ? new ondewoNlu015.Intent.TrainingPhrase(_value.annotatedUsersays)\n      : undefined;\n    this.languageCode = _value.languageCode;\n    this.detectedIntents = (_value.detectedIntents || []).map(\n      m => new DetectedIntent(m)\n    );\n    this.contexts = (_value.contexts || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    this.contextsOut = (_value.contextsOut || []).map(\n      m => new ondewoNlu010.Context(m)\n    );\n    this.queryTextOriginal = _value.queryTextOriginal;\n    this.platforms = (_value.platforms || []).slice();\n    this.timestamp = _value.timestamp\n      ? new googleProtobuf005.Timestamp(_value.timestamp)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.audioFileResources = (_value.audioFileResources || []).map(\n      m => new AudioFileResource(m)\n    );\n    SessionReviewStep.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get annotatedUsersays(): ondewoNlu015.Intent.TrainingPhrase | undefined {\n    return this._annotatedUsersays;\n  }\n  set annotatedUsersays(value: ondewoNlu015.Intent.TrainingPhrase | undefined) {\n    this._annotatedUsersays = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get detectedIntents(): DetectedIntent[] | undefined {\n    return this._detectedIntents;\n  }\n  set detectedIntents(value: DetectedIntent[] | undefined) {\n    this._detectedIntents = value;\n  }\n  get contexts(): ondewoNlu010.Context[] | undefined {\n    return this._contexts;\n  }\n  set contexts(value: ondewoNlu010.Context[] | undefined) {\n    this._contexts = value;\n  }\n  get contextsOut(): ondewoNlu010.Context[] | undefined {\n    return this._contextsOut;\n  }\n  set contextsOut(value: ondewoNlu010.Context[] | undefined) {\n    this._contextsOut = value;\n  }\n  get queryTextOriginal(): string {\n    return this._queryTextOriginal;\n  }\n  set queryTextOriginal(value: string) {\n    this._queryTextOriginal = value;\n  }\n  get platforms(): ondewoNlu015.Intent.Message.Platform[] {\n    return this._platforms;\n  }\n  set platforms(value: ondewoNlu015.Intent.Message.Platform[]) {\n    this._platforms = value;\n  }\n  get timestamp(): googleProtobuf005.Timestamp | undefined {\n    return this._timestamp;\n  }\n  set timestamp(value: googleProtobuf005.Timestamp | undefined) {\n    this._timestamp = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get audioFileResources(): AudioFileResource[] | undefined {\n    return this._audioFileResources;\n  }\n  set audioFileResources(value: AudioFileResource[] | undefined) {\n    this._audioFileResources = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SessionReviewStep.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SessionReviewStep.AsObject {\n    return {\n      name: this.name,\n      annotatedUsersays: this.annotatedUsersays\n        ? this.annotatedUsersays.toObject()\n        : undefined,\n      languageCode: this.languageCode,\n      detectedIntents: (this.detectedIntents || []).map(m => m.toObject()),\n      contexts: (this.contexts || []).map(m => m.toObject()),\n      contextsOut: (this.contextsOut || []).map(m => m.toObject()),\n      queryTextOriginal: this.queryTextOriginal,\n      platforms: (this.platforms || []).slice(),\n      timestamp: this.timestamp ? this.timestamp.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      audioFileResources: (this.audioFileResources || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SessionReviewStep.AsProtobufJSON {\n    return {\n      name: this.name,\n      annotatedUsersays: this.annotatedUsersays\n        ? this.annotatedUsersays.toProtobufJSON(options)\n        : null,\n      languageCode: this.languageCode,\n      detectedIntents: (this.detectedIntents || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      contexts: (this.contexts || []).map(m => m.toProtobufJSON(options)),\n      contextsOut: (this.contextsOut || []).map(m => m.toProtobufJSON(options)),\n      queryTextOriginal: this.queryTextOriginal,\n      platforms: (this.platforms || []).map(\n        v => ondewoNlu015.Intent.Message.Platform[v]\n      ),\n      timestamp: this.timestamp ? this.timestamp.toProtobufJSON(options) : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      audioFileResources: (this.audioFileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module SessionReviewStep {\n  /**\n   * Standard JavaScript object representation for SessionReviewStep\n   */\n  export interface AsObject {\n    name: string;\n    annotatedUsersays?: ondewoNlu015.Intent.TrainingPhrase.AsObject;\n    languageCode: string;\n    detectedIntents?: DetectedIntent.AsObject[];\n    contexts?: ondewoNlu010.Context.AsObject[];\n    contextsOut?: ondewoNlu010.Context.AsObject[];\n    queryTextOriginal: string;\n    platforms: ondewoNlu015.Intent.Message.Platform[];\n    timestamp?: googleProtobuf005.Timestamp.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    audioFileResources?: AudioFileResource.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for SessionReviewStep\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    annotatedUsersays: ondewoNlu015.Intent.TrainingPhrase.AsProtobufJSON | null;\n    languageCode: string;\n    detectedIntents: DetectedIntent.AsProtobufJSON[] | null;\n    contexts: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    contextsOut: ondewoNlu010.Context.AsProtobufJSON[] | null;\n    queryTextOriginal: string;\n    platforms: string[];\n    timestamp: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    audioFileResources: AudioFileResource.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DetectedIntent\n */\nexport class DetectedIntent implements GrpcMessage {\n  static id = 'ondewo.nlu.DetectedIntent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DetectedIntent();\n    DetectedIntent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DetectedIntent) {\n    _instance.intent = _instance.intent || undefined;\n    _instance.score = _instance.score || 0;\n    _instance.algorithm = _instance.algorithm || '';\n    _instance.fulfillmentMessages = _instance.fulfillmentMessages || [];\n    _instance.requiredParamMissing = _instance.requiredParamMissing || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DetectedIntent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intent = new ondewoNlu015.Intent();\n          _reader.readMessage(\n            _instance.intent,\n            ondewoNlu015.Intent.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.score = _reader.readFloat();\n          break;\n        case 3:\n          _instance.algorithm = _reader.readString();\n          break;\n        case 4:\n          const messageInitializer4 = new ondewoNlu015.Intent.Message();\n          _reader.readMessage(\n            messageInitializer4,\n            ondewoNlu015.Intent.Message.deserializeBinaryFromReader\n          );\n          (_instance.fulfillmentMessages =\n            _instance.fulfillmentMessages || []).push(messageInitializer4);\n          break;\n        case 5:\n          _instance.requiredParamMissing = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DetectedIntent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DetectedIntent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intent) {\n      _writer.writeMessage(\n        1,\n        _instance.intent as any,\n        ondewoNlu015.Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.score) {\n      _writer.writeFloat(2, _instance.score);\n    }\n    if (_instance.algorithm) {\n      _writer.writeString(3, _instance.algorithm);\n    }\n    if (_instance.fulfillmentMessages && _instance.fulfillmentMessages.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.fulfillmentMessages as any,\n        ondewoNlu015.Intent.Message.serializeBinaryToWriter\n      );\n    }\n    if (_instance.requiredParamMissing) {\n      _writer.writeBool(5, _instance.requiredParamMissing);\n    }\n  }\n\n  private _intent?: ondewoNlu015.Intent;\n  private _score: number;\n  private _algorithm: string;\n  private _fulfillmentMessages?: ondewoNlu015.Intent.Message[];\n  private _requiredParamMissing: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DetectedIntent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DetectedIntent.AsObject>) {\n    _value = _value || {};\n    this.intent = _value.intent\n      ? new ondewoNlu015.Intent(_value.intent)\n      : undefined;\n    this.score = _value.score;\n    this.algorithm = _value.algorithm;\n    this.fulfillmentMessages = (_value.fulfillmentMessages || []).map(\n      m => new ondewoNlu015.Intent.Message(m)\n    );\n    this.requiredParamMissing = _value.requiredParamMissing;\n    DetectedIntent.refineValues(this);\n  }\n  get intent(): ondewoNlu015.Intent | undefined {\n    return this._intent;\n  }\n  set intent(value: ondewoNlu015.Intent | undefined) {\n    this._intent = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n  get algorithm(): string {\n    return this._algorithm;\n  }\n  set algorithm(value: string) {\n    this._algorithm = value;\n  }\n  get fulfillmentMessages(): ondewoNlu015.Intent.Message[] | undefined {\n    return this._fulfillmentMessages;\n  }\n  set fulfillmentMessages(value: ondewoNlu015.Intent.Message[] | undefined) {\n    this._fulfillmentMessages = value;\n  }\n  get requiredParamMissing(): boolean {\n    return this._requiredParamMissing;\n  }\n  set requiredParamMissing(value: boolean) {\n    this._requiredParamMissing = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DetectedIntent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DetectedIntent.AsObject {\n    return {\n      intent: this.intent ? this.intent.toObject() : undefined,\n      score: this.score,\n      algorithm: this.algorithm,\n      fulfillmentMessages: (this.fulfillmentMessages || []).map(m =>\n        m.toObject()\n      ),\n      requiredParamMissing: this.requiredParamMissing\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DetectedIntent.AsProtobufJSON {\n    return {\n      intent: this.intent ? this.intent.toProtobufJSON(options) : null,\n      score: this.score,\n      algorithm: this.algorithm,\n      fulfillmentMessages: (this.fulfillmentMessages || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      requiredParamMissing: this.requiredParamMissing\n    };\n  }\n}\nexport module DetectedIntent {\n  /**\n   * Standard JavaScript object representation for DetectedIntent\n   */\n  export interface AsObject {\n    intent?: ondewoNlu015.Intent.AsObject;\n    score: number;\n    algorithm: string;\n    fulfillmentMessages?: ondewoNlu015.Intent.Message.AsObject[];\n    requiredParamMissing: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for DetectedIntent\n   */\n  export interface AsProtobufJSON {\n    intent: ondewoNlu015.Intent.AsProtobufJSON | null;\n    score: number;\n    algorithm: string;\n    fulfillmentMessages: ondewoNlu015.Intent.Message.AsProtobufJSON[] | null;\n    requiredParamMissing: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionLabelsRequest\n */\nexport class ListSessionLabelsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionLabelsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionLabelsRequest();\n    ListSessionLabelsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionLabelsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionLabelsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionLabelsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionLabelsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n  }\n\n  private _sessionId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionLabelsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionLabelsRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    ListSessionLabelsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionLabelsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionLabelsRequest.AsObject {\n    return {\n      sessionId: this.sessionId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionLabelsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId\n    };\n  }\n}\nexport module ListSessionLabelsRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionLabelsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionLabelsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionLabelsOfAllSessionsRequest\n */\nexport class ListSessionLabelsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionLabelsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionLabelsOfAllSessionsRequest();\n    ListSessionLabelsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionLabelsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionLabelsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionLabelsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionLabelsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionLabelsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListSessionLabelsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListSessionLabelsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionLabelsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionLabelsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionLabelsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListSessionLabelsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionLabelsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionLabelsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionLabelsResponse\n */\nexport class ListSessionLabelsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionLabelsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionLabelsResponse();\n    ListSessionLabelsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionLabelsResponse) {\n    _instance.labels = _instance.labels || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionLabelsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionLabelsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionLabelsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(1, _instance.labels);\n    }\n  }\n\n  private _labels: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionLabelsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionLabelsResponse.AsObject>) {\n    _value = _value || {};\n    this.labels = (_value.labels || []).slice();\n    ListSessionLabelsResponse.refineValues(this);\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionLabelsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionLabelsResponse.AsObject {\n    return {\n      labels: (this.labels || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionLabelsResponse.AsProtobufJSON {\n    return {\n      labels: (this.labels || []).slice()\n    };\n  }\n}\nexport module ListSessionLabelsResponse {\n  /**\n   * Standard JavaScript object representation for ListSessionLabelsResponse\n   */\n  export interface AsObject {\n    labels: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionLabelsResponse\n   */\n  export interface AsProtobufJSON {\n    labels: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLanguageCodesOfAllSessionsRequest\n */\nexport class ListLanguageCodesOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLanguageCodesOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLanguageCodesOfAllSessionsRequest();\n    ListLanguageCodesOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLanguageCodesOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLanguageCodesOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLanguageCodesOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLanguageCodesOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLanguageCodesOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListLanguageCodesOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListLanguageCodesOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLanguageCodesOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLanguageCodesOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLanguageCodesOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListLanguageCodesOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListLanguageCodesOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLanguageCodesOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLanguageCodesResponse\n */\nexport class ListLanguageCodesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLanguageCodesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLanguageCodesResponse();\n    ListLanguageCodesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLanguageCodesResponse) {\n    _instance.languageCodes = _instance.languageCodes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLanguageCodesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLanguageCodesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLanguageCodesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(1, _instance.languageCodes);\n    }\n  }\n\n  private _languageCodes: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLanguageCodesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListLanguageCodesResponse.AsObject>) {\n    _value = _value || {};\n    this.languageCodes = (_value.languageCodes || []).slice();\n    ListLanguageCodesResponse.refineValues(this);\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLanguageCodesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLanguageCodesResponse.AsObject {\n    return {\n      languageCodes: (this.languageCodes || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLanguageCodesResponse.AsProtobufJSON {\n    return {\n      languageCodes: (this.languageCodes || []).slice()\n    };\n  }\n}\nexport module ListLanguageCodesResponse {\n  /**\n   * Standard JavaScript object representation for ListLanguageCodesResponse\n   */\n  export interface AsObject {\n    languageCodes: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListLanguageCodesResponse\n   */\n  export interface AsProtobufJSON {\n    languageCodes: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListMatchedIntentsOfAllSessionsRequest\n */\nexport class ListMatchedIntentsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListMatchedIntentsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListMatchedIntentsOfAllSessionsRequest();\n    ListMatchedIntentsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListMatchedIntentsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListMatchedIntentsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListMatchedIntentsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListMatchedIntentsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListMatchedIntentsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListMatchedIntentsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListMatchedIntentsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListMatchedIntentsOfAllSessionsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListMatchedIntentsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListMatchedIntentsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListMatchedIntentsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListMatchedIntentsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListMatchedIntentsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListMatchedIntentsResponse\n */\nexport class ListMatchedIntentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListMatchedIntentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListMatchedIntentsResponse();\n    ListMatchedIntentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListMatchedIntentsResponse) {\n    _instance.matchedIntents = _instance.matchedIntents || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListMatchedIntentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.matchedIntents = _instance.matchedIntents || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListMatchedIntentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListMatchedIntentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.matchedIntents && _instance.matchedIntents.length) {\n      _writer.writeRepeatedString(1, _instance.matchedIntents);\n    }\n  }\n\n  private _matchedIntents: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListMatchedIntentsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListMatchedIntentsResponse.AsObject>) {\n    _value = _value || {};\n    this.matchedIntents = (_value.matchedIntents || []).slice();\n    ListMatchedIntentsResponse.refineValues(this);\n  }\n  get matchedIntents(): string[] {\n    return this._matchedIntents;\n  }\n  set matchedIntents(value: string[]) {\n    this._matchedIntents = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListMatchedIntentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListMatchedIntentsResponse.AsObject {\n    return {\n      matchedIntents: (this.matchedIntents || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListMatchedIntentsResponse.AsProtobufJSON {\n    return {\n      matchedIntents: (this.matchedIntents || []).slice()\n    };\n  }\n}\nexport module ListMatchedIntentsResponse {\n  /**\n   * Standard JavaScript object representation for ListMatchedIntentsResponse\n   */\n  export interface AsObject {\n    matchedIntents: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListMatchedIntentsResponse\n   */\n  export interface AsProtobufJSON {\n    matchedIntents: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListMatchedEntityTypesOfAllSessionsRequest\n */\nexport class ListMatchedEntityTypesOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListMatchedEntityTypesOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListMatchedEntityTypesOfAllSessionsRequest();\n    ListMatchedEntityTypesOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListMatchedEntityTypesOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListMatchedEntityTypesOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListMatchedEntityTypesOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListMatchedEntityTypesOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListMatchedEntityTypesOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListMatchedEntityTypesOfAllSessionsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListMatchedEntityTypesOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListMatchedEntityTypesOfAllSessionsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListMatchedEntityTypesOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListMatchedEntityTypesOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListMatchedEntityTypesOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListMatchedEntityTypesOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListMatchedEntityTypesOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListMatchedEntityTypesResponse\n */\nexport class ListMatchedEntityTypesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListMatchedEntityTypesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListMatchedEntityTypesResponse();\n    ListMatchedEntityTypesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListMatchedEntityTypesResponse) {\n    _instance.matchedEntityTypes = _instance.matchedEntityTypes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListMatchedEntityTypesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.matchedEntityTypes =\n            _instance.matchedEntityTypes || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListMatchedEntityTypesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListMatchedEntityTypesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.matchedEntityTypes && _instance.matchedEntityTypes.length) {\n      _writer.writeRepeatedString(1, _instance.matchedEntityTypes);\n    }\n  }\n\n  private _matchedEntityTypes: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListMatchedEntityTypesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListMatchedEntityTypesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.matchedEntityTypes = (_value.matchedEntityTypes || []).slice();\n    ListMatchedEntityTypesResponse.refineValues(this);\n  }\n  get matchedEntityTypes(): string[] {\n    return this._matchedEntityTypes;\n  }\n  set matchedEntityTypes(value: string[]) {\n    this._matchedEntityTypes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListMatchedEntityTypesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListMatchedEntityTypesResponse.AsObject {\n    return {\n      matchedEntityTypes: (this.matchedEntityTypes || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListMatchedEntityTypesResponse.AsProtobufJSON {\n    return {\n      matchedEntityTypes: (this.matchedEntityTypes || []).slice()\n    };\n  }\n}\nexport module ListMatchedEntityTypesResponse {\n  /**\n   * Standard JavaScript object representation for ListMatchedEntityTypesResponse\n   */\n  export interface AsObject {\n    matchedEntityTypes: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListMatchedEntityTypesResponse\n   */\n  export interface AsProtobufJSON {\n    matchedEntityTypes: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUserIdsOfAllSessionsRequest\n */\nexport class ListUserIdsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUserIdsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUserIdsOfAllSessionsRequest();\n    ListUserIdsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUserIdsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUserIdsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUserIdsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUserIdsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUserIdsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListUserIdsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListUserIdsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUserIdsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUserIdsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUserIdsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListUserIdsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListUserIdsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUserIdsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUserIdsResponse\n */\nexport class ListUserIdsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUserIdsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUserIdsResponse();\n    ListUserIdsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUserIdsResponse) {\n    _instance.userIds = _instance.userIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUserIdsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.userIds = _instance.userIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUserIdsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUserIdsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userIds && _instance.userIds.length) {\n      _writer.writeRepeatedString(1, _instance.userIds);\n    }\n  }\n\n  private _userIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUserIdsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUserIdsResponse.AsObject>) {\n    _value = _value || {};\n    this.userIds = (_value.userIds || []).slice();\n    ListUserIdsResponse.refineValues(this);\n  }\n  get userIds(): string[] {\n    return this._userIds;\n  }\n  set userIds(value: string[]) {\n    this._userIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUserIdsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUserIdsResponse.AsObject {\n    return {\n      userIds: (this.userIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUserIdsResponse.AsProtobufJSON {\n    return {\n      userIds: (this.userIds || []).slice()\n    };\n  }\n}\nexport module ListUserIdsResponse {\n  /**\n   * Standard JavaScript object representation for ListUserIdsResponse\n   */\n  export interface AsObject {\n    userIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListUserIdsResponse\n   */\n  export interface AsProtobufJSON {\n    userIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListIdentifiedUserIdsOfAllSessionsRequest\n */\nexport class ListIdentifiedUserIdsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListIdentifiedUserIdsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListIdentifiedUserIdsOfAllSessionsRequest();\n    ListIdentifiedUserIdsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListIdentifiedUserIdsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListIdentifiedUserIdsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListIdentifiedUserIdsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListIdentifiedUserIdsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListIdentifiedUserIdsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      ListIdentifiedUserIdsOfAllSessionsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListIdentifiedUserIdsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListIdentifiedUserIdsOfAllSessionsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListIdentifiedUserIdsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListIdentifiedUserIdsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListIdentifiedUserIdsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListIdentifiedUserIdsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListIdentifiedUserIdsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListIdentifiedUserIdsResponse\n */\nexport class ListIdentifiedUserIdsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListIdentifiedUserIdsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListIdentifiedUserIdsResponse();\n    ListIdentifiedUserIdsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListIdentifiedUserIdsResponse) {\n    _instance.identifiedUserIds = _instance.identifiedUserIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListIdentifiedUserIdsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.identifiedUserIds =\n            _instance.identifiedUserIds || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListIdentifiedUserIdsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListIdentifiedUserIdsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.identifiedUserIds && _instance.identifiedUserIds.length) {\n      _writer.writeRepeatedString(1, _instance.identifiedUserIds);\n    }\n  }\n\n  private _identifiedUserIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListIdentifiedUserIdsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListIdentifiedUserIdsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.identifiedUserIds = (_value.identifiedUserIds || []).slice();\n    ListIdentifiedUserIdsResponse.refineValues(this);\n  }\n  get identifiedUserIds(): string[] {\n    return this._identifiedUserIds;\n  }\n  set identifiedUserIds(value: string[]) {\n    this._identifiedUserIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListIdentifiedUserIdsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListIdentifiedUserIdsResponse.AsObject {\n    return {\n      identifiedUserIds: (this.identifiedUserIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListIdentifiedUserIdsResponse.AsProtobufJSON {\n    return {\n      identifiedUserIds: (this.identifiedUserIds || []).slice()\n    };\n  }\n}\nexport module ListIdentifiedUserIdsResponse {\n  /**\n   * Standard JavaScript object representation for ListIdentifiedUserIdsResponse\n   */\n  export interface AsObject {\n    identifiedUserIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListIdentifiedUserIdsResponse\n   */\n  export interface AsProtobufJSON {\n    identifiedUserIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListTagsOfAllSessionsRequest\n */\nexport class ListTagsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListTagsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListTagsOfAllSessionsRequest();\n    ListTagsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListTagsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListTagsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListTagsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListTagsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListTagsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListTagsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListTagsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListTagsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListTagsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListTagsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListTagsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListTagsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListTagsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListTagsResponse\n */\nexport class ListTagsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListTagsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListTagsResponse();\n    ListTagsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListTagsResponse) {\n    _instance.tags = _instance.tags || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListTagsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.tags = _instance.tags || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListTagsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListTagsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.tags && _instance.tags.length) {\n      _writer.writeRepeatedString(1, _instance.tags);\n    }\n  }\n\n  private _tags: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListTagsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListTagsResponse.AsObject>) {\n    _value = _value || {};\n    this.tags = (_value.tags || []).slice();\n    ListTagsResponse.refineValues(this);\n  }\n  get tags(): string[] {\n    return this._tags;\n  }\n  set tags(value: string[]) {\n    this._tags = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListTagsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListTagsResponse.AsObject {\n    return {\n      tags: (this.tags || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListTagsResponse.AsProtobufJSON {\n    return {\n      tags: (this.tags || []).slice()\n    };\n  }\n}\nexport module ListTagsResponse {\n  /**\n   * Standard JavaScript object representation for ListTagsResponse\n   */\n  export interface AsObject {\n    tags: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListTagsResponse\n   */\n  export interface AsProtobufJSON {\n    tags: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListInputContextsOfAllSessionsRequest\n */\nexport class ListInputContextsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListInputContextsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListInputContextsOfAllSessionsRequest();\n    ListInputContextsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListInputContextsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListInputContextsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListInputContextsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListInputContextsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListInputContextsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListInputContextsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListInputContextsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListInputContextsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListInputContextsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListInputContextsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListInputContextsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListInputContextsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListInputContextsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListInputContextsResponse\n */\nexport class ListInputContextsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListInputContextsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListInputContextsResponse();\n    ListInputContextsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListInputContextsResponse) {\n    _instance.inputContexts = _instance.inputContexts || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListInputContextsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.inputContexts = _instance.inputContexts || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListInputContextsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListInputContextsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.inputContexts && _instance.inputContexts.length) {\n      _writer.writeRepeatedString(1, _instance.inputContexts);\n    }\n  }\n\n  private _inputContexts: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListInputContextsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListInputContextsResponse.AsObject>) {\n    _value = _value || {};\n    this.inputContexts = (_value.inputContexts || []).slice();\n    ListInputContextsResponse.refineValues(this);\n  }\n  get inputContexts(): string[] {\n    return this._inputContexts;\n  }\n  set inputContexts(value: string[]) {\n    this._inputContexts = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListInputContextsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListInputContextsResponse.AsObject {\n    return {\n      inputContexts: (this.inputContexts || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListInputContextsResponse.AsProtobufJSON {\n    return {\n      inputContexts: (this.inputContexts || []).slice()\n    };\n  }\n}\nexport module ListInputContextsResponse {\n  /**\n   * Standard JavaScript object representation for ListInputContextsResponse\n   */\n  export interface AsObject {\n    inputContexts: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListInputContextsResponse\n   */\n  export interface AsProtobufJSON {\n    inputContexts: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListOutputContextsOfAllSessionsRequest\n */\nexport class ListOutputContextsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListOutputContextsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListOutputContextsOfAllSessionsRequest();\n    ListOutputContextsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListOutputContextsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListOutputContextsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListOutputContextsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListOutputContextsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListOutputContextsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListOutputContextsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListOutputContextsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListOutputContextsOfAllSessionsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListOutputContextsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListOutputContextsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListOutputContextsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListOutputContextsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListOutputContextsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListOutputContextsResponse\n */\nexport class ListOutputContextsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListOutputContextsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListOutputContextsResponse();\n    ListOutputContextsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListOutputContextsResponse) {\n    _instance.outputContexts = _instance.outputContexts || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListOutputContextsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.outputContexts = _instance.outputContexts || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListOutputContextsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListOutputContextsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.outputContexts && _instance.outputContexts.length) {\n      _writer.writeRepeatedString(1, _instance.outputContexts);\n    }\n  }\n\n  private _outputContexts: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListOutputContextsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListOutputContextsResponse.AsObject>) {\n    _value = _value || {};\n    this.outputContexts = (_value.outputContexts || []).slice();\n    ListOutputContextsResponse.refineValues(this);\n  }\n  get outputContexts(): string[] {\n    return this._outputContexts;\n  }\n  set outputContexts(value: string[]) {\n    this._outputContexts = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListOutputContextsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListOutputContextsResponse.AsObject {\n    return {\n      outputContexts: (this.outputContexts || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListOutputContextsResponse.AsProtobufJSON {\n    return {\n      outputContexts: (this.outputContexts || []).slice()\n    };\n  }\n}\nexport module ListOutputContextsResponse {\n  /**\n   * Standard JavaScript object representation for ListOutputContextsResponse\n   */\n  export interface AsObject {\n    outputContexts: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListOutputContextsResponse\n   */\n  export interface AsProtobufJSON {\n    outputContexts: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListPlatformsOfAllSessionsRequest\n */\nexport class ListPlatformsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListPlatformsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListPlatformsOfAllSessionsRequest();\n    ListPlatformsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListPlatformsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListPlatformsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListPlatformsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListPlatformsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListPlatformsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListPlatformsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListPlatformsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListPlatformsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListPlatformsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListPlatformsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListPlatformsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListPlatformsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListPlatformsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListPlatformsResponse\n */\nexport class ListPlatformsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListPlatformsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListPlatformsResponse();\n    ListPlatformsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListPlatformsResponse) {\n    _instance.platforms = _instance.platforms || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListPlatformsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.platforms = _instance.platforms || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListPlatformsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListPlatformsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.platforms && _instance.platforms.length) {\n      _writer.writeRepeatedString(1, _instance.platforms);\n    }\n  }\n\n  private _platforms: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListPlatformsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListPlatformsResponse.AsObject>) {\n    _value = _value || {};\n    this.platforms = (_value.platforms || []).slice();\n    ListPlatformsResponse.refineValues(this);\n  }\n  get platforms(): string[] {\n    return this._platforms;\n  }\n  set platforms(value: string[]) {\n    this._platforms = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListPlatformsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListPlatformsResponse.AsObject {\n    return {\n      platforms: (this.platforms || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListPlatformsResponse.AsProtobufJSON {\n    return {\n      platforms: (this.platforms || []).slice()\n    };\n  }\n}\nexport module ListPlatformsResponse {\n  /**\n   * Standard JavaScript object representation for ListPlatformsResponse\n   */\n  export interface AsObject {\n    platforms: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListPlatformsResponse\n   */\n  export interface AsProtobufJSON {\n    platforms: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListAccountIdsOfAllSessionsRequest\n */\nexport class ListAccountIdsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListAccountIdsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListAccountIdsOfAllSessionsRequest();\n    ListAccountIdsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListAccountIdsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListAccountIdsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListAccountIdsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListAccountIdsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListAccountIdsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListAccountIdsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListAccountIdsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListAccountIdsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListAccountIdsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListAccountIdsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListAccountIdsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListAccountIdsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListAccountIdsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListAccountIdsResponse\n */\nexport class ListAccountIdsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListAccountIdsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListAccountIdsResponse();\n    ListAccountIdsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListAccountIdsResponse) {\n    _instance.accountIds = _instance.accountIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListAccountIdsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.accountIds = _instance.accountIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListAccountIdsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListAccountIdsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.accountIds && _instance.accountIds.length) {\n      _writer.writeRepeatedString(1, _instance.accountIds);\n    }\n  }\n\n  private _accountIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListAccountIdsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListAccountIdsResponse.AsObject>) {\n    _value = _value || {};\n    this.accountIds = (_value.accountIds || []).slice();\n    ListAccountIdsResponse.refineValues(this);\n  }\n  get accountIds(): string[] {\n    return this._accountIds;\n  }\n  set accountIds(value: string[]) {\n    this._accountIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListAccountIdsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListAccountIdsResponse.AsObject {\n    return {\n      accountIds: (this.accountIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListAccountIdsResponse.AsProtobufJSON {\n    return {\n      accountIds: (this.accountIds || []).slice()\n    };\n  }\n}\nexport module ListAccountIdsResponse {\n  /**\n   * Standard JavaScript object representation for ListAccountIdsResponse\n   */\n  export interface AsObject {\n    accountIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListAccountIdsResponse\n   */\n  export interface AsProtobufJSON {\n    accountIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListPropertyIdsOfAllSessionsRequest\n */\nexport class ListPropertyIdsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListPropertyIdsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListPropertyIdsOfAllSessionsRequest();\n    ListPropertyIdsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListPropertyIdsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListPropertyIdsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListPropertyIdsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListPropertyIdsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListPropertyIdsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListPropertyIdsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    ListPropertyIdsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListPropertyIdsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListPropertyIdsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListPropertyIdsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListPropertyIdsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListPropertyIdsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListPropertyIdsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListPropertyIdsResponse\n */\nexport class ListPropertyIdsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListPropertyIdsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListPropertyIdsResponse();\n    ListPropertyIdsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListPropertyIdsResponse) {\n    _instance.propertyIds = _instance.propertyIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListPropertyIdsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.propertyIds = _instance.propertyIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListPropertyIdsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListPropertyIdsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.propertyIds && _instance.propertyIds.length) {\n      _writer.writeRepeatedString(1, _instance.propertyIds);\n    }\n  }\n\n  private _propertyIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListPropertyIdsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListPropertyIdsResponse.AsObject>) {\n    _value = _value || {};\n    this.propertyIds = (_value.propertyIds || []).slice();\n    ListPropertyIdsResponse.refineValues(this);\n  }\n  get propertyIds(): string[] {\n    return this._propertyIds;\n  }\n  set propertyIds(value: string[]) {\n    this._propertyIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListPropertyIdsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListPropertyIdsResponse.AsObject {\n    return {\n      propertyIds: (this.propertyIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListPropertyIdsResponse.AsProtobufJSON {\n    return {\n      propertyIds: (this.propertyIds || []).slice()\n    };\n  }\n}\nexport module ListPropertyIdsResponse {\n  /**\n   * Standard JavaScript object representation for ListPropertyIdsResponse\n   */\n  export interface AsObject {\n    propertyIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListPropertyIdsResponse\n   */\n  export interface AsProtobufJSON {\n    propertyIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListDatastreamIdsOfAllSessionsRequest\n */\nexport class ListDatastreamIdsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListDatastreamIdsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListDatastreamIdsOfAllSessionsRequest();\n    ListDatastreamIdsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListDatastreamIdsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListDatastreamIdsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListDatastreamIdsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListDatastreamIdsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListDatastreamIdsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListDatastreamIdsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    ListDatastreamIdsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListDatastreamIdsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListDatastreamIdsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListDatastreamIdsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ListDatastreamIdsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListDatastreamIdsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListDatastreamIdsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListDatastreamIdsResponse\n */\nexport class ListDatastreamIdsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListDatastreamIdsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListDatastreamIdsResponse();\n    ListDatastreamIdsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListDatastreamIdsResponse) {\n    _instance.datastreamIds = _instance.datastreamIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListDatastreamIdsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.datastreamIds = _instance.datastreamIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListDatastreamIdsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListDatastreamIdsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.datastreamIds && _instance.datastreamIds.length) {\n      _writer.writeRepeatedString(1, _instance.datastreamIds);\n    }\n  }\n\n  private _datastreamIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListDatastreamIdsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListDatastreamIdsResponse.AsObject>) {\n    _value = _value || {};\n    this.datastreamIds = (_value.datastreamIds || []).slice();\n    ListDatastreamIdsResponse.refineValues(this);\n  }\n  get datastreamIds(): string[] {\n    return this._datastreamIds;\n  }\n  set datastreamIds(value: string[]) {\n    this._datastreamIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListDatastreamIdsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListDatastreamIdsResponse.AsObject {\n    return {\n      datastreamIds: (this.datastreamIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListDatastreamIdsResponse.AsProtobufJSON {\n    return {\n      datastreamIds: (this.datastreamIds || []).slice()\n    };\n  }\n}\nexport module ListDatastreamIdsResponse {\n  /**\n   * Standard JavaScript object representation for ListDatastreamIdsResponse\n   */\n  export interface AsObject {\n    datastreamIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListDatastreamIdsResponse\n   */\n  export interface AsProtobufJSON {\n    datastreamIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListOriginIdsOfAllSessionsRequest\n */\nexport class ListOriginIdsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListOriginIdsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListOriginIdsOfAllSessionsRequest();\n    ListOriginIdsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListOriginIdsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListOriginIdsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListOriginIdsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListOriginIdsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListOriginIdsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListOriginIdsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListOriginIdsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListOriginIdsOfAllSessionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListOriginIdsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListOriginIdsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListOriginIdsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListOriginIdsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListOriginIdsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListOriginIdsResponse\n */\nexport class ListOriginIdsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListOriginIdsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListOriginIdsResponse();\n    ListOriginIdsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListOriginIdsResponse) {\n    _instance.originIds = _instance.originIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListOriginIdsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.originIds = _instance.originIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListOriginIdsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListOriginIdsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.originIds && _instance.originIds.length) {\n      _writer.writeRepeatedString(1, _instance.originIds);\n    }\n  }\n\n  private _originIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListOriginIdsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListOriginIdsResponse.AsObject>) {\n    _value = _value || {};\n    this.originIds = (_value.originIds || []).slice();\n    ListOriginIdsResponse.refineValues(this);\n  }\n  get originIds(): string[] {\n    return this._originIds;\n  }\n  set originIds(value: string[]) {\n    this._originIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListOriginIdsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListOriginIdsResponse.AsObject {\n    return {\n      originIds: (this.originIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListOriginIdsResponse.AsProtobufJSON {\n    return {\n      originIds: (this.originIds || []).slice()\n    };\n  }\n}\nexport module ListOriginIdsResponse {\n  /**\n   * Standard JavaScript object representation for ListOriginIdsResponse\n   */\n  export interface AsObject {\n    originIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListOriginIdsResponse\n   */\n  export interface AsProtobufJSON {\n    originIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddSessionLabelsRequest\n */\nexport class AddSessionLabelsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddSessionLabelsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddSessionLabelsRequest();\n    AddSessionLabelsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddSessionLabelsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.labels = _instance.labels || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddSessionLabelsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddSessionLabelsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddSessionLabelsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(2, _instance.labels);\n    }\n  }\n\n  private _sessionId: string;\n  private _labels: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddSessionLabelsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddSessionLabelsRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.labels = (_value.labels || []).slice();\n    AddSessionLabelsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddSessionLabelsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddSessionLabelsRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      labels: (this.labels || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddSessionLabelsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      labels: (this.labels || []).slice()\n    };\n  }\n}\nexport module AddSessionLabelsRequest {\n  /**\n   * Standard JavaScript object representation for AddSessionLabelsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    labels: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for AddSessionLabelsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    labels: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteSessionLabelsRequest\n */\nexport class DeleteSessionLabelsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteSessionLabelsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteSessionLabelsRequest();\n    DeleteSessionLabelsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteSessionLabelsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.labels = _instance.labels || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteSessionLabelsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          (_instance.labels = _instance.labels || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteSessionLabelsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteSessionLabelsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.labels && _instance.labels.length) {\n      _writer.writeRepeatedString(2, _instance.labels);\n    }\n  }\n\n  private _sessionId: string;\n  private _labels: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteSessionLabelsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteSessionLabelsRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.labels = (_value.labels || []).slice();\n    DeleteSessionLabelsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get labels(): string[] {\n    return this._labels;\n  }\n  set labels(value: string[]) {\n    this._labels = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteSessionLabelsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteSessionLabelsRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      labels: (this.labels || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteSessionLabelsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      labels: (this.labels || []).slice()\n    };\n  }\n}\nexport module DeleteSessionLabelsRequest {\n  /**\n   * Standard JavaScript object representation for DeleteSessionLabelsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    labels: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteSessionLabelsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    labels: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddSessionCommentRequest\n */\nexport class AddSessionCommentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddSessionCommentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddSessionCommentRequest();\n    AddSessionCommentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddSessionCommentRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.comment = _instance.comment || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddSessionCommentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.comment = new ondewoNlu006.Comment();\n          _reader.readMessage(\n            _instance.comment,\n            ondewoNlu006.Comment.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddSessionCommentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddSessionCommentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.comment) {\n      _writer.writeMessage(\n        2,\n        _instance.comment as any,\n        ondewoNlu006.Comment.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _comment?: ondewoNlu006.Comment;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddSessionCommentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddSessionCommentRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.comment = _value.comment\n      ? new ondewoNlu006.Comment(_value.comment)\n      : undefined;\n    AddSessionCommentRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get comment(): ondewoNlu006.Comment | undefined {\n    return this._comment;\n  }\n  set comment(value: ondewoNlu006.Comment | undefined) {\n    this._comment = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddSessionCommentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddSessionCommentRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      comment: this.comment ? this.comment.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddSessionCommentRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      comment: this.comment ? this.comment.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module AddSessionCommentRequest {\n  /**\n   * Standard JavaScript object representation for AddSessionCommentRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    comment?: ondewoNlu006.Comment.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for AddSessionCommentRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    comment: ondewoNlu006.Comment.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteSessionCommentsRequest\n */\nexport class DeleteSessionCommentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteSessionCommentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteSessionCommentsRequest();\n    DeleteSessionCommentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteSessionCommentsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.commentNames = _instance.commentNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteSessionCommentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          (_instance.commentNames = _instance.commentNames || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteSessionCommentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteSessionCommentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.commentNames && _instance.commentNames.length) {\n      _writer.writeRepeatedString(2, _instance.commentNames);\n    }\n  }\n\n  private _sessionId: string;\n  private _commentNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteSessionCommentsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteSessionCommentsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.commentNames = (_value.commentNames || []).slice();\n    DeleteSessionCommentsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get commentNames(): string[] {\n    return this._commentNames;\n  }\n  set commentNames(value: string[]) {\n    this._commentNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteSessionCommentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteSessionCommentsRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      commentNames: (this.commentNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteSessionCommentsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      commentNames: (this.commentNames || []).slice()\n    };\n  }\n}\nexport module DeleteSessionCommentsRequest {\n  /**\n   * Standard JavaScript object representation for DeleteSessionCommentsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    commentNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteSessionCommentsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    commentNames: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateSessionCommentsRequest\n */\nexport class UpdateSessionCommentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateSessionCommentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateSessionCommentsRequest();\n    UpdateSessionCommentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateSessionCommentsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.comment = _instance.comment || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateSessionCommentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.comment = new ondewoNlu006.Comment();\n          _reader.readMessage(\n            _instance.comment,\n            ondewoNlu006.Comment.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateSessionCommentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateSessionCommentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.comment) {\n      _writer.writeMessage(\n        2,\n        _instance.comment as any,\n        ondewoNlu006.Comment.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _comment?: ondewoNlu006.Comment;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateSessionCommentsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateSessionCommentsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.comment = _value.comment\n      ? new ondewoNlu006.Comment(_value.comment)\n      : undefined;\n    UpdateSessionCommentsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get comment(): ondewoNlu006.Comment | undefined {\n    return this._comment;\n  }\n  set comment(value: ondewoNlu006.Comment | undefined) {\n    this._comment = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateSessionCommentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateSessionCommentsRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      comment: this.comment ? this.comment.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateSessionCommentsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      comment: this.comment ? this.comment.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module UpdateSessionCommentsRequest {\n  /**\n   * Standard JavaScript object representation for UpdateSessionCommentsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    comment?: ondewoNlu006.Comment.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateSessionCommentsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    comment: ondewoNlu006.Comment.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionCommentsRequest\n */\nexport class ListSessionCommentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionCommentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionCommentsRequest();\n    ListSessionCommentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionCommentsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.isResolved = _instance.isResolved || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionCommentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.isResolved = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionCommentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionCommentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.isResolved) {\n      _writer.writeBool(4, _instance.isResolved);\n    }\n  }\n\n  private _sessionId: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _isResolved: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionCommentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionCommentsRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.isResolved = _value.isResolved;\n    ListSessionCommentsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get isResolved(): boolean {\n    return this._isResolved;\n  }\n  set isResolved(value: boolean) {\n    this._isResolved = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionCommentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionCommentsRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      isResolved: this.isResolved\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionCommentsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      isResolved: this.isResolved\n    };\n  }\n}\nexport module ListSessionCommentsRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionCommentsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    isResolved: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionCommentsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    isResolved: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionCommentsOfAllSessionsRequest\n */\nexport class ListSessionCommentsOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionCommentsOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionCommentsOfAllSessionsRequest();\n    ListSessionCommentsOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionCommentsOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.isResolved = _instance.isResolved || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionCommentsOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.isResolved = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionCommentsOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionCommentsOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.isResolved) {\n      _writer.writeBool(5, _instance.isResolved);\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _isResolved: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionCommentsOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListSessionCommentsOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.isResolved = _value.isResolved;\n    ListSessionCommentsOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get isResolved(): boolean {\n    return this._isResolved;\n  }\n  set isResolved(value: boolean) {\n    this._isResolved = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionCommentsOfAllSessionsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionCommentsOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      isResolved: this.isResolved\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionCommentsOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      isResolved: this.isResolved\n    };\n  }\n}\nexport module ListSessionCommentsOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionCommentsOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    isResolved: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionCommentsOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    isResolved: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionCommentsResponse\n */\nexport class ListSessionCommentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionCommentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionCommentsResponse();\n    ListSessionCommentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionCommentsResponse) {\n    _instance.comment = _instance.comment || [];\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionCommentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ondewoNlu006.Comment();\n          _reader.readMessage(\n            messageInitializer1,\n            ondewoNlu006.Comment.deserializeBinaryFromReader\n          );\n          (_instance.comment = _instance.comment || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionCommentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionCommentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.comment && _instance.comment.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.comment as any,\n        ondewoNlu006.Comment.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n  }\n\n  private _comment?: ondewoNlu006.Comment[];\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionCommentsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionCommentsResponse.AsObject>) {\n    _value = _value || {};\n    this.comment = (_value.comment || []).map(m => new ondewoNlu006.Comment(m));\n    this.pageToken = _value.pageToken;\n    ListSessionCommentsResponse.refineValues(this);\n  }\n  get comment(): ondewoNlu006.Comment[] | undefined {\n    return this._comment;\n  }\n  set comment(value: ondewoNlu006.Comment[] | undefined) {\n    this._comment = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionCommentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionCommentsResponse.AsObject {\n    return {\n      comment: (this.comment || []).map(m => m.toObject()),\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionCommentsResponse.AsProtobufJSON {\n    return {\n      comment: (this.comment || []).map(m => m.toProtobufJSON(options)),\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListSessionCommentsResponse {\n  /**\n   * Standard JavaScript object representation for ListSessionCommentsResponse\n   */\n  export interface AsObject {\n    comment?: ondewoNlu006.Comment.AsObject[];\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionCommentsResponse\n   */\n  export interface AsProtobufJSON {\n    comment: ondewoNlu006.Comment.AsProtobufJSON[] | null;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SessionFeedback\n */\nexport class SessionFeedback implements GrpcMessage {\n  static id = 'ondewo.nlu.SessionFeedback';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SessionFeedback();\n    SessionFeedback.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SessionFeedback) {\n    _instance.name = _instance.name || '';\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.sessionStepId = _instance.sessionStepId || '';\n    _instance.responseId = _instance.responseId || '';\n    _instance.sessionStepLlmTelemetryId =\n      _instance.sessionStepLlmTelemetryId || '';\n    _instance.rating = _instance.rating || 0;\n    _instance.categoricalValue = _instance.categoricalValue || '';\n    _instance.score = _instance.score || 0;\n    _instance.comment = _instance.comment || '';\n    _instance.criterion = _instance.criterion || '';\n    _instance.authorType = _instance.authorType || 0;\n    _instance.annotatorUserId = _instance.annotatorUserId || '';\n    _instance.originId = _instance.originId || '';\n    _instance.identifiedUserId = _instance.identifiedUserId || '';\n    _instance.raw = _instance.raw || undefined;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SessionFeedback,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 3:\n          _instance.sessionStepId = _reader.readString();\n          break;\n        case 4:\n          _instance.responseId = _reader.readString();\n          break;\n        case 5:\n          _instance.sessionStepLlmTelemetryId = _reader.readString();\n          break;\n        case 6:\n          _instance.rating = _reader.readEnum();\n          break;\n        case 7:\n          _instance.categoricalValue = _reader.readString();\n          break;\n        case 8:\n          _instance.score = _reader.readFloat();\n          break;\n        case 9:\n          _instance.comment = _reader.readString();\n          break;\n        case 10:\n          _instance.criterion = _reader.readString();\n          break;\n        case 11:\n          _instance.authorType = _reader.readEnum();\n          break;\n        case 12:\n          _instance.annotatorUserId = _reader.readString();\n          break;\n        case 13:\n          _instance.originId = _reader.readString();\n          break;\n        case 14:\n          _instance.identifiedUserId = _reader.readString();\n          break;\n        case 15:\n          _instance.raw = new googleProtobuf004.Struct();\n          _reader.readMessage(\n            _instance.raw,\n            googleProtobuf004.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 16:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 17:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 18:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 19:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SessionFeedback.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SessionFeedback,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.sessionId) {\n      _writer.writeString(2, _instance.sessionId);\n    }\n    if (_instance.sessionStepId) {\n      _writer.writeString(3, _instance.sessionStepId);\n    }\n    if (_instance.responseId) {\n      _writer.writeString(4, _instance.responseId);\n    }\n    if (_instance.sessionStepLlmTelemetryId) {\n      _writer.writeString(5, _instance.sessionStepLlmTelemetryId);\n    }\n    if (_instance.rating) {\n      _writer.writeEnum(6, _instance.rating);\n    }\n    if (_instance.categoricalValue) {\n      _writer.writeString(7, _instance.categoricalValue);\n    }\n    if (_instance.score) {\n      _writer.writeFloat(8, _instance.score);\n    }\n    if (_instance.comment) {\n      _writer.writeString(9, _instance.comment);\n    }\n    if (_instance.criterion) {\n      _writer.writeString(10, _instance.criterion);\n    }\n    if (_instance.authorType) {\n      _writer.writeEnum(11, _instance.authorType);\n    }\n    if (_instance.annotatorUserId) {\n      _writer.writeString(12, _instance.annotatorUserId);\n    }\n    if (_instance.originId) {\n      _writer.writeString(13, _instance.originId);\n    }\n    if (_instance.identifiedUserId) {\n      _writer.writeString(14, _instance.identifiedUserId);\n    }\n    if (_instance.raw) {\n      _writer.writeMessage(\n        15,\n        _instance.raw as any,\n        googleProtobuf004.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        16,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        17,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(18, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(19, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _sessionId: string;\n  private _sessionStepId: string;\n  private _responseId: string;\n  private _sessionStepLlmTelemetryId: string;\n  private _rating: FeedbackRating;\n  private _categoricalValue: string;\n  private _score: number;\n  private _comment: string;\n  private _criterion: string;\n  private _authorType: FeedbackAuthorType;\n  private _annotatorUserId: string;\n  private _originId: string;\n  private _identifiedUserId: string;\n  private _raw?: googleProtobuf004.Struct;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SessionFeedback to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SessionFeedback.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.sessionId = _value.sessionId;\n    this.sessionStepId = _value.sessionStepId;\n    this.responseId = _value.responseId;\n    this.sessionStepLlmTelemetryId = _value.sessionStepLlmTelemetryId;\n    this.rating = _value.rating;\n    this.categoricalValue = _value.categoricalValue;\n    this.score = _value.score;\n    this.comment = _value.comment;\n    this.criterion = _value.criterion;\n    this.authorType = _value.authorType;\n    this.annotatorUserId = _value.annotatorUserId;\n    this.originId = _value.originId;\n    this.identifiedUserId = _value.identifiedUserId;\n    this.raw = _value.raw\n      ? new googleProtobuf004.Struct(_value.raw)\n      : undefined;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    SessionFeedback.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get sessionStepId(): string {\n    return this._sessionStepId;\n  }\n  set sessionStepId(value: string) {\n    this._sessionStepId = value;\n  }\n  get responseId(): string {\n    return this._responseId;\n  }\n  set responseId(value: string) {\n    this._responseId = value;\n  }\n  get sessionStepLlmTelemetryId(): string {\n    return this._sessionStepLlmTelemetryId;\n  }\n  set sessionStepLlmTelemetryId(value: string) {\n    this._sessionStepLlmTelemetryId = value;\n  }\n  get rating(): FeedbackRating {\n    return this._rating;\n  }\n  set rating(value: FeedbackRating) {\n    this._rating = value;\n  }\n  get categoricalValue(): string {\n    return this._categoricalValue;\n  }\n  set categoricalValue(value: string) {\n    this._categoricalValue = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n  get comment(): string {\n    return this._comment;\n  }\n  set comment(value: string) {\n    this._comment = value;\n  }\n  get criterion(): string {\n    return this._criterion;\n  }\n  set criterion(value: string) {\n    this._criterion = value;\n  }\n  get authorType(): FeedbackAuthorType {\n    return this._authorType;\n  }\n  set authorType(value: FeedbackAuthorType) {\n    this._authorType = value;\n  }\n  get annotatorUserId(): string {\n    return this._annotatorUserId;\n  }\n  set annotatorUserId(value: string) {\n    this._annotatorUserId = value;\n  }\n  get originId(): string {\n    return this._originId;\n  }\n  set originId(value: string) {\n    this._originId = value;\n  }\n  get identifiedUserId(): string {\n    return this._identifiedUserId;\n  }\n  set identifiedUserId(value: string) {\n    this._identifiedUserId = value;\n  }\n  get raw(): googleProtobuf004.Struct | undefined {\n    return this._raw;\n  }\n  set raw(value: googleProtobuf004.Struct | undefined) {\n    this._raw = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SessionFeedback.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SessionFeedback.AsObject {\n    return {\n      name: this.name,\n      sessionId: this.sessionId,\n      sessionStepId: this.sessionStepId,\n      responseId: this.responseId,\n      sessionStepLlmTelemetryId: this.sessionStepLlmTelemetryId,\n      rating: this.rating,\n      categoricalValue: this.categoricalValue,\n      score: this.score,\n      comment: this.comment,\n      criterion: this.criterion,\n      authorType: this.authorType,\n      annotatorUserId: this.annotatorUserId,\n      originId: this.originId,\n      identifiedUserId: this.identifiedUserId,\n      raw: this.raw ? this.raw.toObject() : undefined,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SessionFeedback.AsProtobufJSON {\n    return {\n      name: this.name,\n      sessionId: this.sessionId,\n      sessionStepId: this.sessionStepId,\n      responseId: this.responseId,\n      sessionStepLlmTelemetryId: this.sessionStepLlmTelemetryId,\n      rating:\n        FeedbackRating[\n          this.rating === null || this.rating === undefined ? 0 : this.rating\n        ],\n      categoricalValue: this.categoricalValue,\n      score: this.score,\n      comment: this.comment,\n      criterion: this.criterion,\n      authorType:\n        FeedbackAuthorType[\n          this.authorType === null || this.authorType === undefined\n            ? 0\n            : this.authorType\n        ],\n      annotatorUserId: this.annotatorUserId,\n      originId: this.originId,\n      identifiedUserId: this.identifiedUserId,\n      raw: this.raw ? this.raw.toProtobufJSON(options) : null,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module SessionFeedback {\n  /**\n   * Standard JavaScript object representation for SessionFeedback\n   */\n  export interface AsObject {\n    name: string;\n    sessionId: string;\n    sessionStepId: string;\n    responseId: string;\n    sessionStepLlmTelemetryId: string;\n    rating: FeedbackRating;\n    categoricalValue: string;\n    score: number;\n    comment: string;\n    criterion: string;\n    authorType: FeedbackAuthorType;\n    annotatorUserId: string;\n    originId: string;\n    identifiedUserId: string;\n    raw?: googleProtobuf004.Struct.AsObject;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for SessionFeedback\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    sessionId: string;\n    sessionStepId: string;\n    responseId: string;\n    sessionStepLlmTelemetryId: string;\n    rating: string;\n    categoricalValue: string;\n    score: number;\n    comment: string;\n    criterion: string;\n    authorType: string;\n    annotatorUserId: string;\n    originId: string;\n    identifiedUserId: string;\n    raw: googleProtobuf004.Struct.AsProtobufJSON | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddSessionFeedbackRequest\n */\nexport class AddSessionFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddSessionFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddSessionFeedbackRequest();\n    AddSessionFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddSessionFeedbackRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.feedback = _instance.feedback || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddSessionFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.feedback = new SessionFeedback();\n          _reader.readMessage(\n            _instance.feedback,\n            SessionFeedback.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddSessionFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddSessionFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.feedback) {\n      _writer.writeMessage(\n        2,\n        _instance.feedback as any,\n        SessionFeedback.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _feedback?: SessionFeedback;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddSessionFeedbackRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddSessionFeedbackRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.feedback = _value.feedback\n      ? new SessionFeedback(_value.feedback)\n      : undefined;\n    AddSessionFeedbackRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get feedback(): SessionFeedback | undefined {\n    return this._feedback;\n  }\n  set feedback(value: SessionFeedback | undefined) {\n    this._feedback = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddSessionFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddSessionFeedbackRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      feedback: this.feedback ? this.feedback.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddSessionFeedbackRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      feedback: this.feedback ? this.feedback.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module AddSessionFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for AddSessionFeedbackRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    feedback?: SessionFeedback.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for AddSessionFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    feedback: SessionFeedback.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddSessionStepFeedbackRequest\n */\nexport class AddSessionStepFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddSessionStepFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddSessionStepFeedbackRequest();\n    AddSessionStepFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddSessionStepFeedbackRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.sessionStepId = _instance.sessionStepId || '';\n    _instance.feedback = _instance.feedback || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddSessionStepFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionStepId = _reader.readString();\n          break;\n        case 3:\n          _instance.feedback = new SessionFeedback();\n          _reader.readMessage(\n            _instance.feedback,\n            SessionFeedback.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddSessionStepFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddSessionStepFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.sessionStepId) {\n      _writer.writeString(2, _instance.sessionStepId);\n    }\n    if (_instance.feedback) {\n      _writer.writeMessage(\n        3,\n        _instance.feedback as any,\n        SessionFeedback.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _sessionStepId: string;\n  private _feedback?: SessionFeedback;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddSessionStepFeedbackRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<AddSessionStepFeedbackRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.sessionStepId = _value.sessionStepId;\n    this.feedback = _value.feedback\n      ? new SessionFeedback(_value.feedback)\n      : undefined;\n    AddSessionStepFeedbackRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get sessionStepId(): string {\n    return this._sessionStepId;\n  }\n  set sessionStepId(value: string) {\n    this._sessionStepId = value;\n  }\n  get feedback(): SessionFeedback | undefined {\n    return this._feedback;\n  }\n  set feedback(value: SessionFeedback | undefined) {\n    this._feedback = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddSessionStepFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddSessionStepFeedbackRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      sessionStepId: this.sessionStepId,\n      feedback: this.feedback ? this.feedback.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddSessionStepFeedbackRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      sessionStepId: this.sessionStepId,\n      feedback: this.feedback ? this.feedback.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module AddSessionStepFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for AddSessionStepFeedbackRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    sessionStepId: string;\n    feedback?: SessionFeedback.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for AddSessionStepFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    sessionStepId: string;\n    feedback: SessionFeedback.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionFeedbackRequest\n */\nexport class GetSessionFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionFeedbackRequest();\n    GetSessionFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionFeedbackRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionFeedbackRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetSessionFeedbackRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetSessionFeedbackRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionFeedbackRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionFeedbackRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetSessionFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for GetSessionFeedbackRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateSessionFeedbackRequest\n */\nexport class UpdateSessionFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateSessionFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateSessionFeedbackRequest();\n    UpdateSessionFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateSessionFeedbackRequest) {\n    _instance.feedback = _instance.feedback || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateSessionFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.feedback = new SessionFeedback();\n          _reader.readMessage(\n            _instance.feedback,\n            SessionFeedback.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateSessionFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateSessionFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.feedback) {\n      _writer.writeMessage(\n        1,\n        _instance.feedback as any,\n        SessionFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _feedback?: SessionFeedback;\n  private _updateMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateSessionFeedbackRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateSessionFeedbackRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.feedback = _value.feedback\n      ? new SessionFeedback(_value.feedback)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf003.FieldMask(_value.updateMask)\n      : undefined;\n    UpdateSessionFeedbackRequest.refineValues(this);\n  }\n  get feedback(): SessionFeedback | undefined {\n    return this._feedback;\n  }\n  set feedback(value: SessionFeedback | undefined) {\n    this._feedback = value;\n  }\n  get updateMask(): googleProtobuf003.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateSessionFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateSessionFeedbackRequest.AsObject {\n    return {\n      feedback: this.feedback ? this.feedback.toObject() : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateSessionFeedbackRequest.AsProtobufJSON {\n    return {\n      feedback: this.feedback ? this.feedback.toProtobufJSON(options) : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module UpdateSessionFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for UpdateSessionFeedbackRequest\n   */\n  export interface AsObject {\n    feedback?: SessionFeedback.AsObject;\n    updateMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateSessionFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    feedback: SessionFeedback.AsProtobufJSON | null;\n    updateMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteSessionFeedbackRequest\n */\nexport class DeleteSessionFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteSessionFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteSessionFeedbackRequest();\n    DeleteSessionFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteSessionFeedbackRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteSessionFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteSessionFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteSessionFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteSessionFeedbackRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteSessionFeedbackRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteSessionFeedbackRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteSessionFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteSessionFeedbackRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteSessionFeedbackRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteSessionFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for DeleteSessionFeedbackRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteSessionFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionFeedbackRequest\n */\nexport class ListSessionFeedbackRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionFeedbackRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionFeedbackRequest();\n    ListSessionFeedbackRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionFeedbackRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionFeedbackRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionFeedbackRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionFeedbackRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionFeedbackRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionFeedbackRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListSessionFeedbackRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionFeedbackRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionFeedbackRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionFeedbackRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListSessionFeedbackRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionFeedbackRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionFeedbackRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionFeedbackOfAllSessionsRequest\n */\nexport class ListSessionFeedbackOfAllSessionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionFeedbackOfAllSessionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionFeedbackOfAllSessionsRequest();\n    ListSessionFeedbackOfAllSessionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionFeedbackOfAllSessionsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.feedbackFilter = _instance.feedbackFilter || undefined;\n    _instance.orderBy = _instance.orderBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionFeedbackOfAllSessionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.feedbackFilter = new FeedbackFilter();\n          _reader.readMessage(\n            _instance.feedbackFilter,\n            FeedbackFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.orderBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionFeedbackOfAllSessionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionFeedbackOfAllSessionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.feedbackFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.feedbackFilter as any,\n        FeedbackFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.orderBy) {\n      _writer.writeString(6, _instance.orderBy);\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _feedbackFilter?: FeedbackFilter;\n  private _orderBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionFeedbackOfAllSessionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListSessionFeedbackOfAllSessionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.feedbackFilter = _value.feedbackFilter\n      ? new FeedbackFilter(_value.feedbackFilter)\n      : undefined;\n    this.orderBy = _value.orderBy;\n    ListSessionFeedbackOfAllSessionsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get feedbackFilter(): FeedbackFilter | undefined {\n    return this._feedbackFilter;\n  }\n  set feedbackFilter(value: FeedbackFilter | undefined) {\n    this._feedbackFilter = value;\n  }\n  get orderBy(): string {\n    return this._orderBy;\n  }\n  set orderBy(value: string) {\n    this._orderBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionFeedbackOfAllSessionsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionFeedbackOfAllSessionsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      feedbackFilter: this.feedbackFilter\n        ? this.feedbackFilter.toObject()\n        : undefined,\n      orderBy: this.orderBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionFeedbackOfAllSessionsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      feedbackFilter: this.feedbackFilter\n        ? this.feedbackFilter.toProtobufJSON(options)\n        : null,\n      orderBy: this.orderBy\n    };\n  }\n}\nexport module ListSessionFeedbackOfAllSessionsRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionFeedbackOfAllSessionsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    pageToken: string;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    feedbackFilter?: FeedbackFilter.AsObject;\n    orderBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionFeedbackOfAllSessionsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    pageToken: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    feedbackFilter: FeedbackFilter.AsProtobufJSON | null;\n    orderBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionFeedbackResponse\n */\nexport class ListSessionFeedbackResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionFeedbackResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionFeedbackResponse();\n    ListSessionFeedbackResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionFeedbackResponse) {\n    _instance.feedback = _instance.feedback || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n    _instance.totalCount = _instance.totalCount || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionFeedbackResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new SessionFeedback();\n          _reader.readMessage(\n            messageInitializer1,\n            SessionFeedback.deserializeBinaryFromReader\n          );\n          (_instance.feedback = _instance.feedback || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.totalCount = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionFeedbackResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionFeedbackResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.feedback && _instance.feedback.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.feedback as any,\n        SessionFeedback.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n    if (_instance.totalCount) {\n      _writer.writeInt32(3, _instance.totalCount);\n    }\n  }\n\n  private _feedback?: SessionFeedback[];\n  private _nextPageToken: string;\n  private _totalCount: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionFeedbackResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionFeedbackResponse.AsObject>) {\n    _value = _value || {};\n    this.feedback = (_value.feedback || []).map(m => new SessionFeedback(m));\n    this.nextPageToken = _value.nextPageToken;\n    this.totalCount = _value.totalCount;\n    ListSessionFeedbackResponse.refineValues(this);\n  }\n  get feedback(): SessionFeedback[] | undefined {\n    return this._feedback;\n  }\n  set feedback(value: SessionFeedback[] | undefined) {\n    this._feedback = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n  get totalCount(): number {\n    return this._totalCount;\n  }\n  set totalCount(value: number) {\n    this._totalCount = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionFeedbackResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionFeedbackResponse.AsObject {\n    return {\n      feedback: (this.feedback || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken,\n      totalCount: this.totalCount\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionFeedbackResponse.AsProtobufJSON {\n    return {\n      feedback: (this.feedback || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken,\n      totalCount: this.totalCount\n    };\n  }\n}\nexport module ListSessionFeedbackResponse {\n  /**\n   * Standard JavaScript object representation for ListSessionFeedbackResponse\n   */\n  export interface AsObject {\n    feedback?: SessionFeedback.AsObject[];\n    nextPageToken: string;\n    totalCount: number;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionFeedbackResponse\n   */\n  export interface AsProtobufJSON {\n    feedback: SessionFeedback.AsProtobufJSON[] | null;\n    nextPageToken: string;\n    totalCount: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FeedbackFilter\n */\nexport class FeedbackFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.FeedbackFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FeedbackFilter();\n    FeedbackFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FeedbackFilter) {\n    _instance.ratings = _instance.ratings || [];\n    _instance.authorTypes = _instance.authorTypes || [];\n    _instance.hasComment = _instance.hasComment || false;\n    _instance.earliest = _instance.earliest || undefined;\n    _instance.latest = _instance.latest || undefined;\n    _instance.criteria = _instance.criteria || [];\n    _instance.languageCodes = _instance.languageCodes || [];\n    _instance.annotatorUserIds = _instance.annotatorUserIds || [];\n    _instance.originIds = _instance.originIds || [];\n    _instance.scoreMin = _instance.scoreMin || 0;\n    _instance.scoreMax = _instance.scoreMax || 0;\n    _instance.scope = _instance.scope || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FeedbackFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _reader.readPackableEnumInto(\n            (_instance.ratings = _instance.ratings || [])\n          );\n          break;\n        case 2:\n          _reader.readPackableEnumInto(\n            (_instance.authorTypes = _instance.authorTypes || [])\n          );\n          break;\n        case 3:\n          _instance.hasComment = _reader.readBool();\n          break;\n        case 4:\n          _instance.earliest = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.earliest,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.latest = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.latest,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          (_instance.criteria = _instance.criteria || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 8:\n          (_instance.annotatorUserIds = _instance.annotatorUserIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          (_instance.originIds = _instance.originIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 10:\n          _instance.scoreMin = _reader.readFloat();\n          break;\n        case 11:\n          _instance.scoreMax = _reader.readFloat();\n          break;\n        case 12:\n          _instance.scope = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FeedbackFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FeedbackFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ratings && _instance.ratings.length) {\n      _writer.writePackedEnum(1, _instance.ratings);\n    }\n    if (_instance.authorTypes && _instance.authorTypes.length) {\n      _writer.writePackedEnum(2, _instance.authorTypes);\n    }\n    if (_instance.hasComment) {\n      _writer.writeBool(3, _instance.hasComment);\n    }\n    if (_instance.earliest) {\n      _writer.writeMessage(\n        4,\n        _instance.earliest as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.latest) {\n      _writer.writeMessage(\n        5,\n        _instance.latest as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.criteria && _instance.criteria.length) {\n      _writer.writeRepeatedString(6, _instance.criteria);\n    }\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(7, _instance.languageCodes);\n    }\n    if (_instance.annotatorUserIds && _instance.annotatorUserIds.length) {\n      _writer.writeRepeatedString(8, _instance.annotatorUserIds);\n    }\n    if (_instance.originIds && _instance.originIds.length) {\n      _writer.writeRepeatedString(9, _instance.originIds);\n    }\n    if (_instance.scoreMin) {\n      _writer.writeFloat(10, _instance.scoreMin);\n    }\n    if (_instance.scoreMax) {\n      _writer.writeFloat(11, _instance.scoreMax);\n    }\n    if (_instance.scope) {\n      _writer.writeEnum(12, _instance.scope);\n    }\n  }\n\n  private _ratings: FeedbackRating[];\n  private _authorTypes: FeedbackAuthorType[];\n  private _hasComment: boolean;\n  private _earliest?: googleProtobuf005.Timestamp;\n  private _latest?: googleProtobuf005.Timestamp;\n  private _criteria: string[];\n  private _languageCodes: string[];\n  private _annotatorUserIds: string[];\n  private _originIds: string[];\n  private _scoreMin: number;\n  private _scoreMax: number;\n  private _scope: FeedbackScope;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FeedbackFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<FeedbackFilter.AsObject>) {\n    _value = _value || {};\n    this.ratings = (_value.ratings || []).slice();\n    this.authorTypes = (_value.authorTypes || []).slice();\n    this.hasComment = _value.hasComment;\n    this.earliest = _value.earliest\n      ? new googleProtobuf005.Timestamp(_value.earliest)\n      : undefined;\n    this.latest = _value.latest\n      ? new googleProtobuf005.Timestamp(_value.latest)\n      : undefined;\n    this.criteria = (_value.criteria || []).slice();\n    this.languageCodes = (_value.languageCodes || []).slice();\n    this.annotatorUserIds = (_value.annotatorUserIds || []).slice();\n    this.originIds = (_value.originIds || []).slice();\n    this.scoreMin = _value.scoreMin;\n    this.scoreMax = _value.scoreMax;\n    this.scope = _value.scope;\n    FeedbackFilter.refineValues(this);\n  }\n  get ratings(): FeedbackRating[] {\n    return this._ratings;\n  }\n  set ratings(value: FeedbackRating[]) {\n    this._ratings = value;\n  }\n  get authorTypes(): FeedbackAuthorType[] {\n    return this._authorTypes;\n  }\n  set authorTypes(value: FeedbackAuthorType[]) {\n    this._authorTypes = value;\n  }\n  get hasComment(): boolean {\n    return this._hasComment;\n  }\n  set hasComment(value: boolean) {\n    this._hasComment = value;\n  }\n  get earliest(): googleProtobuf005.Timestamp | undefined {\n    return this._earliest;\n  }\n  set earliest(value: googleProtobuf005.Timestamp | undefined) {\n    this._earliest = value;\n  }\n  get latest(): googleProtobuf005.Timestamp | undefined {\n    return this._latest;\n  }\n  set latest(value: googleProtobuf005.Timestamp | undefined) {\n    this._latest = value;\n  }\n  get criteria(): string[] {\n    return this._criteria;\n  }\n  set criteria(value: string[]) {\n    this._criteria = value;\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n  get annotatorUserIds(): string[] {\n    return this._annotatorUserIds;\n  }\n  set annotatorUserIds(value: string[]) {\n    this._annotatorUserIds = value;\n  }\n  get originIds(): string[] {\n    return this._originIds;\n  }\n  set originIds(value: string[]) {\n    this._originIds = value;\n  }\n  get scoreMin(): number {\n    return this._scoreMin;\n  }\n  set scoreMin(value: number) {\n    this._scoreMin = value;\n  }\n  get scoreMax(): number {\n    return this._scoreMax;\n  }\n  set scoreMax(value: number) {\n    this._scoreMax = value;\n  }\n  get scope(): FeedbackScope {\n    return this._scope;\n  }\n  set scope(value: FeedbackScope) {\n    this._scope = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FeedbackFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FeedbackFilter.AsObject {\n    return {\n      ratings: (this.ratings || []).slice(),\n      authorTypes: (this.authorTypes || []).slice(),\n      hasComment: this.hasComment,\n      earliest: this.earliest ? this.earliest.toObject() : undefined,\n      latest: this.latest ? this.latest.toObject() : undefined,\n      criteria: (this.criteria || []).slice(),\n      languageCodes: (this.languageCodes || []).slice(),\n      annotatorUserIds: (this.annotatorUserIds || []).slice(),\n      originIds: (this.originIds || []).slice(),\n      scoreMin: this.scoreMin,\n      scoreMax: this.scoreMax,\n      scope: this.scope\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FeedbackFilter.AsProtobufJSON {\n    return {\n      ratings: (this.ratings || []).map(v => FeedbackRating[v]),\n      authorTypes: (this.authorTypes || []).map(v => FeedbackAuthorType[v]),\n      hasComment: this.hasComment,\n      earliest: this.earliest ? this.earliest.toProtobufJSON(options) : null,\n      latest: this.latest ? this.latest.toProtobufJSON(options) : null,\n      criteria: (this.criteria || []).slice(),\n      languageCodes: (this.languageCodes || []).slice(),\n      annotatorUserIds: (this.annotatorUserIds || []).slice(),\n      originIds: (this.originIds || []).slice(),\n      scoreMin: this.scoreMin,\n      scoreMax: this.scoreMax,\n      scope:\n        FeedbackScope[\n          this.scope === null || this.scope === undefined ? 0 : this.scope\n        ]\n    };\n  }\n}\nexport module FeedbackFilter {\n  /**\n   * Standard JavaScript object representation for FeedbackFilter\n   */\n  export interface AsObject {\n    ratings: FeedbackRating[];\n    authorTypes: FeedbackAuthorType[];\n    hasComment: boolean;\n    earliest?: googleProtobuf005.Timestamp.AsObject;\n    latest?: googleProtobuf005.Timestamp.AsObject;\n    criteria: string[];\n    languageCodes: string[];\n    annotatorUserIds: string[];\n    originIds: string[];\n    scoreMin: number;\n    scoreMax: number;\n    scope: FeedbackScope;\n  }\n\n  /**\n   * Protobuf JSON representation for FeedbackFilter\n   */\n  export interface AsProtobufJSON {\n    ratings: string[];\n    authorTypes: string[];\n    hasComment: boolean;\n    earliest: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    latest: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    criteria: string[];\n    languageCodes: string[];\n    annotatorUserIds: string[];\n    originIds: string[];\n    scoreMin: number;\n    scoreMax: number;\n    scope: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FeedbackBreakdownBucket\n */\nexport class FeedbackBreakdownBucket implements GrpcMessage {\n  static id = 'ondewo.nlu.FeedbackBreakdownBucket';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FeedbackBreakdownBucket();\n    FeedbackBreakdownBucket.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FeedbackBreakdownBucket) {\n    _instance.key = _instance.key || '';\n    _instance.thumbsUpCount = _instance.thumbsUpCount || 0;\n    _instance.thumbsDownCount = _instance.thumbsDownCount || 0;\n    _instance.total = _instance.total || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FeedbackBreakdownBucket,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.key = _reader.readString();\n          break;\n        case 2:\n          _instance.thumbsUpCount = _reader.readInt32();\n          break;\n        case 3:\n          _instance.thumbsDownCount = _reader.readInt32();\n          break;\n        case 4:\n          _instance.total = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FeedbackBreakdownBucket.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FeedbackBreakdownBucket,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.key) {\n      _writer.writeString(1, _instance.key);\n    }\n    if (_instance.thumbsUpCount) {\n      _writer.writeInt32(2, _instance.thumbsUpCount);\n    }\n    if (_instance.thumbsDownCount) {\n      _writer.writeInt32(3, _instance.thumbsDownCount);\n    }\n    if (_instance.total) {\n      _writer.writeInt32(4, _instance.total);\n    }\n  }\n\n  private _key: string;\n  private _thumbsUpCount: number;\n  private _thumbsDownCount: number;\n  private _total: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FeedbackBreakdownBucket to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<FeedbackBreakdownBucket.AsObject>) {\n    _value = _value || {};\n    this.key = _value.key;\n    this.thumbsUpCount = _value.thumbsUpCount;\n    this.thumbsDownCount = _value.thumbsDownCount;\n    this.total = _value.total;\n    FeedbackBreakdownBucket.refineValues(this);\n  }\n  get key(): string {\n    return this._key;\n  }\n  set key(value: string) {\n    this._key = value;\n  }\n  get thumbsUpCount(): number {\n    return this._thumbsUpCount;\n  }\n  set thumbsUpCount(value: number) {\n    this._thumbsUpCount = value;\n  }\n  get thumbsDownCount(): number {\n    return this._thumbsDownCount;\n  }\n  set thumbsDownCount(value: number) {\n    this._thumbsDownCount = value;\n  }\n  get total(): number {\n    return this._total;\n  }\n  set total(value: number) {\n    this._total = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FeedbackBreakdownBucket.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FeedbackBreakdownBucket.AsObject {\n    return {\n      key: this.key,\n      thumbsUpCount: this.thumbsUpCount,\n      thumbsDownCount: this.thumbsDownCount,\n      total: this.total\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FeedbackBreakdownBucket.AsProtobufJSON {\n    return {\n      key: this.key,\n      thumbsUpCount: this.thumbsUpCount,\n      thumbsDownCount: this.thumbsDownCount,\n      total: this.total\n    };\n  }\n}\nexport module FeedbackBreakdownBucket {\n  /**\n   * Standard JavaScript object representation for FeedbackBreakdownBucket\n   */\n  export interface AsObject {\n    key: string;\n    thumbsUpCount: number;\n    thumbsDownCount: number;\n    total: number;\n  }\n\n  /**\n   * Protobuf JSON representation for FeedbackBreakdownBucket\n   */\n  export interface AsProtobufJSON {\n    key: string;\n    thumbsUpCount: number;\n    thumbsDownCount: number;\n    total: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FeedbackStatistics\n */\nexport class FeedbackStatistics implements GrpcMessage {\n  static id = 'ondewo.nlu.FeedbackStatistics';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FeedbackStatistics();\n    FeedbackStatistics.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FeedbackStatistics) {\n    _instance.totalFeedback = _instance.totalFeedback || 0;\n    _instance.thumbsUpCount = _instance.thumbsUpCount || 0;\n    _instance.thumbsDownCount = _instance.thumbsDownCount || 0;\n    _instance.sessionLevelCount = _instance.sessionLevelCount || 0;\n    _instance.sessionStepLevelCount = _instance.sessionStepLevelCount || 0;\n    _instance.commentCount = _instance.commentCount || 0;\n    _instance.sessionReviewCount = _instance.sessionReviewCount || 0;\n    _instance.sessionCommentCount = _instance.sessionCommentCount || 0;\n    _instance.byLanguage = _instance.byLanguage || [];\n    _instance.byIntent = _instance.byIntent || [];\n    _instance.byAuthorType = _instance.byAuthorType || [];\n    _instance.unspecifiedRatingCount = _instance.unspecifiedRatingCount || 0;\n    _instance.scoredCount = _instance.scoredCount || 0;\n    _instance.averageScore = _instance.averageScore || 0;\n    _instance.byOrigin = _instance.byOrigin || [];\n    _instance.byCriterion = _instance.byCriterion || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FeedbackStatistics,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.totalFeedback = _reader.readInt32();\n          break;\n        case 2:\n          _instance.thumbsUpCount = _reader.readInt32();\n          break;\n        case 3:\n          _instance.thumbsDownCount = _reader.readInt32();\n          break;\n        case 4:\n          _instance.sessionLevelCount = _reader.readInt32();\n          break;\n        case 5:\n          _instance.sessionStepLevelCount = _reader.readInt32();\n          break;\n        case 6:\n          _instance.commentCount = _reader.readInt32();\n          break;\n        case 7:\n          _instance.sessionReviewCount = _reader.readInt32();\n          break;\n        case 8:\n          _instance.sessionCommentCount = _reader.readInt32();\n          break;\n        case 9:\n          const messageInitializer9 = new FeedbackBreakdownBucket();\n          _reader.readMessage(\n            messageInitializer9,\n            FeedbackBreakdownBucket.deserializeBinaryFromReader\n          );\n          (_instance.byLanguage = _instance.byLanguage || []).push(\n            messageInitializer9\n          );\n          break;\n        case 10:\n          const messageInitializer10 = new FeedbackBreakdownBucket();\n          _reader.readMessage(\n            messageInitializer10,\n            FeedbackBreakdownBucket.deserializeBinaryFromReader\n          );\n          (_instance.byIntent = _instance.byIntent || []).push(\n            messageInitializer10\n          );\n          break;\n        case 11:\n          const messageInitializer11 = new FeedbackBreakdownBucket();\n          _reader.readMessage(\n            messageInitializer11,\n            FeedbackBreakdownBucket.deserializeBinaryFromReader\n          );\n          (_instance.byAuthorType = _instance.byAuthorType || []).push(\n            messageInitializer11\n          );\n          break;\n        case 12:\n          _instance.unspecifiedRatingCount = _reader.readInt32();\n          break;\n        case 13:\n          _instance.scoredCount = _reader.readInt32();\n          break;\n        case 14:\n          _instance.averageScore = _reader.readFloat();\n          break;\n        case 15:\n          const messageInitializer15 = new FeedbackBreakdownBucket();\n          _reader.readMessage(\n            messageInitializer15,\n            FeedbackBreakdownBucket.deserializeBinaryFromReader\n          );\n          (_instance.byOrigin = _instance.byOrigin || []).push(\n            messageInitializer15\n          );\n          break;\n        case 16:\n          const messageInitializer16 = new FeedbackBreakdownBucket();\n          _reader.readMessage(\n            messageInitializer16,\n            FeedbackBreakdownBucket.deserializeBinaryFromReader\n          );\n          (_instance.byCriterion = _instance.byCriterion || []).push(\n            messageInitializer16\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FeedbackStatistics.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FeedbackStatistics,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.totalFeedback) {\n      _writer.writeInt32(1, _instance.totalFeedback);\n    }\n    if (_instance.thumbsUpCount) {\n      _writer.writeInt32(2, _instance.thumbsUpCount);\n    }\n    if (_instance.thumbsDownCount) {\n      _writer.writeInt32(3, _instance.thumbsDownCount);\n    }\n    if (_instance.sessionLevelCount) {\n      _writer.writeInt32(4, _instance.sessionLevelCount);\n    }\n    if (_instance.sessionStepLevelCount) {\n      _writer.writeInt32(5, _instance.sessionStepLevelCount);\n    }\n    if (_instance.commentCount) {\n      _writer.writeInt32(6, _instance.commentCount);\n    }\n    if (_instance.sessionReviewCount) {\n      _writer.writeInt32(7, _instance.sessionReviewCount);\n    }\n    if (_instance.sessionCommentCount) {\n      _writer.writeInt32(8, _instance.sessionCommentCount);\n    }\n    if (_instance.byLanguage && _instance.byLanguage.length) {\n      _writer.writeRepeatedMessage(\n        9,\n        _instance.byLanguage as any,\n        FeedbackBreakdownBucket.serializeBinaryToWriter\n      );\n    }\n    if (_instance.byIntent && _instance.byIntent.length) {\n      _writer.writeRepeatedMessage(\n        10,\n        _instance.byIntent as any,\n        FeedbackBreakdownBucket.serializeBinaryToWriter\n      );\n    }\n    if (_instance.byAuthorType && _instance.byAuthorType.length) {\n      _writer.writeRepeatedMessage(\n        11,\n        _instance.byAuthorType as any,\n        FeedbackBreakdownBucket.serializeBinaryToWriter\n      );\n    }\n    if (_instance.unspecifiedRatingCount) {\n      _writer.writeInt32(12, _instance.unspecifiedRatingCount);\n    }\n    if (_instance.scoredCount) {\n      _writer.writeInt32(13, _instance.scoredCount);\n    }\n    if (_instance.averageScore) {\n      _writer.writeFloat(14, _instance.averageScore);\n    }\n    if (_instance.byOrigin && _instance.byOrigin.length) {\n      _writer.writeRepeatedMessage(\n        15,\n        _instance.byOrigin as any,\n        FeedbackBreakdownBucket.serializeBinaryToWriter\n      );\n    }\n    if (_instance.byCriterion && _instance.byCriterion.length) {\n      _writer.writeRepeatedMessage(\n        16,\n        _instance.byCriterion as any,\n        FeedbackBreakdownBucket.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _totalFeedback: number;\n  private _thumbsUpCount: number;\n  private _thumbsDownCount: number;\n  private _sessionLevelCount: number;\n  private _sessionStepLevelCount: number;\n  private _commentCount: number;\n  private _sessionReviewCount: number;\n  private _sessionCommentCount: number;\n  private _byLanguage?: FeedbackBreakdownBucket[];\n  private _byIntent?: FeedbackBreakdownBucket[];\n  private _byAuthorType?: FeedbackBreakdownBucket[];\n  private _unspecifiedRatingCount: number;\n  private _scoredCount: number;\n  private _averageScore: number;\n  private _byOrigin?: FeedbackBreakdownBucket[];\n  private _byCriterion?: FeedbackBreakdownBucket[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FeedbackStatistics to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<FeedbackStatistics.AsObject>) {\n    _value = _value || {};\n    this.totalFeedback = _value.totalFeedback;\n    this.thumbsUpCount = _value.thumbsUpCount;\n    this.thumbsDownCount = _value.thumbsDownCount;\n    this.sessionLevelCount = _value.sessionLevelCount;\n    this.sessionStepLevelCount = _value.sessionStepLevelCount;\n    this.commentCount = _value.commentCount;\n    this.sessionReviewCount = _value.sessionReviewCount;\n    this.sessionCommentCount = _value.sessionCommentCount;\n    this.byLanguage = (_value.byLanguage || []).map(\n      m => new FeedbackBreakdownBucket(m)\n    );\n    this.byIntent = (_value.byIntent || []).map(\n      m => new FeedbackBreakdownBucket(m)\n    );\n    this.byAuthorType = (_value.byAuthorType || []).map(\n      m => new FeedbackBreakdownBucket(m)\n    );\n    this.unspecifiedRatingCount = _value.unspecifiedRatingCount;\n    this.scoredCount = _value.scoredCount;\n    this.averageScore = _value.averageScore;\n    this.byOrigin = (_value.byOrigin || []).map(\n      m => new FeedbackBreakdownBucket(m)\n    );\n    this.byCriterion = (_value.byCriterion || []).map(\n      m => new FeedbackBreakdownBucket(m)\n    );\n    FeedbackStatistics.refineValues(this);\n  }\n  get totalFeedback(): number {\n    return this._totalFeedback;\n  }\n  set totalFeedback(value: number) {\n    this._totalFeedback = value;\n  }\n  get thumbsUpCount(): number {\n    return this._thumbsUpCount;\n  }\n  set thumbsUpCount(value: number) {\n    this._thumbsUpCount = value;\n  }\n  get thumbsDownCount(): number {\n    return this._thumbsDownCount;\n  }\n  set thumbsDownCount(value: number) {\n    this._thumbsDownCount = value;\n  }\n  get sessionLevelCount(): number {\n    return this._sessionLevelCount;\n  }\n  set sessionLevelCount(value: number) {\n    this._sessionLevelCount = value;\n  }\n  get sessionStepLevelCount(): number {\n    return this._sessionStepLevelCount;\n  }\n  set sessionStepLevelCount(value: number) {\n    this._sessionStepLevelCount = value;\n  }\n  get commentCount(): number {\n    return this._commentCount;\n  }\n  set commentCount(value: number) {\n    this._commentCount = value;\n  }\n  get sessionReviewCount(): number {\n    return this._sessionReviewCount;\n  }\n  set sessionReviewCount(value: number) {\n    this._sessionReviewCount = value;\n  }\n  get sessionCommentCount(): number {\n    return this._sessionCommentCount;\n  }\n  set sessionCommentCount(value: number) {\n    this._sessionCommentCount = value;\n  }\n  get byLanguage(): FeedbackBreakdownBucket[] | undefined {\n    return this._byLanguage;\n  }\n  set byLanguage(value: FeedbackBreakdownBucket[] | undefined) {\n    this._byLanguage = value;\n  }\n  get byIntent(): FeedbackBreakdownBucket[] | undefined {\n    return this._byIntent;\n  }\n  set byIntent(value: FeedbackBreakdownBucket[] | undefined) {\n    this._byIntent = value;\n  }\n  get byAuthorType(): FeedbackBreakdownBucket[] | undefined {\n    return this._byAuthorType;\n  }\n  set byAuthorType(value: FeedbackBreakdownBucket[] | undefined) {\n    this._byAuthorType = value;\n  }\n  get unspecifiedRatingCount(): number {\n    return this._unspecifiedRatingCount;\n  }\n  set unspecifiedRatingCount(value: number) {\n    this._unspecifiedRatingCount = value;\n  }\n  get scoredCount(): number {\n    return this._scoredCount;\n  }\n  set scoredCount(value: number) {\n    this._scoredCount = value;\n  }\n  get averageScore(): number {\n    return this._averageScore;\n  }\n  set averageScore(value: number) {\n    this._averageScore = value;\n  }\n  get byOrigin(): FeedbackBreakdownBucket[] | undefined {\n    return this._byOrigin;\n  }\n  set byOrigin(value: FeedbackBreakdownBucket[] | undefined) {\n    this._byOrigin = value;\n  }\n  get byCriterion(): FeedbackBreakdownBucket[] | undefined {\n    return this._byCriterion;\n  }\n  set byCriterion(value: FeedbackBreakdownBucket[] | undefined) {\n    this._byCriterion = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FeedbackStatistics.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FeedbackStatistics.AsObject {\n    return {\n      totalFeedback: this.totalFeedback,\n      thumbsUpCount: this.thumbsUpCount,\n      thumbsDownCount: this.thumbsDownCount,\n      sessionLevelCount: this.sessionLevelCount,\n      sessionStepLevelCount: this.sessionStepLevelCount,\n      commentCount: this.commentCount,\n      sessionReviewCount: this.sessionReviewCount,\n      sessionCommentCount: this.sessionCommentCount,\n      byLanguage: (this.byLanguage || []).map(m => m.toObject()),\n      byIntent: (this.byIntent || []).map(m => m.toObject()),\n      byAuthorType: (this.byAuthorType || []).map(m => m.toObject()),\n      unspecifiedRatingCount: this.unspecifiedRatingCount,\n      scoredCount: this.scoredCount,\n      averageScore: this.averageScore,\n      byOrigin: (this.byOrigin || []).map(m => m.toObject()),\n      byCriterion: (this.byCriterion || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FeedbackStatistics.AsProtobufJSON {\n    return {\n      totalFeedback: this.totalFeedback,\n      thumbsUpCount: this.thumbsUpCount,\n      thumbsDownCount: this.thumbsDownCount,\n      sessionLevelCount: this.sessionLevelCount,\n      sessionStepLevelCount: this.sessionStepLevelCount,\n      commentCount: this.commentCount,\n      sessionReviewCount: this.sessionReviewCount,\n      sessionCommentCount: this.sessionCommentCount,\n      byLanguage: (this.byLanguage || []).map(m => m.toProtobufJSON(options)),\n      byIntent: (this.byIntent || []).map(m => m.toProtobufJSON(options)),\n      byAuthorType: (this.byAuthorType || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      unspecifiedRatingCount: this.unspecifiedRatingCount,\n      scoredCount: this.scoredCount,\n      averageScore: this.averageScore,\n      byOrigin: (this.byOrigin || []).map(m => m.toProtobufJSON(options)),\n      byCriterion: (this.byCriterion || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module FeedbackStatistics {\n  /**\n   * Standard JavaScript object representation for FeedbackStatistics\n   */\n  export interface AsObject {\n    totalFeedback: number;\n    thumbsUpCount: number;\n    thumbsDownCount: number;\n    sessionLevelCount: number;\n    sessionStepLevelCount: number;\n    commentCount: number;\n    sessionReviewCount: number;\n    sessionCommentCount: number;\n    byLanguage?: FeedbackBreakdownBucket.AsObject[];\n    byIntent?: FeedbackBreakdownBucket.AsObject[];\n    byAuthorType?: FeedbackBreakdownBucket.AsObject[];\n    unspecifiedRatingCount: number;\n    scoredCount: number;\n    averageScore: number;\n    byOrigin?: FeedbackBreakdownBucket.AsObject[];\n    byCriterion?: FeedbackBreakdownBucket.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for FeedbackStatistics\n   */\n  export interface AsProtobufJSON {\n    totalFeedback: number;\n    thumbsUpCount: number;\n    thumbsDownCount: number;\n    sessionLevelCount: number;\n    sessionStepLevelCount: number;\n    commentCount: number;\n    sessionReviewCount: number;\n    sessionCommentCount: number;\n    byLanguage: FeedbackBreakdownBucket.AsProtobufJSON[] | null;\n    byIntent: FeedbackBreakdownBucket.AsProtobufJSON[] | null;\n    byAuthorType: FeedbackBreakdownBucket.AsProtobufJSON[] | null;\n    unspecifiedRatingCount: number;\n    scoredCount: number;\n    averageScore: number;\n    byOrigin: FeedbackBreakdownBucket.AsProtobufJSON[] | null;\n    byCriterion: FeedbackBreakdownBucket.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetFeedbackStatisticsRequest\n */\nexport class GetFeedbackStatisticsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetFeedbackStatisticsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetFeedbackStatisticsRequest();\n    GetFeedbackStatisticsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetFeedbackStatisticsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.includeReviewAndCommentRollup =\n      _instance.includeReviewAndCommentRollup || false;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.feedbackFilter = _instance.feedbackFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetFeedbackStatisticsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.includeReviewAndCommentRollup = _reader.readBool();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.feedbackFilter = new FeedbackFilter();\n          _reader.readMessage(\n            _instance.feedbackFilter,\n            FeedbackFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetFeedbackStatisticsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetFeedbackStatisticsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.includeReviewAndCommentRollup) {\n      _writer.writeBool(3, _instance.includeReviewAndCommentRollup);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.feedbackFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.feedbackFilter as any,\n        FeedbackFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _includeReviewAndCommentRollup: boolean;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _feedbackFilter?: FeedbackFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetFeedbackStatisticsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetFeedbackStatisticsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.includeReviewAndCommentRollup = _value.includeReviewAndCommentRollup;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.feedbackFilter = _value.feedbackFilter\n      ? new FeedbackFilter(_value.feedbackFilter)\n      : undefined;\n    GetFeedbackStatisticsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get includeReviewAndCommentRollup(): boolean {\n    return this._includeReviewAndCommentRollup;\n  }\n  set includeReviewAndCommentRollup(value: boolean) {\n    this._includeReviewAndCommentRollup = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get feedbackFilter(): FeedbackFilter | undefined {\n    return this._feedbackFilter;\n  }\n  set feedbackFilter(value: FeedbackFilter | undefined) {\n    this._feedbackFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetFeedbackStatisticsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetFeedbackStatisticsRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      includeReviewAndCommentRollup: this.includeReviewAndCommentRollup,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      feedbackFilter: this.feedbackFilter\n        ? this.feedbackFilter.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetFeedbackStatisticsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      includeReviewAndCommentRollup: this.includeReviewAndCommentRollup,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      feedbackFilter: this.feedbackFilter\n        ? this.feedbackFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module GetFeedbackStatisticsRequest {\n  /**\n   * Standard JavaScript object representation for GetFeedbackStatisticsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    includeReviewAndCommentRollup: boolean;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    feedbackFilter?: FeedbackFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetFeedbackStatisticsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    includeReviewAndCommentRollup: boolean;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    feedbackFilter: FeedbackFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetFeedbackStatisticsResponse\n */\nexport class GetFeedbackStatisticsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetFeedbackStatisticsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetFeedbackStatisticsResponse();\n    GetFeedbackStatisticsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetFeedbackStatisticsResponse) {\n    _instance.statistics = _instance.statistics || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetFeedbackStatisticsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.statistics = new FeedbackStatistics();\n          _reader.readMessage(\n            _instance.statistics,\n            FeedbackStatistics.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetFeedbackStatisticsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetFeedbackStatisticsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.statistics) {\n      _writer.writeMessage(\n        1,\n        _instance.statistics as any,\n        FeedbackStatistics.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _statistics?: FeedbackStatistics;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetFeedbackStatisticsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetFeedbackStatisticsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.statistics = _value.statistics\n      ? new FeedbackStatistics(_value.statistics)\n      : undefined;\n    GetFeedbackStatisticsResponse.refineValues(this);\n  }\n  get statistics(): FeedbackStatistics | undefined {\n    return this._statistics;\n  }\n  set statistics(value: FeedbackStatistics | undefined) {\n    this._statistics = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetFeedbackStatisticsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetFeedbackStatisticsResponse.AsObject {\n    return {\n      statistics: this.statistics ? this.statistics.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetFeedbackStatisticsResponse.AsProtobufJSON {\n    return {\n      statistics: this.statistics\n        ? this.statistics.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module GetFeedbackStatisticsResponse {\n  /**\n   * Standard JavaScript object representation for GetFeedbackStatisticsResponse\n   */\n  export interface AsObject {\n    statistics?: FeedbackStatistics.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetFeedbackStatisticsResponse\n   */\n  export interface AsProtobufJSON {\n    statistics: FeedbackStatistics.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FeedbackTimeSeriesBucket\n */\nexport class FeedbackTimeSeriesBucket implements GrpcMessage {\n  static id = 'ondewo.nlu.FeedbackTimeSeriesBucket';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FeedbackTimeSeriesBucket();\n    FeedbackTimeSeriesBucket.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FeedbackTimeSeriesBucket) {\n    _instance.bucketStart = _instance.bucketStart || undefined;\n    _instance.thumbsUpCount = _instance.thumbsUpCount || 0;\n    _instance.thumbsDownCount = _instance.thumbsDownCount || 0;\n    _instance.total = _instance.total || 0;\n    _instance.bucketEnd = _instance.bucketEnd || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FeedbackTimeSeriesBucket,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.bucketStart = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.bucketStart,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.thumbsUpCount = _reader.readInt32();\n          break;\n        case 3:\n          _instance.thumbsDownCount = _reader.readInt32();\n          break;\n        case 4:\n          _instance.total = _reader.readInt32();\n          break;\n        case 5:\n          _instance.bucketEnd = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.bucketEnd,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FeedbackTimeSeriesBucket.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FeedbackTimeSeriesBucket,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.bucketStart) {\n      _writer.writeMessage(\n        1,\n        _instance.bucketStart as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.thumbsUpCount) {\n      _writer.writeInt32(2, _instance.thumbsUpCount);\n    }\n    if (_instance.thumbsDownCount) {\n      _writer.writeInt32(3, _instance.thumbsDownCount);\n    }\n    if (_instance.total) {\n      _writer.writeInt32(4, _instance.total);\n    }\n    if (_instance.bucketEnd) {\n      _writer.writeMessage(\n        5,\n        _instance.bucketEnd as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _bucketStart?: googleProtobuf005.Timestamp;\n  private _thumbsUpCount: number;\n  private _thumbsDownCount: number;\n  private _total: number;\n  private _bucketEnd?: googleProtobuf005.Timestamp;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FeedbackTimeSeriesBucket to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<FeedbackTimeSeriesBucket.AsObject>) {\n    _value = _value || {};\n    this.bucketStart = _value.bucketStart\n      ? new googleProtobuf005.Timestamp(_value.bucketStart)\n      : undefined;\n    this.thumbsUpCount = _value.thumbsUpCount;\n    this.thumbsDownCount = _value.thumbsDownCount;\n    this.total = _value.total;\n    this.bucketEnd = _value.bucketEnd\n      ? new googleProtobuf005.Timestamp(_value.bucketEnd)\n      : undefined;\n    FeedbackTimeSeriesBucket.refineValues(this);\n  }\n  get bucketStart(): googleProtobuf005.Timestamp | undefined {\n    return this._bucketStart;\n  }\n  set bucketStart(value: googleProtobuf005.Timestamp | undefined) {\n    this._bucketStart = value;\n  }\n  get thumbsUpCount(): number {\n    return this._thumbsUpCount;\n  }\n  set thumbsUpCount(value: number) {\n    this._thumbsUpCount = value;\n  }\n  get thumbsDownCount(): number {\n    return this._thumbsDownCount;\n  }\n  set thumbsDownCount(value: number) {\n    this._thumbsDownCount = value;\n  }\n  get total(): number {\n    return this._total;\n  }\n  set total(value: number) {\n    this._total = value;\n  }\n  get bucketEnd(): googleProtobuf005.Timestamp | undefined {\n    return this._bucketEnd;\n  }\n  set bucketEnd(value: googleProtobuf005.Timestamp | undefined) {\n    this._bucketEnd = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FeedbackTimeSeriesBucket.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FeedbackTimeSeriesBucket.AsObject {\n    return {\n      bucketStart: this.bucketStart ? this.bucketStart.toObject() : undefined,\n      thumbsUpCount: this.thumbsUpCount,\n      thumbsDownCount: this.thumbsDownCount,\n      total: this.total,\n      bucketEnd: this.bucketEnd ? this.bucketEnd.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FeedbackTimeSeriesBucket.AsProtobufJSON {\n    return {\n      bucketStart: this.bucketStart\n        ? this.bucketStart.toProtobufJSON(options)\n        : null,\n      thumbsUpCount: this.thumbsUpCount,\n      thumbsDownCount: this.thumbsDownCount,\n      total: this.total,\n      bucketEnd: this.bucketEnd ? this.bucketEnd.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module FeedbackTimeSeriesBucket {\n  /**\n   * Standard JavaScript object representation for FeedbackTimeSeriesBucket\n   */\n  export interface AsObject {\n    bucketStart?: googleProtobuf005.Timestamp.AsObject;\n    thumbsUpCount: number;\n    thumbsDownCount: number;\n    total: number;\n    bucketEnd?: googleProtobuf005.Timestamp.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for FeedbackTimeSeriesBucket\n   */\n  export interface AsProtobufJSON {\n    bucketStart: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    thumbsUpCount: number;\n    thumbsDownCount: number;\n    total: number;\n    bucketEnd: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetFeedbackStatisticsTimeSeriesRequest\n */\nexport class GetFeedbackStatisticsTimeSeriesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetFeedbackStatisticsTimeSeriesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetFeedbackStatisticsTimeSeriesRequest();\n    GetFeedbackStatisticsTimeSeriesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetFeedbackStatisticsTimeSeriesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.bucketWidthSeconds = _instance.bucketWidthSeconds || 0;\n    _instance.maxBuckets = _instance.maxBuckets || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.feedbackFilter = _instance.feedbackFilter || undefined;\n    _instance.granularity = _instance.granularity || 0;\n    _instance.timeZone = _instance.timeZone || '';\n    _instance.start = _instance.start || undefined;\n    _instance.end = _instance.end || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetFeedbackStatisticsTimeSeriesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionFilter = new SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.bucketWidthSeconds = _reader.readInt32();\n          break;\n        case 4:\n          _instance.maxBuckets = _reader.readInt32();\n          break;\n        case 5:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.feedbackFilter = new FeedbackFilter();\n          _reader.readMessage(\n            _instance.feedbackFilter,\n            FeedbackFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.granularity = _reader.readEnum();\n          break;\n        case 8:\n          _instance.timeZone = _reader.readString();\n          break;\n        case 9:\n          _instance.start = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.start,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.end = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.end,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetFeedbackStatisticsTimeSeriesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetFeedbackStatisticsTimeSeriesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionFilter as any,\n        SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.bucketWidthSeconds) {\n      _writer.writeInt32(3, _instance.bucketWidthSeconds);\n    }\n    if (_instance.maxBuckets) {\n      _writer.writeInt32(4, _instance.maxBuckets);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        5,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.feedbackFilter) {\n      _writer.writeMessage(\n        6,\n        _instance.feedbackFilter as any,\n        FeedbackFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.granularity) {\n      _writer.writeEnum(7, _instance.granularity);\n    }\n    if (_instance.timeZone) {\n      _writer.writeString(8, _instance.timeZone);\n    }\n    if (_instance.start) {\n      _writer.writeMessage(\n        9,\n        _instance.start as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.end) {\n      _writer.writeMessage(\n        10,\n        _instance.end as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionFilter?: SessionFilter;\n  private _bucketWidthSeconds: number;\n  private _maxBuckets: number;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n  private _feedbackFilter?: FeedbackFilter;\n  private _granularity: FeedbackTimeGranularity;\n  private _timeZone: string;\n  private _start?: googleProtobuf005.Timestamp;\n  private _end?: googleProtobuf005.Timestamp;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetFeedbackStatisticsTimeSeriesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetFeedbackStatisticsTimeSeriesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionFilter = _value.sessionFilter\n      ? new SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.bucketWidthSeconds = _value.bucketWidthSeconds;\n    this.maxBuckets = _value.maxBuckets;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    this.feedbackFilter = _value.feedbackFilter\n      ? new FeedbackFilter(_value.feedbackFilter)\n      : undefined;\n    this.granularity = _value.granularity;\n    this.timeZone = _value.timeZone;\n    this.start = _value.start\n      ? new googleProtobuf005.Timestamp(_value.start)\n      : undefined;\n    this.end = _value.end\n      ? new googleProtobuf005.Timestamp(_value.end)\n      : undefined;\n    GetFeedbackStatisticsTimeSeriesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionFilter(): SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get bucketWidthSeconds(): number {\n    return this._bucketWidthSeconds;\n  }\n  set bucketWidthSeconds(value: number) {\n    this._bucketWidthSeconds = value;\n  }\n  get maxBuckets(): number {\n    return this._maxBuckets;\n  }\n  set maxBuckets(value: number) {\n    this._maxBuckets = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get feedbackFilter(): FeedbackFilter | undefined {\n    return this._feedbackFilter;\n  }\n  set feedbackFilter(value: FeedbackFilter | undefined) {\n    this._feedbackFilter = value;\n  }\n  get granularity(): FeedbackTimeGranularity {\n    return this._granularity;\n  }\n  set granularity(value: FeedbackTimeGranularity) {\n    this._granularity = value;\n  }\n  get timeZone(): string {\n    return this._timeZone;\n  }\n  set timeZone(value: string) {\n    this._timeZone = value;\n  }\n  get start(): googleProtobuf005.Timestamp | undefined {\n    return this._start;\n  }\n  set start(value: googleProtobuf005.Timestamp | undefined) {\n    this._start = value;\n  }\n  get end(): googleProtobuf005.Timestamp | undefined {\n    return this._end;\n  }\n  set end(value: googleProtobuf005.Timestamp | undefined) {\n    this._end = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetFeedbackStatisticsTimeSeriesRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetFeedbackStatisticsTimeSeriesRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      bucketWidthSeconds: this.bucketWidthSeconds,\n      maxBuckets: this.maxBuckets,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      feedbackFilter: this.feedbackFilter\n        ? this.feedbackFilter.toObject()\n        : undefined,\n      granularity: this.granularity,\n      timeZone: this.timeZone,\n      start: this.start ? this.start.toObject() : undefined,\n      end: this.end ? this.end.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetFeedbackStatisticsTimeSeriesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      bucketWidthSeconds: this.bucketWidthSeconds,\n      maxBuckets: this.maxBuckets,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      feedbackFilter: this.feedbackFilter\n        ? this.feedbackFilter.toProtobufJSON(options)\n        : null,\n      granularity:\n        FeedbackTimeGranularity[\n          this.granularity === null || this.granularity === undefined\n            ? 0\n            : this.granularity\n        ],\n      timeZone: this.timeZone,\n      start: this.start ? this.start.toProtobufJSON(options) : null,\n      end: this.end ? this.end.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetFeedbackStatisticsTimeSeriesRequest {\n  /**\n   * Standard JavaScript object representation for GetFeedbackStatisticsTimeSeriesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionFilter?: SessionFilter.AsObject;\n    bucketWidthSeconds: number;\n    maxBuckets: number;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n    feedbackFilter?: FeedbackFilter.AsObject;\n    granularity: FeedbackTimeGranularity;\n    timeZone: string;\n    start?: googleProtobuf005.Timestamp.AsObject;\n    end?: googleProtobuf005.Timestamp.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetFeedbackStatisticsTimeSeriesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionFilter: SessionFilter.AsProtobufJSON | null;\n    bucketWidthSeconds: number;\n    maxBuckets: number;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n    feedbackFilter: FeedbackFilter.AsProtobufJSON | null;\n    granularity: string;\n    timeZone: string;\n    start: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    end: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetFeedbackStatisticsTimeSeriesResponse\n */\nexport class GetFeedbackStatisticsTimeSeriesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetFeedbackStatisticsTimeSeriesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetFeedbackStatisticsTimeSeriesResponse();\n    GetFeedbackStatisticsTimeSeriesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetFeedbackStatisticsTimeSeriesResponse) {\n    _instance.buckets = _instance.buckets || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetFeedbackStatisticsTimeSeriesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new FeedbackTimeSeriesBucket();\n          _reader.readMessage(\n            messageInitializer1,\n            FeedbackTimeSeriesBucket.deserializeBinaryFromReader\n          );\n          (_instance.buckets = _instance.buckets || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetFeedbackStatisticsTimeSeriesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetFeedbackStatisticsTimeSeriesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.buckets && _instance.buckets.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.buckets as any,\n        FeedbackTimeSeriesBucket.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _buckets?: FeedbackTimeSeriesBucket[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetFeedbackStatisticsTimeSeriesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetFeedbackStatisticsTimeSeriesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.buckets = (_value.buckets || []).map(\n      m => new FeedbackTimeSeriesBucket(m)\n    );\n    GetFeedbackStatisticsTimeSeriesResponse.refineValues(this);\n  }\n  get buckets(): FeedbackTimeSeriesBucket[] | undefined {\n    return this._buckets;\n  }\n  set buckets(value: FeedbackTimeSeriesBucket[] | undefined) {\n    this._buckets = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetFeedbackStatisticsTimeSeriesResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetFeedbackStatisticsTimeSeriesResponse.AsObject {\n    return {\n      buckets: (this.buckets || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetFeedbackStatisticsTimeSeriesResponse.AsProtobufJSON {\n    return {\n      buckets: (this.buckets || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module GetFeedbackStatisticsTimeSeriesResponse {\n  /**\n   * Standard JavaScript object representation for GetFeedbackStatisticsTimeSeriesResponse\n   */\n  export interface AsObject {\n    buckets?: FeedbackTimeSeriesBucket.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetFeedbackStatisticsTimeSeriesResponse\n   */\n  export interface AsProtobufJSON {\n    buckets: FeedbackTimeSeriesBucket.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionReviewsRequest\n */\nexport class ListSessionReviewsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionReviewsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionReviewsRequest();\n    ListSessionReviewsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionReviewsRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.sessionReviewView = _instance.sessionReviewView || 0;\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionReviewsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionReviewView = _reader.readEnum();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionReviewsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionReviewsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.sessionReviewView) {\n      _writer.writeEnum(2, _instance.sessionReviewView);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n  }\n\n  private _sessionId: string;\n  private _sessionReviewView: SessionReview.View;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionReviewsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionReviewsRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.sessionReviewView = _value.sessionReviewView;\n    this.pageToken = _value.pageToken;\n    ListSessionReviewsRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get sessionReviewView(): SessionReview.View {\n    return this._sessionReviewView;\n  }\n  set sessionReviewView(value: SessionReview.View) {\n    this._sessionReviewView = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionReviewsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionReviewsRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      sessionReviewView: this.sessionReviewView,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionReviewsRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      sessionReviewView:\n        SessionReview.View[\n          this.sessionReviewView === null ||\n          this.sessionReviewView === undefined\n            ? 0\n            : this.sessionReviewView\n        ],\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListSessionReviewsRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionReviewsRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    sessionReviewView: SessionReview.View;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionReviewsRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    sessionReviewView: string;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionReviewsResponse\n */\nexport class ListSessionReviewsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionReviewsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionReviewsResponse();\n    ListSessionReviewsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionReviewsResponse) {\n    _instance.sessionReviews = _instance.sessionReviews || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionReviewsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new SessionReview();\n          _reader.readMessage(\n            messageInitializer1,\n            SessionReview.deserializeBinaryFromReader\n          );\n          (_instance.sessionReviews = _instance.sessionReviews || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionReviewsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionReviewsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionReviews && _instance.sessionReviews.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.sessionReviews as any,\n        SessionReview.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _sessionReviews?: SessionReview[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionReviewsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListSessionReviewsResponse.AsObject>) {\n    _value = _value || {};\n    this.sessionReviews = (_value.sessionReviews || []).map(\n      m => new SessionReview(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListSessionReviewsResponse.refineValues(this);\n  }\n  get sessionReviews(): SessionReview[] | undefined {\n    return this._sessionReviews;\n  }\n  set sessionReviews(value: SessionReview[] | undefined) {\n    this._sessionReviews = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionReviewsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionReviewsResponse.AsObject {\n    return {\n      sessionReviews: (this.sessionReviews || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionReviewsResponse.AsProtobufJSON {\n    return {\n      sessionReviews: (this.sessionReviews || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListSessionReviewsResponse {\n  /**\n   * Standard JavaScript object representation for ListSessionReviewsResponse\n   */\n  export interface AsObject {\n    sessionReviews?: SessionReview.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionReviewsResponse\n   */\n  export interface AsProtobufJSON {\n    sessionReviews: SessionReview.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionReviewRequest\n */\nexport class GetSessionReviewRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionReviewRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionReviewRequest();\n    GetSessionReviewRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionReviewRequest) {\n    _instance.sessionReviewId = _instance.sessionReviewId || '';\n    _instance.sessionReviewView = _instance.sessionReviewView || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionReviewRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionReviewId = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionReviewView = _reader.readEnum();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionReviewRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionReviewRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionReviewId) {\n      _writer.writeString(1, _instance.sessionReviewId);\n    }\n    if (_instance.sessionReviewView) {\n      _writer.writeEnum(2, _instance.sessionReviewView);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionReviewId: string;\n  private _sessionReviewView: SessionReview.View;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionReviewRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetSessionReviewRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionReviewId = _value.sessionReviewId;\n    this.sessionReviewView = _value.sessionReviewView;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetSessionReviewRequest.refineValues(this);\n  }\n  get sessionReviewId(): string {\n    return this._sessionReviewId;\n  }\n  set sessionReviewId(value: string) {\n    this._sessionReviewId = value;\n  }\n  get sessionReviewView(): SessionReview.View {\n    return this._sessionReviewView;\n  }\n  set sessionReviewView(value: SessionReview.View) {\n    this._sessionReviewView = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionReviewRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionReviewRequest.AsObject {\n    return {\n      sessionReviewId: this.sessionReviewId,\n      sessionReviewView: this.sessionReviewView,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionReviewRequest.AsProtobufJSON {\n    return {\n      sessionReviewId: this.sessionReviewId,\n      sessionReviewView:\n        SessionReview.View[\n          this.sessionReviewView === null ||\n          this.sessionReviewView === undefined\n            ? 0\n            : this.sessionReviewView\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetSessionReviewRequest {\n  /**\n   * Standard JavaScript object representation for GetSessionReviewRequest\n   */\n  export interface AsObject {\n    sessionReviewId: string;\n    sessionReviewView: SessionReview.View;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionReviewRequest\n   */\n  export interface AsProtobufJSON {\n    sessionReviewId: string;\n    sessionReviewView: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetLatestSessionReviewRequest\n */\nexport class GetLatestSessionReviewRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetLatestSessionReviewRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetLatestSessionReviewRequest();\n    GetLatestSessionReviewRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetLatestSessionReviewRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.sessionReviewView = _instance.sessionReviewView || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetLatestSessionReviewRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionReviewView = _reader.readEnum();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetLatestSessionReviewRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetLatestSessionReviewRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.sessionReviewView) {\n      _writer.writeEnum(2, _instance.sessionReviewView);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _sessionReviewView: SessionReview.View;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetLatestSessionReviewRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetLatestSessionReviewRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.sessionReviewView = _value.sessionReviewView;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetLatestSessionReviewRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get sessionReviewView(): SessionReview.View {\n    return this._sessionReviewView;\n  }\n  set sessionReviewView(value: SessionReview.View) {\n    this._sessionReviewView = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetLatestSessionReviewRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetLatestSessionReviewRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      sessionReviewView: this.sessionReviewView,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetLatestSessionReviewRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      sessionReviewView:\n        SessionReview.View[\n          this.sessionReviewView === null ||\n          this.sessionReviewView === undefined\n            ? 0\n            : this.sessionReviewView\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetLatestSessionReviewRequest {\n  /**\n   * Standard JavaScript object representation for GetLatestSessionReviewRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    sessionReviewView: SessionReview.View;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetLatestSessionReviewRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    sessionReviewView: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FileResource\n */\nexport class FileResource implements GrpcMessage {\n  static id = 'ondewo.nlu.FileResource';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FileResource();\n    FileResource.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FileResource) {}\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FileResource,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.documentFileResource = new DocumentFileResource();\n          _reader.readMessage(\n            _instance.documentFileResource,\n            DocumentFileResource.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.audioFileResource = new AudioFileResource();\n          _reader.readMessage(\n            _instance.audioFileResource,\n            AudioFileResource.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.imageFileResource = new ImageFileResource();\n          _reader.readMessage(\n            _instance.imageFileResource,\n            ImageFileResource.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.videoFileResource = new VideoFileResource();\n          _reader.readMessage(\n            _instance.videoFileResource,\n            VideoFileResource.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FileResource.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FileResource,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.documentFileResource) {\n      _writer.writeMessage(\n        1,\n        _instance.documentFileResource as any,\n        DocumentFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.audioFileResource) {\n      _writer.writeMessage(\n        2,\n        _instance.audioFileResource as any,\n        AudioFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.imageFileResource) {\n      _writer.writeMessage(\n        3,\n        _instance.imageFileResource as any,\n        ImageFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.videoFileResource) {\n      _writer.writeMessage(\n        4,\n        _instance.videoFileResource as any,\n        VideoFileResource.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _documentFileResource?: DocumentFileResource;\n  private _audioFileResource?: AudioFileResource;\n  private _imageFileResource?: ImageFileResource;\n  private _videoFileResource?: VideoFileResource;\n\n  private _fileResource: FileResource.FileResourceCase =\n    FileResource.FileResourceCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FileResource to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<FileResource.AsObject>) {\n    _value = _value || {};\n    this.documentFileResource = _value.documentFileResource\n      ? new DocumentFileResource(_value.documentFileResource)\n      : undefined;\n    this.audioFileResource = _value.audioFileResource\n      ? new AudioFileResource(_value.audioFileResource)\n      : undefined;\n    this.imageFileResource = _value.imageFileResource\n      ? new ImageFileResource(_value.imageFileResource)\n      : undefined;\n    this.videoFileResource = _value.videoFileResource\n      ? new VideoFileResource(_value.videoFileResource)\n      : undefined;\n    FileResource.refineValues(this);\n  }\n  get documentFileResource(): DocumentFileResource | undefined {\n    return this._documentFileResource;\n  }\n  set documentFileResource(value: DocumentFileResource | undefined) {\n    if (value !== undefined && value !== null) {\n      this._audioFileResource = this._imageFileResource = this._videoFileResource = undefined;\n      this._fileResource = FileResource.FileResourceCase.documentFileResource;\n    }\n    this._documentFileResource = value;\n  }\n  get audioFileResource(): AudioFileResource | undefined {\n    return this._audioFileResource;\n  }\n  set audioFileResource(value: AudioFileResource | undefined) {\n    if (value !== undefined && value !== null) {\n      this._documentFileResource = this._imageFileResource = this._videoFileResource = undefined;\n      this._fileResource = FileResource.FileResourceCase.audioFileResource;\n    }\n    this._audioFileResource = value;\n  }\n  get imageFileResource(): ImageFileResource | undefined {\n    return this._imageFileResource;\n  }\n  set imageFileResource(value: ImageFileResource | undefined) {\n    if (value !== undefined && value !== null) {\n      this._documentFileResource = this._audioFileResource = this._videoFileResource = undefined;\n      this._fileResource = FileResource.FileResourceCase.imageFileResource;\n    }\n    this._imageFileResource = value;\n  }\n  get videoFileResource(): VideoFileResource | undefined {\n    return this._videoFileResource;\n  }\n  set videoFileResource(value: VideoFileResource | undefined) {\n    if (value !== undefined && value !== null) {\n      this._documentFileResource = this._audioFileResource = this._imageFileResource = undefined;\n      this._fileResource = FileResource.FileResourceCase.videoFileResource;\n    }\n    this._videoFileResource = value;\n  }\n  get fileResource() {\n    return this._fileResource;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FileResource.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FileResource.AsObject {\n    return {\n      documentFileResource: this.documentFileResource\n        ? this.documentFileResource.toObject()\n        : undefined,\n      audioFileResource: this.audioFileResource\n        ? this.audioFileResource.toObject()\n        : undefined,\n      imageFileResource: this.imageFileResource\n        ? this.imageFileResource.toObject()\n        : undefined,\n      videoFileResource: this.videoFileResource\n        ? this.videoFileResource.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FileResource.AsProtobufJSON {\n    return {\n      documentFileResource: this.documentFileResource\n        ? this.documentFileResource.toProtobufJSON(options)\n        : null,\n      audioFileResource: this.audioFileResource\n        ? this.audioFileResource.toProtobufJSON(options)\n        : null,\n      imageFileResource: this.imageFileResource\n        ? this.imageFileResource.toProtobufJSON(options)\n        : null,\n      videoFileResource: this.videoFileResource\n        ? this.videoFileResource.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module FileResource {\n  /**\n   * Standard JavaScript object representation for FileResource\n   */\n  export interface AsObject {\n    documentFileResource?: DocumentFileResource.AsObject;\n    audioFileResource?: AudioFileResource.AsObject;\n    imageFileResource?: ImageFileResource.AsObject;\n    videoFileResource?: VideoFileResource.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for FileResource\n   */\n  export interface AsProtobufJSON {\n    documentFileResource: DocumentFileResource.AsProtobufJSON | null;\n    audioFileResource: AudioFileResource.AsProtobufJSON | null;\n    imageFileResource: ImageFileResource.AsProtobufJSON | null;\n    videoFileResource: VideoFileResource.AsProtobufJSON | null;\n  }\n  export enum FileResourceCase {\n    none = 0,\n    documentFileResource = 1,\n    audioFileResource = 2,\n    imageFileResource = 3,\n    videoFileResource = 4\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DocumentFileResource\n */\nexport class DocumentFileResource implements GrpcMessage {\n  static id = 'ondewo.nlu.DocumentFileResource';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DocumentFileResource();\n    DocumentFileResource.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DocumentFileResource) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.bytes = _instance.bytes || new Uint8Array();\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DocumentFileResource,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.bytes = _reader.readBytes();\n          break;\n        case 4:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DocumentFileResource.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DocumentFileResource,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.bytes && _instance.bytes.length) {\n      _writer.writeBytes(3, _instance.bytes);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        4,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        5,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(7, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _bytes: Uint8Array;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DocumentFileResource to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DocumentFileResource.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.bytes = _value.bytes;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    DocumentFileResource.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get bytes(): Uint8Array {\n    return this._bytes;\n  }\n  set bytes(value: Uint8Array) {\n    this._bytes = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DocumentFileResource.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DocumentFileResource.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      bytes: this.bytes ? this.bytes.subarray(0) : new Uint8Array(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DocumentFileResource.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      bytes: this.bytes ? uint8ArrayToBase64(this.bytes) : '',\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module DocumentFileResource {\n  /**\n   * Standard JavaScript object representation for DocumentFileResource\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    bytes: Uint8Array;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DocumentFileResource\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    bytes: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ImageFileResource\n */\nexport class ImageFileResource implements GrpcMessage {\n  static id = 'ondewo.nlu.ImageFileResource';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ImageFileResource();\n    ImageFileResource.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ImageFileResource) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.bytes = _instance.bytes || new Uint8Array();\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ImageFileResource,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.bytes = _reader.readBytes();\n          break;\n        case 4:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ImageFileResource.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ImageFileResource,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.bytes && _instance.bytes.length) {\n      _writer.writeBytes(3, _instance.bytes);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        4,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        5,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(7, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _bytes: Uint8Array;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ImageFileResource to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ImageFileResource.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.bytes = _value.bytes;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    ImageFileResource.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get bytes(): Uint8Array {\n    return this._bytes;\n  }\n  set bytes(value: Uint8Array) {\n    this._bytes = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ImageFileResource.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ImageFileResource.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      bytes: this.bytes ? this.bytes.subarray(0) : new Uint8Array(),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ImageFileResource.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      bytes: this.bytes ? uint8ArrayToBase64(this.bytes) : '',\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module ImageFileResource {\n  /**\n   * Standard JavaScript object representation for ImageFileResource\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    bytes: Uint8Array;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ImageFileResource\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    bytes: string;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AudioFileResource\n */\nexport class AudioFileResource implements GrpcMessage {\n  static id = 'ondewo.nlu.AudioFileResource';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AudioFileResource();\n    AudioFileResource.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AudioFileResource) {\n    _instance.name = _instance.name || '';\n    _instance.bytes = _instance.bytes || new Uint8Array();\n    _instance.language = _instance.language || '';\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.sampleRate = _instance.sampleRate || 0;\n    _instance.audioFileResourceType = _instance.audioFileResourceType || 0;\n    _instance.transcriptions = _instance.transcriptions || [];\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.displayName = _instance.displayName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AudioFileResource,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.bytes = _reader.readBytes();\n          break;\n        case 3:\n          _instance.language = _reader.readString();\n          break;\n        case 4:\n          _instance.durationInS = _reader.readFloat();\n          break;\n        case 5:\n          _instance.sampleRate = _reader.readInt32();\n          break;\n        case 6:\n          _instance.audioFileResourceType = _reader.readEnum();\n          break;\n        case 7:\n          const messageInitializer7 = new S2tTranscription();\n          _reader.readMessage(\n            messageInitializer7,\n            S2tTranscription.deserializeBinaryFromReader\n          );\n          (_instance.transcriptions = _instance.transcriptions || []).push(\n            messageInitializer7\n          );\n          break;\n        case 8:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 11:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 12:\n          _instance.displayName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AudioFileResource.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AudioFileResource,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.bytes && _instance.bytes.length) {\n      _writer.writeBytes(2, _instance.bytes);\n    }\n    if (_instance.language) {\n      _writer.writeString(3, _instance.language);\n    }\n    if (_instance.durationInS) {\n      _writer.writeFloat(4, _instance.durationInS);\n    }\n    if (_instance.sampleRate) {\n      _writer.writeInt32(5, _instance.sampleRate);\n    }\n    if (_instance.audioFileResourceType) {\n      _writer.writeEnum(6, _instance.audioFileResourceType);\n    }\n    if (_instance.transcriptions && _instance.transcriptions.length) {\n      _writer.writeRepeatedMessage(\n        7,\n        _instance.transcriptions as any,\n        S2tTranscription.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        8,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        9,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(10, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(11, _instance.modifiedBy);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(12, _instance.displayName);\n    }\n  }\n\n  private _name: string;\n  private _bytes: Uint8Array;\n  private _language: string;\n  private _durationInS: number;\n  private _sampleRate: number;\n  private _audioFileResourceType: AudioFileResourceType;\n  private _transcriptions?: S2tTranscription[];\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _displayName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AudioFileResource to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AudioFileResource.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.bytes = _value.bytes;\n    this.language = _value.language;\n    this.durationInS = _value.durationInS;\n    this.sampleRate = _value.sampleRate;\n    this.audioFileResourceType = _value.audioFileResourceType;\n    this.transcriptions = (_value.transcriptions || []).map(\n      m => new S2tTranscription(m)\n    );\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.displayName = _value.displayName;\n    AudioFileResource.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get bytes(): Uint8Array {\n    return this._bytes;\n  }\n  set bytes(value: Uint8Array) {\n    this._bytes = value;\n  }\n  get language(): string {\n    return this._language;\n  }\n  set language(value: string) {\n    this._language = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get sampleRate(): number {\n    return this._sampleRate;\n  }\n  set sampleRate(value: number) {\n    this._sampleRate = value;\n  }\n  get audioFileResourceType(): AudioFileResourceType {\n    return this._audioFileResourceType;\n  }\n  set audioFileResourceType(value: AudioFileResourceType) {\n    this._audioFileResourceType = value;\n  }\n  get transcriptions(): S2tTranscription[] | undefined {\n    return this._transcriptions;\n  }\n  set transcriptions(value: S2tTranscription[] | undefined) {\n    this._transcriptions = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AudioFileResource.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AudioFileResource.AsObject {\n    return {\n      name: this.name,\n      bytes: this.bytes ? this.bytes.subarray(0) : new Uint8Array(),\n      language: this.language,\n      durationInS: this.durationInS,\n      sampleRate: this.sampleRate,\n      audioFileResourceType: this.audioFileResourceType,\n      transcriptions: (this.transcriptions || []).map(m => m.toObject()),\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      displayName: this.displayName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AudioFileResource.AsProtobufJSON {\n    return {\n      name: this.name,\n      bytes: this.bytes ? uint8ArrayToBase64(this.bytes) : '',\n      language: this.language,\n      durationInS: this.durationInS,\n      sampleRate: this.sampleRate,\n      audioFileResourceType:\n        AudioFileResourceType[\n          this.audioFileResourceType === null ||\n          this.audioFileResourceType === undefined\n            ? 0\n            : this.audioFileResourceType\n        ],\n      transcriptions: (this.transcriptions || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      displayName: this.displayName\n    };\n  }\n}\nexport module AudioFileResource {\n  /**\n   * Standard JavaScript object representation for AudioFileResource\n   */\n  export interface AsObject {\n    name: string;\n    bytes: Uint8Array;\n    language: string;\n    durationInS: number;\n    sampleRate: number;\n    audioFileResourceType: AudioFileResourceType;\n    transcriptions?: S2tTranscription.AsObject[];\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    displayName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for AudioFileResource\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    bytes: string;\n    language: string;\n    durationInS: number;\n    sampleRate: number;\n    audioFileResourceType: string;\n    transcriptions: S2tTranscription.AsProtobufJSON[] | null;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    displayName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.VideoFileResource\n */\nexport class VideoFileResource implements GrpcMessage {\n  static id = 'ondewo.nlu.VideoFileResource';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new VideoFileResource();\n    VideoFileResource.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: VideoFileResource) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.bytes = _instance.bytes || new Uint8Array();\n    _instance.durationInS = _instance.durationInS || 0;\n    _instance.resolution = _instance.resolution || '';\n    _instance.frameRate = _instance.frameRate || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: VideoFileResource,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.bytes = _reader.readBytes();\n          break;\n        case 4:\n          _instance.durationInS = _reader.readFloat();\n          break;\n        case 5:\n          _instance.resolution = _reader.readString();\n          break;\n        case 6:\n          _instance.frameRate = _reader.readFloat();\n          break;\n        case 7:\n          _instance.createdAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.modifiedAt = new googleProtobuf005.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf005.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 10:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    VideoFileResource.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: VideoFileResource,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.bytes && _instance.bytes.length) {\n      _writer.writeBytes(3, _instance.bytes);\n    }\n    if (_instance.durationInS) {\n      _writer.writeFloat(4, _instance.durationInS);\n    }\n    if (_instance.resolution) {\n      _writer.writeString(5, _instance.resolution);\n    }\n    if (_instance.frameRate) {\n      _writer.writeFloat(6, _instance.frameRate);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        7,\n        _instance.createdAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        8,\n        _instance.modifiedAt as any,\n        googleProtobuf005.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(9, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(10, _instance.modifiedBy);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _bytes: Uint8Array;\n  private _durationInS: number;\n  private _resolution: string;\n  private _frameRate: number;\n  private _createdAt?: googleProtobuf005.Timestamp;\n  private _modifiedAt?: googleProtobuf005.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of VideoFileResource to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<VideoFileResource.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.bytes = _value.bytes;\n    this.durationInS = _value.durationInS;\n    this.resolution = _value.resolution;\n    this.frameRate = _value.frameRate;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf005.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf005.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    VideoFileResource.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get bytes(): Uint8Array {\n    return this._bytes;\n  }\n  set bytes(value: Uint8Array) {\n    this._bytes = value;\n  }\n  get durationInS(): number {\n    return this._durationInS;\n  }\n  set durationInS(value: number) {\n    this._durationInS = value;\n  }\n  get resolution(): string {\n    return this._resolution;\n  }\n  set resolution(value: string) {\n    this._resolution = value;\n  }\n  get frameRate(): number {\n    return this._frameRate;\n  }\n  set frameRate(value: number) {\n    this._frameRate = value;\n  }\n  get createdAt(): googleProtobuf005.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf005.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf005.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    VideoFileResource.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): VideoFileResource.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      bytes: this.bytes ? this.bytes.subarray(0) : new Uint8Array(),\n      durationInS: this.durationInS,\n      resolution: this.resolution,\n      frameRate: this.frameRate,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): VideoFileResource.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      bytes: this.bytes ? uint8ArrayToBase64(this.bytes) : '',\n      durationInS: this.durationInS,\n      resolution: this.resolution,\n      frameRate: this.frameRate,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module VideoFileResource {\n  /**\n   * Standard JavaScript object representation for VideoFileResource\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    bytes: Uint8Array;\n    durationInS: number;\n    resolution: string;\n    frameRate: number;\n    createdAt?: googleProtobuf005.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf005.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for VideoFileResource\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    bytes: string;\n    durationInS: number;\n    resolution: string;\n    frameRate: number;\n    createdAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf005.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAudioFilesRequest\n */\nexport class GetAudioFilesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAudioFilesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAudioFilesRequest();\n    GetAudioFilesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAudioFilesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.names = _instance.names || [];\n    _instance.resourceView = _instance.resourceView || 0;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.sortingMode = _instance.sortingMode || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAudioFilesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        case 3:\n          _instance.resourceView = _reader.readEnum();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAudioFilesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAudioFilesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(2, _instance.names);\n    }\n    if (_instance.resourceView) {\n      _writer.writeEnum(3, _instance.resourceView);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(5, _instance.sortingMode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _names: string[];\n  private _resourceView: ResourceView;\n  private _pageToken: string;\n  private _sortingMode: ondewoNlu006.SortingMode;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAudioFilesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAudioFilesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.names = (_value.names || []).slice();\n    this.resourceView = _value.resourceView;\n    this.pageToken = _value.pageToken;\n    this.sortingMode = _value.sortingMode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetAudioFilesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n  get resourceView(): ResourceView {\n    return this._resourceView;\n  }\n  set resourceView(value: ResourceView) {\n    this._resourceView = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get sortingMode(): ondewoNlu006.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu006.SortingMode) {\n    this._sortingMode = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAudioFilesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAudioFilesRequest.AsObject {\n    return {\n      parent: this.parent,\n      names: (this.names || []).slice(),\n      resourceView: this.resourceView,\n      pageToken: this.pageToken,\n      sortingMode: this.sortingMode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAudioFilesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      names: (this.names || []).slice(),\n      resourceView:\n        ResourceView[\n          this.resourceView === null || this.resourceView === undefined\n            ? 0\n            : this.resourceView\n        ],\n      pageToken: this.pageToken,\n      sortingMode:\n        ondewoNlu006.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetAudioFilesRequest {\n  /**\n   * Standard JavaScript object representation for GetAudioFilesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    names: string[];\n    resourceView: ResourceView;\n    pageToken: string;\n    sortingMode: ondewoNlu006.SortingMode;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAudioFilesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    names: string[];\n    resourceView: string;\n    pageToken: string;\n    sortingMode: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAudioFilesResponse\n */\nexport class GetAudioFilesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAudioFilesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAudioFilesResponse();\n    GetAudioFilesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAudioFilesResponse) {\n    _instance.audioFiles = _instance.audioFiles || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAudioFilesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new AudioFileResource();\n          _reader.readMessage(\n            messageInitializer1,\n            AudioFileResource.deserializeBinaryFromReader\n          );\n          (_instance.audioFiles = _instance.audioFiles || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        case 3:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAudioFilesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAudioFilesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.audioFiles && _instance.audioFiles.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.audioFiles as any,\n        AudioFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(3, _instance.nextPageToken);\n    }\n  }\n\n  private _audioFiles?: AudioFileResource[];\n  private _errorMessage: string;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAudioFilesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAudioFilesResponse.AsObject>) {\n    _value = _value || {};\n    this.audioFiles = (_value.audioFiles || []).map(\n      m => new AudioFileResource(m)\n    );\n    this.errorMessage = _value.errorMessage;\n    this.nextPageToken = _value.nextPageToken;\n    GetAudioFilesResponse.refineValues(this);\n  }\n  get audioFiles(): AudioFileResource[] | undefined {\n    return this._audioFiles;\n  }\n  set audioFiles(value: AudioFileResource[] | undefined) {\n    this._audioFiles = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAudioFilesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAudioFilesResponse.AsObject {\n    return {\n      audioFiles: (this.audioFiles || []).map(m => m.toObject()),\n      errorMessage: this.errorMessage,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAudioFilesResponse.AsProtobufJSON {\n    return {\n      audioFiles: (this.audioFiles || []).map(m => m.toProtobufJSON(options)),\n      errorMessage: this.errorMessage,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module GetAudioFilesResponse {\n  /**\n   * Standard JavaScript object representation for GetAudioFilesResponse\n   */\n  export interface AsObject {\n    audioFiles?: AudioFileResource.AsObject[];\n    errorMessage: string;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAudioFilesResponse\n   */\n  export interface AsProtobufJSON {\n    audioFiles: AudioFileResource.AsProtobufJSON[] | null;\n    errorMessage: string;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddAudioFilesRequest\n */\nexport class AddAudioFilesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddAudioFilesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddAudioFilesRequest();\n    AddAudioFilesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddAudioFilesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.audioFileResources = _instance.audioFileResources || [];\n    _instance.sessionStepId = _instance.sessionStepId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddAudioFilesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new AudioFileResource();\n          _reader.readMessage(\n            messageInitializer3,\n            AudioFileResource.deserializeBinaryFromReader\n          );\n          (_instance.audioFileResources =\n            _instance.audioFileResources || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.sessionStepId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddAudioFilesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddAudioFilesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionId) {\n      _writer.writeString(2, _instance.sessionId);\n    }\n    if (_instance.audioFileResources && _instance.audioFileResources.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.audioFileResources as any,\n        AudioFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sessionStepId) {\n      _writer.writeString(4, _instance.sessionStepId);\n    }\n  }\n\n  private _parent: string;\n  private _sessionId: string;\n  private _audioFileResources?: AudioFileResource[];\n  private _sessionStepId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddAudioFilesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddAudioFilesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionId = _value.sessionId;\n    this.audioFileResources = (_value.audioFileResources || []).map(\n      m => new AudioFileResource(m)\n    );\n    this.sessionStepId = _value.sessionStepId;\n    AddAudioFilesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get audioFileResources(): AudioFileResource[] | undefined {\n    return this._audioFileResources;\n  }\n  set audioFileResources(value: AudioFileResource[] | undefined) {\n    this._audioFileResources = value;\n  }\n  get sessionStepId(): string {\n    return this._sessionStepId;\n  }\n  set sessionStepId(value: string) {\n    this._sessionStepId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddAudioFilesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddAudioFilesRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionId: this.sessionId,\n      audioFileResources: (this.audioFileResources || []).map(m =>\n        m.toObject()\n      ),\n      sessionStepId: this.sessionStepId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddAudioFilesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionId: this.sessionId,\n      audioFileResources: (this.audioFileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      sessionStepId: this.sessionStepId\n    };\n  }\n}\nexport module AddAudioFilesRequest {\n  /**\n   * Standard JavaScript object representation for AddAudioFilesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionId: string;\n    audioFileResources?: AudioFileResource.AsObject[];\n    sessionStepId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for AddAudioFilesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionId: string;\n    audioFileResources: AudioFileResource.AsProtobufJSON[] | null;\n    sessionStepId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddAudioFilesResponse\n */\nexport class AddAudioFilesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.AddAudioFilesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddAudioFilesResponse();\n    AddAudioFilesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddAudioFilesResponse) {\n    _instance.audioFileResources = _instance.audioFileResources || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddAudioFilesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new AudioFileResource();\n          _reader.readMessage(\n            messageInitializer1,\n            AudioFileResource.deserializeBinaryFromReader\n          );\n          (_instance.audioFileResources =\n            _instance.audioFileResources || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddAudioFilesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddAudioFilesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.audioFileResources && _instance.audioFileResources.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.audioFileResources as any,\n        AudioFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _audioFileResources?: AudioFileResource[];\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddAudioFilesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddAudioFilesResponse.AsObject>) {\n    _value = _value || {};\n    this.audioFileResources = (_value.audioFileResources || []).map(\n      m => new AudioFileResource(m)\n    );\n    this.errorMessage = _value.errorMessage;\n    AddAudioFilesResponse.refineValues(this);\n  }\n  get audioFileResources(): AudioFileResource[] | undefined {\n    return this._audioFileResources;\n  }\n  set audioFileResources(value: AudioFileResource[] | undefined) {\n    this._audioFileResources = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddAudioFilesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddAudioFilesResponse.AsObject {\n    return {\n      audioFileResources: (this.audioFileResources || []).map(m =>\n        m.toObject()\n      ),\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddAudioFilesResponse.AsProtobufJSON {\n    return {\n      audioFileResources: (this.audioFileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module AddAudioFilesResponse {\n  /**\n   * Standard JavaScript object representation for AddAudioFilesResponse\n   */\n  export interface AsObject {\n    audioFileResources?: AudioFileResource.AsObject[];\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for AddAudioFilesResponse\n   */\n  export interface AsProtobufJSON {\n    audioFileResources: AudioFileResource.AsProtobufJSON[] | null;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteAudioFilesRequest\n */\nexport class DeleteAudioFilesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteAudioFilesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteAudioFilesRequest();\n    DeleteAudioFilesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteAudioFilesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteAudioFilesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteAudioFilesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteAudioFilesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(2, _instance.names);\n    }\n  }\n\n  private _parent: string;\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteAudioFilesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteAudioFilesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.names = (_value.names || []).slice();\n    DeleteAudioFilesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteAudioFilesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteAudioFilesRequest.AsObject {\n    return {\n      parent: this.parent,\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteAudioFilesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module DeleteAudioFilesRequest {\n  /**\n   * Standard JavaScript object representation for DeleteAudioFilesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteAudioFilesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteAudioFilesResponse\n */\nexport class DeleteAudioFilesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteAudioFilesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteAudioFilesResponse();\n    DeleteAudioFilesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteAudioFilesResponse) {\n    _instance.names = _instance.names || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteAudioFilesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteAudioFilesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteAudioFilesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(1, _instance.names);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _names: string[];\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteAudioFilesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteAudioFilesResponse.AsObject>) {\n    _value = _value || {};\n    this.names = (_value.names || []).slice();\n    this.errorMessage = _value.errorMessage;\n    DeleteAudioFilesResponse.refineValues(this);\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteAudioFilesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteAudioFilesResponse.AsObject {\n    return {\n      names: (this.names || []).slice(),\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteAudioFilesResponse.AsProtobufJSON {\n    return {\n      names: (this.names || []).slice(),\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module DeleteAudioFilesResponse {\n  /**\n   * Standard JavaScript object representation for DeleteAudioFilesResponse\n   */\n  export interface AsObject {\n    names: string[];\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteAudioFilesResponse\n   */\n  export interface AsProtobufJSON {\n    names: string[];\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListAudioFilesRequest\n */\nexport class ListAudioFilesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListAudioFilesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListAudioFilesRequest();\n    ListAudioFilesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListAudioFilesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.resourceView = _instance.resourceView || 0;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.sortingMode = _instance.sortingMode || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListAudioFilesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 3:\n          _instance.resourceView = _reader.readEnum();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListAudioFilesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListAudioFilesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionId) {\n      _writer.writeString(2, _instance.sessionId);\n    }\n    if (_instance.resourceView) {\n      _writer.writeEnum(3, _instance.resourceView);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(5, _instance.sortingMode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionId: string;\n  private _resourceView: ResourceView;\n  private _pageToken: string;\n  private _sortingMode: ondewoNlu006.SortingMode;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListAudioFilesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListAudioFilesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionId = _value.sessionId;\n    this.resourceView = _value.resourceView;\n    this.pageToken = _value.pageToken;\n    this.sortingMode = _value.sortingMode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    ListAudioFilesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get resourceView(): ResourceView {\n    return this._resourceView;\n  }\n  set resourceView(value: ResourceView) {\n    this._resourceView = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get sortingMode(): ondewoNlu006.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu006.SortingMode) {\n    this._sortingMode = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListAudioFilesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListAudioFilesRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionId: this.sessionId,\n      resourceView: this.resourceView,\n      pageToken: this.pageToken,\n      sortingMode: this.sortingMode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListAudioFilesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionId: this.sessionId,\n      resourceView:\n        ResourceView[\n          this.resourceView === null || this.resourceView === undefined\n            ? 0\n            : this.resourceView\n        ],\n      pageToken: this.pageToken,\n      sortingMode:\n        ondewoNlu006.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListAudioFilesRequest {\n  /**\n   * Standard JavaScript object representation for ListAudioFilesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionId: string;\n    resourceView: ResourceView;\n    pageToken: string;\n    sortingMode: ondewoNlu006.SortingMode;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListAudioFilesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionId: string;\n    resourceView: string;\n    pageToken: string;\n    sortingMode: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListAudioFilesResponse\n */\nexport class ListAudioFilesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListAudioFilesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListAudioFilesResponse();\n    ListAudioFilesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListAudioFilesResponse) {\n    _instance.audioFiles = _instance.audioFiles || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListAudioFilesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new AudioFileResource();\n          _reader.readMessage(\n            messageInitializer1,\n            AudioFileResource.deserializeBinaryFromReader\n          );\n          (_instance.audioFiles = _instance.audioFiles || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListAudioFilesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListAudioFilesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.audioFiles && _instance.audioFiles.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.audioFiles as any,\n        AudioFileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(3, _instance.errorMessage);\n    }\n  }\n\n  private _audioFiles?: AudioFileResource[];\n  private _nextPageToken: string;\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListAudioFilesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListAudioFilesResponse.AsObject>) {\n    _value = _value || {};\n    this.audioFiles = (_value.audioFiles || []).map(\n      m => new AudioFileResource(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    this.errorMessage = _value.errorMessage;\n    ListAudioFilesResponse.refineValues(this);\n  }\n  get audioFiles(): AudioFileResource[] | undefined {\n    return this._audioFiles;\n  }\n  set audioFiles(value: AudioFileResource[] | undefined) {\n    this._audioFiles = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListAudioFilesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListAudioFilesResponse.AsObject {\n    return {\n      audioFiles: (this.audioFiles || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListAudioFilesResponse.AsProtobufJSON {\n    return {\n      audioFiles: (this.audioFiles || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken,\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module ListAudioFilesResponse {\n  /**\n   * Standard JavaScript object representation for ListAudioFilesResponse\n   */\n  export interface AsObject {\n    audioFiles?: AudioFileResource.AsObject[];\n    nextPageToken: string;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListAudioFilesResponse\n   */\n  export interface AsProtobufJSON {\n    audioFiles: AudioFileResource.AsProtobufJSON[] | null;\n    nextPageToken: string;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAudioFileOfSessionRequest\n */\nexport class GetAudioFileOfSessionRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAudioFileOfSessionRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAudioFileOfSessionRequest();\n    GetAudioFileOfSessionRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAudioFileOfSessionRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.resourceView = _instance.resourceView || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAudioFileOfSessionRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 3:\n          _instance.resourceView = _reader.readEnum();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf003.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf003.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAudioFileOfSessionRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAudioFileOfSessionRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionId) {\n      _writer.writeString(2, _instance.sessionId);\n    }\n    if (_instance.resourceView) {\n      _writer.writeEnum(3, _instance.resourceView);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf003.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _sessionId: string;\n  private _resourceView: ResourceView;\n  private _fieldMask?: googleProtobuf003.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAudioFileOfSessionRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetAudioFileOfSessionRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionId = _value.sessionId;\n    this.resourceView = _value.resourceView;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf003.FieldMask(_value.fieldMask)\n      : undefined;\n    GetAudioFileOfSessionRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get resourceView(): ResourceView {\n    return this._resourceView;\n  }\n  set resourceView(value: ResourceView) {\n    this._resourceView = value;\n  }\n  get fieldMask(): googleProtobuf003.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf003.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAudioFileOfSessionRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAudioFileOfSessionRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionId: this.sessionId,\n      resourceView: this.resourceView,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAudioFileOfSessionRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionId: this.sessionId,\n      resourceView:\n        ResourceView[\n          this.resourceView === null || this.resourceView === undefined\n            ? 0\n            : this.resourceView\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetAudioFileOfSessionRequest {\n  /**\n   * Standard JavaScript object representation for GetAudioFileOfSessionRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionId: string;\n    resourceView: ResourceView;\n    fieldMask?: googleProtobuf003.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAudioFileOfSessionRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionId: string;\n    resourceView: string;\n    fieldMask: googleProtobuf003.FieldMask.AsProtobufJSON | null;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions,\n  uint8ArrayToBase64\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleApi005 from '../../google/api/annotations.pb';\nimport * as ondewoNlu006 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu010 from '../../ondewo/nlu/project-role.pb';\nimport * as googleProtobuf011 from '@ngx-grpc/well-known-types';\nimport * as googleRpc012 from '../../google/rpc/status.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as googleType014 from '../../google/type/latlng.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu017 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu018 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu019 from '../../ondewo/nlu/user.pb';\nimport * as ondewoNlu020 from '../../ondewo/nlu/session.pb';\nexport enum AgentView {\n  AGENT_VIEW_UNSPECIFIED = 0,\n  AGENT_VIEW_FULL = 1,\n  AGENT_VIEW_SHALLOW = 2,\n  AGENT_VIEW_MINIMUM = 3\n}\nexport enum InitiationProtocol {\n  AS_SOON_AS_POSSIBLE = 0,\n  WHEN_TRAINED = 1,\n  NEVER = 2\n}\nexport enum ReportType {\n  ALL = 0,\n  INTENT_PER_LANGUAGE = 1,\n  ENTITY_PER_LANGUAGE = 2,\n  ENTITY_COLLISION = 3,\n  INTENT_GENERAL = 4,\n  AGENT_LLM_TOKEN_USAGE = 5,\n  AGENT_LLM_MODELS_USED = 6,\n  AGENT_LLM_PROVIDERS_USED = 7,\n  AGENT_LLM_CCAI_SERVICES_USED = 8,\n  AGENT_LLM_AGENTS_USED = 9,\n  AGENT_LLM_ERRORS = 10,\n  AGENT_LLM_CACHE_EFFICIENCY = 11,\n  AGENT_LLM_REASONING_EFFORT = 12,\n  AGENT_LLM_TOP_X_TOOLS = 13,\n  AGENT_LLM_LEAST_X_TOOLS = 14,\n  AGENT_LLM_LATENCY = 15,\n  AGENT_LLM_FINISH_REASONS = 16,\n  AGENT_LLM_TOTAL_STATISTICS = 17,\n  AGENT_LLM_INPUT_TOKEN_USAGE = 18,\n  AGENT_LLM_OUTPUT_TOKEN_USAGE = 19,\n  AGENT_LLM_THINKING_TOKEN_USAGE = 20,\n  AGENT_LLM_TOOL_CALL_TOKEN_USAGE = 21,\n  AGENT_LLM_TOP_X_MODELS = 22,\n  AGENT_LLM_TOP_X_CCAI_SERVICE_PROVIDERS = 23,\n  AGENT_LLM_TOP_X_AGENT_NAMES = 24,\n  AGENT_LLM_SAFETY = 25\n}\nexport enum SessionsReportType {\n  SESSIONS = 0,\n  SESSION_STEPS = 1,\n  SESSION_TOP_X_INTENTS = 2,\n  SESSION_TOP_X_ENTITY_TYPES = 3,\n  SESSION_TOP_X_ENTITY_VALUES = 4,\n  SESSION_TOP_X_USERS = 5,\n  SESSION_TOP_X_LABELS = 6,\n  SESSION_TOP_X_TAGS = 7,\n  SESSION_TOP_X_PHONE_NUMBERS = 8,\n  SESSION_HUMAN_HANDOVERS = 9,\n  SESSION_SQL_QUERY = 10,\n  SESSION_LEAST_X_INTENTS = 11,\n  SESSION_LEAST_X_ENTITY_TYPES = 12,\n  SESSION_LEAST_X_ENTITY_VALUES = 13,\n  SESSION_LEAST_X_USERS = 14,\n  SESSION_LEAST_X_LABELS = 15,\n  SESSION_LEAST_X_TAGS = 16,\n  TOTAL_STATISTICS = 17,\n  SESSION_LLM_TOKEN_USAGE = 18,\n  SESSION_LLM_TOOL_CALLS = 19,\n  SESSION_LLM_THINKING = 20,\n  SESSION_LLM_FINISH_REASONS = 21,\n  SESSION_LLM_LATENCY = 22,\n  SESSION_LLM_RAG_METRICS = 23,\n  SESSION_LLM_MODELS_USED = 24,\n  SESSION_LLM_PROVIDERS_USED = 25,\n  SESSION_LLM_CCAI_SERVICES_USED = 26,\n  SESSION_LLM_AGENTS_USED = 27,\n  SESSION_LLM_ERRORS = 28,\n  SESSION_LLM_CACHE_EFFICIENCY = 29,\n  SESSION_LLM_REASONING_EFFORT = 30,\n  SESSION_LLM_TOP_X_TOOLS = 31,\n  SESSION_LLM_LEAST_X_TOOLS = 32,\n  SESSION_LLM_TOTAL_STATISTICS = 33,\n  SESSION_LLM_INPUT_TOKEN_USAGE = 34,\n  SESSION_LLM_OUTPUT_TOKEN_USAGE = 35,\n  SESSION_LLM_THINKING_TOKEN_USAGE = 36,\n  SESSION_LLM_TOOL_CALL_TOKEN_USAGE = 37,\n  SESSION_LLM_TOP_X_MODELS = 38,\n  SESSION_LLM_TOP_X_CCAI_SERVICE_PROVIDERS = 39,\n  SESSION_LLM_TOP_X_AGENT_NAMES = 40,\n  SESSION_LLM_SAFETY = 41\n}\nexport enum ReportFormat {\n  CSV = 0,\n  HTML = 1,\n  JSON = 2\n}\nexport enum AgentStatus {\n  ACTIVE = 0,\n  INACTIVE = 1\n}\n/**\n * Message implementation for ondewo.nlu.Agent\n */\nexport class Agent implements GrpcMessage {\n  static id = 'ondewo.nlu.Agent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Agent();\n    Agent.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Agent) {\n    _instance.parent = _instance.parent || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.defaultLanguageCode = _instance.defaultLanguageCode || '';\n    _instance.supportedLanguageCodes = _instance.supportedLanguageCodes || [];\n    _instance.timeZone = _instance.timeZone || '';\n    _instance.nluPlatform = _instance.nluPlatform || '';\n    _instance.configs = _instance.configs || undefined;\n    _instance.ownerId = _instance.ownerId || '';\n    _instance.status = _instance.status || 0;\n    _instance.description = _instance.description || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(_instance: Agent, _reader: BinaryReader) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.defaultLanguageCode = _reader.readString();\n          break;\n        case 4:\n          (_instance.supportedLanguageCodes =\n            _instance.supportedLanguageCodes || []).push(_reader.readString());\n          break;\n        case 5:\n          _instance.timeZone = _reader.readString();\n          break;\n        case 6:\n          _instance.nluPlatform = _reader.readString();\n          break;\n        case 7:\n          _instance.configs = new googleProtobuf003.Struct();\n          _reader.readMessage(\n            _instance.configs,\n            googleProtobuf003.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.ownerId = _reader.readString();\n          break;\n        case 9:\n          _instance.status = _reader.readEnum();\n          break;\n        case 10:\n          _instance.description = _reader.readString();\n          break;\n        case 11:\n          _instance.createdAt = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.modifiedAt = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 14:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Agent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Agent, _writer: BinaryWriter) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.defaultLanguageCode) {\n      _writer.writeString(3, _instance.defaultLanguageCode);\n    }\n    if (\n      _instance.supportedLanguageCodes &&\n      _instance.supportedLanguageCodes.length\n    ) {\n      _writer.writeRepeatedString(4, _instance.supportedLanguageCodes);\n    }\n    if (_instance.timeZone) {\n      _writer.writeString(5, _instance.timeZone);\n    }\n    if (_instance.nluPlatform) {\n      _writer.writeString(6, _instance.nluPlatform);\n    }\n    if (_instance.configs) {\n      _writer.writeMessage(\n        7,\n        _instance.configs as any,\n        googleProtobuf003.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ownerId) {\n      _writer.writeString(8, _instance.ownerId);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(9, _instance.status);\n    }\n    if (_instance.description) {\n      _writer.writeString(10, _instance.description);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        11,\n        _instance.createdAt as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        12,\n        _instance.modifiedAt as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(13, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(14, _instance.modifiedBy);\n    }\n  }\n\n  private _parent: string;\n  private _displayName: string;\n  private _defaultLanguageCode: string;\n  private _supportedLanguageCodes: string[];\n  private _timeZone: string;\n  private _nluPlatform: string;\n  private _configs?: googleProtobuf003.Struct;\n  private _ownerId: string;\n  private _status: AgentStatus;\n  private _description: string;\n  private _createdAt?: googleProtobuf004.Timestamp;\n  private _modifiedAt?: googleProtobuf004.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Agent to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Agent.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.displayName = _value.displayName;\n    this.defaultLanguageCode = _value.defaultLanguageCode;\n    this.supportedLanguageCodes = (_value.supportedLanguageCodes || []).slice();\n    this.timeZone = _value.timeZone;\n    this.nluPlatform = _value.nluPlatform;\n    this.configs = _value.configs\n      ? new googleProtobuf003.Struct(_value.configs)\n      : undefined;\n    this.ownerId = _value.ownerId;\n    this.status = _value.status;\n    this.description = _value.description;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf004.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    Agent.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get defaultLanguageCode(): string {\n    return this._defaultLanguageCode;\n  }\n  set defaultLanguageCode(value: string) {\n    this._defaultLanguageCode = value;\n  }\n  get supportedLanguageCodes(): string[] {\n    return this._supportedLanguageCodes;\n  }\n  set supportedLanguageCodes(value: string[]) {\n    this._supportedLanguageCodes = value;\n  }\n  get timeZone(): string {\n    return this._timeZone;\n  }\n  set timeZone(value: string) {\n    this._timeZone = value;\n  }\n  get nluPlatform(): string {\n    return this._nluPlatform;\n  }\n  set nluPlatform(value: string) {\n    this._nluPlatform = value;\n  }\n  get configs(): googleProtobuf003.Struct | undefined {\n    return this._configs;\n  }\n  set configs(value: googleProtobuf003.Struct | undefined) {\n    this._configs = value;\n  }\n  get ownerId(): string {\n    return this._ownerId;\n  }\n  set ownerId(value: string) {\n    this._ownerId = value;\n  }\n  get status(): AgentStatus {\n    return this._status;\n  }\n  set status(value: AgentStatus) {\n    this._status = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get createdAt(): googleProtobuf004.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Agent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Agent.AsObject {\n    return {\n      parent: this.parent,\n      displayName: this.displayName,\n      defaultLanguageCode: this.defaultLanguageCode,\n      supportedLanguageCodes: (this.supportedLanguageCodes || []).slice(),\n      timeZone: this.timeZone,\n      nluPlatform: this.nluPlatform,\n      configs: this.configs ? this.configs.toObject() : undefined,\n      ownerId: this.ownerId,\n      status: this.status,\n      description: this.description,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Agent.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      displayName: this.displayName,\n      defaultLanguageCode: this.defaultLanguageCode,\n      supportedLanguageCodes: (this.supportedLanguageCodes || []).slice(),\n      timeZone: this.timeZone,\n      nluPlatform: this.nluPlatform,\n      configs: this.configs ? this.configs.toProtobufJSON(options) : null,\n      ownerId: this.ownerId,\n      status:\n        AgentStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      description: this.description,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module Agent {\n  /**\n   * Standard JavaScript object representation for Agent\n   */\n  export interface AsObject {\n    parent: string;\n    displayName: string;\n    defaultLanguageCode: string;\n    supportedLanguageCodes: string[];\n    timeZone: string;\n    nluPlatform: string;\n    configs?: googleProtobuf003.Struct.AsObject;\n    ownerId: string;\n    status: AgentStatus;\n    description: string;\n    createdAt?: googleProtobuf004.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for Agent\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    displayName: string;\n    defaultLanguageCode: string;\n    supportedLanguageCodes: string[];\n    timeZone: string;\n    nluPlatform: string;\n    configs: googleProtobuf003.Struct.AsProtobufJSON | null;\n    ownerId: string;\n    status: string;\n    description: string;\n    createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AgentWithOwner\n */\nexport class AgentWithOwner implements GrpcMessage {\n  static id = 'ondewo.nlu.AgentWithOwner';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AgentWithOwner();\n    AgentWithOwner.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AgentWithOwner) {\n    _instance.agent = _instance.agent || undefined;\n    _instance.owner = _instance.owner || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AgentWithOwner,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agent = new Agent();\n          _reader.readMessage(\n            _instance.agent,\n            Agent.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.owner = new ondewoNlu019.User();\n          _reader.readMessage(\n            _instance.owner,\n            ondewoNlu019.User.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AgentWithOwner.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AgentWithOwner,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agent) {\n      _writer.writeMessage(\n        1,\n        _instance.agent as any,\n        Agent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.owner) {\n      _writer.writeMessage(\n        2,\n        _instance.owner as any,\n        ondewoNlu019.User.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _agent?: Agent;\n  private _owner?: ondewoNlu019.User;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AgentWithOwner to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AgentWithOwner.AsObject>) {\n    _value = _value || {};\n    this.agent = _value.agent ? new Agent(_value.agent) : undefined;\n    this.owner = _value.owner ? new ondewoNlu019.User(_value.owner) : undefined;\n    AgentWithOwner.refineValues(this);\n  }\n  get agent(): Agent | undefined {\n    return this._agent;\n  }\n  set agent(value: Agent | undefined) {\n    this._agent = value;\n  }\n  get owner(): ondewoNlu019.User | undefined {\n    return this._owner;\n  }\n  set owner(value: ondewoNlu019.User | undefined) {\n    this._owner = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AgentWithOwner.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AgentWithOwner.AsObject {\n    return {\n      agent: this.agent ? this.agent.toObject() : undefined,\n      owner: this.owner ? this.owner.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AgentWithOwner.AsProtobufJSON {\n    return {\n      agent: this.agent ? this.agent.toProtobufJSON(options) : null,\n      owner: this.owner ? this.owner.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module AgentWithOwner {\n  /**\n   * Standard JavaScript object representation for AgentWithOwner\n   */\n  export interface AsObject {\n    agent?: Agent.AsObject;\n    owner?: ondewoNlu019.User.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for AgentWithOwner\n   */\n  export interface AsProtobufJSON {\n    agent: Agent.AsProtobufJSON | null;\n    owner: ondewoNlu019.User.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AgentOfUserWithOwner\n */\nexport class AgentOfUserWithOwner implements GrpcMessage {\n  static id = 'ondewo.nlu.AgentOfUserWithOwner';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AgentOfUserWithOwner();\n    AgentOfUserWithOwner.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AgentOfUserWithOwner) {\n    _instance.agentWithOwner = _instance.agentWithOwner || undefined;\n    _instance.projectRole = _instance.projectRole || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AgentOfUserWithOwner,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agentWithOwner = new AgentWithOwner();\n          _reader.readMessage(\n            _instance.agentWithOwner,\n            AgentWithOwner.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.projectRole = new ondewoNlu010.ProjectRole();\n          _reader.readMessage(\n            _instance.projectRole,\n            ondewoNlu010.ProjectRole.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AgentOfUserWithOwner.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AgentOfUserWithOwner,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agentWithOwner) {\n      _writer.writeMessage(\n        1,\n        _instance.agentWithOwner as any,\n        AgentWithOwner.serializeBinaryToWriter\n      );\n    }\n    if (_instance.projectRole) {\n      _writer.writeMessage(\n        2,\n        _instance.projectRole as any,\n        ondewoNlu010.ProjectRole.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _agentWithOwner?: AgentWithOwner;\n  private _projectRole?: ondewoNlu010.ProjectRole;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AgentOfUserWithOwner to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AgentOfUserWithOwner.AsObject>) {\n    _value = _value || {};\n    this.agentWithOwner = _value.agentWithOwner\n      ? new AgentWithOwner(_value.agentWithOwner)\n      : undefined;\n    this.projectRole = _value.projectRole\n      ? new ondewoNlu010.ProjectRole(_value.projectRole)\n      : undefined;\n    AgentOfUserWithOwner.refineValues(this);\n  }\n  get agentWithOwner(): AgentWithOwner | undefined {\n    return this._agentWithOwner;\n  }\n  set agentWithOwner(value: AgentWithOwner | undefined) {\n    this._agentWithOwner = value;\n  }\n  get projectRole(): ondewoNlu010.ProjectRole | undefined {\n    return this._projectRole;\n  }\n  set projectRole(value: ondewoNlu010.ProjectRole | undefined) {\n    this._projectRole = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AgentOfUserWithOwner.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AgentOfUserWithOwner.AsObject {\n    return {\n      agentWithOwner: this.agentWithOwner\n        ? this.agentWithOwner.toObject()\n        : undefined,\n      projectRole: this.projectRole ? this.projectRole.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AgentOfUserWithOwner.AsProtobufJSON {\n    return {\n      agentWithOwner: this.agentWithOwner\n        ? this.agentWithOwner.toProtobufJSON(options)\n        : null,\n      projectRole: this.projectRole\n        ? this.projectRole.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module AgentOfUserWithOwner {\n  /**\n   * Standard JavaScript object representation for AgentOfUserWithOwner\n   */\n  export interface AsObject {\n    agentWithOwner?: AgentWithOwner.AsObject;\n    projectRole?: ondewoNlu010.ProjectRole.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for AgentOfUserWithOwner\n   */\n  export interface AsProtobufJSON {\n    agentWithOwner: AgentWithOwner.AsProtobufJSON | null;\n    projectRole: ondewoNlu010.ProjectRole.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateAgentRequest\n */\nexport class CreateAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateAgentRequest();\n    CreateAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateAgentRequest) {\n    _instance.agent = _instance.agent || undefined;\n    _instance.agentView = _instance.agentView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agent = new Agent();\n          _reader.readMessage(\n            _instance.agent,\n            Agent.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.agentView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agent) {\n      _writer.writeMessage(\n        1,\n        _instance.agent as any,\n        Agent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.agentView) {\n      _writer.writeEnum(2, _instance.agentView);\n    }\n  }\n\n  private _agent?: Agent;\n  private _agentView: AgentView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CreateAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.agent = _value.agent ? new Agent(_value.agent) : undefined;\n    this.agentView = _value.agentView;\n    CreateAgentRequest.refineValues(this);\n  }\n  get agent(): Agent | undefined {\n    return this._agent;\n  }\n  set agent(value: Agent | undefined) {\n    this._agent = value;\n  }\n  get agentView(): AgentView {\n    return this._agentView;\n  }\n  set agentView(value: AgentView) {\n    this._agentView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateAgentRequest.AsObject {\n    return {\n      agent: this.agent ? this.agent.toObject() : undefined,\n      agentView: this.agentView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateAgentRequest.AsProtobufJSON {\n    return {\n      agent: this.agent ? this.agent.toProtobufJSON(options) : null,\n      agentView:\n        AgentView[\n          this.agentView === null || this.agentView === undefined\n            ? 0\n            : this.agentView\n        ]\n    };\n  }\n}\nexport module CreateAgentRequest {\n  /**\n   * Standard JavaScript object representation for CreateAgentRequest\n   */\n  export interface AsObject {\n    agent?: Agent.AsObject;\n    agentView: AgentView;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateAgentRequest\n   */\n  export interface AsProtobufJSON {\n    agent: Agent.AsProtobufJSON | null;\n    agentView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateAgentRequest\n */\nexport class UpdateAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateAgentRequest();\n    UpdateAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateAgentRequest) {\n    _instance.agent = _instance.agent || undefined;\n    _instance.agentView = _instance.agentView || 0;\n    _instance.updateMask = _instance.updateMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agent = new Agent();\n          _reader.readMessage(\n            _instance.agent,\n            Agent.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.agentView = _reader.readEnum();\n          break;\n        case 3:\n          _instance.updateMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agent) {\n      _writer.writeMessage(\n        1,\n        _instance.agent as any,\n        Agent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.agentView) {\n      _writer.writeEnum(2, _instance.agentView);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        3,\n        _instance.updateMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _agent?: Agent;\n  private _agentView: AgentView;\n  private _updateMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.agent = _value.agent ? new Agent(_value.agent) : undefined;\n    this.agentView = _value.agentView;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf002.FieldMask(_value.updateMask)\n      : undefined;\n    UpdateAgentRequest.refineValues(this);\n  }\n  get agent(): Agent | undefined {\n    return this._agent;\n  }\n  set agent(value: Agent | undefined) {\n    this._agent = value;\n  }\n  get agentView(): AgentView {\n    return this._agentView;\n  }\n  set agentView(value: AgentView) {\n    this._agentView = value;\n  }\n  get updateMask(): googleProtobuf002.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateAgentRequest.AsObject {\n    return {\n      agent: this.agent ? this.agent.toObject() : undefined,\n      agentView: this.agentView,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateAgentRequest.AsProtobufJSON {\n    return {\n      agent: this.agent ? this.agent.toProtobufJSON(options) : null,\n      agentView:\n        AgentView[\n          this.agentView === null || this.agentView === undefined\n            ? 0\n            : this.agentView\n        ],\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module UpdateAgentRequest {\n  /**\n   * Standard JavaScript object representation for UpdateAgentRequest\n   */\n  export interface AsObject {\n    agent?: Agent.AsObject;\n    agentView: AgentView;\n    updateMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateAgentRequest\n   */\n  export interface AsProtobufJSON {\n    agent: Agent.AsProtobufJSON | null;\n    agentView: string;\n    updateMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteAgentRequest\n */\nexport class DeleteAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteAgentRequest();\n    DeleteAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteAgentRequest) {\n    _instance.parent = _instance.parent || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n  }\n\n  private _parent: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    DeleteAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteAgentRequest.AsObject {\n    return {\n      parent: this.parent\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent\n    };\n  }\n}\nexport module DeleteAgentRequest {\n  /**\n   * Standard JavaScript object representation for DeleteAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAgentRequest\n */\nexport class GetAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAgentRequest();\n    GetAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAgentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.agentView = _instance.agentView || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.agentView = _reader.readEnum();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.agentView) {\n      _writer.writeEnum(2, _instance.agentView);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _agentView: AgentView;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.agentView = _value.agentView;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    GetAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get agentView(): AgentView {\n    return this._agentView;\n  }\n  set agentView(value: AgentView) {\n    this._agentView = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAgentRequest.AsObject {\n    return {\n      parent: this.parent,\n      agentView: this.agentView,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      agentView:\n        AgentView[\n          this.agentView === null || this.agentView === undefined\n            ? 0\n            : this.agentView\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetAgentRequest {\n  /**\n   * Standard JavaScript object representation for GetAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    agentView: AgentView;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    agentView: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListAgentsRequest\n */\nexport class ListAgentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListAgentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListAgentsRequest();\n    ListAgentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListAgentsRequest) {\n    _instance.agentView = _instance.agentView || 0;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.sortByField = _instance.sortByField || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListAgentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agentView = _reader.readEnum();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.sortByField = new AgentSorting();\n          _reader.readMessage(\n            _instance.sortByField,\n            AgentSorting.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListAgentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListAgentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agentView) {\n      _writer.writeEnum(1, _instance.agentView);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.sortByField) {\n      _writer.writeMessage(\n        3,\n        _instance.sortByField as any,\n        AgentSorting.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _agentView: AgentView;\n  private _pageToken: string;\n  private _sortByField?: AgentSorting;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListAgentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListAgentsRequest.AsObject>) {\n    _value = _value || {};\n    this.agentView = _value.agentView;\n    this.pageToken = _value.pageToken;\n    this.sortByField = _value.sortByField\n      ? new AgentSorting(_value.sortByField)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    ListAgentsRequest.refineValues(this);\n  }\n  get agentView(): AgentView {\n    return this._agentView;\n  }\n  set agentView(value: AgentView) {\n    this._agentView = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get sortByField(): AgentSorting | undefined {\n    return this._sortByField;\n  }\n  set sortByField(value: AgentSorting | undefined) {\n    this._sortByField = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListAgentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListAgentsRequest.AsObject {\n    return {\n      agentView: this.agentView,\n      pageToken: this.pageToken,\n      sortByField: this.sortByField ? this.sortByField.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListAgentsRequest.AsProtobufJSON {\n    return {\n      agentView:\n        AgentView[\n          this.agentView === null || this.agentView === undefined\n            ? 0\n            : this.agentView\n        ],\n      pageToken: this.pageToken,\n      sortByField: this.sortByField\n        ? this.sortByField.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListAgentsRequest {\n  /**\n   * Standard JavaScript object representation for ListAgentsRequest\n   */\n  export interface AsObject {\n    agentView: AgentView;\n    pageToken: string;\n    sortByField?: AgentSorting.AsObject;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListAgentsRequest\n   */\n  export interface AsProtobufJSON {\n    agentView: string;\n    pageToken: string;\n    sortByField: AgentSorting.AsProtobufJSON | null;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListAgentsResponse\n */\nexport class ListAgentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListAgentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListAgentsResponse();\n    ListAgentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListAgentsResponse) {\n    _instance.agentsWithOwners = _instance.agentsWithOwners || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListAgentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new AgentWithOwner();\n          _reader.readMessage(\n            messageInitializer1,\n            AgentWithOwner.deserializeBinaryFromReader\n          );\n          (_instance.agentsWithOwners = _instance.agentsWithOwners || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListAgentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListAgentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agentsWithOwners && _instance.agentsWithOwners.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.agentsWithOwners as any,\n        AgentWithOwner.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _agentsWithOwners?: AgentWithOwner[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListAgentsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListAgentsResponse.AsObject>) {\n    _value = _value || {};\n    this.agentsWithOwners = (_value.agentsWithOwners || []).map(\n      m => new AgentWithOwner(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListAgentsResponse.refineValues(this);\n  }\n  get agentsWithOwners(): AgentWithOwner[] | undefined {\n    return this._agentsWithOwners;\n  }\n  set agentsWithOwners(value: AgentWithOwner[] | undefined) {\n    this._agentsWithOwners = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListAgentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListAgentsResponse.AsObject {\n    return {\n      agentsWithOwners: (this.agentsWithOwners || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListAgentsResponse.AsProtobufJSON {\n    return {\n      agentsWithOwners: (this.agentsWithOwners || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListAgentsResponse {\n  /**\n   * Standard JavaScript object representation for ListAgentsResponse\n   */\n  export interface AsObject {\n    agentsWithOwners?: AgentWithOwner.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListAgentsResponse\n   */\n  export interface AsProtobufJSON {\n    agentsWithOwners: AgentWithOwner.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListAgentsOfUserResponse\n */\nexport class ListAgentsOfUserResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListAgentsOfUserResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListAgentsOfUserResponse();\n    ListAgentsOfUserResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListAgentsOfUserResponse) {\n    _instance.agentsOfUserWithOwners = _instance.agentsOfUserWithOwners || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListAgentsOfUserResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new AgentOfUserWithOwner();\n          _reader.readMessage(\n            messageInitializer1,\n            AgentOfUserWithOwner.deserializeBinaryFromReader\n          );\n          (_instance.agentsOfUserWithOwners =\n            _instance.agentsOfUserWithOwners || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListAgentsOfUserResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListAgentsOfUserResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.agentsOfUserWithOwners &&\n      _instance.agentsOfUserWithOwners.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.agentsOfUserWithOwners as any,\n        AgentOfUserWithOwner.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _agentsOfUserWithOwners?: AgentOfUserWithOwner[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListAgentsOfUserResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListAgentsOfUserResponse.AsObject>) {\n    _value = _value || {};\n    this.agentsOfUserWithOwners = (_value.agentsOfUserWithOwners || []).map(\n      m => new AgentOfUserWithOwner(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListAgentsOfUserResponse.refineValues(this);\n  }\n  get agentsOfUserWithOwners(): AgentOfUserWithOwner[] | undefined {\n    return this._agentsOfUserWithOwners;\n  }\n  set agentsOfUserWithOwners(value: AgentOfUserWithOwner[] | undefined) {\n    this._agentsOfUserWithOwners = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListAgentsOfUserResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListAgentsOfUserResponse.AsObject {\n    return {\n      agentsOfUserWithOwners: (this.agentsOfUserWithOwners || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListAgentsOfUserResponse.AsProtobufJSON {\n    return {\n      agentsOfUserWithOwners: (this.agentsOfUserWithOwners || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListAgentsOfUserResponse {\n  /**\n   * Standard JavaScript object representation for ListAgentsOfUserResponse\n   */\n  export interface AsObject {\n    agentsOfUserWithOwners?: AgentOfUserWithOwner.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListAgentsOfUserResponse\n   */\n  export interface AsProtobufJSON {\n    agentsOfUserWithOwners: AgentOfUserWithOwner.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.TrainAgentRequest\n */\nexport class TrainAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.TrainAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new TrainAgentRequest();\n    TrainAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: TrainAgentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.branch = _instance.branch || '';\n    _instance.initiationProtocol = _instance.initiationProtocol || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: TrainAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.branch = _reader.readString();\n          break;\n        case 3:\n          _instance.initiationProtocol = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    TrainAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: TrainAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.branch) {\n      _writer.writeString(2, _instance.branch);\n    }\n    if (_instance.initiationProtocol) {\n      _writer.writeEnum(3, _instance.initiationProtocol);\n    }\n  }\n\n  private _parent: string;\n  private _branch: string;\n  private _initiationProtocol: InitiationProtocol;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of TrainAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<TrainAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.branch = _value.branch;\n    this.initiationProtocol = _value.initiationProtocol;\n    TrainAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get branch(): string {\n    return this._branch;\n  }\n  set branch(value: string) {\n    this._branch = value;\n  }\n  get initiationProtocol(): InitiationProtocol {\n    return this._initiationProtocol;\n  }\n  set initiationProtocol(value: InitiationProtocol) {\n    this._initiationProtocol = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    TrainAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): TrainAgentRequest.AsObject {\n    return {\n      parent: this.parent,\n      branch: this.branch,\n      initiationProtocol: this.initiationProtocol\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): TrainAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      branch: this.branch,\n      initiationProtocol:\n        InitiationProtocol[\n          this.initiationProtocol === null ||\n          this.initiationProtocol === undefined\n            ? 0\n            : this.initiationProtocol\n        ]\n    };\n  }\n}\nexport module TrainAgentRequest {\n  /**\n   * Standard JavaScript object representation for TrainAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    branch: string;\n    initiationProtocol: InitiationProtocol;\n  }\n\n  /**\n   * Protobuf JSON representation for TrainAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    branch: string;\n    initiationProtocol: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BuildCacheRequest\n */\nexport class BuildCacheRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.BuildCacheRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BuildCacheRequest();\n    BuildCacheRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BuildCacheRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.branch = _instance.branch || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BuildCacheRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.branch = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BuildCacheRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BuildCacheRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.branch) {\n      _writer.writeString(2, _instance.branch);\n    }\n  }\n\n  private _parent: string;\n  private _branch: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BuildCacheRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BuildCacheRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.branch = _value.branch;\n    BuildCacheRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get branch(): string {\n    return this._branch;\n  }\n  set branch(value: string) {\n    this._branch = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BuildCacheRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BuildCacheRequest.AsObject {\n    return {\n      parent: this.parent,\n      branch: this.branch\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BuildCacheRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      branch: this.branch\n    };\n  }\n}\nexport module BuildCacheRequest {\n  /**\n   * Standard JavaScript object representation for BuildCacheRequest\n   */\n  export interface AsObject {\n    parent: string;\n    branch: string;\n  }\n\n  /**\n   * Protobuf JSON representation for BuildCacheRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    branch: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExportAgentRequest\n */\nexport class ExportAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ExportAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExportAgentRequest();\n    ExportAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExportAgentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.agentUri = _instance.agentUri || '';\n    _instance.compressionLevel = _instance.compressionLevel || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExportAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.agentUri = _reader.readString();\n          break;\n        case 3:\n          _instance.compressionLevel = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExportAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExportAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.agentUri) {\n      _writer.writeString(2, _instance.agentUri);\n    }\n    if (_instance.compressionLevel) {\n      _writer.writeInt32(3, _instance.compressionLevel);\n    }\n  }\n\n  private _parent: string;\n  private _agentUri: string;\n  private _compressionLevel: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExportAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExportAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.agentUri = _value.agentUri;\n    this.compressionLevel = _value.compressionLevel;\n    ExportAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get agentUri(): string {\n    return this._agentUri;\n  }\n  set agentUri(value: string) {\n    this._agentUri = value;\n  }\n  get compressionLevel(): number {\n    return this._compressionLevel;\n  }\n  set compressionLevel(value: number) {\n    this._compressionLevel = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExportAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExportAgentRequest.AsObject {\n    return {\n      parent: this.parent,\n      agentUri: this.agentUri,\n      compressionLevel: this.compressionLevel\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExportAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      agentUri: this.agentUri,\n      compressionLevel: this.compressionLevel\n    };\n  }\n}\nexport module ExportAgentRequest {\n  /**\n   * Standard JavaScript object representation for ExportAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    agentUri: string;\n    compressionLevel: number;\n  }\n\n  /**\n   * Protobuf JSON representation for ExportAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    agentUri: string;\n    compressionLevel: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExportAgentResponse\n */\nexport class ExportAgentResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ExportAgentResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExportAgentResponse();\n    ExportAgentResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExportAgentResponse) {}\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExportAgentResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agentUri = _reader.readString();\n          break;\n        case 2:\n          _instance.agentContent = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExportAgentResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExportAgentResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agentUri || _instance.agentUri === '') {\n      _writer.writeString(1, _instance.agentUri);\n    }\n    if (_instance.agentContent && _instance.agentContent.length) {\n      _writer.writeBytes(2, _instance.agentContent);\n    }\n  }\n\n  private _agentUri: string;\n  private _agentContent: Uint8Array;\n\n  private _agent: ExportAgentResponse.AgentCase =\n    ExportAgentResponse.AgentCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExportAgentResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExportAgentResponse.AsObject>) {\n    _value = _value || {};\n    this.agentUri = _value.agentUri;\n    this.agentContent = _value.agentContent;\n    ExportAgentResponse.refineValues(this);\n  }\n  get agentUri(): string {\n    return this._agentUri;\n  }\n  set agentUri(value: string) {\n    if (value !== undefined && value !== null) {\n      this._agentContent = undefined;\n      this._agent = ExportAgentResponse.AgentCase.agentUri;\n    }\n    this._agentUri = value;\n  }\n  get agentContent(): Uint8Array {\n    return this._agentContent;\n  }\n  set agentContent(value: Uint8Array) {\n    if (value !== undefined && value !== null) {\n      this._agentUri = undefined;\n      this._agent = ExportAgentResponse.AgentCase.agentContent;\n    }\n    this._agentContent = value;\n  }\n  get agent() {\n    return this._agent;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExportAgentResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExportAgentResponse.AsObject {\n    return {\n      agentUri: this.agentUri,\n      agentContent: this.agentContent\n        ? this.agentContent.subarray(0)\n        : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExportAgentResponse.AsProtobufJSON {\n    return {\n      agentUri:\n        this.agentUri === null || this.agentUri === undefined\n          ? null\n          : this.agentUri,\n      agentContent: this.agentContent\n        ? uint8ArrayToBase64(this.agentContent)\n        : ''\n    };\n  }\n}\nexport module ExportAgentResponse {\n  /**\n   * Standard JavaScript object representation for ExportAgentResponse\n   */\n  export interface AsObject {\n    agentUri: string;\n    agentContent: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for ExportAgentResponse\n   */\n  export interface AsProtobufJSON {\n    agentUri: string | null;\n    agentContent: string;\n  }\n  export enum AgentCase {\n    none = 0,\n    agentUri = 1,\n    agentContent = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExportBenchmarkAgentRequest\n */\nexport class ExportBenchmarkAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ExportBenchmarkAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExportBenchmarkAgentRequest();\n    ExportBenchmarkAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExportBenchmarkAgentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.compressionLevel = _instance.compressionLevel || 0;\n    _instance.testSize = _instance.testSize || 0;\n    _instance.trainSize = _instance.trainSize || 0;\n    _instance.randomState = _instance.randomState || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExportBenchmarkAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.compressionLevel = _reader.readInt32();\n          break;\n        case 3:\n          _instance.testSize = _reader.readFloat();\n          break;\n        case 4:\n          _instance.trainSize = _reader.readFloat();\n          break;\n        case 5:\n          _instance.randomState = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExportBenchmarkAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExportBenchmarkAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.compressionLevel) {\n      _writer.writeInt32(2, _instance.compressionLevel);\n    }\n    if (_instance.testSize) {\n      _writer.writeFloat(3, _instance.testSize);\n    }\n    if (_instance.trainSize) {\n      _writer.writeFloat(4, _instance.trainSize);\n    }\n    if (_instance.randomState) {\n      _writer.writeInt32(5, _instance.randomState);\n    }\n  }\n\n  private _parent: string;\n  private _compressionLevel: number;\n  private _testSize: number;\n  private _trainSize: number;\n  private _randomState: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExportBenchmarkAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExportBenchmarkAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.compressionLevel = _value.compressionLevel;\n    this.testSize = _value.testSize;\n    this.trainSize = _value.trainSize;\n    this.randomState = _value.randomState;\n    ExportBenchmarkAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get compressionLevel(): number {\n    return this._compressionLevel;\n  }\n  set compressionLevel(value: number) {\n    this._compressionLevel = value;\n  }\n  get testSize(): number {\n    return this._testSize;\n  }\n  set testSize(value: number) {\n    this._testSize = value;\n  }\n  get trainSize(): number {\n    return this._trainSize;\n  }\n  set trainSize(value: number) {\n    this._trainSize = value;\n  }\n  get randomState(): number {\n    return this._randomState;\n  }\n  set randomState(value: number) {\n    this._randomState = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExportBenchmarkAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExportBenchmarkAgentRequest.AsObject {\n    return {\n      parent: this.parent,\n      compressionLevel: this.compressionLevel,\n      testSize: this.testSize,\n      trainSize: this.trainSize,\n      randomState: this.randomState\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExportBenchmarkAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      compressionLevel: this.compressionLevel,\n      testSize: this.testSize,\n      trainSize: this.trainSize,\n      randomState: this.randomState\n    };\n  }\n}\nexport module ExportBenchmarkAgentRequest {\n  /**\n   * Standard JavaScript object representation for ExportBenchmarkAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    compressionLevel: number;\n    testSize: number;\n    trainSize: number;\n    randomState: number;\n  }\n\n  /**\n   * Protobuf JSON representation for ExportBenchmarkAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    compressionLevel: number;\n    testSize: number;\n    trainSize: number;\n    randomState: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExportBenchmarkAgentResponse\n */\nexport class ExportBenchmarkAgentResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ExportBenchmarkAgentResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExportBenchmarkAgentResponse();\n    ExportBenchmarkAgentResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExportBenchmarkAgentResponse) {\n    _instance.agentContent = _instance.agentContent || new Uint8Array();\n    _instance.trainingPhrases = _instance.trainingPhrases || {};\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExportBenchmarkAgentResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agentContent = _reader.readBytes();\n          break;\n        case 2:\n          const msg_2 = {} as any;\n          _reader.readMessage(\n            msg_2,\n            ExportBenchmarkAgentResponse.TrainingPhrasesEntry\n              .deserializeBinaryFromReader\n          );\n          _instance.trainingPhrases = _instance.trainingPhrases || {};\n          _instance.trainingPhrases[msg_2.key] = msg_2.value;\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExportBenchmarkAgentResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExportBenchmarkAgentResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agentContent && _instance.agentContent.length) {\n      _writer.writeBytes(1, _instance.agentContent);\n    }\n    if (!!_instance.trainingPhrases) {\n      const keys_2 = Object.keys(_instance.trainingPhrases as any);\n\n      if (keys_2.length) {\n        const repeated_2 = keys_2\n          .map(key => ({\n            key: key,\n            value: (_instance.trainingPhrases as any)[key]\n          }))\n          .reduce((r, v) => [...r, v], [] as any[]);\n\n        _writer.writeRepeatedMessage(\n          2,\n          repeated_2,\n          ExportBenchmarkAgentResponse.TrainingPhrasesEntry\n            .serializeBinaryToWriter\n        );\n      }\n    }\n  }\n\n  private _agentContent: Uint8Array;\n  private _trainingPhrases: {\n    [prop: string]: ondewoNlu017.ListTrainingPhrasesResponse;\n  };\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExportBenchmarkAgentResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ExportBenchmarkAgentResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.agentContent = _value.agentContent;\n    (this.trainingPhrases = _value!.trainingPhrases\n      ? Object.keys(_value!.trainingPhrases).reduce(\n          (r, k) => ({\n            ...r,\n            [k]: _value!.trainingPhrases![k]\n              ? new ondewoNlu017.ListTrainingPhrasesResponse(\n                  _value!.trainingPhrases![k]\n                )\n              : undefined\n          }),\n          {}\n        )\n      : {}),\n      ExportBenchmarkAgentResponse.refineValues(this);\n  }\n  get agentContent(): Uint8Array {\n    return this._agentContent;\n  }\n  set agentContent(value: Uint8Array) {\n    this._agentContent = value;\n  }\n  get trainingPhrases(): {\n    [prop: string]: ondewoNlu017.ListTrainingPhrasesResponse;\n  } {\n    return this._trainingPhrases;\n  }\n  set trainingPhrases(value: {\n    [prop: string]: ondewoNlu017.ListTrainingPhrasesResponse;\n  }) {\n    this._trainingPhrases = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExportBenchmarkAgentResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExportBenchmarkAgentResponse.AsObject {\n    return {\n      agentContent: this.agentContent\n        ? this.agentContent.subarray(0)\n        : new Uint8Array(),\n      trainingPhrases: this.trainingPhrases\n        ? Object.keys(this.trainingPhrases).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.trainingPhrases![k]\n                ? this.trainingPhrases![k].toObject()\n                : undefined\n            }),\n            {}\n          )\n        : {}\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExportBenchmarkAgentResponse.AsProtobufJSON {\n    return {\n      agentContent: this.agentContent\n        ? uint8ArrayToBase64(this.agentContent)\n        : '',\n      trainingPhrases: this.trainingPhrases\n        ? Object.keys(this.trainingPhrases).reduce(\n            (r, k) => ({\n              ...r,\n              [k]: this.trainingPhrases![k]\n                ? this.trainingPhrases![k].toJSON()\n                : null\n            }),\n            {}\n          )\n        : {}\n    };\n  }\n}\nexport module ExportBenchmarkAgentResponse {\n  /**\n   * Standard JavaScript object representation for ExportBenchmarkAgentResponse\n   */\n  export interface AsObject {\n    agentContent: Uint8Array;\n    trainingPhrases: {\n      [prop: string]: ondewoNlu017.ListTrainingPhrasesResponse;\n    };\n  }\n\n  /**\n   * Protobuf JSON representation for ExportBenchmarkAgentResponse\n   */\n  export interface AsProtobufJSON {\n    agentContent: string;\n    trainingPhrases: {\n      [prop: string]: ondewoNlu017.ListTrainingPhrasesResponse;\n    };\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.ExportBenchmarkAgentResponse.TrainingPhrasesEntry\n   */\n  export class TrainingPhrasesEntry implements GrpcMessage {\n    static id = 'ondewo.nlu.ExportBenchmarkAgentResponse.TrainingPhrasesEntry';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new TrainingPhrasesEntry();\n      TrainingPhrasesEntry.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: TrainingPhrasesEntry) {\n      _instance.key = _instance.key || '';\n      _instance.value = _instance.value || undefined;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: TrainingPhrasesEntry,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.key = _reader.readString();\n            break;\n          case 2:\n            _instance.value = new ondewoNlu017.ListTrainingPhrasesResponse();\n            _reader.readMessage(\n              _instance.value,\n              ondewoNlu017.ListTrainingPhrasesResponse\n                .deserializeBinaryFromReader\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      TrainingPhrasesEntry.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: TrainingPhrasesEntry,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.key) {\n        _writer.writeString(1, _instance.key);\n      }\n      if (_instance.value) {\n        _writer.writeMessage(\n          2,\n          _instance.value as any,\n          ondewoNlu017.ListTrainingPhrasesResponse.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _key: string;\n    private _value?: ondewoNlu017.ListTrainingPhrasesResponse;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of TrainingPhrasesEntry to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<TrainingPhrasesEntry.AsObject>) {\n      _value = _value || {};\n      this.key = _value.key;\n      this.value = _value.value\n        ? new ondewoNlu017.ListTrainingPhrasesResponse(_value.value)\n        : undefined;\n      TrainingPhrasesEntry.refineValues(this);\n    }\n    get key(): string {\n      return this._key;\n    }\n    set key(value: string) {\n      this._key = value;\n    }\n    get value(): ondewoNlu017.ListTrainingPhrasesResponse | undefined {\n      return this._value;\n    }\n    set value(value: ondewoNlu017.ListTrainingPhrasesResponse | undefined) {\n      this._value = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      TrainingPhrasesEntry.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): TrainingPhrasesEntry.AsObject {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toObject() : undefined\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): TrainingPhrasesEntry.AsProtobufJSON {\n      return {\n        key: this.key,\n        value: this.value ? this.value.toProtobufJSON(options) : null\n      };\n    }\n  }\n  export module TrainingPhrasesEntry {\n    /**\n     * Standard JavaScript object representation for TrainingPhrasesEntry\n     */\n    export interface AsObject {\n      key: string;\n      value?: ondewoNlu017.ListTrainingPhrasesResponse.AsObject;\n    }\n\n    /**\n     * Protobuf JSON representation for TrainingPhrasesEntry\n     */\n    export interface AsProtobufJSON {\n      key: string;\n      value: ondewoNlu017.ListTrainingPhrasesResponse.AsProtobufJSON | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.OptimizeRankingMatchRequest\n */\nexport class OptimizeRankingMatchRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.OptimizeRankingMatchRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new OptimizeRankingMatchRequest();\n    OptimizeRankingMatchRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: OptimizeRankingMatchRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCodes = _instance.languageCodes || [];\n    _instance.optimizationConfigs = _instance.optimizationConfigs || [];\n    _instance.inPlace = _instance.inPlace || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: OptimizeRankingMatchRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          (_instance.languageCodes = _instance.languageCodes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 3:\n          const messageInitializer3 = new RankingMatchOptimizationConfig();\n          _reader.readMessage(\n            messageInitializer3,\n            RankingMatchOptimizationConfig.deserializeBinaryFromReader\n          );\n          (_instance.optimizationConfigs =\n            _instance.optimizationConfigs || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.inPlace = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    OptimizeRankingMatchRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: OptimizeRankingMatchRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCodes && _instance.languageCodes.length) {\n      _writer.writeRepeatedString(2, _instance.languageCodes);\n    }\n    if (_instance.optimizationConfigs && _instance.optimizationConfigs.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.optimizationConfigs as any,\n        RankingMatchOptimizationConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.inPlace) {\n      _writer.writeBool(4, _instance.inPlace);\n    }\n  }\n\n  private _parent: string;\n  private _languageCodes: string[];\n  private _optimizationConfigs?: RankingMatchOptimizationConfig[];\n  private _inPlace: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of OptimizeRankingMatchRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<OptimizeRankingMatchRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCodes = (_value.languageCodes || []).slice();\n    this.optimizationConfigs = (_value.optimizationConfigs || []).map(\n      m => new RankingMatchOptimizationConfig(m)\n    );\n    this.inPlace = _value.inPlace;\n    OptimizeRankingMatchRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCodes(): string[] {\n    return this._languageCodes;\n  }\n  set languageCodes(value: string[]) {\n    this._languageCodes = value;\n  }\n  get optimizationConfigs(): RankingMatchOptimizationConfig[] | undefined {\n    return this._optimizationConfigs;\n  }\n  set optimizationConfigs(value: RankingMatchOptimizationConfig[] | undefined) {\n    this._optimizationConfigs = value;\n  }\n  get inPlace(): boolean {\n    return this._inPlace;\n  }\n  set inPlace(value: boolean) {\n    this._inPlace = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    OptimizeRankingMatchRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): OptimizeRankingMatchRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCodes: (this.languageCodes || []).slice(),\n      optimizationConfigs: (this.optimizationConfigs || []).map(m =>\n        m.toObject()\n      ),\n      inPlace: this.inPlace\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): OptimizeRankingMatchRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCodes: (this.languageCodes || []).slice(),\n      optimizationConfigs: (this.optimizationConfigs || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      inPlace: this.inPlace\n    };\n  }\n}\nexport module OptimizeRankingMatchRequest {\n  /**\n   * Standard JavaScript object representation for OptimizeRankingMatchRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCodes: string[];\n    optimizationConfigs?: RankingMatchOptimizationConfig.AsObject[];\n    inPlace: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for OptimizeRankingMatchRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCodes: string[];\n    optimizationConfigs: RankingMatchOptimizationConfig.AsProtobufJSON[] | null;\n    inPlace: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RankingMatchOptimizationConfig\n */\nexport class RankingMatchOptimizationConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RankingMatchOptimizationConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RankingMatchOptimizationConfig();\n    RankingMatchOptimizationConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RankingMatchOptimizationConfig) {\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.nSplits = _instance.nSplits || 0;\n    _instance.randomSeed = _instance.randomSeed || 0;\n    _instance.initialThresholds = _instance.initialThresholds || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RankingMatchOptimizationConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 2:\n          _instance.nSplits = _reader.readInt32();\n          break;\n        case 3:\n          _instance.randomSeed = _reader.readInt32();\n          break;\n        case 4:\n          _instance.initialThresholds = new googleProtobuf003.Struct();\n          _reader.readMessage(\n            _instance.initialThresholds,\n            googleProtobuf003.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RankingMatchOptimizationConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RankingMatchOptimizationConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCode) {\n      _writer.writeString(1, _instance.languageCode);\n    }\n    if (_instance.nSplits) {\n      _writer.writeInt32(2, _instance.nSplits);\n    }\n    if (_instance.randomSeed) {\n      _writer.writeInt32(3, _instance.randomSeed);\n    }\n    if (_instance.initialThresholds) {\n      _writer.writeMessage(\n        4,\n        _instance.initialThresholds as any,\n        googleProtobuf003.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _languageCode: string;\n  private _nSplits: number;\n  private _randomSeed: number;\n  private _initialThresholds?: googleProtobuf003.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RankingMatchOptimizationConfig to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RankingMatchOptimizationConfig.AsObject>\n  ) {\n    _value = _value || {};\n    this.languageCode = _value.languageCode;\n    this.nSplits = _value.nSplits;\n    this.randomSeed = _value.randomSeed;\n    this.initialThresholds = _value.initialThresholds\n      ? new googleProtobuf003.Struct(_value.initialThresholds)\n      : undefined;\n    RankingMatchOptimizationConfig.refineValues(this);\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get nSplits(): number {\n    return this._nSplits;\n  }\n  set nSplits(value: number) {\n    this._nSplits = value;\n  }\n  get randomSeed(): number {\n    return this._randomSeed;\n  }\n  set randomSeed(value: number) {\n    this._randomSeed = value;\n  }\n  get initialThresholds(): googleProtobuf003.Struct | undefined {\n    return this._initialThresholds;\n  }\n  set initialThresholds(value: googleProtobuf003.Struct | undefined) {\n    this._initialThresholds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RankingMatchOptimizationConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RankingMatchOptimizationConfig.AsObject {\n    return {\n      languageCode: this.languageCode,\n      nSplits: this.nSplits,\n      randomSeed: this.randomSeed,\n      initialThresholds: this.initialThresholds\n        ? this.initialThresholds.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RankingMatchOptimizationConfig.AsProtobufJSON {\n    return {\n      languageCode: this.languageCode,\n      nSplits: this.nSplits,\n      randomSeed: this.randomSeed,\n      initialThresholds: this.initialThresholds\n        ? this.initialThresholds.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module RankingMatchOptimizationConfig {\n  /**\n   * Standard JavaScript object representation for RankingMatchOptimizationConfig\n   */\n  export interface AsObject {\n    languageCode: string;\n    nSplits: number;\n    randomSeed: number;\n    initialThresholds?: googleProtobuf003.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RankingMatchOptimizationConfig\n   */\n  export interface AsProtobufJSON {\n    languageCode: string;\n    nSplits: number;\n    randomSeed: number;\n    initialThresholds: googleProtobuf003.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.OptimizeRankingMatchResponse\n */\nexport class OptimizeRankingMatchResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.OptimizeRankingMatchResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new OptimizeRankingMatchResponse();\n    OptimizeRankingMatchResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: OptimizeRankingMatchResponse) {\n    _instance.optimizationInfo = _instance.optimizationInfo || undefined;\n    _instance.optimizedOndewoConfig =\n      _instance.optimizedOndewoConfig || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: OptimizeRankingMatchResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.optimizationInfo = new googleProtobuf003.Struct();\n          _reader.readMessage(\n            _instance.optimizationInfo,\n            googleProtobuf003.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.optimizedOndewoConfig = new googleProtobuf003.Struct();\n          _reader.readMessage(\n            _instance.optimizedOndewoConfig,\n            googleProtobuf003.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    OptimizeRankingMatchResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: OptimizeRankingMatchResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.optimizationInfo) {\n      _writer.writeMessage(\n        1,\n        _instance.optimizationInfo as any,\n        googleProtobuf003.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.optimizedOndewoConfig) {\n      _writer.writeMessage(\n        3,\n        _instance.optimizedOndewoConfig as any,\n        googleProtobuf003.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _optimizationInfo?: googleProtobuf003.Struct;\n  private _optimizedOndewoConfig?: googleProtobuf003.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of OptimizeRankingMatchResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<OptimizeRankingMatchResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.optimizationInfo = _value.optimizationInfo\n      ? new googleProtobuf003.Struct(_value.optimizationInfo)\n      : undefined;\n    this.optimizedOndewoConfig = _value.optimizedOndewoConfig\n      ? new googleProtobuf003.Struct(_value.optimizedOndewoConfig)\n      : undefined;\n    OptimizeRankingMatchResponse.refineValues(this);\n  }\n  get optimizationInfo(): googleProtobuf003.Struct | undefined {\n    return this._optimizationInfo;\n  }\n  set optimizationInfo(value: googleProtobuf003.Struct | undefined) {\n    this._optimizationInfo = value;\n  }\n  get optimizedOndewoConfig(): googleProtobuf003.Struct | undefined {\n    return this._optimizedOndewoConfig;\n  }\n  set optimizedOndewoConfig(value: googleProtobuf003.Struct | undefined) {\n    this._optimizedOndewoConfig = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    OptimizeRankingMatchResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): OptimizeRankingMatchResponse.AsObject {\n    return {\n      optimizationInfo: this.optimizationInfo\n        ? this.optimizationInfo.toObject()\n        : undefined,\n      optimizedOndewoConfig: this.optimizedOndewoConfig\n        ? this.optimizedOndewoConfig.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): OptimizeRankingMatchResponse.AsProtobufJSON {\n    return {\n      optimizationInfo: this.optimizationInfo\n        ? this.optimizationInfo.toProtobufJSON(options)\n        : null,\n      optimizedOndewoConfig: this.optimizedOndewoConfig\n        ? this.optimizedOndewoConfig.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module OptimizeRankingMatchResponse {\n  /**\n   * Standard JavaScript object representation for OptimizeRankingMatchResponse\n   */\n  export interface AsObject {\n    optimizationInfo?: googleProtobuf003.Struct.AsObject;\n    optimizedOndewoConfig?: googleProtobuf003.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for OptimizeRankingMatchResponse\n   */\n  export interface AsProtobufJSON {\n    optimizationInfo: googleProtobuf003.Struct.AsProtobufJSON | null;\n    optimizedOndewoConfig: googleProtobuf003.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ImportAgentRequest\n */\nexport class ImportAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ImportAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ImportAgentRequest();\n    ImportAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ImportAgentRequest) {\n    _instance.parent = _instance.parent || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ImportAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.agentUri = _reader.readString();\n          break;\n        case 3:\n          _instance.agentContent = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ImportAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ImportAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.agentUri || _instance.agentUri === '') {\n      _writer.writeString(2, _instance.agentUri);\n    }\n    if (_instance.agentContent && _instance.agentContent.length) {\n      _writer.writeBytes(3, _instance.agentContent);\n    }\n  }\n\n  private _parent: string;\n  private _agentUri: string;\n  private _agentContent: Uint8Array;\n\n  private _agent: ImportAgentRequest.AgentCase =\n    ImportAgentRequest.AgentCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ImportAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ImportAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.agentUri = _value.agentUri;\n    this.agentContent = _value.agentContent;\n    ImportAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get agentUri(): string {\n    return this._agentUri;\n  }\n  set agentUri(value: string) {\n    if (value !== undefined && value !== null) {\n      this._agentContent = undefined;\n      this._agent = ImportAgentRequest.AgentCase.agentUri;\n    }\n    this._agentUri = value;\n  }\n  get agentContent(): Uint8Array {\n    return this._agentContent;\n  }\n  set agentContent(value: Uint8Array) {\n    if (value !== undefined && value !== null) {\n      this._agentUri = undefined;\n      this._agent = ImportAgentRequest.AgentCase.agentContent;\n    }\n    this._agentContent = value;\n  }\n  get agent() {\n    return this._agent;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ImportAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ImportAgentRequest.AsObject {\n    return {\n      parent: this.parent,\n      agentUri: this.agentUri,\n      agentContent: this.agentContent\n        ? this.agentContent.subarray(0)\n        : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ImportAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      agentUri:\n        this.agentUri === null || this.agentUri === undefined\n          ? null\n          : this.agentUri,\n      agentContent: this.agentContent\n        ? uint8ArrayToBase64(this.agentContent)\n        : ''\n    };\n  }\n}\nexport module ImportAgentRequest {\n  /**\n   * Standard JavaScript object representation for ImportAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    agentUri: string;\n    agentContent: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for ImportAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    agentUri: string | null;\n    agentContent: string;\n  }\n  export enum AgentCase {\n    none = 0,\n    agentUri = 1,\n    agentContent = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RestoreAgentRequest\n */\nexport class RestoreAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RestoreAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RestoreAgentRequest();\n    RestoreAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RestoreAgentRequest) {\n    _instance.parent = _instance.parent || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RestoreAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.agentUri = _reader.readString();\n          break;\n        case 3:\n          _instance.agentContent = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RestoreAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RestoreAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.agentUri || _instance.agentUri === '') {\n      _writer.writeString(2, _instance.agentUri);\n    }\n    if (_instance.agentContent && _instance.agentContent.length) {\n      _writer.writeBytes(3, _instance.agentContent);\n    }\n  }\n\n  private _parent: string;\n  private _agentUri: string;\n  private _agentContent: Uint8Array;\n\n  private _agent: RestoreAgentRequest.AgentCase =\n    RestoreAgentRequest.AgentCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RestoreAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RestoreAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.agentUri = _value.agentUri;\n    this.agentContent = _value.agentContent;\n    RestoreAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get agentUri(): string {\n    return this._agentUri;\n  }\n  set agentUri(value: string) {\n    if (value !== undefined && value !== null) {\n      this._agentContent = undefined;\n      this._agent = RestoreAgentRequest.AgentCase.agentUri;\n    }\n    this._agentUri = value;\n  }\n  get agentContent(): Uint8Array {\n    return this._agentContent;\n  }\n  set agentContent(value: Uint8Array) {\n    if (value !== undefined && value !== null) {\n      this._agentUri = undefined;\n      this._agent = RestoreAgentRequest.AgentCase.agentContent;\n    }\n    this._agentContent = value;\n  }\n  get agent() {\n    return this._agent;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RestoreAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RestoreAgentRequest.AsObject {\n    return {\n      parent: this.parent,\n      agentUri: this.agentUri,\n      agentContent: this.agentContent\n        ? this.agentContent.subarray(0)\n        : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RestoreAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      agentUri:\n        this.agentUri === null || this.agentUri === undefined\n          ? null\n          : this.agentUri,\n      agentContent: this.agentContent\n        ? uint8ArrayToBase64(this.agentContent)\n        : ''\n    };\n  }\n}\nexport module RestoreAgentRequest {\n  /**\n   * Standard JavaScript object representation for RestoreAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    agentUri: string;\n    agentContent: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for RestoreAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    agentUri: string | null;\n    agentContent: string;\n  }\n  export enum AgentCase {\n    none = 0,\n    agentUri = 1,\n    agentContent = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.MigrateAgentRequest\n */\nexport class MigrateAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.MigrateAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new MigrateAgentRequest();\n    MigrateAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: MigrateAgentRequest) {\n    _instance.agentContent = _instance.agentContent || new Uint8Array();\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: MigrateAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.agentContent = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    MigrateAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: MigrateAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.agentContent && _instance.agentContent.length) {\n      _writer.writeBytes(1, _instance.agentContent);\n    }\n  }\n\n  private _agentContent: Uint8Array;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of MigrateAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<MigrateAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.agentContent = _value.agentContent;\n    MigrateAgentRequest.refineValues(this);\n  }\n  get agentContent(): Uint8Array {\n    return this._agentContent;\n  }\n  set agentContent(value: Uint8Array) {\n    this._agentContent = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    MigrateAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): MigrateAgentRequest.AsObject {\n    return {\n      agentContent: this.agentContent\n        ? this.agentContent.subarray(0)\n        : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): MigrateAgentRequest.AsProtobufJSON {\n    return {\n      agentContent: this.agentContent\n        ? uint8ArrayToBase64(this.agentContent)\n        : ''\n    };\n  }\n}\nexport module MigrateAgentRequest {\n  /**\n   * Standard JavaScript object representation for MigrateAgentRequest\n   */\n  export interface AsObject {\n    agentContent: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for MigrateAgentRequest\n   */\n  export interface AsProtobufJSON {\n    agentContent: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAgentStatisticsRequest\n */\nexport class GetAgentStatisticsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAgentStatisticsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAgentStatisticsRequest();\n    GetAgentStatisticsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAgentStatisticsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.format = _instance.format || 0;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.type = _instance.type || 0;\n    _instance.llmModelFilter = _instance.llmModelFilter || [];\n    _instance.llmProviderFilter = _instance.llmProviderFilter || [];\n    _instance.llmAgentNameFilter = _instance.llmAgentNameFilter || [];\n    _instance.llmGroupBys = _instance.llmGroupBys || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.llmCcaiServiceProviderFilter =\n      _instance.llmCcaiServiceProviderFilter || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAgentStatisticsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.format = _reader.readEnum();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.type = _reader.readEnum();\n          break;\n        case 5:\n          (_instance.llmModelFilter = _instance.llmModelFilter || []).push(\n            _reader.readString()\n          );\n          break;\n        case 6:\n          (_instance.llmProviderFilter =\n            _instance.llmProviderFilter || []).push(_reader.readString());\n          break;\n        case 7:\n          (_instance.llmAgentNameFilter =\n            _instance.llmAgentNameFilter || []).push(_reader.readString());\n          break;\n        case 8:\n          (_instance.llmGroupBys = _instance.llmGroupBys || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _reader.readPackableEnumInto(\n            (_instance.llmCcaiServiceProviderFilter =\n              _instance.llmCcaiServiceProviderFilter || [])\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAgentStatisticsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAgentStatisticsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.format) {\n      _writer.writeEnum(2, _instance.format);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.type) {\n      _writer.writeEnum(4, _instance.type);\n    }\n    if (_instance.llmModelFilter && _instance.llmModelFilter.length) {\n      _writer.writeRepeatedString(5, _instance.llmModelFilter);\n    }\n    if (_instance.llmProviderFilter && _instance.llmProviderFilter.length) {\n      _writer.writeRepeatedString(6, _instance.llmProviderFilter);\n    }\n    if (_instance.llmAgentNameFilter && _instance.llmAgentNameFilter.length) {\n      _writer.writeRepeatedString(7, _instance.llmAgentNameFilter);\n    }\n    if (_instance.llmGroupBys && _instance.llmGroupBys.length) {\n      _writer.writeRepeatedString(8, _instance.llmGroupBys);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        9,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (\n      _instance.llmCcaiServiceProviderFilter &&\n      _instance.llmCcaiServiceProviderFilter.length\n    ) {\n      _writer.writePackedEnum(10, _instance.llmCcaiServiceProviderFilter);\n    }\n  }\n\n  private _parent: string;\n  private _format: ReportFormat;\n  private _languageCode: string;\n  private _type: ReportType;\n  private _llmModelFilter: string[];\n  private _llmProviderFilter: string[];\n  private _llmAgentNameFilter: string[];\n  private _llmGroupBys: string[];\n  private _fieldMask?: googleProtobuf002.FieldMask;\n  private _llmCcaiServiceProviderFilter: ondewoNlu015.CcaiServiceProvider[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAgentStatisticsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAgentStatisticsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.format = _value.format;\n    this.languageCode = _value.languageCode;\n    this.type = _value.type;\n    this.llmModelFilter = (_value.llmModelFilter || []).slice();\n    this.llmProviderFilter = (_value.llmProviderFilter || []).slice();\n    this.llmAgentNameFilter = (_value.llmAgentNameFilter || []).slice();\n    this.llmGroupBys = (_value.llmGroupBys || []).slice();\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    this.llmCcaiServiceProviderFilter = (\n      _value.llmCcaiServiceProviderFilter || []\n    ).slice();\n    GetAgentStatisticsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get format(): ReportFormat {\n    return this._format;\n  }\n  set format(value: ReportFormat) {\n    this._format = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get type(): ReportType {\n    return this._type;\n  }\n  set type(value: ReportType) {\n    this._type = value;\n  }\n  get llmModelFilter(): string[] {\n    return this._llmModelFilter;\n  }\n  set llmModelFilter(value: string[]) {\n    this._llmModelFilter = value;\n  }\n  get llmProviderFilter(): string[] {\n    return this._llmProviderFilter;\n  }\n  set llmProviderFilter(value: string[]) {\n    this._llmProviderFilter = value;\n  }\n  get llmAgentNameFilter(): string[] {\n    return this._llmAgentNameFilter;\n  }\n  set llmAgentNameFilter(value: string[]) {\n    this._llmAgentNameFilter = value;\n  }\n  get llmGroupBys(): string[] {\n    return this._llmGroupBys;\n  }\n  set llmGroupBys(value: string[]) {\n    this._llmGroupBys = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get llmCcaiServiceProviderFilter(): ondewoNlu015.CcaiServiceProvider[] {\n    return this._llmCcaiServiceProviderFilter;\n  }\n  set llmCcaiServiceProviderFilter(value: ondewoNlu015.CcaiServiceProvider[]) {\n    this._llmCcaiServiceProviderFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAgentStatisticsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAgentStatisticsRequest.AsObject {\n    return {\n      parent: this.parent,\n      format: this.format,\n      languageCode: this.languageCode,\n      type: this.type,\n      llmModelFilter: (this.llmModelFilter || []).slice(),\n      llmProviderFilter: (this.llmProviderFilter || []).slice(),\n      llmAgentNameFilter: (this.llmAgentNameFilter || []).slice(),\n      llmGroupBys: (this.llmGroupBys || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      llmCcaiServiceProviderFilter: (\n        this.llmCcaiServiceProviderFilter || []\n      ).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAgentStatisticsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      format:\n        ReportFormat[\n          this.format === null || this.format === undefined ? 0 : this.format\n        ],\n      languageCode: this.languageCode,\n      type:\n        ReportType[\n          this.type === null || this.type === undefined ? 0 : this.type\n        ],\n      llmModelFilter: (this.llmModelFilter || []).slice(),\n      llmProviderFilter: (this.llmProviderFilter || []).slice(),\n      llmAgentNameFilter: (this.llmAgentNameFilter || []).slice(),\n      llmGroupBys: (this.llmGroupBys || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      llmCcaiServiceProviderFilter: (\n        this.llmCcaiServiceProviderFilter || []\n      ).map(v => ondewoNlu015.CcaiServiceProvider[v])\n    };\n  }\n}\nexport module GetAgentStatisticsRequest {\n  /**\n   * Standard JavaScript object representation for GetAgentStatisticsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    format: ReportFormat;\n    languageCode: string;\n    type: ReportType;\n    llmModelFilter: string[];\n    llmProviderFilter: string[];\n    llmAgentNameFilter: string[];\n    llmGroupBys: string[];\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n    llmCcaiServiceProviderFilter: ondewoNlu015.CcaiServiceProvider[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetAgentStatisticsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    format: string;\n    languageCode: string;\n    type: string;\n    llmModelFilter: string[];\n    llmProviderFilter: string[];\n    llmAgentNameFilter: string[];\n    llmGroupBys: string[];\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n    llmCcaiServiceProviderFilter: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAgentStatisticsResponse\n */\nexport class GetAgentStatisticsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAgentStatisticsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAgentStatisticsResponse();\n    GetAgentStatisticsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAgentStatisticsResponse) {\n    _instance.reports = _instance.reports || new Uint8Array();\n    _instance.format = _instance.format || 0;\n    _instance.type = _instance.type || 0;\n    _instance.llmTelemetryReport = _instance.llmTelemetryReport || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAgentStatisticsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.reports = _reader.readBytes();\n          break;\n        case 2:\n          _instance.format = _reader.readEnum();\n          break;\n        case 3:\n          _instance.type = _reader.readEnum();\n          break;\n        case 4:\n          _instance.llmTelemetryReport = new ondewoNlu020.LlmTelemetryReport();\n          _reader.readMessage(\n            _instance.llmTelemetryReport,\n            ondewoNlu020.LlmTelemetryReport.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAgentStatisticsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAgentStatisticsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.reports && _instance.reports.length) {\n      _writer.writeBytes(1, _instance.reports);\n    }\n    if (_instance.format) {\n      _writer.writeEnum(2, _instance.format);\n    }\n    if (_instance.type) {\n      _writer.writeEnum(3, _instance.type);\n    }\n    if (_instance.llmTelemetryReport) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTelemetryReport as any,\n        ondewoNlu020.LlmTelemetryReport.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _reports: Uint8Array;\n  private _format: ReportFormat;\n  private _type: ReportType;\n  private _llmTelemetryReport?: ondewoNlu020.LlmTelemetryReport;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAgentStatisticsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAgentStatisticsResponse.AsObject>) {\n    _value = _value || {};\n    this.reports = _value.reports;\n    this.format = _value.format;\n    this.type = _value.type;\n    this.llmTelemetryReport = _value.llmTelemetryReport\n      ? new ondewoNlu020.LlmTelemetryReport(_value.llmTelemetryReport)\n      : undefined;\n    GetAgentStatisticsResponse.refineValues(this);\n  }\n  get reports(): Uint8Array {\n    return this._reports;\n  }\n  set reports(value: Uint8Array) {\n    this._reports = value;\n  }\n  get format(): ReportFormat {\n    return this._format;\n  }\n  set format(value: ReportFormat) {\n    this._format = value;\n  }\n  get type(): ReportType {\n    return this._type;\n  }\n  set type(value: ReportType) {\n    this._type = value;\n  }\n  get llmTelemetryReport(): ondewoNlu020.LlmTelemetryReport | undefined {\n    return this._llmTelemetryReport;\n  }\n  set llmTelemetryReport(value: ondewoNlu020.LlmTelemetryReport | undefined) {\n    this._llmTelemetryReport = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAgentStatisticsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAgentStatisticsResponse.AsObject {\n    return {\n      reports: this.reports ? this.reports.subarray(0) : new Uint8Array(),\n      format: this.format,\n      type: this.type,\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAgentStatisticsResponse.AsProtobufJSON {\n    return {\n      reports: this.reports ? uint8ArrayToBase64(this.reports) : '',\n      format:\n        ReportFormat[\n          this.format === null || this.format === undefined ? 0 : this.format\n        ],\n      type:\n        ReportType[\n          this.type === null || this.type === undefined ? 0 : this.type\n        ],\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module GetAgentStatisticsResponse {\n  /**\n   * Standard JavaScript object representation for GetAgentStatisticsResponse\n   */\n  export interface AsObject {\n    reports: Uint8Array;\n    format: ReportFormat;\n    type: ReportType;\n    llmTelemetryReport?: ondewoNlu020.LlmTelemetryReport.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAgentStatisticsResponse\n   */\n  export interface AsProtobufJSON {\n    reports: string;\n    format: string;\n    type: string;\n    llmTelemetryReport: ondewoNlu020.LlmTelemetryReport.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionsStatisticsRequest\n */\nexport class GetSessionsStatisticsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionsStatisticsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionsStatisticsRequest();\n    GetSessionsStatisticsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionsStatisticsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.format = _instance.format || 0;\n    _instance.type = _instance.type || 0;\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.contextFilters = _instance.contextFilters || [];\n    _instance.limit = _instance.limit || 0;\n    _instance.groupBys = _instance.groupBys || [];\n    _instance.orderBys = _instance.orderBys || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.sqlQuery = _instance.sqlQuery || '';\n    _instance.llmModelFilter = _instance.llmModelFilter || [];\n    _instance.llmProviderFilter = _instance.llmProviderFilter || [];\n    _instance.llmAgentNameFilter = _instance.llmAgentNameFilter || [];\n    _instance.llmToolNameFilter = _instance.llmToolNameFilter || [];\n    _instance.llmCcaiServiceProviderFilter =\n      _instance.llmCcaiServiceProviderFilter || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionsStatisticsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.format = _reader.readEnum();\n          break;\n        case 3:\n          _instance.type = _reader.readEnum();\n          break;\n        case 4:\n          _instance.sessionFilter = new ondewoNlu020.SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            ondewoNlu020.SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          const messageInitializer5 = new ondewoNlu020.ContextFilter();\n          _reader.readMessage(\n            messageInitializer5,\n            ondewoNlu020.ContextFilter.deserializeBinaryFromReader\n          );\n          (_instance.contextFilters = _instance.contextFilters || []).push(\n            messageInitializer5\n          );\n          break;\n        case 6:\n          _instance.limit = _reader.readInt32();\n          break;\n        case 7:\n          (_instance.groupBys = _instance.groupBys || []).push(\n            _reader.readString()\n          );\n          break;\n        case 8:\n          (_instance.orderBys = _instance.orderBys || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.sqlQuery = _reader.readString();\n          break;\n        case 11:\n          (_instance.llmModelFilter = _instance.llmModelFilter || []).push(\n            _reader.readString()\n          );\n          break;\n        case 12:\n          (_instance.llmProviderFilter =\n            _instance.llmProviderFilter || []).push(_reader.readString());\n          break;\n        case 13:\n          (_instance.llmAgentNameFilter =\n            _instance.llmAgentNameFilter || []).push(_reader.readString());\n          break;\n        case 14:\n          (_instance.llmToolNameFilter =\n            _instance.llmToolNameFilter || []).push(_reader.readString());\n          break;\n        case 15:\n          _reader.readPackableEnumInto(\n            (_instance.llmCcaiServiceProviderFilter =\n              _instance.llmCcaiServiceProviderFilter || [])\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionsStatisticsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionsStatisticsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.format) {\n      _writer.writeEnum(2, _instance.format);\n    }\n    if (_instance.type) {\n      _writer.writeEnum(3, _instance.type);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        4,\n        _instance.sessionFilter as any,\n        ondewoNlu020.SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.contextFilters && _instance.contextFilters.length) {\n      _writer.writeRepeatedMessage(\n        5,\n        _instance.contextFilters as any,\n        ondewoNlu020.ContextFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.limit) {\n      _writer.writeInt32(6, _instance.limit);\n    }\n    if (_instance.groupBys && _instance.groupBys.length) {\n      _writer.writeRepeatedString(7, _instance.groupBys);\n    }\n    if (_instance.orderBys && _instance.orderBys.length) {\n      _writer.writeRepeatedString(8, _instance.orderBys);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        9,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sqlQuery) {\n      _writer.writeString(10, _instance.sqlQuery);\n    }\n    if (_instance.llmModelFilter && _instance.llmModelFilter.length) {\n      _writer.writeRepeatedString(11, _instance.llmModelFilter);\n    }\n    if (_instance.llmProviderFilter && _instance.llmProviderFilter.length) {\n      _writer.writeRepeatedString(12, _instance.llmProviderFilter);\n    }\n    if (_instance.llmAgentNameFilter && _instance.llmAgentNameFilter.length) {\n      _writer.writeRepeatedString(13, _instance.llmAgentNameFilter);\n    }\n    if (_instance.llmToolNameFilter && _instance.llmToolNameFilter.length) {\n      _writer.writeRepeatedString(14, _instance.llmToolNameFilter);\n    }\n    if (\n      _instance.llmCcaiServiceProviderFilter &&\n      _instance.llmCcaiServiceProviderFilter.length\n    ) {\n      _writer.writePackedEnum(15, _instance.llmCcaiServiceProviderFilter);\n    }\n  }\n\n  private _parent: string;\n  private _format: ReportFormat;\n  private _type: SessionsReportType;\n  private _sessionFilter?: ondewoNlu020.SessionFilter;\n  private _contextFilters?: ondewoNlu020.ContextFilter[];\n  private _limit: number;\n  private _groupBys: string[];\n  private _orderBys: string[];\n  private _fieldMask?: googleProtobuf002.FieldMask;\n  private _sqlQuery: string;\n  private _llmModelFilter: string[];\n  private _llmProviderFilter: string[];\n  private _llmAgentNameFilter: string[];\n  private _llmToolNameFilter: string[];\n  private _llmCcaiServiceProviderFilter: ondewoNlu015.CcaiServiceProvider[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionsStatisticsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetSessionsStatisticsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.format = _value.format;\n    this.type = _value.type;\n    this.sessionFilter = _value.sessionFilter\n      ? new ondewoNlu020.SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.contextFilters = (_value.contextFilters || []).map(\n      m => new ondewoNlu020.ContextFilter(m)\n    );\n    this.limit = _value.limit;\n    this.groupBys = (_value.groupBys || []).slice();\n    this.orderBys = (_value.orderBys || []).slice();\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    this.sqlQuery = _value.sqlQuery;\n    this.llmModelFilter = (_value.llmModelFilter || []).slice();\n    this.llmProviderFilter = (_value.llmProviderFilter || []).slice();\n    this.llmAgentNameFilter = (_value.llmAgentNameFilter || []).slice();\n    this.llmToolNameFilter = (_value.llmToolNameFilter || []).slice();\n    this.llmCcaiServiceProviderFilter = (\n      _value.llmCcaiServiceProviderFilter || []\n    ).slice();\n    GetSessionsStatisticsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get format(): ReportFormat {\n    return this._format;\n  }\n  set format(value: ReportFormat) {\n    this._format = value;\n  }\n  get type(): SessionsReportType {\n    return this._type;\n  }\n  set type(value: SessionsReportType) {\n    this._type = value;\n  }\n  get sessionFilter(): ondewoNlu020.SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: ondewoNlu020.SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get contextFilters(): ondewoNlu020.ContextFilter[] | undefined {\n    return this._contextFilters;\n  }\n  set contextFilters(value: ondewoNlu020.ContextFilter[] | undefined) {\n    this._contextFilters = value;\n  }\n  get limit(): number {\n    return this._limit;\n  }\n  set limit(value: number) {\n    this._limit = value;\n  }\n  get groupBys(): string[] {\n    return this._groupBys;\n  }\n  set groupBys(value: string[]) {\n    this._groupBys = value;\n  }\n  get orderBys(): string[] {\n    return this._orderBys;\n  }\n  set orderBys(value: string[]) {\n    this._orderBys = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get sqlQuery(): string {\n    return this._sqlQuery;\n  }\n  set sqlQuery(value: string) {\n    this._sqlQuery = value;\n  }\n  get llmModelFilter(): string[] {\n    return this._llmModelFilter;\n  }\n  set llmModelFilter(value: string[]) {\n    this._llmModelFilter = value;\n  }\n  get llmProviderFilter(): string[] {\n    return this._llmProviderFilter;\n  }\n  set llmProviderFilter(value: string[]) {\n    this._llmProviderFilter = value;\n  }\n  get llmAgentNameFilter(): string[] {\n    return this._llmAgentNameFilter;\n  }\n  set llmAgentNameFilter(value: string[]) {\n    this._llmAgentNameFilter = value;\n  }\n  get llmToolNameFilter(): string[] {\n    return this._llmToolNameFilter;\n  }\n  set llmToolNameFilter(value: string[]) {\n    this._llmToolNameFilter = value;\n  }\n  get llmCcaiServiceProviderFilter(): ondewoNlu015.CcaiServiceProvider[] {\n    return this._llmCcaiServiceProviderFilter;\n  }\n  set llmCcaiServiceProviderFilter(value: ondewoNlu015.CcaiServiceProvider[]) {\n    this._llmCcaiServiceProviderFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionsStatisticsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionsStatisticsRequest.AsObject {\n    return {\n      parent: this.parent,\n      format: this.format,\n      type: this.type,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      contextFilters: (this.contextFilters || []).map(m => m.toObject()),\n      limit: this.limit,\n      groupBys: (this.groupBys || []).slice(),\n      orderBys: (this.orderBys || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      sqlQuery: this.sqlQuery,\n      llmModelFilter: (this.llmModelFilter || []).slice(),\n      llmProviderFilter: (this.llmProviderFilter || []).slice(),\n      llmAgentNameFilter: (this.llmAgentNameFilter || []).slice(),\n      llmToolNameFilter: (this.llmToolNameFilter || []).slice(),\n      llmCcaiServiceProviderFilter: (\n        this.llmCcaiServiceProviderFilter || []\n      ).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionsStatisticsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      format:\n        ReportFormat[\n          this.format === null || this.format === undefined ? 0 : this.format\n        ],\n      type:\n        SessionsReportType[\n          this.type === null || this.type === undefined ? 0 : this.type\n        ],\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      contextFilters: (this.contextFilters || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      limit: this.limit,\n      groupBys: (this.groupBys || []).slice(),\n      orderBys: (this.orderBys || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      sqlQuery: this.sqlQuery,\n      llmModelFilter: (this.llmModelFilter || []).slice(),\n      llmProviderFilter: (this.llmProviderFilter || []).slice(),\n      llmAgentNameFilter: (this.llmAgentNameFilter || []).slice(),\n      llmToolNameFilter: (this.llmToolNameFilter || []).slice(),\n      llmCcaiServiceProviderFilter: (\n        this.llmCcaiServiceProviderFilter || []\n      ).map(v => ondewoNlu015.CcaiServiceProvider[v])\n    };\n  }\n}\nexport module GetSessionsStatisticsRequest {\n  /**\n   * Standard JavaScript object representation for GetSessionsStatisticsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    format: ReportFormat;\n    type: SessionsReportType;\n    sessionFilter?: ondewoNlu020.SessionFilter.AsObject;\n    contextFilters?: ondewoNlu020.ContextFilter.AsObject[];\n    limit: number;\n    groupBys: string[];\n    orderBys: string[];\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n    sqlQuery: string;\n    llmModelFilter: string[];\n    llmProviderFilter: string[];\n    llmAgentNameFilter: string[];\n    llmToolNameFilter: string[];\n    llmCcaiServiceProviderFilter: ondewoNlu015.CcaiServiceProvider[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionsStatisticsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    format: string;\n    type: string;\n    sessionFilter: ondewoNlu020.SessionFilter.AsProtobufJSON | null;\n    contextFilters: ondewoNlu020.ContextFilter.AsProtobufJSON[] | null;\n    limit: number;\n    groupBys: string[];\n    orderBys: string[];\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n    sqlQuery: string;\n    llmModelFilter: string[];\n    llmProviderFilter: string[];\n    llmAgentNameFilter: string[];\n    llmToolNameFilter: string[];\n    llmCcaiServiceProviderFilter: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionsStatisticsResponse\n */\nexport class GetSessionsStatisticsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionsStatisticsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionsStatisticsResponse();\n    GetSessionsStatisticsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionsStatisticsResponse) {\n    _instance.reports = _instance.reports || new Uint8Array();\n    _instance.format = _instance.format || 0;\n    _instance.type = _instance.type || 0;\n    _instance.llmTelemetryReport = _instance.llmTelemetryReport || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionsStatisticsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.reports = _reader.readBytes();\n          break;\n        case 2:\n          _instance.format = _reader.readEnum();\n          break;\n        case 3:\n          _instance.type = _reader.readEnum();\n          break;\n        case 4:\n          _instance.llmTelemetryReport = new ondewoNlu020.LlmTelemetryReport();\n          _reader.readMessage(\n            _instance.llmTelemetryReport,\n            ondewoNlu020.LlmTelemetryReport.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionsStatisticsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionsStatisticsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.reports && _instance.reports.length) {\n      _writer.writeBytes(1, _instance.reports);\n    }\n    if (_instance.format) {\n      _writer.writeEnum(2, _instance.format);\n    }\n    if (_instance.type) {\n      _writer.writeEnum(3, _instance.type);\n    }\n    if (_instance.llmTelemetryReport) {\n      _writer.writeMessage(\n        4,\n        _instance.llmTelemetryReport as any,\n        ondewoNlu020.LlmTelemetryReport.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _reports: Uint8Array;\n  private _format: ReportFormat;\n  private _type: SessionsReportType;\n  private _llmTelemetryReport?: ondewoNlu020.LlmTelemetryReport;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionsStatisticsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetSessionsStatisticsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.reports = _value.reports;\n    this.format = _value.format;\n    this.type = _value.type;\n    this.llmTelemetryReport = _value.llmTelemetryReport\n      ? new ondewoNlu020.LlmTelemetryReport(_value.llmTelemetryReport)\n      : undefined;\n    GetSessionsStatisticsResponse.refineValues(this);\n  }\n  get reports(): Uint8Array {\n    return this._reports;\n  }\n  set reports(value: Uint8Array) {\n    this._reports = value;\n  }\n  get format(): ReportFormat {\n    return this._format;\n  }\n  set format(value: ReportFormat) {\n    this._format = value;\n  }\n  get type(): SessionsReportType {\n    return this._type;\n  }\n  set type(value: SessionsReportType) {\n    this._type = value;\n  }\n  get llmTelemetryReport(): ondewoNlu020.LlmTelemetryReport | undefined {\n    return this._llmTelemetryReport;\n  }\n  set llmTelemetryReport(value: ondewoNlu020.LlmTelemetryReport | undefined) {\n    this._llmTelemetryReport = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionsStatisticsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionsStatisticsResponse.AsObject {\n    return {\n      reports: this.reports ? this.reports.subarray(0) : new Uint8Array(),\n      format: this.format,\n      type: this.type,\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionsStatisticsResponse.AsProtobufJSON {\n    return {\n      reports: this.reports ? uint8ArrayToBase64(this.reports) : '',\n      format:\n        ReportFormat[\n          this.format === null || this.format === undefined ? 0 : this.format\n        ],\n      type:\n        SessionsReportType[\n          this.type === null || this.type === undefined ? 0 : this.type\n        ],\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module GetSessionsStatisticsResponse {\n  /**\n   * Standard JavaScript object representation for GetSessionsStatisticsResponse\n   */\n  export interface AsObject {\n    reports: Uint8Array;\n    format: ReportFormat;\n    type: SessionsReportType;\n    llmTelemetryReport?: ondewoNlu020.LlmTelemetryReport.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionsStatisticsResponse\n   */\n  export interface AsProtobufJSON {\n    reports: string;\n    format: string;\n    type: string;\n    llmTelemetryReport: ondewoNlu020.LlmTelemetryReport.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionsStatisticsTimeSeriesRequest\n */\nexport class GetSessionsStatisticsTimeSeriesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionsStatisticsTimeSeriesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionsStatisticsTimeSeriesRequest();\n    GetSessionsStatisticsTimeSeriesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionsStatisticsTimeSeriesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.type = _instance.type || 0;\n    _instance.sessionFilter = _instance.sessionFilter || undefined;\n    _instance.bucketWidthSeconds = _instance.bucketWidthSeconds || 0;\n    _instance.maxBuckets = _instance.maxBuckets || 0;\n    _instance.llmModelFilter = _instance.llmModelFilter || [];\n    _instance.llmProviderFilter = _instance.llmProviderFilter || [];\n    _instance.llmAgentNameFilter = _instance.llmAgentNameFilter || [];\n    _instance.llmToolNameFilter = _instance.llmToolNameFilter || [];\n    _instance.llmCcaiServiceProviderFilter =\n      _instance.llmCcaiServiceProviderFilter || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionsStatisticsTimeSeriesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.type = _reader.readEnum();\n          break;\n        case 3:\n          _instance.sessionFilter = new ondewoNlu020.SessionFilter();\n          _reader.readMessage(\n            _instance.sessionFilter,\n            ondewoNlu020.SessionFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.bucketWidthSeconds = _reader.readInt32();\n          break;\n        case 5:\n          _instance.maxBuckets = _reader.readInt32();\n          break;\n        case 6:\n          (_instance.llmModelFilter = _instance.llmModelFilter || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          (_instance.llmProviderFilter =\n            _instance.llmProviderFilter || []).push(_reader.readString());\n          break;\n        case 8:\n          (_instance.llmAgentNameFilter =\n            _instance.llmAgentNameFilter || []).push(_reader.readString());\n          break;\n        case 9:\n          (_instance.llmToolNameFilter =\n            _instance.llmToolNameFilter || []).push(_reader.readString());\n          break;\n        case 10:\n          _reader.readPackableEnumInto(\n            (_instance.llmCcaiServiceProviderFilter =\n              _instance.llmCcaiServiceProviderFilter || [])\n          );\n          break;\n        case 11:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionsStatisticsTimeSeriesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionsStatisticsTimeSeriesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.type) {\n      _writer.writeEnum(2, _instance.type);\n    }\n    if (_instance.sessionFilter) {\n      _writer.writeMessage(\n        3,\n        _instance.sessionFilter as any,\n        ondewoNlu020.SessionFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.bucketWidthSeconds) {\n      _writer.writeInt32(4, _instance.bucketWidthSeconds);\n    }\n    if (_instance.maxBuckets) {\n      _writer.writeInt32(5, _instance.maxBuckets);\n    }\n    if (_instance.llmModelFilter && _instance.llmModelFilter.length) {\n      _writer.writeRepeatedString(6, _instance.llmModelFilter);\n    }\n    if (_instance.llmProviderFilter && _instance.llmProviderFilter.length) {\n      _writer.writeRepeatedString(7, _instance.llmProviderFilter);\n    }\n    if (_instance.llmAgentNameFilter && _instance.llmAgentNameFilter.length) {\n      _writer.writeRepeatedString(8, _instance.llmAgentNameFilter);\n    }\n    if (_instance.llmToolNameFilter && _instance.llmToolNameFilter.length) {\n      _writer.writeRepeatedString(9, _instance.llmToolNameFilter);\n    }\n    if (\n      _instance.llmCcaiServiceProviderFilter &&\n      _instance.llmCcaiServiceProviderFilter.length\n    ) {\n      _writer.writePackedEnum(10, _instance.llmCcaiServiceProviderFilter);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        11,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _type: SessionsReportType;\n  private _sessionFilter?: ondewoNlu020.SessionFilter;\n  private _bucketWidthSeconds: number;\n  private _maxBuckets: number;\n  private _llmModelFilter: string[];\n  private _llmProviderFilter: string[];\n  private _llmAgentNameFilter: string[];\n  private _llmToolNameFilter: string[];\n  private _llmCcaiServiceProviderFilter: ondewoNlu015.CcaiServiceProvider[];\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionsStatisticsTimeSeriesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetSessionsStatisticsTimeSeriesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.type = _value.type;\n    this.sessionFilter = _value.sessionFilter\n      ? new ondewoNlu020.SessionFilter(_value.sessionFilter)\n      : undefined;\n    this.bucketWidthSeconds = _value.bucketWidthSeconds;\n    this.maxBuckets = _value.maxBuckets;\n    this.llmModelFilter = (_value.llmModelFilter || []).slice();\n    this.llmProviderFilter = (_value.llmProviderFilter || []).slice();\n    this.llmAgentNameFilter = (_value.llmAgentNameFilter || []).slice();\n    this.llmToolNameFilter = (_value.llmToolNameFilter || []).slice();\n    this.llmCcaiServiceProviderFilter = (\n      _value.llmCcaiServiceProviderFilter || []\n    ).slice();\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    GetSessionsStatisticsTimeSeriesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get type(): SessionsReportType {\n    return this._type;\n  }\n  set type(value: SessionsReportType) {\n    this._type = value;\n  }\n  get sessionFilter(): ondewoNlu020.SessionFilter | undefined {\n    return this._sessionFilter;\n  }\n  set sessionFilter(value: ondewoNlu020.SessionFilter | undefined) {\n    this._sessionFilter = value;\n  }\n  get bucketWidthSeconds(): number {\n    return this._bucketWidthSeconds;\n  }\n  set bucketWidthSeconds(value: number) {\n    this._bucketWidthSeconds = value;\n  }\n  get maxBuckets(): number {\n    return this._maxBuckets;\n  }\n  set maxBuckets(value: number) {\n    this._maxBuckets = value;\n  }\n  get llmModelFilter(): string[] {\n    return this._llmModelFilter;\n  }\n  set llmModelFilter(value: string[]) {\n    this._llmModelFilter = value;\n  }\n  get llmProviderFilter(): string[] {\n    return this._llmProviderFilter;\n  }\n  set llmProviderFilter(value: string[]) {\n    this._llmProviderFilter = value;\n  }\n  get llmAgentNameFilter(): string[] {\n    return this._llmAgentNameFilter;\n  }\n  set llmAgentNameFilter(value: string[]) {\n    this._llmAgentNameFilter = value;\n  }\n  get llmToolNameFilter(): string[] {\n    return this._llmToolNameFilter;\n  }\n  set llmToolNameFilter(value: string[]) {\n    this._llmToolNameFilter = value;\n  }\n  get llmCcaiServiceProviderFilter(): ondewoNlu015.CcaiServiceProvider[] {\n    return this._llmCcaiServiceProviderFilter;\n  }\n  set llmCcaiServiceProviderFilter(value: ondewoNlu015.CcaiServiceProvider[]) {\n    this._llmCcaiServiceProviderFilter = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionsStatisticsTimeSeriesRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionsStatisticsTimeSeriesRequest.AsObject {\n    return {\n      parent: this.parent,\n      type: this.type,\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toObject()\n        : undefined,\n      bucketWidthSeconds: this.bucketWidthSeconds,\n      maxBuckets: this.maxBuckets,\n      llmModelFilter: (this.llmModelFilter || []).slice(),\n      llmProviderFilter: (this.llmProviderFilter || []).slice(),\n      llmAgentNameFilter: (this.llmAgentNameFilter || []).slice(),\n      llmToolNameFilter: (this.llmToolNameFilter || []).slice(),\n      llmCcaiServiceProviderFilter: (\n        this.llmCcaiServiceProviderFilter || []\n      ).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionsStatisticsTimeSeriesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      type:\n        SessionsReportType[\n          this.type === null || this.type === undefined ? 0 : this.type\n        ],\n      sessionFilter: this.sessionFilter\n        ? this.sessionFilter.toProtobufJSON(options)\n        : null,\n      bucketWidthSeconds: this.bucketWidthSeconds,\n      maxBuckets: this.maxBuckets,\n      llmModelFilter: (this.llmModelFilter || []).slice(),\n      llmProviderFilter: (this.llmProviderFilter || []).slice(),\n      llmAgentNameFilter: (this.llmAgentNameFilter || []).slice(),\n      llmToolNameFilter: (this.llmToolNameFilter || []).slice(),\n      llmCcaiServiceProviderFilter: (\n        this.llmCcaiServiceProviderFilter || []\n      ).map(v => ondewoNlu015.CcaiServiceProvider[v]),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetSessionsStatisticsTimeSeriesRequest {\n  /**\n   * Standard JavaScript object representation for GetSessionsStatisticsTimeSeriesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    type: SessionsReportType;\n    sessionFilter?: ondewoNlu020.SessionFilter.AsObject;\n    bucketWidthSeconds: number;\n    maxBuckets: number;\n    llmModelFilter: string[];\n    llmProviderFilter: string[];\n    llmAgentNameFilter: string[];\n    llmToolNameFilter: string[];\n    llmCcaiServiceProviderFilter: ondewoNlu015.CcaiServiceProvider[];\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionsStatisticsTimeSeriesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    type: string;\n    sessionFilter: ondewoNlu020.SessionFilter.AsProtobufJSON | null;\n    bucketWidthSeconds: number;\n    maxBuckets: number;\n    llmModelFilter: string[];\n    llmProviderFilter: string[];\n    llmAgentNameFilter: string[];\n    llmToolNameFilter: string[];\n    llmCcaiServiceProviderFilter: string[];\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmTelemetryTimeSeriesBucket\n */\nexport class LlmTelemetryTimeSeriesBucket implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmTelemetryTimeSeriesBucket';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmTelemetryTimeSeriesBucket();\n    LlmTelemetryTimeSeriesBucket.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmTelemetryTimeSeriesBucket) {\n    _instance.bucketStart = _instance.bucketStart || undefined;\n    _instance.bucketEnd = _instance.bucketEnd || undefined;\n    _instance.llmTelemetryReport = _instance.llmTelemetryReport || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmTelemetryTimeSeriesBucket,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.bucketStart = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.bucketStart,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.bucketEnd = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.bucketEnd,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.llmTelemetryReport = new ondewoNlu020.LlmTelemetryReport();\n          _reader.readMessage(\n            _instance.llmTelemetryReport,\n            ondewoNlu020.LlmTelemetryReport.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmTelemetryTimeSeriesBucket.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmTelemetryTimeSeriesBucket,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.bucketStart) {\n      _writer.writeMessage(\n        1,\n        _instance.bucketStart as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.bucketEnd) {\n      _writer.writeMessage(\n        2,\n        _instance.bucketEnd as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmTelemetryReport) {\n      _writer.writeMessage(\n        3,\n        _instance.llmTelemetryReport as any,\n        ondewoNlu020.LlmTelemetryReport.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _bucketStart?: googleProtobuf004.Timestamp;\n  private _bucketEnd?: googleProtobuf004.Timestamp;\n  private _llmTelemetryReport?: ondewoNlu020.LlmTelemetryReport;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmTelemetryTimeSeriesBucket to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<LlmTelemetryTimeSeriesBucket.AsObject>\n  ) {\n    _value = _value || {};\n    this.bucketStart = _value.bucketStart\n      ? new googleProtobuf004.Timestamp(_value.bucketStart)\n      : undefined;\n    this.bucketEnd = _value.bucketEnd\n      ? new googleProtobuf004.Timestamp(_value.bucketEnd)\n      : undefined;\n    this.llmTelemetryReport = _value.llmTelemetryReport\n      ? new ondewoNlu020.LlmTelemetryReport(_value.llmTelemetryReport)\n      : undefined;\n    LlmTelemetryTimeSeriesBucket.refineValues(this);\n  }\n  get bucketStart(): googleProtobuf004.Timestamp | undefined {\n    return this._bucketStart;\n  }\n  set bucketStart(value: googleProtobuf004.Timestamp | undefined) {\n    this._bucketStart = value;\n  }\n  get bucketEnd(): googleProtobuf004.Timestamp | undefined {\n    return this._bucketEnd;\n  }\n  set bucketEnd(value: googleProtobuf004.Timestamp | undefined) {\n    this._bucketEnd = value;\n  }\n  get llmTelemetryReport(): ondewoNlu020.LlmTelemetryReport | undefined {\n    return this._llmTelemetryReport;\n  }\n  set llmTelemetryReport(value: ondewoNlu020.LlmTelemetryReport | undefined) {\n    this._llmTelemetryReport = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmTelemetryTimeSeriesBucket.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmTelemetryTimeSeriesBucket.AsObject {\n    return {\n      bucketStart: this.bucketStart ? this.bucketStart.toObject() : undefined,\n      bucketEnd: this.bucketEnd ? this.bucketEnd.toObject() : undefined,\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmTelemetryTimeSeriesBucket.AsProtobufJSON {\n    return {\n      bucketStart: this.bucketStart\n        ? this.bucketStart.toProtobufJSON(options)\n        : null,\n      bucketEnd: this.bucketEnd ? this.bucketEnd.toProtobufJSON(options) : null,\n      llmTelemetryReport: this.llmTelemetryReport\n        ? this.llmTelemetryReport.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module LlmTelemetryTimeSeriesBucket {\n  /**\n   * Standard JavaScript object representation for LlmTelemetryTimeSeriesBucket\n   */\n  export interface AsObject {\n    bucketStart?: googleProtobuf004.Timestamp.AsObject;\n    bucketEnd?: googleProtobuf004.Timestamp.AsObject;\n    llmTelemetryReport?: ondewoNlu020.LlmTelemetryReport.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmTelemetryTimeSeriesBucket\n   */\n  export interface AsProtobufJSON {\n    bucketStart: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    bucketEnd: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    llmTelemetryReport: ondewoNlu020.LlmTelemetryReport.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionsStatisticsTimeSeriesResponse\n */\nexport class GetSessionsStatisticsTimeSeriesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionsStatisticsTimeSeriesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionsStatisticsTimeSeriesResponse();\n    GetSessionsStatisticsTimeSeriesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionsStatisticsTimeSeriesResponse) {\n    _instance.llmTelemetryTimeSeriesBuckets =\n      _instance.llmTelemetryTimeSeriesBuckets || [];\n    _instance.bucketWidthSeconds = _instance.bucketWidthSeconds || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionsStatisticsTimeSeriesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmTelemetryTimeSeriesBucket();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmTelemetryTimeSeriesBucket.deserializeBinaryFromReader\n          );\n          (_instance.llmTelemetryTimeSeriesBuckets =\n            _instance.llmTelemetryTimeSeriesBuckets || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.bucketWidthSeconds = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionsStatisticsTimeSeriesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionsStatisticsTimeSeriesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.llmTelemetryTimeSeriesBuckets &&\n      _instance.llmTelemetryTimeSeriesBuckets.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmTelemetryTimeSeriesBuckets as any,\n        LlmTelemetryTimeSeriesBucket.serializeBinaryToWriter\n      );\n    }\n    if (_instance.bucketWidthSeconds) {\n      _writer.writeInt32(2, _instance.bucketWidthSeconds);\n    }\n  }\n\n  private _llmTelemetryTimeSeriesBuckets?: LlmTelemetryTimeSeriesBucket[];\n  private _bucketWidthSeconds: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionsStatisticsTimeSeriesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetSessionsStatisticsTimeSeriesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmTelemetryTimeSeriesBuckets = (\n      _value.llmTelemetryTimeSeriesBuckets || []\n    ).map(m => new LlmTelemetryTimeSeriesBucket(m));\n    this.bucketWidthSeconds = _value.bucketWidthSeconds;\n    GetSessionsStatisticsTimeSeriesResponse.refineValues(this);\n  }\n  get llmTelemetryTimeSeriesBuckets():\n    | LlmTelemetryTimeSeriesBucket[]\n    | undefined {\n    return this._llmTelemetryTimeSeriesBuckets;\n  }\n  set llmTelemetryTimeSeriesBuckets(\n    value: LlmTelemetryTimeSeriesBucket[] | undefined\n  ) {\n    this._llmTelemetryTimeSeriesBuckets = value;\n  }\n  get bucketWidthSeconds(): number {\n    return this._bucketWidthSeconds;\n  }\n  set bucketWidthSeconds(value: number) {\n    this._bucketWidthSeconds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionsStatisticsTimeSeriesResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionsStatisticsTimeSeriesResponse.AsObject {\n    return {\n      llmTelemetryTimeSeriesBuckets: (\n        this.llmTelemetryTimeSeriesBuckets || []\n      ).map(m => m.toObject()),\n      bucketWidthSeconds: this.bucketWidthSeconds\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionsStatisticsTimeSeriesResponse.AsProtobufJSON {\n    return {\n      llmTelemetryTimeSeriesBuckets: (\n        this.llmTelemetryTimeSeriesBuckets || []\n      ).map(m => m.toProtobufJSON(options)),\n      bucketWidthSeconds: this.bucketWidthSeconds\n    };\n  }\n}\nexport module GetSessionsStatisticsTimeSeriesResponse {\n  /**\n   * Standard JavaScript object representation for GetSessionsStatisticsTimeSeriesResponse\n   */\n  export interface AsObject {\n    llmTelemetryTimeSeriesBuckets?: LlmTelemetryTimeSeriesBucket.AsObject[];\n    bucketWidthSeconds: number;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionsStatisticsTimeSeriesResponse\n   */\n  export interface AsProtobufJSON {\n    llmTelemetryTimeSeriesBuckets:\n      | LlmTelemetryTimeSeriesBucket.AsProtobufJSON[]\n      | null;\n    bucketWidthSeconds: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddUserToProjectRequest\n */\nexport class AddUserToProjectRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddUserToProjectRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddUserToProjectRequest();\n    AddUserToProjectRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddUserToProjectRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.userId = _instance.userId || '';\n    _instance.projectRoleId = _instance.projectRoleId || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddUserToProjectRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.userId = _reader.readString();\n          break;\n        case 4:\n          _instance.projectRoleId = _reader.readUint32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddUserToProjectRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddUserToProjectRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.userId) {\n      _writer.writeString(2, _instance.userId);\n    }\n    if (_instance.projectRoleId) {\n      _writer.writeUint32(4, _instance.projectRoleId);\n    }\n  }\n\n  private _parent: string;\n  private _userId: string;\n  private _projectRoleId: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddUserToProjectRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddUserToProjectRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.userId = _value.userId;\n    this.projectRoleId = _value.projectRoleId;\n    AddUserToProjectRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n  get projectRoleId(): number {\n    return this._projectRoleId;\n  }\n  set projectRoleId(value: number) {\n    this._projectRoleId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddUserToProjectRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddUserToProjectRequest.AsObject {\n    return {\n      parent: this.parent,\n      userId: this.userId,\n      projectRoleId: this.projectRoleId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddUserToProjectRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      userId: this.userId,\n      projectRoleId: this.projectRoleId\n    };\n  }\n}\nexport module AddUserToProjectRequest {\n  /**\n   * Standard JavaScript object representation for AddUserToProjectRequest\n   */\n  export interface AsObject {\n    parent: string;\n    userId: string;\n    projectRoleId: number;\n  }\n\n  /**\n   * Protobuf JSON representation for AddUserToProjectRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    userId: string;\n    projectRoleId: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RemoveUserFromProjectRequest\n */\nexport class RemoveUserFromProjectRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RemoveUserFromProjectRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RemoveUserFromProjectRequest();\n    RemoveUserFromProjectRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RemoveUserFromProjectRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.userId = _instance.userId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RemoveUserFromProjectRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.userId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RemoveUserFromProjectRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RemoveUserFromProjectRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.userId) {\n      _writer.writeString(2, _instance.userId);\n    }\n  }\n\n  private _parent: string;\n  private _userId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RemoveUserFromProjectRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RemoveUserFromProjectRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.userId = _value.userId;\n    RemoveUserFromProjectRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RemoveUserFromProjectRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RemoveUserFromProjectRequest.AsObject {\n    return {\n      parent: this.parent,\n      userId: this.userId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RemoveUserFromProjectRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      userId: this.userId\n    };\n  }\n}\nexport module RemoveUserFromProjectRequest {\n  /**\n   * Standard JavaScript object representation for RemoveUserFromProjectRequest\n   */\n  export interface AsObject {\n    parent: string;\n    userId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RemoveUserFromProjectRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    userId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUsersInProjectRequest\n */\nexport class ListUsersInProjectRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUsersInProjectRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUsersInProjectRequest();\n    ListUsersInProjectRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUsersInProjectRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUsersInProjectRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUsersInProjectRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUsersInProjectRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        3,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUsersInProjectRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUsersInProjectRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    ListUsersInProjectRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUsersInProjectRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUsersInProjectRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUsersInProjectRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListUsersInProjectRequest {\n  /**\n   * Standard JavaScript object representation for ListUsersInProjectRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUsersInProjectRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UserInProject\n */\nexport class UserInProject implements GrpcMessage {\n  static id = 'ondewo.nlu.UserInProject';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UserInProject();\n    UserInProject.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UserInProject) {\n    _instance.parent = _instance.parent || '';\n    _instance.user = _instance.user || undefined;\n    _instance.roleId = _instance.roleId || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UserInProject,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.user = new ondewoNlu019.User();\n          _reader.readMessage(\n            _instance.user,\n            ondewoNlu019.User.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.roleId = _reader.readUint32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UserInProject.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UserInProject,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.user) {\n      _writer.writeMessage(\n        2,\n        _instance.user as any,\n        ondewoNlu019.User.serializeBinaryToWriter\n      );\n    }\n    if (_instance.roleId) {\n      _writer.writeUint32(3, _instance.roleId);\n    }\n  }\n\n  private _parent: string;\n  private _user?: ondewoNlu019.User;\n  private _roleId: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UserInProject to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UserInProject.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.user = _value.user ? new ondewoNlu019.User(_value.user) : undefined;\n    this.roleId = _value.roleId;\n    UserInProject.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get user(): ondewoNlu019.User | undefined {\n    return this._user;\n  }\n  set user(value: ondewoNlu019.User | undefined) {\n    this._user = value;\n  }\n  get roleId(): number {\n    return this._roleId;\n  }\n  set roleId(value: number) {\n    this._roleId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UserInProject.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UserInProject.AsObject {\n    return {\n      parent: this.parent,\n      user: this.user ? this.user.toObject() : undefined,\n      roleId: this.roleId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UserInProject.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      user: this.user ? this.user.toProtobufJSON(options) : null,\n      roleId: this.roleId\n    };\n  }\n}\nexport module UserInProject {\n  /**\n   * Standard JavaScript object representation for UserInProject\n   */\n  export interface AsObject {\n    parent: string;\n    user?: ondewoNlu019.User.AsObject;\n    roleId: number;\n  }\n\n  /**\n   * Protobuf JSON representation for UserInProject\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    user: ondewoNlu019.User.AsProtobufJSON | null;\n    roleId: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListUsersInProjectResponse\n */\nexport class ListUsersInProjectResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListUsersInProjectResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListUsersInProjectResponse();\n    ListUsersInProjectResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListUsersInProjectResponse) {\n    _instance.users = _instance.users || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListUsersInProjectResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new UserInProject();\n          _reader.readMessage(\n            messageInitializer1,\n            UserInProject.deserializeBinaryFromReader\n          );\n          (_instance.users = _instance.users || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListUsersInProjectResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListUsersInProjectResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.users && _instance.users.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.users as any,\n        UserInProject.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _users?: UserInProject[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListUsersInProjectResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListUsersInProjectResponse.AsObject>) {\n    _value = _value || {};\n    this.users = (_value.users || []).map(m => new UserInProject(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListUsersInProjectResponse.refineValues(this);\n  }\n  get users(): UserInProject[] | undefined {\n    return this._users;\n  }\n  set users(value: UserInProject[] | undefined) {\n    this._users = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListUsersInProjectResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListUsersInProjectResponse.AsObject {\n    return {\n      users: (this.users || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListUsersInProjectResponse.AsProtobufJSON {\n    return {\n      users: (this.users || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListUsersInProjectResponse {\n  /**\n   * Standard JavaScript object representation for ListUsersInProjectResponse\n   */\n  export interface AsObject {\n    users?: UserInProject.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListUsersInProjectResponse\n   */\n  export interface AsProtobufJSON {\n    users: UserInProject.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetPlatformInfoResponse\n */\nexport class GetPlatformInfoResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetPlatformInfoResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetPlatformInfoResponse();\n    GetPlatformInfoResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetPlatformInfoResponse) {\n    _instance.version = _instance.version || '';\n    _instance.commitHash = _instance.commitHash || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetPlatformInfoResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.version = _reader.readString();\n          break;\n        case 2:\n          _instance.commitHash = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetPlatformInfoResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetPlatformInfoResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.version) {\n      _writer.writeString(1, _instance.version);\n    }\n    if (_instance.commitHash) {\n      _writer.writeString(2, _instance.commitHash);\n    }\n  }\n\n  private _version: string;\n  private _commitHash: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetPlatformInfoResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetPlatformInfoResponse.AsObject>) {\n    _value = _value || {};\n    this.version = _value.version;\n    this.commitHash = _value.commitHash;\n    GetPlatformInfoResponse.refineValues(this);\n  }\n  get version(): string {\n    return this._version;\n  }\n  set version(value: string) {\n    this._version = value;\n  }\n  get commitHash(): string {\n    return this._commitHash;\n  }\n  set commitHash(value: string) {\n    this._commitHash = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetPlatformInfoResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetPlatformInfoResponse.AsObject {\n    return {\n      version: this.version,\n      commitHash: this.commitHash\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetPlatformInfoResponse.AsProtobufJSON {\n    return {\n      version: this.version,\n      commitHash: this.commitHash\n    };\n  }\n}\nexport module GetPlatformInfoResponse {\n  /**\n   * Standard JavaScript object representation for GetPlatformInfoResponse\n   */\n  export interface AsObject {\n    version: string;\n    commitHash: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetPlatformInfoResponse\n   */\n  export interface AsProtobufJSON {\n    version: string;\n    commitHash: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListProjectPermissionsRequest\n */\nexport class ListProjectPermissionsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListProjectPermissionsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListProjectPermissionsRequest();\n    ListProjectPermissionsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListProjectPermissionsRequest) {\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListProjectPermissionsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListProjectPermissionsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListProjectPermissionsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.pageToken) {\n      _writer.writeString(1, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListProjectPermissionsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListProjectPermissionsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    ListProjectPermissionsRequest.refineValues(this);\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListProjectPermissionsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListProjectPermissionsRequest.AsObject {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListProjectPermissionsRequest.AsProtobufJSON {\n    return {\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListProjectPermissionsRequest {\n  /**\n   * Standard JavaScript object representation for ListProjectPermissionsRequest\n   */\n  export interface AsObject {\n    pageToken: string;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListProjectPermissionsRequest\n   */\n  export interface AsProtobufJSON {\n    pageToken: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListProjectPermissionsResponse\n */\nexport class ListProjectPermissionsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListProjectPermissionsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListProjectPermissionsResponse();\n    ListProjectPermissionsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListProjectPermissionsResponse) {\n    _instance.permissions = _instance.permissions || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListProjectPermissionsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.permissions = _instance.permissions || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListProjectPermissionsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListProjectPermissionsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.permissions && _instance.permissions.length) {\n      _writer.writeRepeatedString(1, _instance.permissions);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _permissions: string[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListProjectPermissionsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListProjectPermissionsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.permissions = (_value.permissions || []).slice();\n    this.nextPageToken = _value.nextPageToken;\n    ListProjectPermissionsResponse.refineValues(this);\n  }\n  get permissions(): string[] {\n    return this._permissions;\n  }\n  set permissions(value: string[]) {\n    this._permissions = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListProjectPermissionsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListProjectPermissionsResponse.AsObject {\n    return {\n      permissions: (this.permissions || []).slice(),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListProjectPermissionsResponse.AsProtobufJSON {\n    return {\n      permissions: (this.permissions || []).slice(),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListProjectPermissionsResponse {\n  /**\n   * Standard JavaScript object representation for ListProjectPermissionsResponse\n   */\n  export interface AsObject {\n    permissions: string[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListProjectPermissionsResponse\n   */\n  export interface AsProtobufJSON {\n    permissions: string[];\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SetAgentStatusRequest\n */\nexport class SetAgentStatusRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.SetAgentStatusRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SetAgentStatusRequest();\n    SetAgentStatusRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SetAgentStatusRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.status = _instance.status || 0;\n    _instance.agentView = _instance.agentView || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SetAgentStatusRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.status = _reader.readEnum();\n          break;\n        case 3:\n          _instance.agentView = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SetAgentStatusRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SetAgentStatusRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(2, _instance.status);\n    }\n    if (_instance.agentView) {\n      _writer.writeEnum(3, _instance.agentView);\n    }\n  }\n\n  private _parent: string;\n  private _status: AgentStatus;\n  private _agentView: AgentView;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SetAgentStatusRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SetAgentStatusRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.status = _value.status;\n    this.agentView = _value.agentView;\n    SetAgentStatusRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get status(): AgentStatus {\n    return this._status;\n  }\n  set status(value: AgentStatus) {\n    this._status = value;\n  }\n  get agentView(): AgentView {\n    return this._agentView;\n  }\n  set agentView(value: AgentView) {\n    this._agentView = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SetAgentStatusRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SetAgentStatusRequest.AsObject {\n    return {\n      parent: this.parent,\n      status: this.status,\n      agentView: this.agentView\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SetAgentStatusRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      status:\n        AgentStatus[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      agentView:\n        AgentView[\n          this.agentView === null || this.agentView === undefined\n            ? 0\n            : this.agentView\n        ]\n    };\n  }\n}\nexport module SetAgentStatusRequest {\n  /**\n   * Standard JavaScript object representation for SetAgentStatusRequest\n   */\n  export interface AsObject {\n    parent: string;\n    status: AgentStatus;\n    agentView: AgentView;\n  }\n\n  /**\n   * Protobuf JSON representation for SetAgentStatusRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    status: string;\n    agentView: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AgentSorting\n */\nexport class AgentSorting implements GrpcMessage {\n  static id = 'ondewo.nlu.AgentSorting';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AgentSorting();\n    AgentSorting.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AgentSorting) {\n    _instance.sortingField = _instance.sortingField || 0;\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AgentSorting,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sortingField = _reader.readEnum();\n          break;\n        case 2:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AgentSorting.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AgentSorting,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sortingField) {\n      _writer.writeEnum(1, _instance.sortingField);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(2, _instance.sortingMode);\n    }\n  }\n\n  private _sortingField: AgentSorting.AgentSortingField;\n  private _sortingMode: ondewoNlu007.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AgentSorting to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AgentSorting.AsObject>) {\n    _value = _value || {};\n    this.sortingField = _value.sortingField;\n    this.sortingMode = _value.sortingMode;\n    AgentSorting.refineValues(this);\n  }\n  get sortingField(): AgentSorting.AgentSortingField {\n    return this._sortingField;\n  }\n  set sortingField(value: AgentSorting.AgentSortingField) {\n    this._sortingField = value;\n  }\n  get sortingMode(): ondewoNlu007.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu007.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AgentSorting.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AgentSorting.AsObject {\n    return {\n      sortingField: this.sortingField,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AgentSorting.AsProtobufJSON {\n    return {\n      sortingField:\n        AgentSorting.AgentSortingField[\n          this.sortingField === null || this.sortingField === undefined\n            ? 0\n            : this.sortingField\n        ],\n      sortingMode:\n        ondewoNlu007.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module AgentSorting {\n  /**\n   * Standard JavaScript object representation for AgentSorting\n   */\n  export interface AsObject {\n    sortingField: AgentSorting.AgentSortingField;\n    sortingMode: ondewoNlu007.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for AgentSorting\n   */\n  export interface AsProtobufJSON {\n    sortingField: string;\n    sortingMode: string;\n  }\n  export enum AgentSortingField {\n    NO_AGENT_SORTING = 0,\n    SORT_AGENT_BY_NAME = 1,\n    SORT_AGENT_BY_CREATION_DATE = 2,\n    SORT_AGENT_BY_LAST_UPDATED = 3,\n    SORT_AGENT_BY_OWNER_NAME = 4\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SetResourcesRequest\n */\nexport class SetResourcesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.SetResourcesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SetResourcesRequest();\n    SetResourcesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SetResourcesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.name = _instance.name || '';\n    _instance.type = _instance.type || '';\n    _instance.resourceFile = _instance.resourceFile || new Uint8Array();\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SetResourcesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.name = _reader.readString();\n          break;\n        case 3:\n          _instance.type = _reader.readString();\n          break;\n        case 4:\n          _instance.resourceFile = _reader.readBytes();\n          break;\n        case 5:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SetResourcesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SetResourcesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.name) {\n      _writer.writeString(2, _instance.name);\n    }\n    if (_instance.type) {\n      _writer.writeString(3, _instance.type);\n    }\n    if (_instance.resourceFile && _instance.resourceFile.length) {\n      _writer.writeBytes(4, _instance.resourceFile);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(5, _instance.languageCode);\n    }\n  }\n\n  private _parent: string;\n  private _name: string;\n  private _type: string;\n  private _resourceFile: Uint8Array;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SetResourcesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SetResourcesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.name = _value.name;\n    this.type = _value.type;\n    this.resourceFile = _value.resourceFile;\n    this.languageCode = _value.languageCode;\n    SetResourcesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get type(): string {\n    return this._type;\n  }\n  set type(value: string) {\n    this._type = value;\n  }\n  get resourceFile(): Uint8Array {\n    return this._resourceFile;\n  }\n  set resourceFile(value: Uint8Array) {\n    this._resourceFile = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SetResourcesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SetResourcesRequest.AsObject {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      resourceFile: this.resourceFile\n        ? this.resourceFile.subarray(0)\n        : new Uint8Array(),\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SetResourcesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      resourceFile: this.resourceFile\n        ? uint8ArrayToBase64(this.resourceFile)\n        : '',\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module SetResourcesRequest {\n  /**\n   * Standard JavaScript object representation for SetResourcesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    name: string;\n    type: string;\n    resourceFile: Uint8Array;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for SetResourcesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    name: string;\n    type: string;\n    resourceFile: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteResourcesRequest\n */\nexport class DeleteResourcesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteResourcesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteResourcesRequest();\n    DeleteResourcesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteResourcesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.name = _instance.name || '';\n    _instance.type = _instance.type || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteResourcesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.name = _reader.readString();\n          break;\n        case 3:\n          _instance.type = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteResourcesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteResourcesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.name) {\n      _writer.writeString(2, _instance.name);\n    }\n    if (_instance.type) {\n      _writer.writeString(3, _instance.type);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _parent: string;\n  private _name: string;\n  private _type: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteResourcesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteResourcesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.name = _value.name;\n    this.type = _value.type;\n    this.languageCode = _value.languageCode;\n    DeleteResourcesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get type(): string {\n    return this._type;\n  }\n  set type(value: string) {\n    this._type = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteResourcesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteResourcesRequest.AsObject {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteResourcesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module DeleteResourcesRequest {\n  /**\n   * Standard JavaScript object representation for DeleteResourcesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    name: string;\n    type: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteResourcesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    name: string;\n    type: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExportResourcesRequest\n */\nexport class ExportResourcesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ExportResourcesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExportResourcesRequest();\n    ExportResourcesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExportResourcesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.name = _instance.name || '';\n    _instance.type = _instance.type || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExportResourcesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.name = _reader.readString();\n          break;\n        case 3:\n          _instance.type = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExportResourcesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExportResourcesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.name) {\n      _writer.writeString(2, _instance.name);\n    }\n    if (_instance.type) {\n      _writer.writeString(3, _instance.type);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n  }\n\n  private _parent: string;\n  private _name: string;\n  private _type: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExportResourcesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExportResourcesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.name = _value.name;\n    this.type = _value.type;\n    this.languageCode = _value.languageCode;\n    ExportResourcesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get type(): string {\n    return this._type;\n  }\n  set type(value: string) {\n    this._type = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExportResourcesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExportResourcesRequest.AsObject {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExportResourcesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module ExportResourcesRequest {\n  /**\n   * Standard JavaScript object representation for ExportResourcesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    name: string;\n    type: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ExportResourcesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    name: string;\n    type: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExportResourcesResponse\n */\nexport class ExportResourcesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ExportResourcesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExportResourcesResponse();\n    ExportResourcesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExportResourcesResponse) {\n    _instance.parent = _instance.parent || '';\n    _instance.name = _instance.name || '';\n    _instance.type = _instance.type || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.resourceFile = _instance.resourceFile || new Uint8Array();\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExportResourcesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.name = _reader.readString();\n          break;\n        case 3:\n          _instance.type = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.resourceFile = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExportResourcesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExportResourcesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.name) {\n      _writer.writeString(2, _instance.name);\n    }\n    if (_instance.type) {\n      _writer.writeString(3, _instance.type);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.resourceFile && _instance.resourceFile.length) {\n      _writer.writeBytes(5, _instance.resourceFile);\n    }\n  }\n\n  private _parent: string;\n  private _name: string;\n  private _type: string;\n  private _languageCode: string;\n  private _resourceFile: Uint8Array;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExportResourcesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExportResourcesResponse.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.name = _value.name;\n    this.type = _value.type;\n    this.languageCode = _value.languageCode;\n    this.resourceFile = _value.resourceFile;\n    ExportResourcesResponse.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get type(): string {\n    return this._type;\n  }\n  set type(value: string) {\n    this._type = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get resourceFile(): Uint8Array {\n    return this._resourceFile;\n  }\n  set resourceFile(value: Uint8Array) {\n    this._resourceFile = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExportResourcesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExportResourcesResponse.AsObject {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      languageCode: this.languageCode,\n      resourceFile: this.resourceFile\n        ? this.resourceFile.subarray(0)\n        : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExportResourcesResponse.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      name: this.name,\n      type: this.type,\n      languageCode: this.languageCode,\n      resourceFile: this.resourceFile\n        ? uint8ArrayToBase64(this.resourceFile)\n        : ''\n    };\n  }\n}\nexport module ExportResourcesResponse {\n  /**\n   * Standard JavaScript object representation for ExportResourcesResponse\n   */\n  export interface AsObject {\n    parent: string;\n    name: string;\n    type: string;\n    languageCode: string;\n    resourceFile: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for ExportResourcesResponse\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    name: string;\n    type: string;\n    languageCode: string;\n    resourceFile: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetModelStatusesRequest\n */\nexport class GetModelStatusesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetModelStatusesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetModelStatusesRequest();\n    GetModelStatusesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetModelStatusesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.cacheVersion = _instance.cacheVersion || 0;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.modelName = _instance.modelName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetModelStatusesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.cacheVersion = _reader.readInt32();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.modelName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetModelStatusesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetModelStatusesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.cacheVersion) {\n      _writer.writeInt32(2, _instance.cacheVersion);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(4, _instance.modelName);\n    }\n  }\n\n  private _parent: string;\n  private _cacheVersion: number;\n  private _languageCode: string;\n  private _modelName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetModelStatusesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetModelStatusesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.cacheVersion = _value.cacheVersion;\n    this.languageCode = _value.languageCode;\n    this.modelName = _value.modelName;\n    GetModelStatusesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get cacheVersion(): number {\n    return this._cacheVersion;\n  }\n  set cacheVersion(value: number) {\n    this._cacheVersion = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetModelStatusesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetModelStatusesRequest.AsObject {\n    return {\n      parent: this.parent,\n      cacheVersion: this.cacheVersion,\n      languageCode: this.languageCode,\n      modelName: this.modelName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetModelStatusesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      cacheVersion: this.cacheVersion,\n      languageCode: this.languageCode,\n      modelName: this.modelName\n    };\n  }\n}\nexport module GetModelStatusesRequest {\n  /**\n   * Standard JavaScript object representation for GetModelStatusesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    cacheVersion: number;\n    languageCode: string;\n    modelName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetModelStatusesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    cacheVersion: number;\n    languageCode: string;\n    modelName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ModelStatus\n */\nexport class ModelStatus implements GrpcMessage {\n  static id = 'ondewo.nlu.ModelStatus';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ModelStatus();\n    ModelStatus.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ModelStatus) {\n    _instance.cacheVersion = _instance.cacheVersion || 0;\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.modelName = _instance.modelName || '';\n    _instance.statusSetTime = _instance.statusSetTime || undefined;\n    _instance.config = _instance.config || '';\n    _instance.status = _instance.status || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ModelStatus,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.cacheVersion = _reader.readInt32();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.modelName = _reader.readString();\n          break;\n        case 4:\n          _instance.statusSetTime = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.statusSetTime,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.config = _reader.readString();\n          break;\n        case 6:\n          _instance.status = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ModelStatus.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ModelStatus,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.cacheVersion) {\n      _writer.writeInt32(1, _instance.cacheVersion);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.modelName) {\n      _writer.writeString(3, _instance.modelName);\n    }\n    if (_instance.statusSetTime) {\n      _writer.writeMessage(\n        4,\n        _instance.statusSetTime as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.config) {\n      _writer.writeString(5, _instance.config);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(6, _instance.status);\n    }\n  }\n\n  private _cacheVersion: number;\n  private _languageCode: string;\n  private _modelName: string;\n  private _statusSetTime?: googleProtobuf004.Timestamp;\n  private _config: string;\n  private _status: ModelStatus.StatusName;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ModelStatus to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ModelStatus.AsObject>) {\n    _value = _value || {};\n    this.cacheVersion = _value.cacheVersion;\n    this.languageCode = _value.languageCode;\n    this.modelName = _value.modelName;\n    this.statusSetTime = _value.statusSetTime\n      ? new googleProtobuf004.Timestamp(_value.statusSetTime)\n      : undefined;\n    this.config = _value.config;\n    this.status = _value.status;\n    ModelStatus.refineValues(this);\n  }\n  get cacheVersion(): number {\n    return this._cacheVersion;\n  }\n  set cacheVersion(value: number) {\n    this._cacheVersion = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get modelName(): string {\n    return this._modelName;\n  }\n  set modelName(value: string) {\n    this._modelName = value;\n  }\n  get statusSetTime(): googleProtobuf004.Timestamp | undefined {\n    return this._statusSetTime;\n  }\n  set statusSetTime(value: googleProtobuf004.Timestamp | undefined) {\n    this._statusSetTime = value;\n  }\n  get config(): string {\n    return this._config;\n  }\n  set config(value: string) {\n    this._config = value;\n  }\n  get status(): ModelStatus.StatusName {\n    return this._status;\n  }\n  set status(value: ModelStatus.StatusName) {\n    this._status = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ModelStatus.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ModelStatus.AsObject {\n    return {\n      cacheVersion: this.cacheVersion,\n      languageCode: this.languageCode,\n      modelName: this.modelName,\n      statusSetTime: this.statusSetTime\n        ? this.statusSetTime.toObject()\n        : undefined,\n      config: this.config,\n      status: this.status\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ModelStatus.AsProtobufJSON {\n    return {\n      cacheVersion: this.cacheVersion,\n      languageCode: this.languageCode,\n      modelName: this.modelName,\n      statusSetTime: this.statusSetTime\n        ? this.statusSetTime.toProtobufJSON(options)\n        : null,\n      config: this.config,\n      status:\n        ModelStatus.StatusName[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ]\n    };\n  }\n}\nexport module ModelStatus {\n  /**\n   * Standard JavaScript object representation for ModelStatus\n   */\n  export interface AsObject {\n    cacheVersion: number;\n    languageCode: string;\n    modelName: string;\n    statusSetTime?: googleProtobuf004.Timestamp.AsObject;\n    config: string;\n    status: ModelStatus.StatusName;\n  }\n\n  /**\n   * Protobuf JSON representation for ModelStatus\n   */\n  export interface AsProtobufJSON {\n    cacheVersion: number;\n    languageCode: string;\n    modelName: string;\n    statusSetTime: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    config: string;\n    status: string;\n  }\n  export enum StatusName {\n    UNKNOWN = 0,\n    INITIALIZING = 1,\n    INITIALIZED = 2,\n    LOADING_DATA = 3,\n    TRAINING = 4,\n    TESTING = 5,\n    TRAINED = 6\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetModelStatusesResponse\n */\nexport class GetModelStatusesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetModelStatusesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetModelStatusesResponse();\n    GetModelStatusesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetModelStatusesResponse) {\n    _instance.modelStatuses = _instance.modelStatuses || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetModelStatusesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ModelStatus();\n          _reader.readMessage(\n            messageInitializer1,\n            ModelStatus.deserializeBinaryFromReader\n          );\n          (_instance.modelStatuses = _instance.modelStatuses || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetModelStatusesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetModelStatusesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.modelStatuses && _instance.modelStatuses.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.modelStatuses as any,\n        ModelStatus.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _modelStatuses?: ModelStatus[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetModelStatusesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetModelStatusesResponse.AsObject>) {\n    _value = _value || {};\n    this.modelStatuses = (_value.modelStatuses || []).map(\n      m => new ModelStatus(m)\n    );\n    GetModelStatusesResponse.refineValues(this);\n  }\n  get modelStatuses(): ModelStatus[] | undefined {\n    return this._modelStatuses;\n  }\n  set modelStatuses(value: ModelStatus[] | undefined) {\n    this._modelStatuses = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetModelStatusesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetModelStatusesResponse.AsObject {\n    return {\n      modelStatuses: (this.modelStatuses || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetModelStatusesResponse.AsProtobufJSON {\n    return {\n      modelStatuses: (this.modelStatuses || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module GetModelStatusesResponse {\n  /**\n   * Standard JavaScript object representation for GetModelStatusesResponse\n   */\n  export interface AsObject {\n    modelStatuses?: ModelStatus.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetModelStatusesResponse\n   */\n  export interface AsProtobufJSON {\n    modelStatuses: ModelStatus.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CustomPlatformInfo\n */\nexport class CustomPlatformInfo implements GrpcMessage {\n  static id = 'ondewo.nlu.CustomPlatformInfo';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CustomPlatformInfo();\n    CustomPlatformInfo.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CustomPlatformInfo) {\n    _instance.platform = _instance.platform || 0;\n    _instance.displayName = _instance.displayName || '';\n    _instance.position = _instance.position || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CustomPlatformInfo,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.platform = _reader.readEnum();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.position = _reader.readUint32();\n          break;\n        case 4:\n          _instance.createdAt = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.modifiedAt = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 7:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CustomPlatformInfo.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CustomPlatformInfo,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.platform) {\n      _writer.writeEnum(1, _instance.platform);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.position) {\n      _writer.writeUint32(3, _instance.position);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        4,\n        _instance.createdAt as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        5,\n        _instance.modifiedAt as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(6, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(7, _instance.modifiedBy);\n    }\n  }\n\n  private _platform: ondewoNlu017.Intent.Message.Platform;\n  private _displayName: string;\n  private _position: number;\n  private _createdAt?: googleProtobuf004.Timestamp;\n  private _modifiedAt?: googleProtobuf004.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CustomPlatformInfo to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CustomPlatformInfo.AsObject>) {\n    _value = _value || {};\n    this.platform = _value.platform;\n    this.displayName = _value.displayName;\n    this.position = _value.position;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf004.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    CustomPlatformInfo.refineValues(this);\n  }\n  get platform(): ondewoNlu017.Intent.Message.Platform {\n    return this._platform;\n  }\n  set platform(value: ondewoNlu017.Intent.Message.Platform) {\n    this._platform = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get position(): number {\n    return this._position;\n  }\n  set position(value: number) {\n    this._position = value;\n  }\n  get createdAt(): googleProtobuf004.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CustomPlatformInfo.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CustomPlatformInfo.AsObject {\n    return {\n      platform: this.platform,\n      displayName: this.displayName,\n      position: this.position,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CustomPlatformInfo.AsProtobufJSON {\n    return {\n      platform:\n        ondewoNlu017.Intent.Message.Platform[\n          this.platform === null || this.platform === undefined\n            ? 0\n            : this.platform\n        ],\n      displayName: this.displayName,\n      position: this.position,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module CustomPlatformInfo {\n  /**\n   * Standard JavaScript object representation for CustomPlatformInfo\n   */\n  export interface AsObject {\n    platform: ondewoNlu017.Intent.Message.Platform;\n    displayName: string;\n    position: number;\n    createdAt?: googleProtobuf004.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CustomPlatformInfo\n   */\n  export interface AsProtobufJSON {\n    platform: string;\n    displayName: string;\n    position: number;\n    createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetPlatformMappingRequest\n */\nexport class GetPlatformMappingRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetPlatformMappingRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetPlatformMappingRequest();\n    GetPlatformMappingRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetPlatformMappingRequest) {\n    _instance.parent = _instance.parent || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetPlatformMappingRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetPlatformMappingRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetPlatformMappingRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n  }\n\n  private _parent: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetPlatformMappingRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetPlatformMappingRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    GetPlatformMappingRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetPlatformMappingRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetPlatformMappingRequest.AsObject {\n    return {\n      parent: this.parent\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetPlatformMappingRequest.AsProtobufJSON {\n    return {\n      parent: this.parent\n    };\n  }\n}\nexport module GetPlatformMappingRequest {\n  /**\n   * Standard JavaScript object representation for GetPlatformMappingRequest\n   */\n  export interface AsObject {\n    parent: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetPlatformMappingRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.PlatformMapping\n */\nexport class PlatformMapping implements GrpcMessage {\n  static id = 'ondewo.nlu.PlatformMapping';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new PlatformMapping();\n    PlatformMapping.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: PlatformMapping) {\n    _instance.parent = _instance.parent || '';\n    _instance.platformInfo = _instance.platformInfo || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: PlatformMapping,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new CustomPlatformInfo();\n          _reader.readMessage(\n            messageInitializer2,\n            CustomPlatformInfo.deserializeBinaryFromReader\n          );\n          (_instance.platformInfo = _instance.platformInfo || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    PlatformMapping.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: PlatformMapping,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.platformInfo && _instance.platformInfo.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.platformInfo as any,\n        CustomPlatformInfo.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _platformInfo?: CustomPlatformInfo[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of PlatformMapping to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<PlatformMapping.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.platformInfo = (_value.platformInfo || []).map(\n      m => new CustomPlatformInfo(m)\n    );\n    PlatformMapping.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get platformInfo(): CustomPlatformInfo[] | undefined {\n    return this._platformInfo;\n  }\n  set platformInfo(value: CustomPlatformInfo[] | undefined) {\n    this._platformInfo = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    PlatformMapping.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): PlatformMapping.AsObject {\n    return {\n      parent: this.parent,\n      platformInfo: (this.platformInfo || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): PlatformMapping.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      platformInfo: (this.platformInfo || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module PlatformMapping {\n  /**\n   * Standard JavaScript object representation for PlatformMapping\n   */\n  export interface AsObject {\n    parent: string;\n    platformInfo?: CustomPlatformInfo.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for PlatformMapping\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    platformInfo: CustomPlatformInfo.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchRequest\n */\nexport class FullTextSearchRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchRequest();\n    FullTextSearchRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.term = _instance.term || '';\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.term = _reader.readString();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.term) {\n      _writer.writeString(3, _instance.term);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _term: string;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<FullTextSearchRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.term = _value.term;\n    this.pageToken = _value.pageToken;\n    FullTextSearchRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      term: this.term,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      term: this.term,\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module FullTextSearchRequest {\n  /**\n   * Standard JavaScript object representation for FullTextSearchRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    term: string;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    term: string;\n    pageToken: string;\n  }\n  export enum QueryType {\n    ALL = 0,\n    OndewoEntityQuery = 1,\n    OndewoEntityTypeQuery = 2,\n    OndewoEntitySynonymQuery = 3,\n    OndewoIntentQuery = 4,\n    OndewoIntentContextInQuery = 5,\n    OndewoIntentContextOutQuery = 6,\n    OndewoIntentUsersaysQuery = 7,\n    OndewoIntentTagsQuery = 8,\n    OndewoIntentParametersQuery = 9,\n    OndewoIntentResponseQuery = 10\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseEntityType\n */\nexport class FullTextSearchResponseEntityType implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseEntityType';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseEntityType();\n    FullTextSearchResponseEntityType.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseEntityType) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.entityTypeResults = _instance.entityTypeResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseEntityType,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseEntityType.EntityTypeSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseEntityType.EntityTypeSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.entityTypeResults =\n            _instance.entityTypeResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseEntityType.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseEntityType,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.entityTypeResults && _instance.entityTypeResults.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.entityTypeResults as any,\n        FullTextSearchResponseEntityType.EntityTypeSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _entityTypeResults?: FullTextSearchResponseEntityType.EntityTypeSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseEntityType to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseEntityType.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.entityTypeResults = (_value.entityTypeResults || []).map(\n      m => new FullTextSearchResponseEntityType.EntityTypeSearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseEntityType.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get entityTypeResults():\n    | FullTextSearchResponseEntityType.EntityTypeSearchResult[]\n    | undefined {\n    return this._entityTypeResults;\n  }\n  set entityTypeResults(\n    value: FullTextSearchResponseEntityType.EntityTypeSearchResult[] | undefined\n  ) {\n    this._entityTypeResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseEntityType.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseEntityType.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      entityTypeResults: (this.entityTypeResults || []).map(m => m.toObject()),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseEntityType.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      entityTypeResults: (this.entityTypeResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseEntityType {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseEntityType\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    entityTypeResults?: FullTextSearchResponseEntityType.EntityTypeSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseEntityType\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    entityTypeResults:\n      | FullTextSearchResponseEntityType.EntityTypeSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseEntityType.EntityTypeSearchResult\n   */\n  export class EntityTypeSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseEntityType.EntityTypeSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new EntityTypeSearchResult();\n      EntityTypeSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: EntityTypeSearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.displayName = _instance.displayName || '';\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: EntityTypeSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.displayName = _reader.readString();\n            break;\n          case 3:\n            _instance.language = _reader.readString();\n            break;\n          case 4:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 5:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 6:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 7:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      EntityTypeSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: EntityTypeSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.displayName) {\n        _writer.writeString(2, _instance.displayName);\n      }\n      if (_instance.language) {\n        _writer.writeString(3, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          4,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          5,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(6, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(7, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _displayName: string;\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of EntityTypeSearchResult to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<EntityTypeSearchResult.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.displayName = _value.displayName;\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      EntityTypeSearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get displayName(): string {\n      return this._displayName;\n    }\n    set displayName(value: string) {\n      this._displayName = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      EntityTypeSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): EntityTypeSearchResult.AsObject {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): EntityTypeSearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module EntityTypeSearchResult {\n    /**\n     * Standard JavaScript object representation for EntityTypeSearchResult\n     */\n    export interface AsObject {\n      name: string;\n      displayName: string;\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for EntityTypeSearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      displayName: string;\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseEntity\n */\nexport class FullTextSearchResponseEntity implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseEntity';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseEntity();\n    FullTextSearchResponseEntity.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseEntity) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.entityResults = _instance.entityResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseEntity,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseEntity.EntitySearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseEntity.EntitySearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.entityResults = _instance.entityResults || []).push(\n            messageInitializer3\n          );\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseEntity.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseEntity,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.entityResults && _instance.entityResults.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.entityResults as any,\n        FullTextSearchResponseEntity.EntitySearchResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _entityResults?: FullTextSearchResponseEntity.EntitySearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseEntity to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseEntity.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.entityResults = (_value.entityResults || []).map(\n      m => new FullTextSearchResponseEntity.EntitySearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseEntity.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get entityResults():\n    | FullTextSearchResponseEntity.EntitySearchResult[]\n    | undefined {\n    return this._entityResults;\n  }\n  set entityResults(\n    value: FullTextSearchResponseEntity.EntitySearchResult[] | undefined\n  ) {\n    this._entityResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseEntity.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseEntity.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      entityResults: (this.entityResults || []).map(m => m.toObject()),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseEntity.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      entityResults: (this.entityResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseEntity {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseEntity\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    entityResults?: FullTextSearchResponseEntity.EntitySearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseEntity\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    entityResults:\n      | FullTextSearchResponseEntity.EntitySearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseEntity.EntitySearchResult\n   */\n  export class EntitySearchResult implements GrpcMessage {\n    static id = 'ondewo.nlu.FullTextSearchResponseEntity.EntitySearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new EntitySearchResult();\n      EntitySearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: EntitySearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.displayName = _instance.displayName || '';\n      _instance.entityTypeName = _instance.entityTypeName || '';\n      _instance.entityTypeDisplayName = _instance.entityTypeDisplayName || '';\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: EntitySearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.displayName = _reader.readString();\n            break;\n          case 3:\n            _instance.entityTypeName = _reader.readString();\n            break;\n          case 4:\n            _instance.entityTypeDisplayName = _reader.readString();\n            break;\n          case 5:\n            _instance.language = _reader.readString();\n            break;\n          case 6:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 7:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 9:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      EntitySearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: EntitySearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.displayName) {\n        _writer.writeString(2, _instance.displayName);\n      }\n      if (_instance.entityTypeName) {\n        _writer.writeString(3, _instance.entityTypeName);\n      }\n      if (_instance.entityTypeDisplayName) {\n        _writer.writeString(4, _instance.entityTypeDisplayName);\n      }\n      if (_instance.language) {\n        _writer.writeString(5, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          6,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          7,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(8, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(9, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _displayName: string;\n    private _entityTypeName: string;\n    private _entityTypeDisplayName: string;\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of EntitySearchResult to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<EntitySearchResult.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.displayName = _value.displayName;\n      this.entityTypeName = _value.entityTypeName;\n      this.entityTypeDisplayName = _value.entityTypeDisplayName;\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      EntitySearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get displayName(): string {\n      return this._displayName;\n    }\n    set displayName(value: string) {\n      this._displayName = value;\n    }\n    get entityTypeName(): string {\n      return this._entityTypeName;\n    }\n    set entityTypeName(value: string) {\n      this._entityTypeName = value;\n    }\n    get entityTypeDisplayName(): string {\n      return this._entityTypeDisplayName;\n    }\n    set entityTypeDisplayName(value: string) {\n      this._entityTypeDisplayName = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      EntitySearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): EntitySearchResult.AsObject {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        entityTypeName: this.entityTypeName,\n        entityTypeDisplayName: this.entityTypeDisplayName,\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): EntitySearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        entityTypeName: this.entityTypeName,\n        entityTypeDisplayName: this.entityTypeDisplayName,\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module EntitySearchResult {\n    /**\n     * Standard JavaScript object representation for EntitySearchResult\n     */\n    export interface AsObject {\n      name: string;\n      displayName: string;\n      entityTypeName: string;\n      entityTypeDisplayName: string;\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for EntitySearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      displayName: string;\n      entityTypeName: string;\n      entityTypeDisplayName: string;\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseEntitySynonym\n */\nexport class FullTextSearchResponseEntitySynonym implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseEntitySynonym';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseEntitySynonym();\n    FullTextSearchResponseEntitySynonym.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseEntitySynonym) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.entitySynonymResults = _instance.entitySynonymResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseEntitySynonym,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.entitySynonymResults =\n            _instance.entitySynonymResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseEntitySynonym.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseEntitySynonym,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (\n      _instance.entitySynonymResults &&\n      _instance.entitySynonymResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.entitySynonymResults as any,\n        FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _entitySynonymResults?: FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseEntitySynonym to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseEntitySynonym.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.entitySynonymResults = (_value.entitySynonymResults || []).map(\n      m => new FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseEntitySynonym.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get entitySynonymResults():\n    | FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult[]\n    | undefined {\n    return this._entitySynonymResults;\n  }\n  set entitySynonymResults(\n    value:\n      | FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult[]\n      | undefined\n  ) {\n    this._entitySynonymResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseEntitySynonym.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseEntitySynonym.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      entitySynonymResults: (this.entitySynonymResults || []).map(m =>\n        m.toObject()\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseEntitySynonym.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      entitySynonymResults: (this.entitySynonymResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseEntitySynonym {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseEntitySynonym\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    entitySynonymResults?: FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseEntitySynonym\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    entitySynonymResults:\n      | FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult\n   */\n  export class EntitySynonymSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseEntitySynonym.EntitySynonymSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new EntitySynonymSearchResult();\n      EntitySynonymSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: EntitySynonymSearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.displayName = _instance.displayName || '';\n      _instance.entityTypeName = _instance.entityTypeName || '';\n      _instance.entityTypeDisplayName = _instance.entityTypeDisplayName || '';\n      _instance.entityName = _instance.entityName || '';\n      _instance.entityDisplayName = _instance.entityDisplayName || '';\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: EntitySynonymSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.displayName = _reader.readString();\n            break;\n          case 3:\n            _instance.entityTypeName = _reader.readString();\n            break;\n          case 4:\n            _instance.entityTypeDisplayName = _reader.readString();\n            break;\n          case 5:\n            _instance.entityName = _reader.readString();\n            break;\n          case 6:\n            _instance.entityDisplayName = _reader.readString();\n            break;\n          case 7:\n            _instance.language = _reader.readString();\n            break;\n          case 8:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 9:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 10:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 11:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      EntitySynonymSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: EntitySynonymSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.displayName) {\n        _writer.writeString(2, _instance.displayName);\n      }\n      if (_instance.entityTypeName) {\n        _writer.writeString(3, _instance.entityTypeName);\n      }\n      if (_instance.entityTypeDisplayName) {\n        _writer.writeString(4, _instance.entityTypeDisplayName);\n      }\n      if (_instance.entityName) {\n        _writer.writeString(5, _instance.entityName);\n      }\n      if (_instance.entityDisplayName) {\n        _writer.writeString(6, _instance.entityDisplayName);\n      }\n      if (_instance.language) {\n        _writer.writeString(7, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          8,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          9,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(10, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(11, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _displayName: string;\n    private _entityTypeName: string;\n    private _entityTypeDisplayName: string;\n    private _entityName: string;\n    private _entityDisplayName: string;\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of EntitySynonymSearchResult to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<EntitySynonymSearchResult.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.displayName = _value.displayName;\n      this.entityTypeName = _value.entityTypeName;\n      this.entityTypeDisplayName = _value.entityTypeDisplayName;\n      this.entityName = _value.entityName;\n      this.entityDisplayName = _value.entityDisplayName;\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      EntitySynonymSearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get displayName(): string {\n      return this._displayName;\n    }\n    set displayName(value: string) {\n      this._displayName = value;\n    }\n    get entityTypeName(): string {\n      return this._entityTypeName;\n    }\n    set entityTypeName(value: string) {\n      this._entityTypeName = value;\n    }\n    get entityTypeDisplayName(): string {\n      return this._entityTypeDisplayName;\n    }\n    set entityTypeDisplayName(value: string) {\n      this._entityTypeDisplayName = value;\n    }\n    get entityName(): string {\n      return this._entityName;\n    }\n    set entityName(value: string) {\n      this._entityName = value;\n    }\n    get entityDisplayName(): string {\n      return this._entityDisplayName;\n    }\n    set entityDisplayName(value: string) {\n      this._entityDisplayName = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      EntitySynonymSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): EntitySynonymSearchResult.AsObject {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        entityTypeName: this.entityTypeName,\n        entityTypeDisplayName: this.entityTypeDisplayName,\n        entityName: this.entityName,\n        entityDisplayName: this.entityDisplayName,\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): EntitySynonymSearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        entityTypeName: this.entityTypeName,\n        entityTypeDisplayName: this.entityTypeDisplayName,\n        entityName: this.entityName,\n        entityDisplayName: this.entityDisplayName,\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module EntitySynonymSearchResult {\n    /**\n     * Standard JavaScript object representation for EntitySynonymSearchResult\n     */\n    export interface AsObject {\n      name: string;\n      displayName: string;\n      entityTypeName: string;\n      entityTypeDisplayName: string;\n      entityName: string;\n      entityDisplayName: string;\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for EntitySynonymSearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      displayName: string;\n      entityTypeName: string;\n      entityTypeDisplayName: string;\n      entityName: string;\n      entityDisplayName: string;\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseIntent\n */\nexport class FullTextSearchResponseIntent implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseIntent';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseIntent();\n    FullTextSearchResponseIntent.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseIntent) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentResults = _instance.intentResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseIntent,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseIntent.IntentSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseIntent.IntentSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.intentResults = _instance.intentResults || []).push(\n            messageInitializer3\n          );\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseIntent.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseIntent,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.intentResults && _instance.intentResults.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.intentResults as any,\n        FullTextSearchResponseIntent.IntentSearchResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentResults?: FullTextSearchResponseIntent.IntentSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseIntent to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseIntent.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentResults = (_value.intentResults || []).map(\n      m => new FullTextSearchResponseIntent.IntentSearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseIntent.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentResults():\n    | FullTextSearchResponseIntent.IntentSearchResult[]\n    | undefined {\n    return this._intentResults;\n  }\n  set intentResults(\n    value: FullTextSearchResponseIntent.IntentSearchResult[] | undefined\n  ) {\n    this._intentResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseIntent.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseIntent.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentResults: (this.intentResults || []).map(m => m.toObject()),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseIntent.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentResults: (this.intentResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseIntent {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseIntent\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentResults?: FullTextSearchResponseIntent.IntentSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseIntent\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentResults:\n      | FullTextSearchResponseIntent.IntentSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseIntent.IntentSearchResult\n   */\n  export class IntentSearchResult implements GrpcMessage {\n    static id = 'ondewo.nlu.FullTextSearchResponseIntent.IntentSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new IntentSearchResult();\n      IntentSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: IntentSearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.displayName = _instance.displayName || '';\n      _instance.domainName = _instance.domainName || '';\n      _instance.tags = _instance.tags || [];\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: IntentSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.displayName = _reader.readString();\n            break;\n          case 3:\n            _instance.domainName = _reader.readString();\n            break;\n          case 4:\n            (_instance.tags = _instance.tags || []).push(_reader.readString());\n            break;\n          case 5:\n            _instance.language = _reader.readString();\n            break;\n          case 6:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 7:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 9:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      IntentSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: IntentSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.displayName) {\n        _writer.writeString(2, _instance.displayName);\n      }\n      if (_instance.domainName) {\n        _writer.writeString(3, _instance.domainName);\n      }\n      if (_instance.tags && _instance.tags.length) {\n        _writer.writeRepeatedString(4, _instance.tags);\n      }\n      if (_instance.language) {\n        _writer.writeString(5, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          6,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          7,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(8, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(9, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _displayName: string;\n    private _domainName: string;\n    private _tags: string[];\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of IntentSearchResult to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<IntentSearchResult.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.displayName = _value.displayName;\n      this.domainName = _value.domainName;\n      this.tags = (_value.tags || []).slice();\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      IntentSearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get displayName(): string {\n      return this._displayName;\n    }\n    set displayName(value: string) {\n      this._displayName = value;\n    }\n    get domainName(): string {\n      return this._domainName;\n    }\n    set domainName(value: string) {\n      this._domainName = value;\n    }\n    get tags(): string[] {\n      return this._tags;\n    }\n    set tags(value: string[]) {\n      this._tags = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      IntentSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): IntentSearchResult.AsObject {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        domainName: this.domainName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): IntentSearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        displayName: this.displayName,\n        domainName: this.domainName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module IntentSearchResult {\n    /**\n     * Standard JavaScript object representation for IntentSearchResult\n     */\n    export interface AsObject {\n      name: string;\n      displayName: string;\n      domainName: string;\n      tags: string[];\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for IntentSearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      displayName: string;\n      domainName: string;\n      tags: string[];\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseIntentContextIn\n */\nexport class FullTextSearchResponseIntentContextIn implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseIntentContextIn';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseIntentContextIn();\n    FullTextSearchResponseIntentContextIn.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseIntentContextIn) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentContextInResults = _instance.intentContextInResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseIntentContextIn,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseIntentContextIn.IntentContextInSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseIntentContextIn.IntentContextInSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.intentContextInResults =\n            _instance.intentContextInResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseIntentContextIn.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseIntentContextIn,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (\n      _instance.intentContextInResults &&\n      _instance.intentContextInResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.intentContextInResults as any,\n        FullTextSearchResponseIntentContextIn.IntentContextInSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentContextInResults?: FullTextSearchResponseIntentContextIn.IntentContextInSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseIntentContextIn to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseIntentContextIn.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentContextInResults = (_value.intentContextInResults || []).map(\n      m =>\n        new FullTextSearchResponseIntentContextIn.IntentContextInSearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseIntentContextIn.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentContextInResults():\n    | FullTextSearchResponseIntentContextIn.IntentContextInSearchResult[]\n    | undefined {\n    return this._intentContextInResults;\n  }\n  set intentContextInResults(\n    value:\n      | FullTextSearchResponseIntentContextIn.IntentContextInSearchResult[]\n      | undefined\n  ) {\n    this._intentContextInResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseIntentContextIn.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseIntentContextIn.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentContextInResults: (this.intentContextInResults || []).map(m =>\n        m.toObject()\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseIntentContextIn.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentContextInResults: (this.intentContextInResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseIntentContextIn {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseIntentContextIn\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentContextInResults?: FullTextSearchResponseIntentContextIn.IntentContextInSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseIntentContextIn\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentContextInResults:\n      | FullTextSearchResponseIntentContextIn.IntentContextInSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseIntentContextIn.IntentContextInSearchResult\n   */\n  export class IntentContextInSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseIntentContextIn.IntentContextInSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new IntentContextInSearchResult();\n      IntentContextInSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: IntentContextInSearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.intentName = _instance.intentName || '';\n      _instance.intentDisplayName = _instance.intentDisplayName || '';\n      _instance.tags = _instance.tags || [];\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: IntentContextInSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.intentName = _reader.readString();\n            break;\n          case 3:\n            _instance.intentDisplayName = _reader.readString();\n            break;\n          case 4:\n            (_instance.tags = _instance.tags || []).push(_reader.readString());\n            break;\n          case 5:\n            _instance.language = _reader.readString();\n            break;\n          case 6:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 7:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 9:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      IntentContextInSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: IntentContextInSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.intentName) {\n        _writer.writeString(2, _instance.intentName);\n      }\n      if (_instance.intentDisplayName) {\n        _writer.writeString(3, _instance.intentDisplayName);\n      }\n      if (_instance.tags && _instance.tags.length) {\n        _writer.writeRepeatedString(4, _instance.tags);\n      }\n      if (_instance.language) {\n        _writer.writeString(5, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          6,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          7,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(8, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(9, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _intentName: string;\n    private _intentDisplayName: string;\n    private _tags: string[];\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of IntentContextInSearchResult to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<IntentContextInSearchResult.AsObject>\n    ) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.intentName = _value.intentName;\n      this.intentDisplayName = _value.intentDisplayName;\n      this.tags = (_value.tags || []).slice();\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      IntentContextInSearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get intentDisplayName(): string {\n      return this._intentDisplayName;\n    }\n    set intentDisplayName(value: string) {\n      this._intentDisplayName = value;\n    }\n    get tags(): string[] {\n      return this._tags;\n    }\n    set tags(value: string[]) {\n      this._tags = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      IntentContextInSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): IntentContextInSearchResult.AsObject {\n      return {\n        name: this.name,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): IntentContextInSearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module IntentContextInSearchResult {\n    /**\n     * Standard JavaScript object representation for IntentContextInSearchResult\n     */\n    export interface AsObject {\n      name: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for IntentContextInSearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseIntentContextOut\n */\nexport class FullTextSearchResponseIntentContextOut implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseIntentContextOut';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseIntentContextOut();\n    FullTextSearchResponseIntentContextOut.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseIntentContextOut) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentContextOutResults = _instance.intentContextOutResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseIntentContextOut,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.intentContextOutResults =\n            _instance.intentContextOutResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseIntentContextOut.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseIntentContextOut,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (\n      _instance.intentContextOutResults &&\n      _instance.intentContextOutResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.intentContextOutResults as any,\n        FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentContextOutResults?: FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseIntentContextOut to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseIntentContextOut.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentContextOutResults = (_value.intentContextOutResults || []).map(\n      m =>\n        new FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult(\n          m\n        )\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseIntentContextOut.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentContextOutResults():\n    | FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult[]\n    | undefined {\n    return this._intentContextOutResults;\n  }\n  set intentContextOutResults(\n    value:\n      | FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult[]\n      | undefined\n  ) {\n    this._intentContextOutResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseIntentContextOut.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseIntentContextOut.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentContextOutResults: (this.intentContextOutResults || []).map(m =>\n        m.toObject()\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseIntentContextOut.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentContextOutResults: (this.intentContextOutResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseIntentContextOut {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseIntentContextOut\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentContextOutResults?: FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseIntentContextOut\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentContextOutResults:\n      | FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult\n   */\n  export class IntentContextOutSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseIntentContextOut.IntentContextOutSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new IntentContextOutSearchResult();\n      IntentContextOutSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: IntentContextOutSearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.intentName = _instance.intentName || '';\n      _instance.intentDisplayName = _instance.intentDisplayName || '';\n      _instance.tags = _instance.tags || [];\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: IntentContextOutSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.intentName = _reader.readString();\n            break;\n          case 3:\n            _instance.intentDisplayName = _reader.readString();\n            break;\n          case 4:\n            (_instance.tags = _instance.tags || []).push(_reader.readString());\n            break;\n          case 5:\n            _instance.language = _reader.readString();\n            break;\n          case 6:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 7:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 9:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      IntentContextOutSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: IntentContextOutSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.intentName) {\n        _writer.writeString(2, _instance.intentName);\n      }\n      if (_instance.intentDisplayName) {\n        _writer.writeString(3, _instance.intentDisplayName);\n      }\n      if (_instance.tags && _instance.tags.length) {\n        _writer.writeRepeatedString(4, _instance.tags);\n      }\n      if (_instance.language) {\n        _writer.writeString(5, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          6,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          7,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(8, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(9, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _intentName: string;\n    private _intentDisplayName: string;\n    private _tags: string[];\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of IntentContextOutSearchResult to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<IntentContextOutSearchResult.AsObject>\n    ) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.intentName = _value.intentName;\n      this.intentDisplayName = _value.intentDisplayName;\n      this.tags = (_value.tags || []).slice();\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      IntentContextOutSearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get intentDisplayName(): string {\n      return this._intentDisplayName;\n    }\n    set intentDisplayName(value: string) {\n      this._intentDisplayName = value;\n    }\n    get tags(): string[] {\n      return this._tags;\n    }\n    set tags(value: string[]) {\n      this._tags = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      IntentContextOutSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): IntentContextOutSearchResult.AsObject {\n      return {\n        name: this.name,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): IntentContextOutSearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module IntentContextOutSearchResult {\n    /**\n     * Standard JavaScript object representation for IntentContextOutSearchResult\n     */\n    export interface AsObject {\n      name: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for IntentContextOutSearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseIntentUsersays\n */\nexport class FullTextSearchResponseIntentUsersays implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseIntentUsersays';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseIntentUsersays();\n    FullTextSearchResponseIntentUsersays.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseIntentUsersays) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentUsersaysResults = _instance.intentUsersaysResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseIntentUsersays,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.intentUsersaysResults =\n            _instance.intentUsersaysResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseIntentUsersays.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseIntentUsersays,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (\n      _instance.intentUsersaysResults &&\n      _instance.intentUsersaysResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.intentUsersaysResults as any,\n        FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentUsersaysResults?: FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseIntentUsersays to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseIntentUsersays.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentUsersaysResults = (_value.intentUsersaysResults || []).map(\n      m =>\n        new FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseIntentUsersays.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentUsersaysResults():\n    | FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult[]\n    | undefined {\n    return this._intentUsersaysResults;\n  }\n  set intentUsersaysResults(\n    value:\n      | FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult[]\n      | undefined\n  ) {\n    this._intentUsersaysResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseIntentUsersays.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseIntentUsersays.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentUsersaysResults: (this.intentUsersaysResults || []).map(m =>\n        m.toObject()\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseIntentUsersays.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentUsersaysResults: (this.intentUsersaysResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseIntentUsersays {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseIntentUsersays\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentUsersaysResults?: FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseIntentUsersays\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentUsersaysResults:\n      | FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult\n   */\n  export class IntentUsersaysSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseIntentUsersays.IntentUsersaysSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new IntentUsersaysSearchResult();\n      IntentUsersaysSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: IntentUsersaysSearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.text = _instance.text || '';\n      _instance.textAsEntityTypes = _instance.textAsEntityTypes || '';\n      _instance.textAsEntityValues = _instance.textAsEntityValues || '';\n      _instance.type = _instance.type || '';\n      _instance.intentName = _instance.intentName || '';\n      _instance.intentDisplayName = _instance.intentDisplayName || '';\n      _instance.tags = _instance.tags || [];\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: IntentUsersaysSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.text = _reader.readString();\n            break;\n          case 3:\n            _instance.textAsEntityTypes = _reader.readString();\n            break;\n          case 4:\n            _instance.textAsEntityValues = _reader.readString();\n            break;\n          case 5:\n            _instance.type = _reader.readString();\n            break;\n          case 6:\n            _instance.intentName = _reader.readString();\n            break;\n          case 7:\n            _instance.intentDisplayName = _reader.readString();\n            break;\n          case 8:\n            (_instance.tags = _instance.tags || []).push(_reader.readString());\n            break;\n          case 9:\n            _instance.language = _reader.readString();\n            break;\n          case 10:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 11:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 12:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 13:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      IntentUsersaysSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: IntentUsersaysSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.text) {\n        _writer.writeString(2, _instance.text);\n      }\n      if (_instance.textAsEntityTypes) {\n        _writer.writeString(3, _instance.textAsEntityTypes);\n      }\n      if (_instance.textAsEntityValues) {\n        _writer.writeString(4, _instance.textAsEntityValues);\n      }\n      if (_instance.type) {\n        _writer.writeString(5, _instance.type);\n      }\n      if (_instance.intentName) {\n        _writer.writeString(6, _instance.intentName);\n      }\n      if (_instance.intentDisplayName) {\n        _writer.writeString(7, _instance.intentDisplayName);\n      }\n      if (_instance.tags && _instance.tags.length) {\n        _writer.writeRepeatedString(8, _instance.tags);\n      }\n      if (_instance.language) {\n        _writer.writeString(9, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          10,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          11,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(12, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(13, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _text: string;\n    private _textAsEntityTypes: string;\n    private _textAsEntityValues: string;\n    private _type: string;\n    private _intentName: string;\n    private _intentDisplayName: string;\n    private _tags: string[];\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of IntentUsersaysSearchResult to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<IntentUsersaysSearchResult.AsObject>\n    ) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.text = _value.text;\n      this.textAsEntityTypes = _value.textAsEntityTypes;\n      this.textAsEntityValues = _value.textAsEntityValues;\n      this.type = _value.type;\n      this.intentName = _value.intentName;\n      this.intentDisplayName = _value.intentDisplayName;\n      this.tags = (_value.tags || []).slice();\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      IntentUsersaysSearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get text(): string {\n      return this._text;\n    }\n    set text(value: string) {\n      this._text = value;\n    }\n    get textAsEntityTypes(): string {\n      return this._textAsEntityTypes;\n    }\n    set textAsEntityTypes(value: string) {\n      this._textAsEntityTypes = value;\n    }\n    get textAsEntityValues(): string {\n      return this._textAsEntityValues;\n    }\n    set textAsEntityValues(value: string) {\n      this._textAsEntityValues = value;\n    }\n    get type(): string {\n      return this._type;\n    }\n    set type(value: string) {\n      this._type = value;\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get intentDisplayName(): string {\n      return this._intentDisplayName;\n    }\n    set intentDisplayName(value: string) {\n      this._intentDisplayName = value;\n    }\n    get tags(): string[] {\n      return this._tags;\n    }\n    set tags(value: string[]) {\n      this._tags = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      IntentUsersaysSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): IntentUsersaysSearchResult.AsObject {\n      return {\n        name: this.name,\n        text: this.text,\n        textAsEntityTypes: this.textAsEntityTypes,\n        textAsEntityValues: this.textAsEntityValues,\n        type: this.type,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): IntentUsersaysSearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        text: this.text,\n        textAsEntityTypes: this.textAsEntityTypes,\n        textAsEntityValues: this.textAsEntityValues,\n        type: this.type,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module IntentUsersaysSearchResult {\n    /**\n     * Standard JavaScript object representation for IntentUsersaysSearchResult\n     */\n    export interface AsObject {\n      name: string;\n      text: string;\n      textAsEntityTypes: string;\n      textAsEntityValues: string;\n      type: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for IntentUsersaysSearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      text: string;\n      textAsEntityTypes: string;\n      textAsEntityValues: string;\n      type: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseIntentTags\n */\nexport class FullTextSearchResponseIntentTags implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseIntentTags';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseIntentTags();\n    FullTextSearchResponseIntentTags.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseIntentTags) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentTagsResults = _instance.intentTagsResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseIntentTags,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseIntentTags.IntentTagsSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseIntentTags.IntentTagsSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.intentTagsResults =\n            _instance.intentTagsResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseIntentTags.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseIntentTags,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.intentTagsResults && _instance.intentTagsResults.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.intentTagsResults as any,\n        FullTextSearchResponseIntentTags.IntentTagsSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentTagsResults?: FullTextSearchResponseIntentTags.IntentTagsSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseIntentTags to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseIntentTags.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentTagsResults = (_value.intentTagsResults || []).map(\n      m => new FullTextSearchResponseIntentTags.IntentTagsSearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseIntentTags.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentTagsResults():\n    | FullTextSearchResponseIntentTags.IntentTagsSearchResult[]\n    | undefined {\n    return this._intentTagsResults;\n  }\n  set intentTagsResults(\n    value: FullTextSearchResponseIntentTags.IntentTagsSearchResult[] | undefined\n  ) {\n    this._intentTagsResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseIntentTags.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseIntentTags.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentTagsResults: (this.intentTagsResults || []).map(m => m.toObject()),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseIntentTags.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentTagsResults: (this.intentTagsResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseIntentTags {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseIntentTags\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentTagsResults?: FullTextSearchResponseIntentTags.IntentTagsSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseIntentTags\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentTagsResults:\n      | FullTextSearchResponseIntentTags.IntentTagsSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseIntentTags.IntentTagsSearchResult\n   */\n  export class IntentTagsSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseIntentTags.IntentTagsSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new IntentTagsSearchResult();\n      IntentTagsSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: IntentTagsSearchResult) {\n      _instance.name = _instance.name || '';\n      _instance.text = _instance.text || '';\n      _instance.intentName = _instance.intentName || '';\n      _instance.intentDisplayName = _instance.intentDisplayName || '';\n      _instance.tags = _instance.tags || [];\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: IntentTagsSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.name = _reader.readString();\n            break;\n          case 2:\n            _instance.text = _reader.readString();\n            break;\n          case 3:\n            _instance.intentName = _reader.readString();\n            break;\n          case 4:\n            _instance.intentDisplayName = _reader.readString();\n            break;\n          case 5:\n            (_instance.tags = _instance.tags || []).push(_reader.readString());\n            break;\n          case 6:\n            _instance.language = _reader.readString();\n            break;\n          case 7:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 9:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 10:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      IntentTagsSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: IntentTagsSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.name) {\n        _writer.writeString(1, _instance.name);\n      }\n      if (_instance.text) {\n        _writer.writeString(2, _instance.text);\n      }\n      if (_instance.intentName) {\n        _writer.writeString(3, _instance.intentName);\n      }\n      if (_instance.intentDisplayName) {\n        _writer.writeString(4, _instance.intentDisplayName);\n      }\n      if (_instance.tags && _instance.tags.length) {\n        _writer.writeRepeatedString(5, _instance.tags);\n      }\n      if (_instance.language) {\n        _writer.writeString(6, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          7,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          8,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(9, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(10, _instance.modifiedBy);\n      }\n    }\n\n    private _name: string;\n    private _text: string;\n    private _intentName: string;\n    private _intentDisplayName: string;\n    private _tags: string[];\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of IntentTagsSearchResult to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<IntentTagsSearchResult.AsObject>) {\n      _value = _value || {};\n      this.name = _value.name;\n      this.text = _value.text;\n      this.intentName = _value.intentName;\n      this.intentDisplayName = _value.intentDisplayName;\n      this.tags = (_value.tags || []).slice();\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      IntentTagsSearchResult.refineValues(this);\n    }\n    get name(): string {\n      return this._name;\n    }\n    set name(value: string) {\n      this._name = value;\n    }\n    get text(): string {\n      return this._text;\n    }\n    set text(value: string) {\n      this._text = value;\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get intentDisplayName(): string {\n      return this._intentDisplayName;\n    }\n    set intentDisplayName(value: string) {\n      this._intentDisplayName = value;\n    }\n    get tags(): string[] {\n      return this._tags;\n    }\n    set tags(value: string[]) {\n      this._tags = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      IntentTagsSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): IntentTagsSearchResult.AsObject {\n      return {\n        name: this.name,\n        text: this.text,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): IntentTagsSearchResult.AsProtobufJSON {\n      return {\n        name: this.name,\n        text: this.text,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module IntentTagsSearchResult {\n    /**\n     * Standard JavaScript object representation for IntentTagsSearchResult\n     */\n    export interface AsObject {\n      name: string;\n      text: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for IntentTagsSearchResult\n     */\n    export interface AsProtobufJSON {\n      name: string;\n      text: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseIntentResponse\n */\nexport class FullTextSearchResponseIntentResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseIntentResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseIntentResponse();\n    FullTextSearchResponseIntentResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseIntentResponse) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentResponseResults = _instance.intentResponseResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseIntentResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseIntentResponse.IntentResponseSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseIntentResponse.IntentResponseSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.intentResponseResults =\n            _instance.intentResponseResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseIntentResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseIntentResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (\n      _instance.intentResponseResults &&\n      _instance.intentResponseResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.intentResponseResults as any,\n        FullTextSearchResponseIntentResponse.IntentResponseSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentResponseResults?: FullTextSearchResponseIntentResponse.IntentResponseSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseIntentResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseIntentResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentResponseResults = (_value.intentResponseResults || []).map(\n      m =>\n        new FullTextSearchResponseIntentResponse.IntentResponseSearchResult(m)\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseIntentResponse.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentResponseResults():\n    | FullTextSearchResponseIntentResponse.IntentResponseSearchResult[]\n    | undefined {\n    return this._intentResponseResults;\n  }\n  set intentResponseResults(\n    value:\n      | FullTextSearchResponseIntentResponse.IntentResponseSearchResult[]\n      | undefined\n  ) {\n    this._intentResponseResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseIntentResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseIntentResponse.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentResponseResults: (this.intentResponseResults || []).map(m =>\n        m.toObject()\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseIntentResponse.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentResponseResults: (this.intentResponseResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseIntentResponse {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseIntentResponse\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentResponseResults?: FullTextSearchResponseIntentResponse.IntentResponseSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseIntentResponse\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentResponseResults:\n      | FullTextSearchResponseIntentResponse.IntentResponseSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseIntentResponse.IntentResponseSearchResult\n   */\n  export class IntentResponseSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseIntentResponse.IntentResponseSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new IntentResponseSearchResult();\n      IntentResponseSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: IntentResponseSearchResult) {\n      _instance.text = _instance.text || '';\n      _instance.platform = _instance.platform || '';\n      _instance.responseType = _instance.responseType || '';\n      _instance.intentName = _instance.intentName || '';\n      _instance.intentDisplayName = _instance.intentDisplayName || '';\n      _instance.tags = _instance.tags || [];\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: IntentResponseSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.text = _reader.readString();\n            break;\n          case 2:\n            _instance.platform = _reader.readString();\n            break;\n          case 3:\n            _instance.responseType = _reader.readString();\n            break;\n          case 4:\n            _instance.intentName = _reader.readString();\n            break;\n          case 5:\n            _instance.intentDisplayName = _reader.readString();\n            break;\n          case 6:\n            (_instance.tags = _instance.tags || []).push(_reader.readString());\n            break;\n          case 7:\n            _instance.language = _reader.readString();\n            break;\n          case 8:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 9:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 10:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 11:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      IntentResponseSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: IntentResponseSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.text) {\n        _writer.writeString(1, _instance.text);\n      }\n      if (_instance.platform) {\n        _writer.writeString(2, _instance.platform);\n      }\n      if (_instance.responseType) {\n        _writer.writeString(3, _instance.responseType);\n      }\n      if (_instance.intentName) {\n        _writer.writeString(4, _instance.intentName);\n      }\n      if (_instance.intentDisplayName) {\n        _writer.writeString(5, _instance.intentDisplayName);\n      }\n      if (_instance.tags && _instance.tags.length) {\n        _writer.writeRepeatedString(6, _instance.tags);\n      }\n      if (_instance.language) {\n        _writer.writeString(7, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          8,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          9,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(10, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(11, _instance.modifiedBy);\n      }\n    }\n\n    private _text: string;\n    private _platform: string;\n    private _responseType: string;\n    private _intentName: string;\n    private _intentDisplayName: string;\n    private _tags: string[];\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of IntentResponseSearchResult to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<IntentResponseSearchResult.AsObject>\n    ) {\n      _value = _value || {};\n      this.text = _value.text;\n      this.platform = _value.platform;\n      this.responseType = _value.responseType;\n      this.intentName = _value.intentName;\n      this.intentDisplayName = _value.intentDisplayName;\n      this.tags = (_value.tags || []).slice();\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      IntentResponseSearchResult.refineValues(this);\n    }\n    get text(): string {\n      return this._text;\n    }\n    set text(value: string) {\n      this._text = value;\n    }\n    get platform(): string {\n      return this._platform;\n    }\n    set platform(value: string) {\n      this._platform = value;\n    }\n    get responseType(): string {\n      return this._responseType;\n    }\n    set responseType(value: string) {\n      this._responseType = value;\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get intentDisplayName(): string {\n      return this._intentDisplayName;\n    }\n    set intentDisplayName(value: string) {\n      this._intentDisplayName = value;\n    }\n    get tags(): string[] {\n      return this._tags;\n    }\n    set tags(value: string[]) {\n      this._tags = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      IntentResponseSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): IntentResponseSearchResult.AsObject {\n      return {\n        text: this.text,\n        platform: this.platform,\n        responseType: this.responseType,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): IntentResponseSearchResult.AsProtobufJSON {\n      return {\n        text: this.text,\n        platform: this.platform,\n        responseType: this.responseType,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module IntentResponseSearchResult {\n    /**\n     * Standard JavaScript object representation for IntentResponseSearchResult\n     */\n    export interface AsObject {\n      text: string;\n      platform: string;\n      responseType: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for IntentResponseSearchResult\n     */\n    export interface AsProtobufJSON {\n      text: string;\n      platform: string;\n      responseType: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.FullTextSearchResponseIntentParameters\n */\nexport class FullTextSearchResponseIntentParameters implements GrpcMessage {\n  static id = 'ondewo.nlu.FullTextSearchResponseIntentParameters';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new FullTextSearchResponseIntentParameters();\n    FullTextSearchResponseIntentParameters.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: FullTextSearchResponseIntentParameters) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentParametersResults = _instance.intentParametersResults || [];\n    _instance.term = _instance.term || '';\n    _instance.elasticQuery = _instance.elasticQuery || '';\n    _instance.time = _instance.time || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: FullTextSearchResponseIntentParameters,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new FullTextSearchResponseIntentParameters.IntentParametersSearchResult();\n          _reader.readMessage(\n            messageInitializer3,\n            FullTextSearchResponseIntentParameters.IntentParametersSearchResult\n              .deserializeBinaryFromReader\n          );\n          (_instance.intentParametersResults =\n            _instance.intentParametersResults || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.term = _reader.readString();\n          break;\n        case 5:\n          _instance.elasticQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.time = _reader.readFloat();\n          break;\n        case 7:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    FullTextSearchResponseIntentParameters.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: FullTextSearchResponseIntentParameters,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (\n      _instance.intentParametersResults &&\n      _instance.intentParametersResults.length\n    ) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.intentParametersResults as any,\n        FullTextSearchResponseIntentParameters.IntentParametersSearchResult\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.term) {\n      _writer.writeString(4, _instance.term);\n    }\n    if (_instance.elasticQuery) {\n      _writer.writeString(5, _instance.elasticQuery);\n    }\n    if (_instance.time) {\n      _writer.writeFloat(6, _instance.time);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(7, _instance.nextPageToken);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _intentParametersResults?: FullTextSearchResponseIntentParameters.IntentParametersSearchResult[];\n  private _term: string;\n  private _elasticQuery: string;\n  private _time: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of FullTextSearchResponseIntentParameters to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<FullTextSearchResponseIntentParameters.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.intentParametersResults = (_value.intentParametersResults || []).map(\n      m =>\n        new FullTextSearchResponseIntentParameters.IntentParametersSearchResult(\n          m\n        )\n    );\n    this.term = _value.term;\n    this.elasticQuery = _value.elasticQuery;\n    this.time = _value.time;\n    this.nextPageToken = _value.nextPageToken;\n    FullTextSearchResponseIntentParameters.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentParametersResults():\n    | FullTextSearchResponseIntentParameters.IntentParametersSearchResult[]\n    | undefined {\n    return this._intentParametersResults;\n  }\n  set intentParametersResults(\n    value:\n      | FullTextSearchResponseIntentParameters.IntentParametersSearchResult[]\n      | undefined\n  ) {\n    this._intentParametersResults = value;\n  }\n  get term(): string {\n    return this._term;\n  }\n  set term(value: string) {\n    this._term = value;\n  }\n  get elasticQuery(): string {\n    return this._elasticQuery;\n  }\n  set elasticQuery(value: string) {\n    this._elasticQuery = value;\n  }\n  get time(): number {\n    return this._time;\n  }\n  set time(value: number) {\n    this._time = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    FullTextSearchResponseIntentParameters.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): FullTextSearchResponseIntentParameters.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentParametersResults: (this.intentParametersResults || []).map(m =>\n        m.toObject()\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): FullTextSearchResponseIntentParameters.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      intentParametersResults: (this.intentParametersResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      term: this.term,\n      elasticQuery: this.elasticQuery,\n      time: this.time,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module FullTextSearchResponseIntentParameters {\n  /**\n   * Standard JavaScript object representation for FullTextSearchResponseIntentParameters\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    intentParametersResults?: FullTextSearchResponseIntentParameters.IntentParametersSearchResult.AsObject[];\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for FullTextSearchResponseIntentParameters\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    intentParametersResults:\n      | FullTextSearchResponseIntentParameters.IntentParametersSearchResult.AsProtobufJSON[]\n      | null;\n    term: string;\n    elasticQuery: string;\n    time: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.FullTextSearchResponseIntentParameters.IntentParametersSearchResult\n   */\n  export class IntentParametersSearchResult implements GrpcMessage {\n    static id =\n      'ondewo.nlu.FullTextSearchResponseIntentParameters.IntentParametersSearchResult';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new IntentParametersSearchResult();\n      IntentParametersSearchResult.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: IntentParametersSearchResult) {\n      _instance.parameterName = _instance.parameterName || '';\n      _instance.parameterDisplayName = _instance.parameterDisplayName || '';\n      _instance.intentName = _instance.intentName || '';\n      _instance.intentDisplayName = _instance.intentDisplayName || '';\n      _instance.tags = _instance.tags || [];\n      _instance.language = _instance.language || '';\n      _instance.createdAt = _instance.createdAt || undefined;\n      _instance.modifiedAt = _instance.modifiedAt || undefined;\n      _instance.createdBy = _instance.createdBy || '';\n      _instance.modifiedBy = _instance.modifiedBy || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: IntentParametersSearchResult,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.parameterName = _reader.readString();\n            break;\n          case 2:\n            _instance.parameterDisplayName = _reader.readString();\n            break;\n          case 3:\n            _instance.intentName = _reader.readString();\n            break;\n          case 4:\n            _instance.intentDisplayName = _reader.readString();\n            break;\n          case 5:\n            (_instance.tags = _instance.tags || []).push(_reader.readString());\n            break;\n          case 6:\n            _instance.language = _reader.readString();\n            break;\n          case 7:\n            _instance.createdAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.createdAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 8:\n            _instance.modifiedAt = new googleProtobuf004.Timestamp();\n            _reader.readMessage(\n              _instance.modifiedAt,\n              googleProtobuf004.Timestamp.deserializeBinaryFromReader\n            );\n            break;\n          case 9:\n            _instance.createdBy = _reader.readString();\n            break;\n          case 10:\n            _instance.modifiedBy = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      IntentParametersSearchResult.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: IntentParametersSearchResult,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.parameterName) {\n        _writer.writeString(1, _instance.parameterName);\n      }\n      if (_instance.parameterDisplayName) {\n        _writer.writeString(2, _instance.parameterDisplayName);\n      }\n      if (_instance.intentName) {\n        _writer.writeString(3, _instance.intentName);\n      }\n      if (_instance.intentDisplayName) {\n        _writer.writeString(4, _instance.intentDisplayName);\n      }\n      if (_instance.tags && _instance.tags.length) {\n        _writer.writeRepeatedString(5, _instance.tags);\n      }\n      if (_instance.language) {\n        _writer.writeString(6, _instance.language);\n      }\n      if (_instance.createdAt) {\n        _writer.writeMessage(\n          7,\n          _instance.createdAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.modifiedAt) {\n        _writer.writeMessage(\n          8,\n          _instance.modifiedAt as any,\n          googleProtobuf004.Timestamp.serializeBinaryToWriter\n        );\n      }\n      if (_instance.createdBy) {\n        _writer.writeString(9, _instance.createdBy);\n      }\n      if (_instance.modifiedBy) {\n        _writer.writeString(10, _instance.modifiedBy);\n      }\n    }\n\n    private _parameterName: string;\n    private _parameterDisplayName: string;\n    private _intentName: string;\n    private _intentDisplayName: string;\n    private _tags: string[];\n    private _language: string;\n    private _createdAt?: googleProtobuf004.Timestamp;\n    private _modifiedAt?: googleProtobuf004.Timestamp;\n    private _createdBy: string;\n    private _modifiedBy: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of IntentParametersSearchResult to deeply clone from\n     */\n    constructor(\n      _value?: RecursivePartial<IntentParametersSearchResult.AsObject>\n    ) {\n      _value = _value || {};\n      this.parameterName = _value.parameterName;\n      this.parameterDisplayName = _value.parameterDisplayName;\n      this.intentName = _value.intentName;\n      this.intentDisplayName = _value.intentDisplayName;\n      this.tags = (_value.tags || []).slice();\n      this.language = _value.language;\n      this.createdAt = _value.createdAt\n        ? new googleProtobuf004.Timestamp(_value.createdAt)\n        : undefined;\n      this.modifiedAt = _value.modifiedAt\n        ? new googleProtobuf004.Timestamp(_value.modifiedAt)\n        : undefined;\n      this.createdBy = _value.createdBy;\n      this.modifiedBy = _value.modifiedBy;\n      IntentParametersSearchResult.refineValues(this);\n    }\n    get parameterName(): string {\n      return this._parameterName;\n    }\n    set parameterName(value: string) {\n      this._parameterName = value;\n    }\n    get parameterDisplayName(): string {\n      return this._parameterDisplayName;\n    }\n    set parameterDisplayName(value: string) {\n      this._parameterDisplayName = value;\n    }\n    get intentName(): string {\n      return this._intentName;\n    }\n    set intentName(value: string) {\n      this._intentName = value;\n    }\n    get intentDisplayName(): string {\n      return this._intentDisplayName;\n    }\n    set intentDisplayName(value: string) {\n      this._intentDisplayName = value;\n    }\n    get tags(): string[] {\n      return this._tags;\n    }\n    set tags(value: string[]) {\n      this._tags = value;\n    }\n    get language(): string {\n      return this._language;\n    }\n    set language(value: string) {\n      this._language = value;\n    }\n    get createdAt(): googleProtobuf004.Timestamp | undefined {\n      return this._createdAt;\n    }\n    set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._createdAt = value;\n    }\n    get modifiedAt(): googleProtobuf004.Timestamp | undefined {\n      return this._modifiedAt;\n    }\n    set modifiedAt(value: googleProtobuf004.Timestamp | undefined) {\n      this._modifiedAt = value;\n    }\n    get createdBy(): string {\n      return this._createdBy;\n    }\n    set createdBy(value: string) {\n      this._createdBy = value;\n    }\n    get modifiedBy(): string {\n      return this._modifiedBy;\n    }\n    set modifiedBy(value: string) {\n      this._modifiedBy = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      IntentParametersSearchResult.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): IntentParametersSearchResult.AsObject {\n      return {\n        parameterName: this.parameterName,\n        parameterDisplayName: this.parameterDisplayName,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n        modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): IntentParametersSearchResult.AsProtobufJSON {\n      return {\n        parameterName: this.parameterName,\n        parameterDisplayName: this.parameterDisplayName,\n        intentName: this.intentName,\n        intentDisplayName: this.intentDisplayName,\n        tags: (this.tags || []).slice(),\n        language: this.language,\n        createdAt: this.createdAt\n          ? this.createdAt.toProtobufJSON(options)\n          : null,\n        modifiedAt: this.modifiedAt\n          ? this.modifiedAt.toProtobufJSON(options)\n          : null,\n        createdBy: this.createdBy,\n        modifiedBy: this.modifiedBy\n      };\n    }\n  }\n  export module IntentParametersSearchResult {\n    /**\n     * Standard JavaScript object representation for IntentParametersSearchResult\n     */\n    export interface AsObject {\n      parameterName: string;\n      parameterDisplayName: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt?: googleProtobuf004.Timestamp.AsObject;\n      modifiedAt?: googleProtobuf004.Timestamp.AsObject;\n      createdBy: string;\n      modifiedBy: string;\n    }\n\n    /**\n     * Protobuf JSON representation for IntentParametersSearchResult\n     */\n    export interface AsProtobufJSON {\n      parameterName: string;\n      parameterDisplayName: string;\n      intentName: string;\n      intentDisplayName: string;\n      tags: string[];\n      language: string;\n      createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      modifiedAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n      createdBy: string;\n      modifiedBy: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ReindexAgentRequest\n */\nexport class ReindexAgentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ReindexAgentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ReindexAgentRequest();\n    ReindexAgentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ReindexAgentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.branchName = _instance.branchName || '';\n    _instance.indexTypes = _instance.indexTypes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ReindexAgentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.branchName = _reader.readString();\n          break;\n        case 3:\n          _reader.readPackableEnumInto(\n            (_instance.indexTypes = _instance.indexTypes || [])\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ReindexAgentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ReindexAgentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.branchName) {\n      _writer.writeString(2, _instance.branchName);\n    }\n    if (_instance.indexTypes && _instance.indexTypes.length) {\n      _writer.writePackedEnum(3, _instance.indexTypes);\n    }\n  }\n\n  private _parent: string;\n  private _branchName: string;\n  private _indexTypes: FullTextSearchRequest.QueryType[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ReindexAgentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ReindexAgentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.branchName = _value.branchName;\n    this.indexTypes = (_value.indexTypes || []).slice();\n    ReindexAgentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get branchName(): string {\n    return this._branchName;\n  }\n  set branchName(value: string) {\n    this._branchName = value;\n  }\n  get indexTypes(): FullTextSearchRequest.QueryType[] {\n    return this._indexTypes;\n  }\n  set indexTypes(value: FullTextSearchRequest.QueryType[]) {\n    this._indexTypes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ReindexAgentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ReindexAgentRequest.AsObject {\n    return {\n      parent: this.parent,\n      branchName: this.branchName,\n      indexTypes: (this.indexTypes || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ReindexAgentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      branchName: this.branchName,\n      indexTypes: (this.indexTypes || []).map(\n        v => FullTextSearchRequest.QueryType[v]\n      )\n    };\n  }\n}\nexport module ReindexAgentRequest {\n  /**\n   * Standard JavaScript object representation for ReindexAgentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    branchName: string;\n    indexTypes: FullTextSearchRequest.QueryType[];\n  }\n\n  /**\n   * Protobuf JSON representation for ReindexAgentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    branchName: string;\n    indexTypes: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateProjectTechnicalUserRequest\n */\nexport class CreateProjectTechnicalUserRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateProjectTechnicalUserRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateProjectTechnicalUserRequest();\n    CreateProjectTechnicalUserRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateProjectTechnicalUserRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateProjectTechnicalUserRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateProjectTechnicalUserRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateProjectTechnicalUserRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.name) {\n      _writer.writeString(2, _instance.name);\n    }\n  }\n\n  private _parent: string;\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateProjectTechnicalUserRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateProjectTechnicalUserRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.name = _value.name;\n    CreateProjectTechnicalUserRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateProjectTechnicalUserRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateProjectTechnicalUserRequest.AsObject {\n    return {\n      parent: this.parent,\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateProjectTechnicalUserRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      name: this.name\n    };\n  }\n}\nexport module CreateProjectTechnicalUserRequest {\n  /**\n   * Standard JavaScript object representation for CreateProjectTechnicalUserRequest\n   */\n  export interface AsObject {\n    parent: string;\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateProjectTechnicalUserRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateProjectTechnicalUserResponse\n */\nexport class CreateProjectTechnicalUserResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateProjectTechnicalUserResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateProjectTechnicalUserResponse();\n    CreateProjectTechnicalUserResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateProjectTechnicalUserResponse) {\n    _instance.userId = _instance.userId || '';\n    _instance.username = _instance.username || '';\n    _instance.password = _instance.password || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateProjectTechnicalUserResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userId = _reader.readString();\n          break;\n        case 2:\n          _instance.username = _reader.readString();\n          break;\n        case 3:\n          _instance.password = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateProjectTechnicalUserResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateProjectTechnicalUserResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userId) {\n      _writer.writeString(1, _instance.userId);\n    }\n    if (_instance.username) {\n      _writer.writeString(2, _instance.username);\n    }\n    if (_instance.password) {\n      _writer.writeString(3, _instance.password);\n    }\n  }\n\n  private _userId: string;\n  private _username: string;\n  private _password: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateProjectTechnicalUserResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateProjectTechnicalUserResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.userId = _value.userId;\n    this.username = _value.username;\n    this.password = _value.password;\n    CreateProjectTechnicalUserResponse.refineValues(this);\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n  get username(): string {\n    return this._username;\n  }\n  set username(value: string) {\n    this._username = value;\n  }\n  get password(): string {\n    return this._password;\n  }\n  set password(value: string) {\n    this._password = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateProjectTechnicalUserResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateProjectTechnicalUserResponse.AsObject {\n    return {\n      userId: this.userId,\n      username: this.username,\n      password: this.password\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateProjectTechnicalUserResponse.AsProtobufJSON {\n    return {\n      userId: this.userId,\n      username: this.username,\n      password: this.password\n    };\n  }\n}\nexport module CreateProjectTechnicalUserResponse {\n  /**\n   * Standard JavaScript object representation for CreateProjectTechnicalUserResponse\n   */\n  export interface AsObject {\n    userId: string;\n    username: string;\n    password: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateProjectTechnicalUserResponse\n   */\n  export interface AsProtobufJSON {\n    userId: string;\n    username: string;\n    password: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListProjectTechnicalUsersRequest\n */\nexport class ListProjectTechnicalUsersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListProjectTechnicalUsersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListProjectTechnicalUsersRequest();\n    ListProjectTechnicalUsersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListProjectTechnicalUsersRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListProjectTechnicalUsersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListProjectTechnicalUsersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListProjectTechnicalUsersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(2, _instance.pageToken);\n    }\n  }\n\n  private _parent: string;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListProjectTechnicalUsersRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListProjectTechnicalUsersRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageToken = _value.pageToken;\n    ListProjectTechnicalUsersRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListProjectTechnicalUsersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListProjectTechnicalUsersRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListProjectTechnicalUsersRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListProjectTechnicalUsersRequest {\n  /**\n   * Standard JavaScript object representation for ListProjectTechnicalUsersRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListProjectTechnicalUsersRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ProjectTechnicalUser\n */\nexport class ProjectTechnicalUser implements GrpcMessage {\n  static id = 'ondewo.nlu.ProjectTechnicalUser';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ProjectTechnicalUser();\n    ProjectTechnicalUser.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ProjectTechnicalUser) {\n    _instance.userId = _instance.userId || '';\n    _instance.username = _instance.username || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ProjectTechnicalUser,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userId = _reader.readString();\n          break;\n        case 2:\n          _instance.username = _reader.readString();\n          break;\n        case 3:\n          _instance.createdAt = new googleProtobuf004.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf004.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.createdBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ProjectTechnicalUser.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ProjectTechnicalUser,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userId) {\n      _writer.writeString(1, _instance.userId);\n    }\n    if (_instance.username) {\n      _writer.writeString(2, _instance.username);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        3,\n        _instance.createdAt as any,\n        googleProtobuf004.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(4, _instance.createdBy);\n    }\n  }\n\n  private _userId: string;\n  private _username: string;\n  private _createdAt?: googleProtobuf004.Timestamp;\n  private _createdBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ProjectTechnicalUser to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ProjectTechnicalUser.AsObject>) {\n    _value = _value || {};\n    this.userId = _value.userId;\n    this.username = _value.username;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf004.Timestamp(_value.createdAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    ProjectTechnicalUser.refineValues(this);\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n  get username(): string {\n    return this._username;\n  }\n  set username(value: string) {\n    this._username = value;\n  }\n  get createdAt(): googleProtobuf004.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf004.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ProjectTechnicalUser.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ProjectTechnicalUser.AsObject {\n    return {\n      userId: this.userId,\n      username: this.username,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      createdBy: this.createdBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ProjectTechnicalUser.AsProtobufJSON {\n    return {\n      userId: this.userId,\n      username: this.username,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      createdBy: this.createdBy\n    };\n  }\n}\nexport module ProjectTechnicalUser {\n  /**\n   * Standard JavaScript object representation for ProjectTechnicalUser\n   */\n  export interface AsObject {\n    userId: string;\n    username: string;\n    createdAt?: googleProtobuf004.Timestamp.AsObject;\n    createdBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ProjectTechnicalUser\n   */\n  export interface AsProtobufJSON {\n    userId: string;\n    username: string;\n    createdAt: googleProtobuf004.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListProjectTechnicalUsersResponse\n */\nexport class ListProjectTechnicalUsersResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListProjectTechnicalUsersResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListProjectTechnicalUsersResponse();\n    ListProjectTechnicalUsersResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListProjectTechnicalUsersResponse) {\n    _instance.technicalUsers = _instance.technicalUsers || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListProjectTechnicalUsersResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ProjectTechnicalUser();\n          _reader.readMessage(\n            messageInitializer1,\n            ProjectTechnicalUser.deserializeBinaryFromReader\n          );\n          (_instance.technicalUsers = _instance.technicalUsers || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListProjectTechnicalUsersResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListProjectTechnicalUsersResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.technicalUsers && _instance.technicalUsers.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.technicalUsers as any,\n        ProjectTechnicalUser.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _technicalUsers?: ProjectTechnicalUser[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListProjectTechnicalUsersResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListProjectTechnicalUsersResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.technicalUsers = (_value.technicalUsers || []).map(\n      m => new ProjectTechnicalUser(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListProjectTechnicalUsersResponse.refineValues(this);\n  }\n  get technicalUsers(): ProjectTechnicalUser[] | undefined {\n    return this._technicalUsers;\n  }\n  set technicalUsers(value: ProjectTechnicalUser[] | undefined) {\n    this._technicalUsers = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListProjectTechnicalUsersResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListProjectTechnicalUsersResponse.AsObject {\n    return {\n      technicalUsers: (this.technicalUsers || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListProjectTechnicalUsersResponse.AsProtobufJSON {\n    return {\n      technicalUsers: (this.technicalUsers || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListProjectTechnicalUsersResponse {\n  /**\n   * Standard JavaScript object representation for ListProjectTechnicalUsersResponse\n   */\n  export interface AsObject {\n    technicalUsers?: ProjectTechnicalUser.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListProjectTechnicalUsersResponse\n   */\n  export interface AsProtobufJSON {\n    technicalUsers: ProjectTechnicalUser.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteProjectTechnicalUserRequest\n */\nexport class DeleteProjectTechnicalUserRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteProjectTechnicalUserRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteProjectTechnicalUserRequest();\n    DeleteProjectTechnicalUserRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteProjectTechnicalUserRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.userId = _instance.userId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteProjectTechnicalUserRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.userId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteProjectTechnicalUserRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteProjectTechnicalUserRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.userId) {\n      _writer.writeString(2, _instance.userId);\n    }\n  }\n\n  private _parent: string;\n  private _userId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteProjectTechnicalUserRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteProjectTechnicalUserRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.userId = _value.userId;\n    DeleteProjectTechnicalUserRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteProjectTechnicalUserRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteProjectTechnicalUserRequest.AsObject {\n    return {\n      parent: this.parent,\n      userId: this.userId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteProjectTechnicalUserRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      userId: this.userId\n    };\n  }\n}\nexport module DeleteProjectTechnicalUserRequest {\n  /**\n   * Standard JavaScript object representation for DeleteProjectTechnicalUserRequest\n   */\n  export interface AsObject {\n    parent: string;\n    userId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteProjectTechnicalUserRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    userId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RotateProjectTechnicalUserPasswordRequest\n */\nexport class RotateProjectTechnicalUserPasswordRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RotateProjectTechnicalUserPasswordRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RotateProjectTechnicalUserPasswordRequest();\n    RotateProjectTechnicalUserPasswordRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RotateProjectTechnicalUserPasswordRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.userId = _instance.userId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RotateProjectTechnicalUserPasswordRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.userId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RotateProjectTechnicalUserPasswordRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RotateProjectTechnicalUserPasswordRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.userId) {\n      _writer.writeString(2, _instance.userId);\n    }\n  }\n\n  private _parent: string;\n  private _userId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RotateProjectTechnicalUserPasswordRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      RotateProjectTechnicalUserPasswordRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.userId = _value.userId;\n    RotateProjectTechnicalUserPasswordRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RotateProjectTechnicalUserPasswordRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RotateProjectTechnicalUserPasswordRequest.AsObject {\n    return {\n      parent: this.parent,\n      userId: this.userId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RotateProjectTechnicalUserPasswordRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      userId: this.userId\n    };\n  }\n}\nexport module RotateProjectTechnicalUserPasswordRequest {\n  /**\n   * Standard JavaScript object representation for RotateProjectTechnicalUserPasswordRequest\n   */\n  export interface AsObject {\n    parent: string;\n    userId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RotateProjectTechnicalUserPasswordRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    userId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RotateProjectTechnicalUserPasswordResponse\n */\nexport class RotateProjectTechnicalUserPasswordResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RotateProjectTechnicalUserPasswordResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RotateProjectTechnicalUserPasswordResponse();\n    RotateProjectTechnicalUserPasswordResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RotateProjectTechnicalUserPasswordResponse) {\n    _instance.userId = _instance.userId || '';\n    _instance.username = _instance.username || '';\n    _instance.password = _instance.password || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RotateProjectTechnicalUserPasswordResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userId = _reader.readString();\n          break;\n        case 2:\n          _instance.username = _reader.readString();\n          break;\n        case 3:\n          _instance.password = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RotateProjectTechnicalUserPasswordResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RotateProjectTechnicalUserPasswordResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userId) {\n      _writer.writeString(1, _instance.userId);\n    }\n    if (_instance.username) {\n      _writer.writeString(2, _instance.username);\n    }\n    if (_instance.password) {\n      _writer.writeString(3, _instance.password);\n    }\n  }\n\n  private _userId: string;\n  private _username: string;\n  private _password: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RotateProjectTechnicalUserPasswordResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      RotateProjectTechnicalUserPasswordResponse.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.userId = _value.userId;\n    this.username = _value.username;\n    this.password = _value.password;\n    RotateProjectTechnicalUserPasswordResponse.refineValues(this);\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n  get username(): string {\n    return this._username;\n  }\n  set username(value: string) {\n    this._username = value;\n  }\n  get password(): string {\n    return this._password;\n  }\n  set password(value: string) {\n    this._password = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RotateProjectTechnicalUserPasswordResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RotateProjectTechnicalUserPasswordResponse.AsObject {\n    return {\n      userId: this.userId,\n      username: this.username,\n      password: this.password\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RotateProjectTechnicalUserPasswordResponse.AsProtobufJSON {\n    return {\n      userId: this.userId,\n      username: this.username,\n      password: this.password\n    };\n  }\n}\nexport module RotateProjectTechnicalUserPasswordResponse {\n  /**\n   * Standard JavaScript object representation for RotateProjectTechnicalUserPasswordResponse\n   */\n  export interface AsObject {\n    userId: string;\n    username: string;\n    password: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RotateProjectTechnicalUserPasswordResponse\n   */\n  export interface AsProtobufJSON {\n    userId: string;\n    username: string;\n    password: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Agents.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_AGENTS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_AGENTS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleProtobuf000 from '@ngx-grpc/well-known-types';\n/**\n * Message implementation for ondewo.nlu.OperationMetadata\n */\nexport class OperationMetadata implements GrpcMessage {\n  static id = 'ondewo.nlu.OperationMetadata';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new OperationMetadata();\n    OperationMetadata.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: OperationMetadata) {\n    _instance.status = _instance.status || 0;\n    _instance.parentOperationName = _instance.parentOperationName || '';\n    _instance.subOperationNames = _instance.subOperationNames || [];\n    _instance.createTime = _instance.createTime || undefined;\n    _instance.startTime = _instance.startTime || undefined;\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.isCancellationRequested =\n      _instance.isCancellationRequested || false;\n    _instance.cancelCommand = _instance.cancelCommand || '';\n    _instance.userIdCreated = _instance.userIdCreated || '';\n    _instance.userIdCancelled = _instance.userIdCancelled || '';\n    _instance.projectParent = _instance.projectParent || '';\n    _instance.operationType = _instance.operationType || 0;\n    _instance.hostName = _instance.hostName || '';\n    _instance.numReruns = _instance.numReruns || 0;\n    _instance.maxNumReruns = _instance.maxNumReruns || 0;\n    _instance.description = _instance.description || '';\n    _instance.log = _instance.log || [];\n    _instance.logLimit = _instance.logLimit || 0;\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: OperationMetadata,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.status = _reader.readEnum();\n          break;\n        case 2:\n          _instance.parentOperationName = _reader.readString();\n          break;\n        case 3:\n          (_instance.subOperationNames =\n            _instance.subOperationNames || []).push(_reader.readString());\n          break;\n        case 4:\n          _instance.createTime = new googleProtobuf000.Timestamp();\n          _reader.readMessage(\n            _instance.createTime,\n            googleProtobuf000.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.startTime = new googleProtobuf000.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf000.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.endTime = new googleProtobuf000.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf000.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.isCancellationRequested = _reader.readBool();\n          break;\n        case 8:\n          _instance.cancelCommand = _reader.readString();\n          break;\n        case 9:\n          _instance.userIdCreated = _reader.readString();\n          break;\n        case 10:\n          _instance.userIdCancelled = _reader.readString();\n          break;\n        case 11:\n          _instance.projectParent = _reader.readString();\n          break;\n        case 12:\n          _instance.operationType = _reader.readEnum();\n          break;\n        case 13:\n          _instance.hostName = _reader.readString();\n          break;\n        case 14:\n          _instance.numReruns = _reader.readInt32();\n          break;\n        case 15:\n          _instance.maxNumReruns = _reader.readInt32();\n          break;\n        case 16:\n          _instance.description = _reader.readString();\n          break;\n        case 17:\n          (_instance.log = _instance.log || []).push(_reader.readString());\n          break;\n        case 18:\n          _instance.logLimit = _reader.readInt32();\n          break;\n        case 19:\n          _instance.createdAt = new googleProtobuf000.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf000.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 20:\n          _instance.modifiedAt = new googleProtobuf000.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf000.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 21:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 22:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    OperationMetadata.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: OperationMetadata,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.status) {\n      _writer.writeEnum(1, _instance.status);\n    }\n    if (_instance.parentOperationName) {\n      _writer.writeString(2, _instance.parentOperationName);\n    }\n    if (_instance.subOperationNames && _instance.subOperationNames.length) {\n      _writer.writeRepeatedString(3, _instance.subOperationNames);\n    }\n    if (_instance.createTime) {\n      _writer.writeMessage(\n        4,\n        _instance.createTime as any,\n        googleProtobuf000.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        5,\n        _instance.startTime as any,\n        googleProtobuf000.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        6,\n        _instance.endTime as any,\n        googleProtobuf000.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.isCancellationRequested) {\n      _writer.writeBool(7, _instance.isCancellationRequested);\n    }\n    if (_instance.cancelCommand) {\n      _writer.writeString(8, _instance.cancelCommand);\n    }\n    if (_instance.userIdCreated) {\n      _writer.writeString(9, _instance.userIdCreated);\n    }\n    if (_instance.userIdCancelled) {\n      _writer.writeString(10, _instance.userIdCancelled);\n    }\n    if (_instance.projectParent) {\n      _writer.writeString(11, _instance.projectParent);\n    }\n    if (_instance.operationType) {\n      _writer.writeEnum(12, _instance.operationType);\n    }\n    if (_instance.hostName) {\n      _writer.writeString(13, _instance.hostName);\n    }\n    if (_instance.numReruns) {\n      _writer.writeInt32(14, _instance.numReruns);\n    }\n    if (_instance.maxNumReruns) {\n      _writer.writeInt32(15, _instance.maxNumReruns);\n    }\n    if (_instance.description) {\n      _writer.writeString(16, _instance.description);\n    }\n    if (_instance.log && _instance.log.length) {\n      _writer.writeRepeatedString(17, _instance.log);\n    }\n    if (_instance.logLimit) {\n      _writer.writeInt32(18, _instance.logLimit);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        19,\n        _instance.createdAt as any,\n        googleProtobuf000.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        20,\n        _instance.modifiedAt as any,\n        googleProtobuf000.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(21, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(22, _instance.modifiedBy);\n    }\n  }\n\n  private _status: OperationMetadata.Status;\n  private _parentOperationName: string;\n  private _subOperationNames: string[];\n  private _createTime?: googleProtobuf000.Timestamp;\n  private _startTime?: googleProtobuf000.Timestamp;\n  private _endTime?: googleProtobuf000.Timestamp;\n  private _isCancellationRequested: boolean;\n  private _cancelCommand: string;\n  private _userIdCreated: string;\n  private _userIdCancelled: string;\n  private _projectParent: string;\n  private _operationType: OperationMetadata.OperationType;\n  private _hostName: string;\n  private _numReruns: number;\n  private _maxNumReruns: number;\n  private _description: string;\n  private _log: string[];\n  private _logLimit: number;\n  private _createdAt?: googleProtobuf000.Timestamp;\n  private _modifiedAt?: googleProtobuf000.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of OperationMetadata to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<OperationMetadata.AsObject>) {\n    _value = _value || {};\n    this.status = _value.status;\n    this.parentOperationName = _value.parentOperationName;\n    this.subOperationNames = (_value.subOperationNames || []).slice();\n    this.createTime = _value.createTime\n      ? new googleProtobuf000.Timestamp(_value.createTime)\n      : undefined;\n    this.startTime = _value.startTime\n      ? new googleProtobuf000.Timestamp(_value.startTime)\n      : undefined;\n    this.endTime = _value.endTime\n      ? new googleProtobuf000.Timestamp(_value.endTime)\n      : undefined;\n    this.isCancellationRequested = _value.isCancellationRequested;\n    this.cancelCommand = _value.cancelCommand;\n    this.userIdCreated = _value.userIdCreated;\n    this.userIdCancelled = _value.userIdCancelled;\n    this.projectParent = _value.projectParent;\n    this.operationType = _value.operationType;\n    this.hostName = _value.hostName;\n    this.numReruns = _value.numReruns;\n    this.maxNumReruns = _value.maxNumReruns;\n    this.description = _value.description;\n    this.log = (_value.log || []).slice();\n    this.logLimit = _value.logLimit;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf000.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf000.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    OperationMetadata.refineValues(this);\n  }\n  get status(): OperationMetadata.Status {\n    return this._status;\n  }\n  set status(value: OperationMetadata.Status) {\n    this._status = value;\n  }\n  get parentOperationName(): string {\n    return this._parentOperationName;\n  }\n  set parentOperationName(value: string) {\n    this._parentOperationName = value;\n  }\n  get subOperationNames(): string[] {\n    return this._subOperationNames;\n  }\n  set subOperationNames(value: string[]) {\n    this._subOperationNames = value;\n  }\n  get createTime(): googleProtobuf000.Timestamp | undefined {\n    return this._createTime;\n  }\n  set createTime(value: googleProtobuf000.Timestamp | undefined) {\n    this._createTime = value;\n  }\n  get startTime(): googleProtobuf000.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf000.Timestamp | undefined) {\n    this._startTime = value;\n  }\n  get endTime(): googleProtobuf000.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf000.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get isCancellationRequested(): boolean {\n    return this._isCancellationRequested;\n  }\n  set isCancellationRequested(value: boolean) {\n    this._isCancellationRequested = value;\n  }\n  get cancelCommand(): string {\n    return this._cancelCommand;\n  }\n  set cancelCommand(value: string) {\n    this._cancelCommand = value;\n  }\n  get userIdCreated(): string {\n    return this._userIdCreated;\n  }\n  set userIdCreated(value: string) {\n    this._userIdCreated = value;\n  }\n  get userIdCancelled(): string {\n    return this._userIdCancelled;\n  }\n  set userIdCancelled(value: string) {\n    this._userIdCancelled = value;\n  }\n  get projectParent(): string {\n    return this._projectParent;\n  }\n  set projectParent(value: string) {\n    this._projectParent = value;\n  }\n  get operationType(): OperationMetadata.OperationType {\n    return this._operationType;\n  }\n  set operationType(value: OperationMetadata.OperationType) {\n    this._operationType = value;\n  }\n  get hostName(): string {\n    return this._hostName;\n  }\n  set hostName(value: string) {\n    this._hostName = value;\n  }\n  get numReruns(): number {\n    return this._numReruns;\n  }\n  set numReruns(value: number) {\n    this._numReruns = value;\n  }\n  get maxNumReruns(): number {\n    return this._maxNumReruns;\n  }\n  set maxNumReruns(value: number) {\n    this._maxNumReruns = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get log(): string[] {\n    return this._log;\n  }\n  set log(value: string[]) {\n    this._log = value;\n  }\n  get logLimit(): number {\n    return this._logLimit;\n  }\n  set logLimit(value: number) {\n    this._logLimit = value;\n  }\n  get createdAt(): googleProtobuf000.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf000.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf000.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf000.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    OperationMetadata.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): OperationMetadata.AsObject {\n    return {\n      status: this.status,\n      parentOperationName: this.parentOperationName,\n      subOperationNames: (this.subOperationNames || []).slice(),\n      createTime: this.createTime ? this.createTime.toObject() : undefined,\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      isCancellationRequested: this.isCancellationRequested,\n      cancelCommand: this.cancelCommand,\n      userIdCreated: this.userIdCreated,\n      userIdCancelled: this.userIdCancelled,\n      projectParent: this.projectParent,\n      operationType: this.operationType,\n      hostName: this.hostName,\n      numReruns: this.numReruns,\n      maxNumReruns: this.maxNumReruns,\n      description: this.description,\n      log: (this.log || []).slice(),\n      logLimit: this.logLimit,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): OperationMetadata.AsProtobufJSON {\n    return {\n      status:\n        OperationMetadata.Status[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      parentOperationName: this.parentOperationName,\n      subOperationNames: (this.subOperationNames || []).slice(),\n      createTime: this.createTime\n        ? this.createTime.toProtobufJSON(options)\n        : null,\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      isCancellationRequested: this.isCancellationRequested,\n      cancelCommand: this.cancelCommand,\n      userIdCreated: this.userIdCreated,\n      userIdCancelled: this.userIdCancelled,\n      projectParent: this.projectParent,\n      operationType:\n        OperationMetadata.OperationType[\n          this.operationType === null || this.operationType === undefined\n            ? 0\n            : this.operationType\n        ],\n      hostName: this.hostName,\n      numReruns: this.numReruns,\n      maxNumReruns: this.maxNumReruns,\n      description: this.description,\n      log: (this.log || []).slice(),\n      logLimit: this.logLimit,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy\n    };\n  }\n}\nexport module OperationMetadata {\n  /**\n   * Standard JavaScript object representation for OperationMetadata\n   */\n  export interface AsObject {\n    status: OperationMetadata.Status;\n    parentOperationName: string;\n    subOperationNames: string[];\n    createTime?: googleProtobuf000.Timestamp.AsObject;\n    startTime?: googleProtobuf000.Timestamp.AsObject;\n    endTime?: googleProtobuf000.Timestamp.AsObject;\n    isCancellationRequested: boolean;\n    cancelCommand: string;\n    userIdCreated: string;\n    userIdCancelled: string;\n    projectParent: string;\n    operationType: OperationMetadata.OperationType;\n    hostName: string;\n    numReruns: number;\n    maxNumReruns: number;\n    description: string;\n    log: string[];\n    logLimit: number;\n    createdAt?: googleProtobuf000.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf000.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n  }\n\n  /**\n   * Protobuf JSON representation for OperationMetadata\n   */\n  export interface AsProtobufJSON {\n    status: string;\n    parentOperationName: string;\n    subOperationNames: string[];\n    createTime: googleProtobuf000.Timestamp.AsProtobufJSON | null;\n    startTime: googleProtobuf000.Timestamp.AsProtobufJSON | null;\n    endTime: googleProtobuf000.Timestamp.AsProtobufJSON | null;\n    isCancellationRequested: boolean;\n    cancelCommand: string;\n    userIdCreated: string;\n    userIdCancelled: string;\n    projectParent: string;\n    operationType: string;\n    hostName: string;\n    numReruns: number;\n    maxNumReruns: number;\n    description: string;\n    log: string[];\n    logLimit: number;\n    createdAt: googleProtobuf000.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf000.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n  }\n  export enum Status {\n    STATUS_UNSPECIFIED = 0,\n    NOT_STARTED = 1,\n    IN_PROGRESS = 2,\n    DONE = 3,\n    CANCELLED = 4,\n    FAILED = 5\n  }\n  export enum OperationType {\n    OPERATION_TYPE_UNSPECIFIED = 0,\n    CREATE_AGENT = 1,\n    IMPORT_AGENT = 2,\n    EXPORT_AGENT = 3,\n    DELETE_AGENT = 4,\n    RESTORE_AGENT = 5,\n    BUILD_AGENT_CACHE = 6,\n    TRAIN_AGENT = 7,\n    EXPORT_BENCHMARK_AGENT = 8,\n    INDEX_AGENT = 9,\n    RUN_RAG_CRAWLER = 10,\n    ADD_RAG_CRAWLER_RESULT_TO_DATASET = 11,\n    REMOVE_RAG_CRAWLER_RESULT_FROM_DATASET = 12,\n    CHANGE_DATASET_EMBEDDING_MODEL = 13\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleApi006 from '../../google/api/annotations.pb';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleRpc008 from '../../google/rpc/status.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nexport enum RemoteOperationContainerLifecycleState {\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_UNSPECIFIED = 0,\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_NOT_FOUND = 1,\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_CREATED = 2,\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_RUNNING = 3,\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_PAUSED = 4,\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_RESTARTING = 5,\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_EXITED = 6,\n  REMOTE_OPERATION_CONTAINER_LIFECYCLE_STATE_DEAD = 7\n}\n/**\n * Message implementation for ondewo.nlu.Operation\n */\nexport class Operation implements GrpcMessage {\n  static id = 'ondewo.nlu.Operation';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Operation();\n    Operation.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Operation) {\n    _instance.name = _instance.name || '';\n    _instance.metadata = _instance.metadata || undefined;\n    _instance.done = _instance.done || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: Operation,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.metadata = new ondewoNlu009.OperationMetadata();\n          _reader.readMessage(\n            _instance.metadata,\n            ondewoNlu009.OperationMetadata.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.done = _reader.readBool();\n          break;\n        case 4:\n          _instance.error = new googleRpc008.Status();\n          _reader.readMessage(\n            _instance.error,\n            googleRpc008.Status.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.response = new googleProtobuf002.Any();\n          _reader.readMessage(\n            _instance.response,\n            googleProtobuf002.Any.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Operation.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Operation, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.metadata) {\n      _writer.writeMessage(\n        2,\n        _instance.metadata as any,\n        ondewoNlu009.OperationMetadata.serializeBinaryToWriter\n      );\n    }\n    if (_instance.done) {\n      _writer.writeBool(3, _instance.done);\n    }\n    if (_instance.error) {\n      _writer.writeMessage(\n        4,\n        _instance.error as any,\n        googleRpc008.Status.serializeBinaryToWriter\n      );\n    }\n    if (_instance.response) {\n      _writer.writeMessage(\n        5,\n        _instance.response as any,\n        googleProtobuf002.Any.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _metadata?: ondewoNlu009.OperationMetadata;\n  private _done: boolean;\n  private _error?: googleRpc008.Status;\n  private _response?: googleProtobuf002.Any;\n\n  private _result: Operation.ResultCase = Operation.ResultCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Operation to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Operation.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.metadata = _value.metadata\n      ? new ondewoNlu009.OperationMetadata(_value.metadata)\n      : undefined;\n    this.done = _value.done;\n    this.error = _value.error\n      ? new googleRpc008.Status(_value.error)\n      : undefined;\n    this.response = _value.response\n      ? new googleProtobuf002.Any(_value.response)\n      : undefined;\n    Operation.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get metadata(): ondewoNlu009.OperationMetadata | undefined {\n    return this._metadata;\n  }\n  set metadata(value: ondewoNlu009.OperationMetadata | undefined) {\n    this._metadata = value;\n  }\n  get done(): boolean {\n    return this._done;\n  }\n  set done(value: boolean) {\n    this._done = value;\n  }\n  get error(): googleRpc008.Status | undefined {\n    return this._error;\n  }\n  set error(value: googleRpc008.Status | undefined) {\n    if (value !== undefined && value !== null) {\n      this._response = undefined;\n      this._result = Operation.ResultCase.error;\n    }\n    this._error = value;\n  }\n  get response(): googleProtobuf002.Any | undefined {\n    return this._response;\n  }\n  set response(value: googleProtobuf002.Any | undefined) {\n    if (value !== undefined && value !== null) {\n      this._error = undefined;\n      this._result = Operation.ResultCase.response;\n    }\n    this._response = value;\n  }\n  get result() {\n    return this._result;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Operation.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Operation.AsObject {\n    return {\n      name: this.name,\n      metadata: this.metadata ? this.metadata.toObject() : undefined,\n      done: this.done,\n      error: this.error ? this.error.toObject() : undefined,\n      response: this.response ? this.response.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Operation.AsProtobufJSON {\n    return {\n      name: this.name,\n      metadata: this.metadata ? this.metadata.toProtobufJSON(options) : null,\n      done: this.done,\n      error: this.error ? this.error.toProtobufJSON(options) : null,\n      response: this.response ? this.response.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module Operation {\n  /**\n   * Standard JavaScript object representation for Operation\n   */\n  export interface AsObject {\n    name: string;\n    metadata?: ondewoNlu009.OperationMetadata.AsObject;\n    done: boolean;\n    error?: googleRpc008.Status.AsObject;\n    response?: googleProtobuf002.Any.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for Operation\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    metadata: ondewoNlu009.OperationMetadata.AsProtobufJSON | null;\n    done: boolean;\n    error: googleRpc008.Status.AsProtobufJSON | null;\n    response: googleProtobuf002.Any.AsProtobufJSON | null;\n  }\n  export enum ResultCase {\n    none = 0,\n    error = 1,\n    response = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetOperationRequest\n */\nexport class GetOperationRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetOperationRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetOperationRequest();\n    GetOperationRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetOperationRequest) {\n    _instance.name = _instance.name || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetOperationRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetOperationRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetOperationRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetOperationRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetOperationRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    GetOperationRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetOperationRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetOperationRequest.AsObject {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetOperationRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetOperationRequest {\n  /**\n   * Standard JavaScript object representation for GetOperationRequest\n   */\n  export interface AsObject {\n    name: string;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetOperationRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListOperationsRequest\n */\nexport class ListOperationsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListOperationsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListOperationsRequest();\n    ListOperationsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListOperationsRequest) {\n    _instance.name = _instance.name || '';\n    _instance.filter = _instance.filter || '';\n    _instance.pageSize = _instance.pageSize || 0;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.operationFilter = _instance.operationFilter || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListOperationsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 4:\n          _instance.name = _reader.readString();\n          break;\n        case 1:\n          _instance.filter = _reader.readString();\n          break;\n        case 2:\n          _instance.pageSize = _reader.readInt32();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.operationFilter = new OperationFilter();\n          _reader.readMessage(\n            _instance.operationFilter,\n            OperationFilter.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListOperationsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListOperationsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(4, _instance.name);\n    }\n    if (_instance.filter) {\n      _writer.writeString(1, _instance.filter);\n    }\n    if (_instance.pageSize) {\n      _writer.writeInt32(2, _instance.pageSize);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n    if (_instance.operationFilter) {\n      _writer.writeMessage(\n        5,\n        _instance.operationFilter as any,\n        OperationFilter.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _filter: string;\n  private _pageSize: number;\n  private _pageToken: string;\n  private _operationFilter?: OperationFilter;\n  private _fieldMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListOperationsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListOperationsRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.filter = _value.filter;\n    this.pageSize = _value.pageSize;\n    this.pageToken = _value.pageToken;\n    this.operationFilter = _value.operationFilter\n      ? new OperationFilter(_value.operationFilter)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf004.FieldMask(_value.fieldMask)\n      : undefined;\n    ListOperationsRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get filter(): string {\n    return this._filter;\n  }\n  set filter(value: string) {\n    this._filter = value;\n  }\n  get pageSize(): number {\n    return this._pageSize;\n  }\n  set pageSize(value: number) {\n    this._pageSize = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get operationFilter(): OperationFilter | undefined {\n    return this._operationFilter;\n  }\n  set operationFilter(value: OperationFilter | undefined) {\n    this._operationFilter = value;\n  }\n  get fieldMask(): googleProtobuf004.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListOperationsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListOperationsRequest.AsObject {\n    return {\n      name: this.name,\n      filter: this.filter,\n      pageSize: this.pageSize,\n      pageToken: this.pageToken,\n      operationFilter: this.operationFilter\n        ? this.operationFilter.toObject()\n        : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListOperationsRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      filter: this.filter,\n      pageSize: this.pageSize,\n      pageToken: this.pageToken,\n      operationFilter: this.operationFilter\n        ? this.operationFilter.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListOperationsRequest {\n  /**\n   * Standard JavaScript object representation for ListOperationsRequest\n   */\n  export interface AsObject {\n    name: string;\n    filter: string;\n    pageSize: number;\n    pageToken: string;\n    operationFilter?: OperationFilter.AsObject;\n    fieldMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListOperationsRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    filter: string;\n    pageSize: number;\n    pageToken: string;\n    operationFilter: OperationFilter.AsProtobufJSON | null;\n    fieldMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.OperationFilter\n */\nexport class OperationFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.OperationFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new OperationFilter();\n    OperationFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: OperationFilter) {\n    _instance.projectParents = _instance.projectParents || [];\n    _instance.statuses = _instance.statuses || [];\n    _instance.types = _instance.types || [];\n\n    _instance.userIds = _instance.userIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: OperationFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.projectParents = _instance.projectParents || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _reader.readPackableEnumInto(\n            (_instance.statuses = _instance.statuses || [])\n          );\n          break;\n        case 3:\n          _reader.readPackableEnumInto(\n            (_instance.types = _instance.types || [])\n          );\n          break;\n        case 4:\n          _instance.startTime = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.endTime = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          (_instance.userIds = _instance.userIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    OperationFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: OperationFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.projectParents && _instance.projectParents.length) {\n      _writer.writeRepeatedString(1, _instance.projectParents);\n    }\n    if (_instance.statuses && _instance.statuses.length) {\n      _writer.writePackedEnum(2, _instance.statuses);\n    }\n    if (_instance.types && _instance.types.length) {\n      _writer.writePackedEnum(3, _instance.types);\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        4,\n        _instance.startTime as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        5,\n        _instance.endTime as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.userIds && _instance.userIds.length) {\n      _writer.writeRepeatedString(6, _instance.userIds);\n    }\n  }\n\n  private _projectParents: string[];\n  private _statuses: ondewoNlu009.OperationMetadata.Status[];\n  private _types: ondewoNlu009.OperationMetadata.OperationType[];\n  private _startTime?: googleProtobuf003.Timestamp;\n  private _endTime?: googleProtobuf003.Timestamp;\n  private _userIds: string[];\n\n  private _startTimeOneof: OperationFilter.StartTimeOneofCase =\n    OperationFilter.StartTimeOneofCase.none;\n  private _endTimeOneof: OperationFilter.EndTimeOneofCase =\n    OperationFilter.EndTimeOneofCase.none;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of OperationFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<OperationFilter.AsObject>) {\n    _value = _value || {};\n    this.projectParents = (_value.projectParents || []).slice();\n    this.statuses = (_value.statuses || []).slice();\n    this.types = (_value.types || []).slice();\n    this.startTime = _value.startTime\n      ? new googleProtobuf003.Timestamp(_value.startTime)\n      : undefined;\n    this.endTime = _value.endTime\n      ? new googleProtobuf003.Timestamp(_value.endTime)\n      : undefined;\n    this.userIds = (_value.userIds || []).slice();\n    OperationFilter.refineValues(this);\n  }\n  get projectParents(): string[] {\n    return this._projectParents;\n  }\n  set projectParents(value: string[]) {\n    this._projectParents = value;\n  }\n  get statuses(): ondewoNlu009.OperationMetadata.Status[] {\n    return this._statuses;\n  }\n  set statuses(value: ondewoNlu009.OperationMetadata.Status[]) {\n    this._statuses = value;\n  }\n  get types(): ondewoNlu009.OperationMetadata.OperationType[] {\n    return this._types;\n  }\n  set types(value: ondewoNlu009.OperationMetadata.OperationType[]) {\n    this._types = value;\n  }\n  get startTime(): googleProtobuf003.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf003.Timestamp | undefined) {\n    if (value !== undefined && value !== null) {\n      this._startTimeOneof = OperationFilter.StartTimeOneofCase.startTime;\n    }\n    this._startTime = value;\n  }\n  get endTime(): googleProtobuf003.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf003.Timestamp | undefined) {\n    if (value !== undefined && value !== null) {\n      this._endTimeOneof = OperationFilter.EndTimeOneofCase.endTime;\n    }\n    this._endTime = value;\n  }\n  get userIds(): string[] {\n    return this._userIds;\n  }\n  set userIds(value: string[]) {\n    this._userIds = value;\n  }\n  get startTimeOneof() {\n    return this._startTimeOneof;\n  }\n  get endTimeOneof() {\n    return this._endTimeOneof;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    OperationFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): OperationFilter.AsObject {\n    return {\n      projectParents: (this.projectParents || []).slice(),\n      statuses: (this.statuses || []).slice(),\n      types: (this.types || []).slice(),\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      userIds: (this.userIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): OperationFilter.AsProtobufJSON {\n    return {\n      projectParents: (this.projectParents || []).slice(),\n      statuses: (this.statuses || []).map(\n        v => ondewoNlu009.OperationMetadata.Status[v]\n      ),\n      types: (this.types || []).map(\n        v => ondewoNlu009.OperationMetadata.OperationType[v]\n      ),\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      userIds: (this.userIds || []).slice()\n    };\n  }\n}\nexport module OperationFilter {\n  /**\n   * Standard JavaScript object representation for OperationFilter\n   */\n  export interface AsObject {\n    projectParents: string[];\n    statuses: ondewoNlu009.OperationMetadata.Status[];\n    types: ondewoNlu009.OperationMetadata.OperationType[];\n    startTime?: googleProtobuf003.Timestamp.AsObject;\n    endTime?: googleProtobuf003.Timestamp.AsObject;\n    userIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for OperationFilter\n   */\n  export interface AsProtobufJSON {\n    projectParents: string[];\n    statuses: string[];\n    types: string[];\n    startTime: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    endTime: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    userIds: string[];\n  }\n  export enum StartTimeOneofCase {\n    none = 0,\n    startTime = 1\n  }\n  export enum EndTimeOneofCase {\n    none = 0,\n    endTime = 1\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListOperationsResponse\n */\nexport class ListOperationsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListOperationsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListOperationsResponse();\n    ListOperationsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListOperationsResponse) {\n    _instance.operations = _instance.operations || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListOperationsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Operation();\n          _reader.readMessage(\n            messageInitializer1,\n            Operation.deserializeBinaryFromReader\n          );\n          (_instance.operations = _instance.operations || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListOperationsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListOperationsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.operations && _instance.operations.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.operations as any,\n        Operation.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _operations?: Operation[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListOperationsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListOperationsResponse.AsObject>) {\n    _value = _value || {};\n    this.operations = (_value.operations || []).map(m => new Operation(m));\n    this.nextPageToken = _value.nextPageToken;\n    ListOperationsResponse.refineValues(this);\n  }\n  get operations(): Operation[] | undefined {\n    return this._operations;\n  }\n  set operations(value: Operation[] | undefined) {\n    this._operations = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListOperationsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListOperationsResponse.AsObject {\n    return {\n      operations: (this.operations || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListOperationsResponse.AsProtobufJSON {\n    return {\n      operations: (this.operations || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListOperationsResponse {\n  /**\n   * Standard JavaScript object representation for ListOperationsResponse\n   */\n  export interface AsObject {\n    operations?: Operation.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListOperationsResponse\n   */\n  export interface AsProtobufJSON {\n    operations: Operation.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CancelOperationRequest\n */\nexport class CancelOperationRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CancelOperationRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CancelOperationRequest();\n    CancelOperationRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CancelOperationRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CancelOperationRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CancelOperationRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CancelOperationRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CancelOperationRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CancelOperationRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    CancelOperationRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CancelOperationRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CancelOperationRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CancelOperationRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module CancelOperationRequest {\n  /**\n   * Standard JavaScript object representation for CancelOperationRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CancelOperationRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteOperationRequest\n */\nexport class DeleteOperationRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteOperationRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteOperationRequest();\n    DeleteOperationRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteOperationRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteOperationRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteOperationRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteOperationRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteOperationRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DeleteOperationRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteOperationRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteOperationRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteOperationRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteOperationRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteOperationRequest {\n  /**\n   * Standard JavaScript object representation for DeleteOperationRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteOperationRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StreamRemoteOperationContainerLogsRequest\n */\nexport class StreamRemoteOperationContainerLogsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.StreamRemoteOperationContainerLogsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StreamRemoteOperationContainerLogsRequest();\n    StreamRemoteOperationContainerLogsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StreamRemoteOperationContainerLogsRequest) {\n    _instance.name = _instance.name || '';\n    _instance.minLogLevel = _instance.minLogLevel || 0;\n    _instance.tailLines = _instance.tailLines || 0;\n    _instance.containerId = _instance.containerId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StreamRemoteOperationContainerLogsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.minLogLevel = _reader.readEnum();\n          break;\n        case 3:\n          _instance.tailLines = _reader.readInt32();\n          break;\n        case 4:\n          _instance.containerId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StreamRemoteOperationContainerLogsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StreamRemoteOperationContainerLogsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.minLogLevel) {\n      _writer.writeEnum(2, _instance.minLogLevel);\n    }\n    if (_instance.tailLines) {\n      _writer.writeInt32(3, _instance.tailLines);\n    }\n    if (_instance.containerId) {\n      _writer.writeString(4, _instance.containerId);\n    }\n  }\n\n  private _name: string;\n  private _minLogLevel: ondewoNlu010.LogSeverity;\n  private _tailLines: number;\n  private _containerId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StreamRemoteOperationContainerLogsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      StreamRemoteOperationContainerLogsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.minLogLevel = _value.minLogLevel;\n    this.tailLines = _value.tailLines;\n    this.containerId = _value.containerId;\n    StreamRemoteOperationContainerLogsRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get minLogLevel(): ondewoNlu010.LogSeverity {\n    return this._minLogLevel;\n  }\n  set minLogLevel(value: ondewoNlu010.LogSeverity) {\n    this._minLogLevel = value;\n  }\n  get tailLines(): number {\n    return this._tailLines;\n  }\n  set tailLines(value: number) {\n    this._tailLines = value;\n  }\n  get containerId(): string {\n    return this._containerId;\n  }\n  set containerId(value: string) {\n    this._containerId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StreamRemoteOperationContainerLogsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StreamRemoteOperationContainerLogsRequest.AsObject {\n    return {\n      name: this.name,\n      minLogLevel: this.minLogLevel,\n      tailLines: this.tailLines,\n      containerId: this.containerId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StreamRemoteOperationContainerLogsRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      minLogLevel:\n        ondewoNlu010.LogSeverity[\n          this.minLogLevel === null || this.minLogLevel === undefined\n            ? 0\n            : this.minLogLevel\n        ],\n      tailLines: this.tailLines,\n      containerId: this.containerId\n    };\n  }\n}\nexport module StreamRemoteOperationContainerLogsRequest {\n  /**\n   * Standard JavaScript object representation for StreamRemoteOperationContainerLogsRequest\n   */\n  export interface AsObject {\n    name: string;\n    minLogLevel: ondewoNlu010.LogSeverity;\n    tailLines: number;\n    containerId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for StreamRemoteOperationContainerLogsRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    minLogLevel: string;\n    tailLines: number;\n    containerId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetRemoteOperationContainerLogsRequest\n */\nexport class GetRemoteOperationContainerLogsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetRemoteOperationContainerLogsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetRemoteOperationContainerLogsRequest();\n    GetRemoteOperationContainerLogsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetRemoteOperationContainerLogsRequest) {\n    _instance.name = _instance.name || '';\n    _instance.minLogLevel = _instance.minLogLevel || 0;\n    _instance.startTime = _instance.startTime || undefined;\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.maxLines = _instance.maxLines || 0;\n    _instance.regex = _instance.regex || '';\n    _instance.containerId = _instance.containerId || '';\n    _instance.beforeSeq = _instance.beforeSeq || '0';\n    _instance.afterSeq = _instance.afterSeq || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetRemoteOperationContainerLogsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.minLogLevel = _reader.readEnum();\n          break;\n        case 3:\n          _instance.startTime = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.endTime = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.maxLines = _reader.readInt32();\n          break;\n        case 6:\n          _instance.regex = _reader.readString();\n          break;\n        case 7:\n          _instance.containerId = _reader.readString();\n          break;\n        case 8:\n          _instance.beforeSeq = _reader.readInt64String();\n          break;\n        case 9:\n          _instance.afterSeq = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetRemoteOperationContainerLogsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetRemoteOperationContainerLogsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.minLogLevel) {\n      _writer.writeEnum(2, _instance.minLogLevel);\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        3,\n        _instance.startTime as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        4,\n        _instance.endTime as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.maxLines) {\n      _writer.writeInt32(5, _instance.maxLines);\n    }\n    if (_instance.regex) {\n      _writer.writeString(6, _instance.regex);\n    }\n    if (_instance.containerId) {\n      _writer.writeString(7, _instance.containerId);\n    }\n    if (_instance.beforeSeq) {\n      _writer.writeInt64String(8, _instance.beforeSeq);\n    }\n    if (_instance.afterSeq) {\n      _writer.writeInt64String(9, _instance.afterSeq);\n    }\n  }\n\n  private _name: string;\n  private _minLogLevel: ondewoNlu010.LogSeverity;\n  private _startTime?: googleProtobuf003.Timestamp;\n  private _endTime?: googleProtobuf003.Timestamp;\n  private _maxLines: number;\n  private _regex: string;\n  private _containerId: string;\n  private _beforeSeq: string;\n  private _afterSeq: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetRemoteOperationContainerLogsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetRemoteOperationContainerLogsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.minLogLevel = _value.minLogLevel;\n    this.startTime = _value.startTime\n      ? new googleProtobuf003.Timestamp(_value.startTime)\n      : undefined;\n    this.endTime = _value.endTime\n      ? new googleProtobuf003.Timestamp(_value.endTime)\n      : undefined;\n    this.maxLines = _value.maxLines;\n    this.regex = _value.regex;\n    this.containerId = _value.containerId;\n    this.beforeSeq = _value.beforeSeq;\n    this.afterSeq = _value.afterSeq;\n    GetRemoteOperationContainerLogsRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get minLogLevel(): ondewoNlu010.LogSeverity {\n    return this._minLogLevel;\n  }\n  set minLogLevel(value: ondewoNlu010.LogSeverity) {\n    this._minLogLevel = value;\n  }\n  get startTime(): googleProtobuf003.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf003.Timestamp | undefined) {\n    this._startTime = value;\n  }\n  get endTime(): googleProtobuf003.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf003.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get maxLines(): number {\n    return this._maxLines;\n  }\n  set maxLines(value: number) {\n    this._maxLines = value;\n  }\n  get regex(): string {\n    return this._regex;\n  }\n  set regex(value: string) {\n    this._regex = value;\n  }\n  get containerId(): string {\n    return this._containerId;\n  }\n  set containerId(value: string) {\n    this._containerId = value;\n  }\n  get beforeSeq(): string {\n    return this._beforeSeq;\n  }\n  set beforeSeq(value: string) {\n    this._beforeSeq = value;\n  }\n  get afterSeq(): string {\n    return this._afterSeq;\n  }\n  set afterSeq(value: string) {\n    this._afterSeq = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetRemoteOperationContainerLogsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetRemoteOperationContainerLogsRequest.AsObject {\n    return {\n      name: this.name,\n      minLogLevel: this.minLogLevel,\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      maxLines: this.maxLines,\n      regex: this.regex,\n      containerId: this.containerId,\n      beforeSeq: this.beforeSeq,\n      afterSeq: this.afterSeq\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetRemoteOperationContainerLogsRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      minLogLevel:\n        ondewoNlu010.LogSeverity[\n          this.minLogLevel === null || this.minLogLevel === undefined\n            ? 0\n            : this.minLogLevel\n        ],\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      maxLines: this.maxLines,\n      regex: this.regex,\n      containerId: this.containerId,\n      beforeSeq: this.beforeSeq,\n      afterSeq: this.afterSeq\n    };\n  }\n}\nexport module GetRemoteOperationContainerLogsRequest {\n  /**\n   * Standard JavaScript object representation for GetRemoteOperationContainerLogsRequest\n   */\n  export interface AsObject {\n    name: string;\n    minLogLevel: ondewoNlu010.LogSeverity;\n    startTime?: googleProtobuf003.Timestamp.AsObject;\n    endTime?: googleProtobuf003.Timestamp.AsObject;\n    maxLines: number;\n    regex: string;\n    containerId: string;\n    beforeSeq: string;\n    afterSeq: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetRemoteOperationContainerLogsRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    minLogLevel: string;\n    startTime: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    endTime: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    maxLines: number;\n    regex: string;\n    containerId: string;\n    beforeSeq: string;\n    afterSeq: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetRemoteOperationContainerLogsResponse\n */\nexport class GetRemoteOperationContainerLogsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetRemoteOperationContainerLogsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetRemoteOperationContainerLogsResponse();\n    GetRemoteOperationContainerLogsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetRemoteOperationContainerLogsResponse) {\n    _instance.logLines = _instance.logLines || [];\n    _instance.truncated = _instance.truncated || false;\n    _instance.minAvailableSeq = _instance.minAvailableSeq || '0';\n    _instance.maxAvailableSeq = _instance.maxAvailableSeq || '0';\n    _instance.hasMoreOlder = _instance.hasMoreOlder || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetRemoteOperationContainerLogsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RemoteOperationContainerLogLine();\n          _reader.readMessage(\n            messageInitializer1,\n            RemoteOperationContainerLogLine.deserializeBinaryFromReader\n          );\n          (_instance.logLines = _instance.logLines || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.truncated = _reader.readBool();\n          break;\n        case 3:\n          _instance.minAvailableSeq = _reader.readInt64String();\n          break;\n        case 4:\n          _instance.maxAvailableSeq = _reader.readInt64String();\n          break;\n        case 5:\n          _instance.hasMoreOlder = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetRemoteOperationContainerLogsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetRemoteOperationContainerLogsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.logLines && _instance.logLines.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.logLines as any,\n        RemoteOperationContainerLogLine.serializeBinaryToWriter\n      );\n    }\n    if (_instance.truncated) {\n      _writer.writeBool(2, _instance.truncated);\n    }\n    if (_instance.minAvailableSeq) {\n      _writer.writeInt64String(3, _instance.minAvailableSeq);\n    }\n    if (_instance.maxAvailableSeq) {\n      _writer.writeInt64String(4, _instance.maxAvailableSeq);\n    }\n    if (_instance.hasMoreOlder) {\n      _writer.writeBool(5, _instance.hasMoreOlder);\n    }\n  }\n\n  private _logLines?: RemoteOperationContainerLogLine[];\n  private _truncated: boolean;\n  private _minAvailableSeq: string;\n  private _maxAvailableSeq: string;\n  private _hasMoreOlder: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetRemoteOperationContainerLogsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetRemoteOperationContainerLogsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.logLines = (_value.logLines || []).map(\n      m => new RemoteOperationContainerLogLine(m)\n    );\n    this.truncated = _value.truncated;\n    this.minAvailableSeq = _value.minAvailableSeq;\n    this.maxAvailableSeq = _value.maxAvailableSeq;\n    this.hasMoreOlder = _value.hasMoreOlder;\n    GetRemoteOperationContainerLogsResponse.refineValues(this);\n  }\n  get logLines(): RemoteOperationContainerLogLine[] | undefined {\n    return this._logLines;\n  }\n  set logLines(value: RemoteOperationContainerLogLine[] | undefined) {\n    this._logLines = value;\n  }\n  get truncated(): boolean {\n    return this._truncated;\n  }\n  set truncated(value: boolean) {\n    this._truncated = value;\n  }\n  get minAvailableSeq(): string {\n    return this._minAvailableSeq;\n  }\n  set minAvailableSeq(value: string) {\n    this._minAvailableSeq = value;\n  }\n  get maxAvailableSeq(): string {\n    return this._maxAvailableSeq;\n  }\n  set maxAvailableSeq(value: string) {\n    this._maxAvailableSeq = value;\n  }\n  get hasMoreOlder(): boolean {\n    return this._hasMoreOlder;\n  }\n  set hasMoreOlder(value: boolean) {\n    this._hasMoreOlder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetRemoteOperationContainerLogsResponse.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetRemoteOperationContainerLogsResponse.AsObject {\n    return {\n      logLines: (this.logLines || []).map(m => m.toObject()),\n      truncated: this.truncated,\n      minAvailableSeq: this.minAvailableSeq,\n      maxAvailableSeq: this.maxAvailableSeq,\n      hasMoreOlder: this.hasMoreOlder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetRemoteOperationContainerLogsResponse.AsProtobufJSON {\n    return {\n      logLines: (this.logLines || []).map(m => m.toProtobufJSON(options)),\n      truncated: this.truncated,\n      minAvailableSeq: this.minAvailableSeq,\n      maxAvailableSeq: this.maxAvailableSeq,\n      hasMoreOlder: this.hasMoreOlder\n    };\n  }\n}\nexport module GetRemoteOperationContainerLogsResponse {\n  /**\n   * Standard JavaScript object representation for GetRemoteOperationContainerLogsResponse\n   */\n  export interface AsObject {\n    logLines?: RemoteOperationContainerLogLine.AsObject[];\n    truncated: boolean;\n    minAvailableSeq: string;\n    maxAvailableSeq: string;\n    hasMoreOlder: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for GetRemoteOperationContainerLogsResponse\n   */\n  export interface AsProtobufJSON {\n    logLines: RemoteOperationContainerLogLine.AsProtobufJSON[] | null;\n    truncated: boolean;\n    minAvailableSeq: string;\n    maxAvailableSeq: string;\n    hasMoreOlder: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RemoteOperationContainerLogLine\n */\nexport class RemoteOperationContainerLogLine implements GrpcMessage {\n  static id = 'ondewo.nlu.RemoteOperationContainerLogLine';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RemoteOperationContainerLogLine();\n    RemoteOperationContainerLogLine.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RemoteOperationContainerLogLine) {\n    _instance.timestamp = _instance.timestamp || undefined;\n    _instance.level = _instance.level || 0;\n    _instance.message = _instance.message || '';\n    _instance.containerId = _instance.containerId || '';\n    _instance.containerName = _instance.containerName || '';\n    _instance.seq = _instance.seq || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RemoteOperationContainerLogLine,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.timestamp = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.timestamp,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.level = _reader.readEnum();\n          break;\n        case 3:\n          _instance.message = _reader.readString();\n          break;\n        case 4:\n          _instance.containerId = _reader.readString();\n          break;\n        case 5:\n          _instance.containerName = _reader.readString();\n          break;\n        case 6:\n          _instance.seq = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RemoteOperationContainerLogLine.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RemoteOperationContainerLogLine,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.timestamp) {\n      _writer.writeMessage(\n        1,\n        _instance.timestamp as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.level) {\n      _writer.writeEnum(2, _instance.level);\n    }\n    if (_instance.message) {\n      _writer.writeString(3, _instance.message);\n    }\n    if (_instance.containerId) {\n      _writer.writeString(4, _instance.containerId);\n    }\n    if (_instance.containerName) {\n      _writer.writeString(5, _instance.containerName);\n    }\n    if (_instance.seq) {\n      _writer.writeInt64String(6, _instance.seq);\n    }\n  }\n\n  private _timestamp?: googleProtobuf003.Timestamp;\n  private _level: ondewoNlu010.LogSeverity;\n  private _message: string;\n  private _containerId: string;\n  private _containerName: string;\n  private _seq: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RemoteOperationContainerLogLine to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RemoteOperationContainerLogLine.AsObject>\n  ) {\n    _value = _value || {};\n    this.timestamp = _value.timestamp\n      ? new googleProtobuf003.Timestamp(_value.timestamp)\n      : undefined;\n    this.level = _value.level;\n    this.message = _value.message;\n    this.containerId = _value.containerId;\n    this.containerName = _value.containerName;\n    this.seq = _value.seq;\n    RemoteOperationContainerLogLine.refineValues(this);\n  }\n  get timestamp(): googleProtobuf003.Timestamp | undefined {\n    return this._timestamp;\n  }\n  set timestamp(value: googleProtobuf003.Timestamp | undefined) {\n    this._timestamp = value;\n  }\n  get level(): ondewoNlu010.LogSeverity {\n    return this._level;\n  }\n  set level(value: ondewoNlu010.LogSeverity) {\n    this._level = value;\n  }\n  get message(): string {\n    return this._message;\n  }\n  set message(value: string) {\n    this._message = value;\n  }\n  get containerId(): string {\n    return this._containerId;\n  }\n  set containerId(value: string) {\n    this._containerId = value;\n  }\n  get containerName(): string {\n    return this._containerName;\n  }\n  set containerName(value: string) {\n    this._containerName = value;\n  }\n  get seq(): string {\n    return this._seq;\n  }\n  set seq(value: string) {\n    this._seq = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RemoteOperationContainerLogLine.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RemoteOperationContainerLogLine.AsObject {\n    return {\n      timestamp: this.timestamp ? this.timestamp.toObject() : undefined,\n      level: this.level,\n      message: this.message,\n      containerId: this.containerId,\n      containerName: this.containerName,\n      seq: this.seq\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RemoteOperationContainerLogLine.AsProtobufJSON {\n    return {\n      timestamp: this.timestamp ? this.timestamp.toProtobufJSON(options) : null,\n      level:\n        ondewoNlu010.LogSeverity[\n          this.level === null || this.level === undefined ? 0 : this.level\n        ],\n      message: this.message,\n      containerId: this.containerId,\n      containerName: this.containerName,\n      seq: this.seq\n    };\n  }\n}\nexport module RemoteOperationContainerLogLine {\n  /**\n   * Standard JavaScript object representation for RemoteOperationContainerLogLine\n   */\n  export interface AsObject {\n    timestamp?: googleProtobuf003.Timestamp.AsObject;\n    level: ondewoNlu010.LogSeverity;\n    message: string;\n    containerId: string;\n    containerName: string;\n    seq: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RemoteOperationContainerLogLine\n   */\n  export interface AsProtobufJSON {\n    timestamp: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    level: string;\n    message: string;\n    containerId: string;\n    containerName: string;\n    seq: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetRemoteOperationContainerStatusRequest\n */\nexport class GetRemoteOperationContainerStatusRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetRemoteOperationContainerStatusRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetRemoteOperationContainerStatusRequest();\n    GetRemoteOperationContainerStatusRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetRemoteOperationContainerStatusRequest) {\n    _instance.name = _instance.name || '';\n    _instance.containerId = _instance.containerId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetRemoteOperationContainerStatusRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.containerId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetRemoteOperationContainerStatusRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetRemoteOperationContainerStatusRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.containerId) {\n      _writer.writeString(2, _instance.containerId);\n    }\n  }\n\n  private _name: string;\n  private _containerId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetRemoteOperationContainerStatusRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetRemoteOperationContainerStatusRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.containerId = _value.containerId;\n    GetRemoteOperationContainerStatusRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get containerId(): string {\n    return this._containerId;\n  }\n  set containerId(value: string) {\n    this._containerId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetRemoteOperationContainerStatusRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetRemoteOperationContainerStatusRequest.AsObject {\n    return {\n      name: this.name,\n      containerId: this.containerId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetRemoteOperationContainerStatusRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      containerId: this.containerId\n    };\n  }\n}\nexport module GetRemoteOperationContainerStatusRequest {\n  /**\n   * Standard JavaScript object representation for GetRemoteOperationContainerStatusRequest\n   */\n  export interface AsObject {\n    name: string;\n    containerId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetRemoteOperationContainerStatusRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    containerId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RemoteOperationContainerStatus\n */\nexport class RemoteOperationContainerStatus implements GrpcMessage {\n  static id = 'ondewo.nlu.RemoteOperationContainerStatus';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RemoteOperationContainerStatus();\n    RemoteOperationContainerStatus.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RemoteOperationContainerStatus) {\n    _instance.name = _instance.name || '';\n    _instance.lifecycleState = _instance.lifecycleState || 0;\n    _instance.hostName = _instance.hostName || '';\n    _instance.containerName = _instance.containerName || '';\n    _instance.containerId = _instance.containerId || '';\n    _instance.exitCode = _instance.exitCode || 0;\n    _instance.oomKilled = _instance.oomKilled || false;\n    _instance.healthStatus = _instance.healthStatus || '';\n    _instance.startedAt = _instance.startedAt || undefined;\n    _instance.finishedAt = _instance.finishedAt || undefined;\n    _instance.observedAt = _instance.observedAt || undefined;\n    _instance.environmentVariables = _instance.environmentVariables || {};\n    _instance.command = _instance.command || [];\n    _instance.memoryLimitBytes = _instance.memoryLimitBytes || '0';\n    _instance.nanoCpus = _instance.nanoCpus || '0';\n    _instance.cpusetCpus = _instance.cpusetCpus || '';\n    _instance.cpuQuota = _instance.cpuQuota || '0';\n    _instance.cpuPeriod = _instance.cpuPeriod || '0';\n    _instance.image = _instance.image || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RemoteOperationContainerStatus,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.lifecycleState = _reader.readEnum();\n          break;\n        case 3:\n          _instance.hostName = _reader.readString();\n          break;\n        case 4:\n          _instance.containerName = _reader.readString();\n          break;\n        case 11:\n          _instance.containerId = _reader.readString();\n          break;\n        case 5:\n          _instance.exitCode = _reader.readInt32();\n          break;\n        case 6:\n          _instance.oomKilled = _reader.readBool();\n          break;\n        case 7:\n          _instance.healthStatus = _reader.readString();\n          break;\n        case 8:\n          _instance.startedAt = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.startedAt,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.finishedAt = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.finishedAt,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.observedAt = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.observedAt,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          const msg_12 = {} as any;\n          _reader.readMessage(\n            msg_12,\n            RemoteOperationContainerStatus.EnvironmentVariablesEntry\n              .deserializeBinaryFromReader\n          );\n          _instance.environmentVariables = _instance.environmentVariables || {};\n          _instance.environmentVariables[msg_12.key] = msg_12.value;\n          break;\n        case 13:\n          (_instance.command = _instance.command || []).push(\n            _reader.readString()\n          );\n          break;\n        case 14:\n          _instance.memoryLimitBytes = _reader.readInt64String();\n          break;\n        case 15:\n          _instance.nanoCpus = _reader.readInt64String();\n          break;\n        case 16:\n          _instance.cpusetCpus = _reader.readString();\n          break;\n        case 17:\n          _instance.cpuQuota = _reader.readInt64String();\n          break;\n        case 18:\n          _instance.cpuPeriod = _reader.readInt64String();\n          break;\n        case 19:\n          _instance.image = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RemoteOperationContainerStatus.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RemoteOperationContainerStatus,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.lifecycleState) {\n      _writer.writeEnum(2, _instance.lifecycleState);\n    }\n    if (_instance.hostName) {\n      _writer.writeString(3, _instance.hostName);\n    }\n    if (_instance.containerName) {\n      _writer.writeString(4, _instance.containerName);\n    }\n    if (_instance.containerId) {\n      _writer.writeString(11, _instance.containerId);\n    }\n    if (_instance.exitCode) {\n      _writer.writeInt32(5, _instance.exitCode);\n    }\n    if (_instance.oomKilled) {\n      _writer.writeBool(6, _instance.oomKilled);\n    }\n    if (_instance.healthStatus) {\n      _writer.writeString(7, _instance.healthStatus);\n    }\n    if (_instance.startedAt) {\n      _writer.writeMessage(\n        8,\n        _instance.startedAt as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.finishedAt) {\n      _writer.writeMessage(\n        9,\n        _instance.finishedAt as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.observedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.observedAt as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (!!_instance.environmentVariables) {\n      const keys_12 = Object.keys(_instance.environmentVariables as any);\n\n      if (keys_12.length) {\n        const repeated_12 = keys_12\n          .map(key => ({\n            key: key,\n            value: (_instance.environmentVariables as any)[key]\n          }))\n          .reduce((r, v) => [...r, v], [] as any[]);\n\n        _writer.writeRepeatedMessage(\n          12,\n          repeated_12,\n          RemoteOperationContainerStatus.EnvironmentVariablesEntry\n            .serializeBinaryToWriter\n        );\n      }\n    }\n    if (_instance.command && _instance.command.length) {\n      _writer.writeRepeatedString(13, _instance.command);\n    }\n    if (_instance.memoryLimitBytes) {\n      _writer.writeInt64String(14, _instance.memoryLimitBytes);\n    }\n    if (_instance.nanoCpus) {\n      _writer.writeInt64String(15, _instance.nanoCpus);\n    }\n    if (_instance.cpusetCpus) {\n      _writer.writeString(16, _instance.cpusetCpus);\n    }\n    if (_instance.cpuQuota) {\n      _writer.writeInt64String(17, _instance.cpuQuota);\n    }\n    if (_instance.cpuPeriod) {\n      _writer.writeInt64String(18, _instance.cpuPeriod);\n    }\n    if (_instance.image) {\n      _writer.writeString(19, _instance.image);\n    }\n  }\n\n  private _name: string;\n  private _lifecycleState: RemoteOperationContainerLifecycleState;\n  private _hostName: string;\n  private _containerName: string;\n  private _containerId: string;\n  private _exitCode: number;\n  private _oomKilled: boolean;\n  private _healthStatus: string;\n  private _startedAt?: googleProtobuf003.Timestamp;\n  private _finishedAt?: googleProtobuf003.Timestamp;\n  private _observedAt?: googleProtobuf003.Timestamp;\n  private _environmentVariables: { [prop: string]: string };\n  private _command: string[];\n  private _memoryLimitBytes: string;\n  private _nanoCpus: string;\n  private _cpusetCpus: string;\n  private _cpuQuota: string;\n  private _cpuPeriod: string;\n  private _image: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RemoteOperationContainerStatus to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RemoteOperationContainerStatus.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.lifecycleState = _value.lifecycleState;\n    this.hostName = _value.hostName;\n    this.containerName = _value.containerName;\n    this.containerId = _value.containerId;\n    this.exitCode = _value.exitCode;\n    this.oomKilled = _value.oomKilled;\n    this.healthStatus = _value.healthStatus;\n    this.startedAt = _value.startedAt\n      ? new googleProtobuf003.Timestamp(_value.startedAt)\n      : undefined;\n    this.finishedAt = _value.finishedAt\n      ? new googleProtobuf003.Timestamp(_value.finishedAt)\n      : undefined;\n    this.observedAt = _value.observedAt\n      ? new googleProtobuf003.Timestamp(_value.observedAt)\n      : undefined;\n    (this.environmentVariables = _value!.environmentVariables\n      ? Object.keys(_value!.environmentVariables).reduce(\n          (r, k) => ({ ...r, [k]: _value!.environmentVariables![k] }),\n          {}\n        )\n      : {}),\n      (this.command = (_value.command || []).slice());\n    this.memoryLimitBytes = _value.memoryLimitBytes;\n    this.nanoCpus = _value.nanoCpus;\n    this.cpusetCpus = _value.cpusetCpus;\n    this.cpuQuota = _value.cpuQuota;\n    this.cpuPeriod = _value.cpuPeriod;\n    this.image = _value.image;\n    RemoteOperationContainerStatus.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get lifecycleState(): RemoteOperationContainerLifecycleState {\n    return this._lifecycleState;\n  }\n  set lifecycleState(value: RemoteOperationContainerLifecycleState) {\n    this._lifecycleState = value;\n  }\n  get hostName(): string {\n    return this._hostName;\n  }\n  set hostName(value: string) {\n    this._hostName = value;\n  }\n  get containerName(): string {\n    return this._containerName;\n  }\n  set containerName(value: string) {\n    this._containerName = value;\n  }\n  get containerId(): string {\n    return this._containerId;\n  }\n  set containerId(value: string) {\n    this._containerId = value;\n  }\n  get exitCode(): number {\n    return this._exitCode;\n  }\n  set exitCode(value: number) {\n    this._exitCode = value;\n  }\n  get oomKilled(): boolean {\n    return this._oomKilled;\n  }\n  set oomKilled(value: boolean) {\n    this._oomKilled = value;\n  }\n  get healthStatus(): string {\n    return this._healthStatus;\n  }\n  set healthStatus(value: string) {\n    this._healthStatus = value;\n  }\n  get startedAt(): googleProtobuf003.Timestamp | undefined {\n    return this._startedAt;\n  }\n  set startedAt(value: googleProtobuf003.Timestamp | undefined) {\n    this._startedAt = value;\n  }\n  get finishedAt(): googleProtobuf003.Timestamp | undefined {\n    return this._finishedAt;\n  }\n  set finishedAt(value: googleProtobuf003.Timestamp | undefined) {\n    this._finishedAt = value;\n  }\n  get observedAt(): googleProtobuf003.Timestamp | undefined {\n    return this._observedAt;\n  }\n  set observedAt(value: googleProtobuf003.Timestamp | undefined) {\n    this._observedAt = value;\n  }\n  get environmentVariables(): { [prop: string]: string } {\n    return this._environmentVariables;\n  }\n  set environmentVariables(value: { [prop: string]: string }) {\n    this._environmentVariables = value;\n  }\n  get command(): string[] {\n    return this._command;\n  }\n  set command(value: string[]) {\n    this._command = value;\n  }\n  get memoryLimitBytes(): string {\n    return this._memoryLimitBytes;\n  }\n  set memoryLimitBytes(value: string) {\n    this._memoryLimitBytes = value;\n  }\n  get nanoCpus(): string {\n    return this._nanoCpus;\n  }\n  set nanoCpus(value: string) {\n    this._nanoCpus = value;\n  }\n  get cpusetCpus(): string {\n    return this._cpusetCpus;\n  }\n  set cpusetCpus(value: string) {\n    this._cpusetCpus = value;\n  }\n  get cpuQuota(): string {\n    return this._cpuQuota;\n  }\n  set cpuQuota(value: string) {\n    this._cpuQuota = value;\n  }\n  get cpuPeriod(): string {\n    return this._cpuPeriod;\n  }\n  set cpuPeriod(value: string) {\n    this._cpuPeriod = value;\n  }\n  get image(): string {\n    return this._image;\n  }\n  set image(value: string) {\n    this._image = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RemoteOperationContainerStatus.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RemoteOperationContainerStatus.AsObject {\n    return {\n      name: this.name,\n      lifecycleState: this.lifecycleState,\n      hostName: this.hostName,\n      containerName: this.containerName,\n      containerId: this.containerId,\n      exitCode: this.exitCode,\n      oomKilled: this.oomKilled,\n      healthStatus: this.healthStatus,\n      startedAt: this.startedAt ? this.startedAt.toObject() : undefined,\n      finishedAt: this.finishedAt ? this.finishedAt.toObject() : undefined,\n      observedAt: this.observedAt ? this.observedAt.toObject() : undefined,\n      environmentVariables: this.environmentVariables\n        ? Object.keys(this.environmentVariables).reduce(\n            (r, k) => ({ ...r, [k]: this.environmentVariables![k] }),\n            {}\n          )\n        : {},\n      command: (this.command || []).slice(),\n      memoryLimitBytes: this.memoryLimitBytes,\n      nanoCpus: this.nanoCpus,\n      cpusetCpus: this.cpusetCpus,\n      cpuQuota: this.cpuQuota,\n      cpuPeriod: this.cpuPeriod,\n      image: this.image\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RemoteOperationContainerStatus.AsProtobufJSON {\n    return {\n      name: this.name,\n      lifecycleState:\n        RemoteOperationContainerLifecycleState[\n          this.lifecycleState === null || this.lifecycleState === undefined\n            ? 0\n            : this.lifecycleState\n        ],\n      hostName: this.hostName,\n      containerName: this.containerName,\n      containerId: this.containerId,\n      exitCode: this.exitCode,\n      oomKilled: this.oomKilled,\n      healthStatus: this.healthStatus,\n      startedAt: this.startedAt ? this.startedAt.toProtobufJSON(options) : null,\n      finishedAt: this.finishedAt\n        ? this.finishedAt.toProtobufJSON(options)\n        : null,\n      observedAt: this.observedAt\n        ? this.observedAt.toProtobufJSON(options)\n        : null,\n      environmentVariables: this.environmentVariables\n        ? Object.keys(this.environmentVariables).reduce(\n            (r, k) => ({ ...r, [k]: this.environmentVariables![k] }),\n            {}\n          )\n        : {},\n      command: (this.command || []).slice(),\n      memoryLimitBytes: this.memoryLimitBytes,\n      nanoCpus: this.nanoCpus,\n      cpusetCpus: this.cpusetCpus,\n      cpuQuota: this.cpuQuota,\n      cpuPeriod: this.cpuPeriod,\n      image: this.image\n    };\n  }\n}\nexport module RemoteOperationContainerStatus {\n  /**\n   * Standard JavaScript object representation for RemoteOperationContainerStatus\n   */\n  export interface AsObject {\n    name: string;\n    lifecycleState: RemoteOperationContainerLifecycleState;\n    hostName: string;\n    containerName: string;\n    containerId: string;\n    exitCode: number;\n    oomKilled: boolean;\n    healthStatus: string;\n    startedAt?: googleProtobuf003.Timestamp.AsObject;\n    finishedAt?: googleProtobuf003.Timestamp.AsObject;\n    observedAt?: googleProtobuf003.Timestamp.AsObject;\n    environmentVariables: { [prop: string]: string };\n    command: string[];\n    memoryLimitBytes: string;\n    nanoCpus: string;\n    cpusetCpus: string;\n    cpuQuota: string;\n    cpuPeriod: string;\n    image: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RemoteOperationContainerStatus\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    lifecycleState: string;\n    hostName: string;\n    containerName: string;\n    containerId: string;\n    exitCode: number;\n    oomKilled: boolean;\n    healthStatus: string;\n    startedAt: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    finishedAt: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    observedAt: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    environmentVariables: { [prop: string]: string };\n    command: string[];\n    memoryLimitBytes: string;\n    nanoCpus: string;\n    cpusetCpus: string;\n    cpuQuota: string;\n    cpuPeriod: string;\n    image: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.RemoteOperationContainerStatus.EnvironmentVariablesEntry\n   */\n  export class EnvironmentVariablesEntry implements GrpcMessage {\n    static id =\n      'ondewo.nlu.RemoteOperationContainerStatus.EnvironmentVariablesEntry';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new EnvironmentVariablesEntry();\n      EnvironmentVariablesEntry.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: EnvironmentVariablesEntry) {\n      _instance.key = _instance.key || '';\n      _instance.value = _instance.value || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: EnvironmentVariablesEntry,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.key = _reader.readString();\n            break;\n          case 2:\n            _instance.value = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      EnvironmentVariablesEntry.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: EnvironmentVariablesEntry,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.key) {\n        _writer.writeString(1, _instance.key);\n      }\n      if (_instance.value) {\n        _writer.writeString(2, _instance.value);\n      }\n    }\n\n    private _key: string;\n    private _value: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of EnvironmentVariablesEntry to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<EnvironmentVariablesEntry.AsObject>) {\n      _value = _value || {};\n      this.key = _value.key;\n      this.value = _value.value;\n      EnvironmentVariablesEntry.refineValues(this);\n    }\n    get key(): string {\n      return this._key;\n    }\n    set key(value: string) {\n      this._key = value;\n    }\n    get value(): string {\n      return this._value;\n    }\n    set value(value: string) {\n      this._value = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      EnvironmentVariablesEntry.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): EnvironmentVariablesEntry.AsObject {\n      return {\n        key: this.key,\n        value: this.value\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): EnvironmentVariablesEntry.AsProtobufJSON {\n      return {\n        key: this.key,\n        value: this.value\n      };\n    }\n  }\n  export module EnvironmentVariablesEntry {\n    /**\n     * Standard JavaScript object representation for EnvironmentVariablesEntry\n     */\n    export interface AsObject {\n      key: string;\n      value: string;\n    }\n\n    /**\n     * Protobuf JSON representation for EnvironmentVariablesEntry\n     */\n    export interface AsProtobufJSON {\n      key: string;\n      value: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RemoteOperationContainer\n */\nexport class RemoteOperationContainer implements GrpcMessage {\n  static id = 'ondewo.nlu.RemoteOperationContainer';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RemoteOperationContainer();\n    RemoteOperationContainer.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RemoteOperationContainer) {\n    _instance.containerId = _instance.containerId || '';\n    _instance.containerName = _instance.containerName || '';\n    _instance.hostName = _instance.hostName || '';\n    _instance.lifecycleState = _instance.lifecycleState || 0;\n    _instance.operationName = _instance.operationName || '';\n    _instance.image = _instance.image || '';\n    _instance.phase = _instance.phase || '';\n    _instance.exitCode = _instance.exitCode || 0;\n    _instance.oomKilled = _instance.oomKilled || false;\n    _instance.startedAt = _instance.startedAt || undefined;\n    _instance.finishedAt = _instance.finishedAt || undefined;\n    _instance.logsAvailable = _instance.logsAvailable || false;\n    _instance.environmentVariables = _instance.environmentVariables || {};\n    _instance.command = _instance.command || [];\n    _instance.memoryLimitBytes = _instance.memoryLimitBytes || '0';\n    _instance.nanoCpus = _instance.nanoCpus || '0';\n    _instance.cpusetCpus = _instance.cpusetCpus || '';\n    _instance.cpuQuota = _instance.cpuQuota || '0';\n    _instance.cpuPeriod = _instance.cpuPeriod || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RemoteOperationContainer,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.containerId = _reader.readString();\n          break;\n        case 2:\n          _instance.containerName = _reader.readString();\n          break;\n        case 3:\n          _instance.hostName = _reader.readString();\n          break;\n        case 4:\n          _instance.lifecycleState = _reader.readEnum();\n          break;\n        case 5:\n          _instance.operationName = _reader.readString();\n          break;\n        case 6:\n          _instance.image = _reader.readString();\n          break;\n        case 7:\n          _instance.phase = _reader.readString();\n          break;\n        case 8:\n          _instance.exitCode = _reader.readInt32();\n          break;\n        case 9:\n          _instance.oomKilled = _reader.readBool();\n          break;\n        case 10:\n          _instance.startedAt = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.startedAt,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.finishedAt = new googleProtobuf003.Timestamp();\n          _reader.readMessage(\n            _instance.finishedAt,\n            googleProtobuf003.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.logsAvailable = _reader.readBool();\n          break;\n        case 13:\n          const msg_13 = {} as any;\n          _reader.readMessage(\n            msg_13,\n            RemoteOperationContainer.EnvironmentVariablesEntry\n              .deserializeBinaryFromReader\n          );\n          _instance.environmentVariables = _instance.environmentVariables || {};\n          _instance.environmentVariables[msg_13.key] = msg_13.value;\n          break;\n        case 14:\n          (_instance.command = _instance.command || []).push(\n            _reader.readString()\n          );\n          break;\n        case 15:\n          _instance.memoryLimitBytes = _reader.readInt64String();\n          break;\n        case 16:\n          _instance.nanoCpus = _reader.readInt64String();\n          break;\n        case 17:\n          _instance.cpusetCpus = _reader.readString();\n          break;\n        case 18:\n          _instance.cpuQuota = _reader.readInt64String();\n          break;\n        case 19:\n          _instance.cpuPeriod = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RemoteOperationContainer.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RemoteOperationContainer,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.containerId) {\n      _writer.writeString(1, _instance.containerId);\n    }\n    if (_instance.containerName) {\n      _writer.writeString(2, _instance.containerName);\n    }\n    if (_instance.hostName) {\n      _writer.writeString(3, _instance.hostName);\n    }\n    if (_instance.lifecycleState) {\n      _writer.writeEnum(4, _instance.lifecycleState);\n    }\n    if (_instance.operationName) {\n      _writer.writeString(5, _instance.operationName);\n    }\n    if (_instance.image) {\n      _writer.writeString(6, _instance.image);\n    }\n    if (_instance.phase) {\n      _writer.writeString(7, _instance.phase);\n    }\n    if (_instance.exitCode) {\n      _writer.writeInt32(8, _instance.exitCode);\n    }\n    if (_instance.oomKilled) {\n      _writer.writeBool(9, _instance.oomKilled);\n    }\n    if (_instance.startedAt) {\n      _writer.writeMessage(\n        10,\n        _instance.startedAt as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.finishedAt) {\n      _writer.writeMessage(\n        11,\n        _instance.finishedAt as any,\n        googleProtobuf003.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.logsAvailable) {\n      _writer.writeBool(12, _instance.logsAvailable);\n    }\n    if (!!_instance.environmentVariables) {\n      const keys_13 = Object.keys(_instance.environmentVariables as any);\n\n      if (keys_13.length) {\n        const repeated_13 = keys_13\n          .map(key => ({\n            key: key,\n            value: (_instance.environmentVariables as any)[key]\n          }))\n          .reduce((r, v) => [...r, v], [] as any[]);\n\n        _writer.writeRepeatedMessage(\n          13,\n          repeated_13,\n          RemoteOperationContainer.EnvironmentVariablesEntry\n            .serializeBinaryToWriter\n        );\n      }\n    }\n    if (_instance.command && _instance.command.length) {\n      _writer.writeRepeatedString(14, _instance.command);\n    }\n    if (_instance.memoryLimitBytes) {\n      _writer.writeInt64String(15, _instance.memoryLimitBytes);\n    }\n    if (_instance.nanoCpus) {\n      _writer.writeInt64String(16, _instance.nanoCpus);\n    }\n    if (_instance.cpusetCpus) {\n      _writer.writeString(17, _instance.cpusetCpus);\n    }\n    if (_instance.cpuQuota) {\n      _writer.writeInt64String(18, _instance.cpuQuota);\n    }\n    if (_instance.cpuPeriod) {\n      _writer.writeInt64String(19, _instance.cpuPeriod);\n    }\n  }\n\n  private _containerId: string;\n  private _containerName: string;\n  private _hostName: string;\n  private _lifecycleState: RemoteOperationContainerLifecycleState;\n  private _operationName: string;\n  private _image: string;\n  private _phase: string;\n  private _exitCode: number;\n  private _oomKilled: boolean;\n  private _startedAt?: googleProtobuf003.Timestamp;\n  private _finishedAt?: googleProtobuf003.Timestamp;\n  private _logsAvailable: boolean;\n  private _environmentVariables: { [prop: string]: string };\n  private _command: string[];\n  private _memoryLimitBytes: string;\n  private _nanoCpus: string;\n  private _cpusetCpus: string;\n  private _cpuQuota: string;\n  private _cpuPeriod: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RemoteOperationContainer to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RemoteOperationContainer.AsObject>) {\n    _value = _value || {};\n    this.containerId = _value.containerId;\n    this.containerName = _value.containerName;\n    this.hostName = _value.hostName;\n    this.lifecycleState = _value.lifecycleState;\n    this.operationName = _value.operationName;\n    this.image = _value.image;\n    this.phase = _value.phase;\n    this.exitCode = _value.exitCode;\n    this.oomKilled = _value.oomKilled;\n    this.startedAt = _value.startedAt\n      ? new googleProtobuf003.Timestamp(_value.startedAt)\n      : undefined;\n    this.finishedAt = _value.finishedAt\n      ? new googleProtobuf003.Timestamp(_value.finishedAt)\n      : undefined;\n    this.logsAvailable = _value.logsAvailable;\n    (this.environmentVariables = _value!.environmentVariables\n      ? Object.keys(_value!.environmentVariables).reduce(\n          (r, k) => ({ ...r, [k]: _value!.environmentVariables![k] }),\n          {}\n        )\n      : {}),\n      (this.command = (_value.command || []).slice());\n    this.memoryLimitBytes = _value.memoryLimitBytes;\n    this.nanoCpus = _value.nanoCpus;\n    this.cpusetCpus = _value.cpusetCpus;\n    this.cpuQuota = _value.cpuQuota;\n    this.cpuPeriod = _value.cpuPeriod;\n    RemoteOperationContainer.refineValues(this);\n  }\n  get containerId(): string {\n    return this._containerId;\n  }\n  set containerId(value: string) {\n    this._containerId = value;\n  }\n  get containerName(): string {\n    return this._containerName;\n  }\n  set containerName(value: string) {\n    this._containerName = value;\n  }\n  get hostName(): string {\n    return this._hostName;\n  }\n  set hostName(value: string) {\n    this._hostName = value;\n  }\n  get lifecycleState(): RemoteOperationContainerLifecycleState {\n    return this._lifecycleState;\n  }\n  set lifecycleState(value: RemoteOperationContainerLifecycleState) {\n    this._lifecycleState = value;\n  }\n  get operationName(): string {\n    return this._operationName;\n  }\n  set operationName(value: string) {\n    this._operationName = value;\n  }\n  get image(): string {\n    return this._image;\n  }\n  set image(value: string) {\n    this._image = value;\n  }\n  get phase(): string {\n    return this._phase;\n  }\n  set phase(value: string) {\n    this._phase = value;\n  }\n  get exitCode(): number {\n    return this._exitCode;\n  }\n  set exitCode(value: number) {\n    this._exitCode = value;\n  }\n  get oomKilled(): boolean {\n    return this._oomKilled;\n  }\n  set oomKilled(value: boolean) {\n    this._oomKilled = value;\n  }\n  get startedAt(): googleProtobuf003.Timestamp | undefined {\n    return this._startedAt;\n  }\n  set startedAt(value: googleProtobuf003.Timestamp | undefined) {\n    this._startedAt = value;\n  }\n  get finishedAt(): googleProtobuf003.Timestamp | undefined {\n    return this._finishedAt;\n  }\n  set finishedAt(value: googleProtobuf003.Timestamp | undefined) {\n    this._finishedAt = value;\n  }\n  get logsAvailable(): boolean {\n    return this._logsAvailable;\n  }\n  set logsAvailable(value: boolean) {\n    this._logsAvailable = value;\n  }\n  get environmentVariables(): { [prop: string]: string } {\n    return this._environmentVariables;\n  }\n  set environmentVariables(value: { [prop: string]: string }) {\n    this._environmentVariables = value;\n  }\n  get command(): string[] {\n    return this._command;\n  }\n  set command(value: string[]) {\n    this._command = value;\n  }\n  get memoryLimitBytes(): string {\n    return this._memoryLimitBytes;\n  }\n  set memoryLimitBytes(value: string) {\n    this._memoryLimitBytes = value;\n  }\n  get nanoCpus(): string {\n    return this._nanoCpus;\n  }\n  set nanoCpus(value: string) {\n    this._nanoCpus = value;\n  }\n  get cpusetCpus(): string {\n    return this._cpusetCpus;\n  }\n  set cpusetCpus(value: string) {\n    this._cpusetCpus = value;\n  }\n  get cpuQuota(): string {\n    return this._cpuQuota;\n  }\n  set cpuQuota(value: string) {\n    this._cpuQuota = value;\n  }\n  get cpuPeriod(): string {\n    return this._cpuPeriod;\n  }\n  set cpuPeriod(value: string) {\n    this._cpuPeriod = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RemoteOperationContainer.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RemoteOperationContainer.AsObject {\n    return {\n      containerId: this.containerId,\n      containerName: this.containerName,\n      hostName: this.hostName,\n      lifecycleState: this.lifecycleState,\n      operationName: this.operationName,\n      image: this.image,\n      phase: this.phase,\n      exitCode: this.exitCode,\n      oomKilled: this.oomKilled,\n      startedAt: this.startedAt ? this.startedAt.toObject() : undefined,\n      finishedAt: this.finishedAt ? this.finishedAt.toObject() : undefined,\n      logsAvailable: this.logsAvailable,\n      environmentVariables: this.environmentVariables\n        ? Object.keys(this.environmentVariables).reduce(\n            (r, k) => ({ ...r, [k]: this.environmentVariables![k] }),\n            {}\n          )\n        : {},\n      command: (this.command || []).slice(),\n      memoryLimitBytes: this.memoryLimitBytes,\n      nanoCpus: this.nanoCpus,\n      cpusetCpus: this.cpusetCpus,\n      cpuQuota: this.cpuQuota,\n      cpuPeriod: this.cpuPeriod\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RemoteOperationContainer.AsProtobufJSON {\n    return {\n      containerId: this.containerId,\n      containerName: this.containerName,\n      hostName: this.hostName,\n      lifecycleState:\n        RemoteOperationContainerLifecycleState[\n          this.lifecycleState === null || this.lifecycleState === undefined\n            ? 0\n            : this.lifecycleState\n        ],\n      operationName: this.operationName,\n      image: this.image,\n      phase: this.phase,\n      exitCode: this.exitCode,\n      oomKilled: this.oomKilled,\n      startedAt: this.startedAt ? this.startedAt.toProtobufJSON(options) : null,\n      finishedAt: this.finishedAt\n        ? this.finishedAt.toProtobufJSON(options)\n        : null,\n      logsAvailable: this.logsAvailable,\n      environmentVariables: this.environmentVariables\n        ? Object.keys(this.environmentVariables).reduce(\n            (r, k) => ({ ...r, [k]: this.environmentVariables![k] }),\n            {}\n          )\n        : {},\n      command: (this.command || []).slice(),\n      memoryLimitBytes: this.memoryLimitBytes,\n      nanoCpus: this.nanoCpus,\n      cpusetCpus: this.cpusetCpus,\n      cpuQuota: this.cpuQuota,\n      cpuPeriod: this.cpuPeriod\n    };\n  }\n}\nexport module RemoteOperationContainer {\n  /**\n   * Standard JavaScript object representation for RemoteOperationContainer\n   */\n  export interface AsObject {\n    containerId: string;\n    containerName: string;\n    hostName: string;\n    lifecycleState: RemoteOperationContainerLifecycleState;\n    operationName: string;\n    image: string;\n    phase: string;\n    exitCode: number;\n    oomKilled: boolean;\n    startedAt?: googleProtobuf003.Timestamp.AsObject;\n    finishedAt?: googleProtobuf003.Timestamp.AsObject;\n    logsAvailable: boolean;\n    environmentVariables: { [prop: string]: string };\n    command: string[];\n    memoryLimitBytes: string;\n    nanoCpus: string;\n    cpusetCpus: string;\n    cpuQuota: string;\n    cpuPeriod: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RemoteOperationContainer\n   */\n  export interface AsProtobufJSON {\n    containerId: string;\n    containerName: string;\n    hostName: string;\n    lifecycleState: string;\n    operationName: string;\n    image: string;\n    phase: string;\n    exitCode: number;\n    oomKilled: boolean;\n    startedAt: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    finishedAt: googleProtobuf003.Timestamp.AsProtobufJSON | null;\n    logsAvailable: boolean;\n    environmentVariables: { [prop: string]: string };\n    command: string[];\n    memoryLimitBytes: string;\n    nanoCpus: string;\n    cpusetCpus: string;\n    cpuQuota: string;\n    cpuPeriod: string;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.RemoteOperationContainer.EnvironmentVariablesEntry\n   */\n  export class EnvironmentVariablesEntry implements GrpcMessage {\n    static id = 'ondewo.nlu.RemoteOperationContainer.EnvironmentVariablesEntry';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new EnvironmentVariablesEntry();\n      EnvironmentVariablesEntry.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: EnvironmentVariablesEntry) {\n      _instance.key = _instance.key || '';\n      _instance.value = _instance.value || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: EnvironmentVariablesEntry,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.key = _reader.readString();\n            break;\n          case 2:\n            _instance.value = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      EnvironmentVariablesEntry.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: EnvironmentVariablesEntry,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.key) {\n        _writer.writeString(1, _instance.key);\n      }\n      if (_instance.value) {\n        _writer.writeString(2, _instance.value);\n      }\n    }\n\n    private _key: string;\n    private _value: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of EnvironmentVariablesEntry to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<EnvironmentVariablesEntry.AsObject>) {\n      _value = _value || {};\n      this.key = _value.key;\n      this.value = _value.value;\n      EnvironmentVariablesEntry.refineValues(this);\n    }\n    get key(): string {\n      return this._key;\n    }\n    set key(value: string) {\n      this._key = value;\n    }\n    get value(): string {\n      return this._value;\n    }\n    set value(value: string) {\n      this._value = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      EnvironmentVariablesEntry.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): EnvironmentVariablesEntry.AsObject {\n      return {\n        key: this.key,\n        value: this.value\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): EnvironmentVariablesEntry.AsProtobufJSON {\n      return {\n        key: this.key,\n        value: this.value\n      };\n    }\n  }\n  export module EnvironmentVariablesEntry {\n    /**\n     * Standard JavaScript object representation for EnvironmentVariablesEntry\n     */\n    export interface AsObject {\n      key: string;\n      value: string;\n    }\n\n    /**\n     * Protobuf JSON representation for EnvironmentVariablesEntry\n     */\n    export interface AsProtobufJSON {\n      key: string;\n      value: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListRemoteOperationContainersRequest\n */\nexport class ListRemoteOperationContainersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListRemoteOperationContainersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListRemoteOperationContainersRequest();\n    ListRemoteOperationContainersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListRemoteOperationContainersRequest) {\n    _instance.name = _instance.name || '';\n    _instance.includeSubOperations = _instance.includeSubOperations || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListRemoteOperationContainersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.includeSubOperations = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListRemoteOperationContainersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListRemoteOperationContainersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.includeSubOperations) {\n      _writer.writeBool(2, _instance.includeSubOperations);\n    }\n  }\n\n  private _name: string;\n  private _includeSubOperations: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListRemoteOperationContainersRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListRemoteOperationContainersRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.includeSubOperations = _value.includeSubOperations;\n    ListRemoteOperationContainersRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get includeSubOperations(): boolean {\n    return this._includeSubOperations;\n  }\n  set includeSubOperations(value: boolean) {\n    this._includeSubOperations = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListRemoteOperationContainersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListRemoteOperationContainersRequest.AsObject {\n    return {\n      name: this.name,\n      includeSubOperations: this.includeSubOperations\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListRemoteOperationContainersRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      includeSubOperations: this.includeSubOperations\n    };\n  }\n}\nexport module ListRemoteOperationContainersRequest {\n  /**\n   * Standard JavaScript object representation for ListRemoteOperationContainersRequest\n   */\n  export interface AsObject {\n    name: string;\n    includeSubOperations: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for ListRemoteOperationContainersRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    includeSubOperations: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListRemoteOperationContainersResponse\n */\nexport class ListRemoteOperationContainersResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListRemoteOperationContainersResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListRemoteOperationContainersResponse();\n    ListRemoteOperationContainersResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListRemoteOperationContainersResponse) {\n    _instance.containers = _instance.containers || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListRemoteOperationContainersResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RemoteOperationContainer();\n          _reader.readMessage(\n            messageInitializer1,\n            RemoteOperationContainer.deserializeBinaryFromReader\n          );\n          (_instance.containers = _instance.containers || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListRemoteOperationContainersResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListRemoteOperationContainersResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.containers && _instance.containers.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.containers as any,\n        RemoteOperationContainer.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _containers?: RemoteOperationContainer[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListRemoteOperationContainersResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListRemoteOperationContainersResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.containers = (_value.containers || []).map(\n      m => new RemoteOperationContainer(m)\n    );\n    ListRemoteOperationContainersResponse.refineValues(this);\n  }\n  get containers(): RemoteOperationContainer[] | undefined {\n    return this._containers;\n  }\n  set containers(value: RemoteOperationContainer[] | undefined) {\n    this._containers = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListRemoteOperationContainersResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListRemoteOperationContainersResponse.AsObject {\n    return {\n      containers: (this.containers || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListRemoteOperationContainersResponse.AsProtobufJSON {\n    return {\n      containers: (this.containers || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module ListRemoteOperationContainersResponse {\n  /**\n   * Standard JavaScript object representation for ListRemoteOperationContainersResponse\n   */\n  export interface AsObject {\n    containers?: RemoteOperationContainer.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListRemoteOperationContainersResponse\n   */\n  export interface AsProtobufJSON {\n    containers: RemoteOperationContainer.AsProtobufJSON[] | null;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './agent.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleApi005 from '../../google/api/annotations.pb';\nimport * as ondewoNlu006 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu010 from '../../ondewo/nlu/project-role.pb';\nimport * as googleProtobuf011 from '@ngx-grpc/well-known-types';\nimport * as googleRpc012 from '../../google/rpc/status.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as googleType014 from '../../google/type/latlng.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu017 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu018 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu019 from '../../ondewo/nlu/user.pb';\nimport * as ondewoNlu020 from '../../ondewo/nlu/session.pb';\nimport { GRPC_AGENTS_CLIENT_SETTINGS } from './agent.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Agents\n */\n@Injectable({ providedIn: 'any' })\nexport class AgentsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Agents/CreateAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Agent>>\n     */\n    createAgent: (\n      requestData: thisProto.CreateAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Agent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/CreateAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateAgentRequest,\n        responseClass: thisProto.Agent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/UpdateAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Agent>>\n     */\n    updateAgent: (\n      requestData: thisProto.UpdateAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Agent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/UpdateAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateAgentRequest,\n        responseClass: thisProto.Agent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Agent>>\n     */\n    getAgent: (\n      requestData: thisProto.GetAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Agent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAgentRequest,\n        responseClass: thisProto.Agent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/DeleteAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf009.Empty>>\n     */\n    deleteAgent: (\n      requestData: thisProto.DeleteAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf009.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/DeleteAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteAgentRequest,\n        responseClass: googleProtobuf009.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/DeleteAllAgents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf009.Empty>>\n     */\n    deleteAllAgents: (\n      requestData: googleProtobuf009.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf009.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/DeleteAllAgents',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf009.Empty,\n        responseClass: googleProtobuf009.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ListAgents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListAgentsResponse>>\n     */\n    listAgents: (\n      requestData: thisProto.ListAgentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListAgentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ListAgents',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListAgentsRequest,\n        responseClass: thisProto.ListAgentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ListAgentsOfUser\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListAgentsOfUserResponse>>\n     */\n    listAgentsOfUser: (\n      requestData: thisProto.ListAgentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListAgentsOfUserResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ListAgentsOfUser',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListAgentsRequest,\n        responseClass: thisProto.ListAgentsOfUserResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ListAllAgents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListAgentsResponse>>\n     */\n    listAllAgents: (\n      requestData: thisProto.ListAgentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListAgentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ListAllAgents',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListAgentsRequest,\n        responseClass: thisProto.ListAgentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/AddUserToProject\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf009.Empty>>\n     */\n    addUserToProject: (\n      requestData: thisProto.AddUserToProjectRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf009.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/AddUserToProject',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddUserToProjectRequest,\n        responseClass: googleProtobuf009.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/RemoveUserFromProject\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf009.Empty>>\n     */\n    removeUserFromProject: (\n      requestData: thisProto.RemoveUserFromProjectRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf009.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/RemoveUserFromProject',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RemoveUserFromProjectRequest,\n        responseClass: googleProtobuf009.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ListUsersInProject\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListUsersInProjectResponse>>\n     */\n    listUsersInProject: (\n      requestData: thisProto.ListUsersInProjectRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListUsersInProjectResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ListUsersInProject',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListUsersInProjectRequest,\n        responseClass: thisProto.ListUsersInProjectResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetPlatformInfo\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetPlatformInfoResponse>>\n     */\n    getPlatformInfo: (\n      requestData: googleProtobuf009.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetPlatformInfoResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetPlatformInfo',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf009.Empty,\n        responseClass: thisProto.GetPlatformInfoResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ListProjectPermissions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListProjectPermissionsResponse>>\n     */\n    listProjectPermissions: (\n      requestData: thisProto.ListProjectPermissionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListProjectPermissionsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ListProjectPermissions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListProjectPermissionsRequest,\n        responseClass: thisProto.ListProjectPermissionsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/TrainAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    trainAgent: (\n      requestData: thisProto.TrainAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/TrainAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.TrainAgentRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/BuildCache\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    buildCache: (\n      requestData: thisProto.BuildCacheRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/BuildCache',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BuildCacheRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ExportAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    exportAgent: (\n      requestData: thisProto.ExportAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ExportAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ExportAgentRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ExportBenchmarkAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    exportBenchmarkAgent: (\n      requestData: thisProto.ExportBenchmarkAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ExportBenchmarkAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ExportBenchmarkAgentRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ImportAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    importAgent: (\n      requestData: thisProto.ImportAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ImportAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ImportAgentRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/MigrateAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    migrateAgent: (\n      requestData: thisProto.MigrateAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/MigrateAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.MigrateAgentRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/OptimizeRankingMatch\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    optimizeRankingMatch: (\n      requestData: thisProto.OptimizeRankingMatchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/OptimizeRankingMatch',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.OptimizeRankingMatchRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/RestoreAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    restoreAgent: (\n      requestData: thisProto.RestoreAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/RestoreAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RestoreAgentRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetAgentStatistics\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetAgentStatisticsResponse>>\n     */\n    getAgentStatistics: (\n      requestData: thisProto.GetAgentStatisticsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetAgentStatisticsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetAgentStatistics',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAgentStatisticsRequest,\n        responseClass: thisProto.GetAgentStatisticsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetSessionsStatistics\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetSessionsStatisticsResponse>>\n     */\n    getSessionsStatistics: (\n      requestData: thisProto.GetSessionsStatisticsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetSessionsStatisticsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetSessionsStatistics',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetSessionsStatisticsRequest,\n        responseClass: thisProto.GetSessionsStatisticsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetSessionsStatisticsTimeSeries\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetSessionsStatisticsTimeSeriesResponse>>\n     */\n    getSessionsStatisticsTimeSeries: (\n      requestData: thisProto.GetSessionsStatisticsTimeSeriesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.GetSessionsStatisticsTimeSeriesResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetSessionsStatisticsTimeSeries',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetSessionsStatisticsTimeSeriesRequest,\n        responseClass: thisProto.GetSessionsStatisticsTimeSeriesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/SetAgentStatus\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Agent>>\n     */\n    setAgentStatus: (\n      requestData: thisProto.SetAgentStatusRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Agent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/SetAgentStatus',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.SetAgentStatusRequest,\n        responseClass: thisProto.Agent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/SetResources\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf009.Empty>>\n     */\n    setResources: (\n      requestData: thisProto.SetResourcesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf009.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/SetResources',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.SetResourcesRequest,\n        responseClass: googleProtobuf009.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/DeleteResources\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf009.Empty>>\n     */\n    deleteResources: (\n      requestData: thisProto.DeleteResourcesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf009.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/DeleteResources',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteResourcesRequest,\n        responseClass: googleProtobuf009.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ExportResources\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ExportResourcesResponse>>\n     */\n    exportResources: (\n      requestData: thisProto.ExportResourcesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ExportResourcesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ExportResources',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ExportResourcesRequest,\n        responseClass: thisProto.ExportResourcesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetModelStatuses\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetModelStatusesResponse>>\n     */\n    getModelStatuses: (\n      requestData: thisProto.GetModelStatusesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetModelStatusesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetModelStatuses',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetModelStatusesRequest,\n        responseClass: thisProto.GetModelStatusesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetPlatformMapping\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.PlatformMapping>>\n     */\n    getPlatformMapping: (\n      requestData: thisProto.GetPlatformMappingRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.PlatformMapping>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetPlatformMapping',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetPlatformMappingRequest,\n        responseClass: thisProto.PlatformMapping\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/SetPlatformMapping\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.PlatformMapping>>\n     */\n    setPlatformMapping: (\n      requestData: thisProto.PlatformMapping,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.PlatformMapping>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/SetPlatformMapping',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.PlatformMapping,\n        responseClass: thisProto.PlatformMapping\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseEntityType>>\n     */\n    getFullTextSearchEntityType: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.FullTextSearchResponseEntityType>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseEntityType\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchEntity\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseEntity>>\n     */\n    getFullTextSearchEntity: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.FullTextSearchResponseEntity>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchEntity',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseEntity\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchEntitySynonym\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseEntitySynonym>>\n     */\n    getFullTextSearchEntitySynonym: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.FullTextSearchResponseEntitySynonym>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchEntitySynonym',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseEntitySynonym\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseIntent>>\n     */\n    getFullTextSearchIntent: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.FullTextSearchResponseIntent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseIntent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchIntentContextIn\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseIntentContextIn>>\n     */\n    getFullTextSearchIntentContextIn: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.FullTextSearchResponseIntentContextIn>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchIntentContextIn',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseIntentContextIn\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchIntentContextOut\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseIntentContextOut>>\n     */\n    getFullTextSearchIntentContextOut: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.FullTextSearchResponseIntentContextOut>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchIntentContextOut',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseIntentContextOut\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchIntentUsersays\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseIntentUsersays>>\n     */\n    getFullTextSearchIntentUsersays: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.FullTextSearchResponseIntentUsersays>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchIntentUsersays',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseIntentUsersays\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchIntentTags\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseIntentTags>>\n     */\n    getFullTextSearchIntentTags: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.FullTextSearchResponseIntentTags>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchIntentTags',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseIntentTags\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchIntentResponse\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseIntentResponse>>\n     */\n    getFullTextSearchIntentResponse: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.FullTextSearchResponseIntentResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchIntentResponse',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseIntentResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/GetFullTextSearchIntentParameters\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.FullTextSearchResponseIntentParameters>>\n     */\n    getFullTextSearchIntentParameters: (\n      requestData: thisProto.FullTextSearchRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.FullTextSearchResponseIntentParameters>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/GetFullTextSearchIntentParameters',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.FullTextSearchRequest,\n        responseClass: thisProto.FullTextSearchResponseIntentParameters\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ReindexAgent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Operation>>\n     */\n    reindexAgent: (\n      requestData: thisProto.ReindexAgentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ReindexAgent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ReindexAgentRequest,\n        responseClass: ondewoNlu008.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/CreateProjectTechnicalUser\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CreateProjectTechnicalUserResponse>>\n     */\n    createProjectTechnicalUser: (\n      requestData: thisProto.CreateProjectTechnicalUserRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CreateProjectTechnicalUserResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/CreateProjectTechnicalUser',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateProjectTechnicalUserRequest,\n        responseClass: thisProto.CreateProjectTechnicalUserResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/ListProjectTechnicalUsers\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListProjectTechnicalUsersResponse>>\n     */\n    listProjectTechnicalUsers: (\n      requestData: thisProto.ListProjectTechnicalUsersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListProjectTechnicalUsersResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/ListProjectTechnicalUsers',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListProjectTechnicalUsersRequest,\n        responseClass: thisProto.ListProjectTechnicalUsersResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/DeleteProjectTechnicalUser\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf009.Empty>>\n     */\n    deleteProjectTechnicalUser: (\n      requestData: thisProto.DeleteProjectTechnicalUserRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf009.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/DeleteProjectTechnicalUser',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteProjectTechnicalUserRequest,\n        responseClass: googleProtobuf009.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Agents/RotateProjectTechnicalUserPassword\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RotateProjectTechnicalUserPasswordResponse>>\n     */\n    rotateProjectTechnicalUserPassword: (\n      requestData: thisProto.RotateProjectTechnicalUserPasswordRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.RotateProjectTechnicalUserPasswordResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Agents/RotateProjectTechnicalUserPassword',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RotateProjectTechnicalUserPasswordRequest,\n        responseClass: thisProto.RotateProjectTechnicalUserPasswordResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_AGENTS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Agents', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/CreateAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Agent>\n   */\n  createAgent(\n    requestData: thisProto.CreateAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Agent> {\n    return this.$raw\n      .createAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/UpdateAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Agent>\n   */\n  updateAgent(\n    requestData: thisProto.UpdateAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Agent> {\n    return this.$raw\n      .updateAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Agent>\n   */\n  getAgent(\n    requestData: thisProto.GetAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Agent> {\n    return this.$raw\n      .getAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/DeleteAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf009.Empty>\n   */\n  deleteAgent(\n    requestData: thisProto.DeleteAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf009.Empty> {\n    return this.$raw\n      .deleteAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/DeleteAllAgents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf009.Empty>\n   */\n  deleteAllAgents(\n    requestData: googleProtobuf009.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf009.Empty> {\n    return this.$raw\n      .deleteAllAgents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ListAgents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListAgentsResponse>\n   */\n  listAgents(\n    requestData: thisProto.ListAgentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListAgentsResponse> {\n    return this.$raw\n      .listAgents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ListAgentsOfUser\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListAgentsOfUserResponse>\n   */\n  listAgentsOfUser(\n    requestData: thisProto.ListAgentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListAgentsOfUserResponse> {\n    return this.$raw\n      .listAgentsOfUser(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ListAllAgents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListAgentsResponse>\n   */\n  listAllAgents(\n    requestData: thisProto.ListAgentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListAgentsResponse> {\n    return this.$raw\n      .listAllAgents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/AddUserToProject\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf009.Empty>\n   */\n  addUserToProject(\n    requestData: thisProto.AddUserToProjectRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf009.Empty> {\n    return this.$raw\n      .addUserToProject(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/RemoveUserFromProject\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf009.Empty>\n   */\n  removeUserFromProject(\n    requestData: thisProto.RemoveUserFromProjectRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf009.Empty> {\n    return this.$raw\n      .removeUserFromProject(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ListUsersInProject\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListUsersInProjectResponse>\n   */\n  listUsersInProject(\n    requestData: thisProto.ListUsersInProjectRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListUsersInProjectResponse> {\n    return this.$raw\n      .listUsersInProject(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetPlatformInfo\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetPlatformInfoResponse>\n   */\n  getPlatformInfo(\n    requestData: googleProtobuf009.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetPlatformInfoResponse> {\n    return this.$raw\n      .getPlatformInfo(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ListProjectPermissions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListProjectPermissionsResponse>\n   */\n  listProjectPermissions(\n    requestData: thisProto.ListProjectPermissionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListProjectPermissionsResponse> {\n    return this.$raw\n      .listProjectPermissions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/TrainAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  trainAgent(\n    requestData: thisProto.TrainAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .trainAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/BuildCache\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  buildCache(\n    requestData: thisProto.BuildCacheRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .buildCache(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ExportAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  exportAgent(\n    requestData: thisProto.ExportAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .exportAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ExportBenchmarkAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  exportBenchmarkAgent(\n    requestData: thisProto.ExportBenchmarkAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .exportBenchmarkAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ImportAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  importAgent(\n    requestData: thisProto.ImportAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .importAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/MigrateAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  migrateAgent(\n    requestData: thisProto.MigrateAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .migrateAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/OptimizeRankingMatch\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  optimizeRankingMatch(\n    requestData: thisProto.OptimizeRankingMatchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .optimizeRankingMatch(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/RestoreAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  restoreAgent(\n    requestData: thisProto.RestoreAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .restoreAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetAgentStatistics\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetAgentStatisticsResponse>\n   */\n  getAgentStatistics(\n    requestData: thisProto.GetAgentStatisticsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetAgentStatisticsResponse> {\n    return this.$raw\n      .getAgentStatistics(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetSessionsStatistics\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetSessionsStatisticsResponse>\n   */\n  getSessionsStatistics(\n    requestData: thisProto.GetSessionsStatisticsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetSessionsStatisticsResponse> {\n    return this.$raw\n      .getSessionsStatistics(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetSessionsStatisticsTimeSeries\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetSessionsStatisticsTimeSeriesResponse>\n   */\n  getSessionsStatisticsTimeSeries(\n    requestData: thisProto.GetSessionsStatisticsTimeSeriesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetSessionsStatisticsTimeSeriesResponse> {\n    return this.$raw\n      .getSessionsStatisticsTimeSeries(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/SetAgentStatus\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Agent>\n   */\n  setAgentStatus(\n    requestData: thisProto.SetAgentStatusRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Agent> {\n    return this.$raw\n      .setAgentStatus(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/SetResources\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf009.Empty>\n   */\n  setResources(\n    requestData: thisProto.SetResourcesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf009.Empty> {\n    return this.$raw\n      .setResources(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/DeleteResources\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf009.Empty>\n   */\n  deleteResources(\n    requestData: thisProto.DeleteResourcesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf009.Empty> {\n    return this.$raw\n      .deleteResources(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ExportResources\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ExportResourcesResponse>\n   */\n  exportResources(\n    requestData: thisProto.ExportResourcesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ExportResourcesResponse> {\n    return this.$raw\n      .exportResources(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetModelStatuses\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetModelStatusesResponse>\n   */\n  getModelStatuses(\n    requestData: thisProto.GetModelStatusesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetModelStatusesResponse> {\n    return this.$raw\n      .getModelStatuses(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetPlatformMapping\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.PlatformMapping>\n   */\n  getPlatformMapping(\n    requestData: thisProto.GetPlatformMappingRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.PlatformMapping> {\n    return this.$raw\n      .getPlatformMapping(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/SetPlatformMapping\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.PlatformMapping>\n   */\n  setPlatformMapping(\n    requestData: thisProto.PlatformMapping,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.PlatformMapping> {\n    return this.$raw\n      .setPlatformMapping(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseEntityType>\n   */\n  getFullTextSearchEntityType(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseEntityType> {\n    return this.$raw\n      .getFullTextSearchEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchEntity\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseEntity>\n   */\n  getFullTextSearchEntity(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseEntity> {\n    return this.$raw\n      .getFullTextSearchEntity(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchEntitySynonym\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseEntitySynonym>\n   */\n  getFullTextSearchEntitySynonym(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseEntitySynonym> {\n    return this.$raw\n      .getFullTextSearchEntitySynonym(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseIntent>\n   */\n  getFullTextSearchIntent(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseIntent> {\n    return this.$raw\n      .getFullTextSearchIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchIntentContextIn\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseIntentContextIn>\n   */\n  getFullTextSearchIntentContextIn(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseIntentContextIn> {\n    return this.$raw\n      .getFullTextSearchIntentContextIn(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchIntentContextOut\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseIntentContextOut>\n   */\n  getFullTextSearchIntentContextOut(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseIntentContextOut> {\n    return this.$raw\n      .getFullTextSearchIntentContextOut(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchIntentUsersays\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseIntentUsersays>\n   */\n  getFullTextSearchIntentUsersays(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseIntentUsersays> {\n    return this.$raw\n      .getFullTextSearchIntentUsersays(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchIntentTags\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseIntentTags>\n   */\n  getFullTextSearchIntentTags(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseIntentTags> {\n    return this.$raw\n      .getFullTextSearchIntentTags(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchIntentResponse\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseIntentResponse>\n   */\n  getFullTextSearchIntentResponse(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseIntentResponse> {\n    return this.$raw\n      .getFullTextSearchIntentResponse(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/GetFullTextSearchIntentParameters\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.FullTextSearchResponseIntentParameters>\n   */\n  getFullTextSearchIntentParameters(\n    requestData: thisProto.FullTextSearchRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.FullTextSearchResponseIntentParameters> {\n    return this.$raw\n      .getFullTextSearchIntentParameters(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ReindexAgent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Operation>\n   */\n  reindexAgent(\n    requestData: thisProto.ReindexAgentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Operation> {\n    return this.$raw\n      .reindexAgent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/CreateProjectTechnicalUser\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CreateProjectTechnicalUserResponse>\n   */\n  createProjectTechnicalUser(\n    requestData: thisProto.CreateProjectTechnicalUserRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CreateProjectTechnicalUserResponse> {\n    return this.$raw\n      .createProjectTechnicalUser(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/ListProjectTechnicalUsers\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListProjectTechnicalUsersResponse>\n   */\n  listProjectTechnicalUsers(\n    requestData: thisProto.ListProjectTechnicalUsersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListProjectTechnicalUsersResponse> {\n    return this.$raw\n      .listProjectTechnicalUsers(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/DeleteProjectTechnicalUser\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf009.Empty>\n   */\n  deleteProjectTechnicalUser(\n    requestData: thisProto.DeleteProjectTechnicalUserRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf009.Empty> {\n    return this.$raw\n      .deleteProjectTechnicalUser(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Agents/RotateProjectTechnicalUserPassword\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RotateProjectTechnicalUserPasswordResponse>\n   */\n  rotateProjectTechnicalUserPassword(\n    requestData: thisProto.RotateProjectTechnicalUserPasswordRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RotateProjectTechnicalUserPasswordResponse> {\n    return this.$raw\n      .rotateProjectTechnicalUserPassword(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu005 from '../../ondewo/nlu/common.pb';\nimport * as googleApi006 from '../../google/api/annotations.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as googleRpc010 from '../../google/rpc/status.pb';\nimport * as googleType011 from '../../google/type/latlng.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/session.pb';\nexport enum Mode {\n  UNSPECIFIED = 0,\n  EXCLUSIVE = 1,\n  INCLUSIVE = 2\n}\nexport enum IntentAlgorithms {\n  OndewoIntentExactContextDetector = 0,\n  OndewoIntentExactMatch = 1,\n  OndewoIntentNamedExactMatch = 2,\n  OndewoIntentSimilarityMatch = 3,\n  OndewoIntentNamedSimilarityMatch = 4,\n  OndewoIntentBertClassifier = 7,\n  OndewoIntentMetaClassifier = 8,\n  IntentExitDetector = 10,\n  OndewoIntentRankingMatch = 11,\n  OndewoWeightedEnsemble = 13,\n  OndewoIntentExitDetector = 14,\n  OndewoIntentParameterMatch = 15\n}\n/**\n * Message implementation for ondewo.nlu.ListLlmModelsRequest\n */\nexport class ListLlmModelsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmModelsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmModelsRequest();\n    ListLlmModelsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmModelsRequest) {\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmModelsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        case 2:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmModelsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmModelsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(1, _instance.ccaiServiceName);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        2,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _ccaiServiceName: string;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmModelsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListLlmModelsRequest.AsObject>) {\n    _value = _value || {};\n    this.ccaiServiceName = _value.ccaiServiceName;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    ListLlmModelsRequest.refineValues(this);\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmModelsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmModelsRequest.AsObject {\n    return {\n      ccaiServiceName: this.ccaiServiceName,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmModelsRequest.AsProtobufJSON {\n    return {\n      ccaiServiceName: this.ccaiServiceName,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ListLlmModelsRequest {\n  /**\n   * Standard JavaScript object representation for ListLlmModelsRequest\n   */\n  export interface AsObject {\n    ccaiServiceName: string;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmModelsRequest\n   */\n  export interface AsProtobufJSON {\n    ccaiServiceName: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListLlmModelsResponse\n */\nexport class ListLlmModelsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListLlmModelsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListLlmModelsResponse();\n    ListLlmModelsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListLlmModelsResponse) {\n    _instance.llmModels = _instance.llmModels || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListLlmModelsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new LlmModel();\n          _reader.readMessage(\n            messageInitializer1,\n            LlmModel.deserializeBinaryFromReader\n          );\n          (_instance.llmModels = _instance.llmModels || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListLlmModelsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListLlmModelsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmModels && _instance.llmModels.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.llmModels as any,\n        LlmModel.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmModels?: LlmModel[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListLlmModelsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListLlmModelsResponse.AsObject>) {\n    _value = _value || {};\n    this.llmModels = (_value.llmModels || []).map(m => new LlmModel(m));\n    ListLlmModelsResponse.refineValues(this);\n  }\n  get llmModels(): LlmModel[] | undefined {\n    return this._llmModels;\n  }\n  set llmModels(value: LlmModel[] | undefined) {\n    this._llmModels = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListLlmModelsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListLlmModelsResponse.AsObject {\n    return {\n      llmModels: (this.llmModels || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListLlmModelsResponse.AsProtobufJSON {\n    return {\n      llmModels: (this.llmModels || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module ListLlmModelsResponse {\n  /**\n   * Standard JavaScript object representation for ListLlmModelsResponse\n   */\n  export interface AsObject {\n    llmModels?: LlmModel.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListLlmModelsResponse\n   */\n  export interface AsProtobufJSON {\n    llmModels: LlmModel.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmModel\n */\nexport class LlmModel implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmModel';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmModel();\n    LlmModel.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmModel) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.description = _instance.description || '';\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n    _instance.ccaiServiceProvider = _instance.ccaiServiceProvider || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmModel,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.description = _reader.readString();\n          break;\n        case 4:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        case 5:\n          _instance.ccaiServiceProvider = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmModel.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: LlmModel, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.description) {\n      _writer.writeString(3, _instance.description);\n    }\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(4, _instance.ccaiServiceName);\n    }\n    if (_instance.ccaiServiceProvider) {\n      _writer.writeEnum(5, _instance.ccaiServiceProvider);\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _description: string;\n  private _ccaiServiceName: string;\n  private _ccaiServiceProvider: ondewoNlu012.CcaiServiceProvider;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmModel to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmModel.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.description = _value.description;\n    this.ccaiServiceName = _value.ccaiServiceName;\n    this.ccaiServiceProvider = _value.ccaiServiceProvider;\n    LlmModel.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n  get ccaiServiceProvider(): ondewoNlu012.CcaiServiceProvider {\n    return this._ccaiServiceProvider;\n  }\n  set ccaiServiceProvider(value: ondewoNlu012.CcaiServiceProvider) {\n    this._ccaiServiceProvider = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmModel.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmModel.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      ccaiServiceName: this.ccaiServiceName,\n      ccaiServiceProvider: this.ccaiServiceProvider\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmModel.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      description: this.description,\n      ccaiServiceName: this.ccaiServiceName,\n      ccaiServiceProvider:\n        ondewoNlu012.CcaiServiceProvider[\n          this.ccaiServiceProvider === null ||\n          this.ccaiServiceProvider === undefined\n            ? 0\n            : this.ccaiServiceProvider\n        ]\n    };\n  }\n}\nexport module LlmModel {\n  /**\n   * Standard JavaScript object representation for LlmModel\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    description: string;\n    ccaiServiceName: string;\n    ccaiServiceProvider: ondewoNlu012.CcaiServiceProvider;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmModel\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    description: string;\n    ccaiServiceName: string;\n    ccaiServiceProvider: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmGenerateRequest\n */\nexport class LlmGenerateRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmGenerateRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmGenerateRequest();\n    LlmGenerateRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmGenerateRequest) {\n    _instance.llmGenerationRequest =\n      _instance.llmGenerationRequest || undefined;\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n    _instance.fileResources = _instance.fileResources || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmGenerateRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmGenerationRequest = new googleProtobuf003.Struct();\n          _reader.readMessage(\n            _instance.llmGenerationRequest,\n            googleProtobuf003.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new ondewoNlu016.FileResource();\n          _reader.readMessage(\n            messageInitializer3,\n            ondewoNlu016.FileResource.deserializeBinaryFromReader\n          );\n          (_instance.fileResources = _instance.fileResources || []).push(\n            messageInitializer3\n          );\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmGenerateRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmGenerateRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmGenerationRequest) {\n      _writer.writeMessage(\n        1,\n        _instance.llmGenerationRequest as any,\n        googleProtobuf003.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(2, _instance.ccaiServiceName);\n    }\n    if (_instance.fileResources && _instance.fileResources.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.fileResources as any,\n        ondewoNlu016.FileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmGenerationRequest?: googleProtobuf003.Struct;\n  private _ccaiServiceName: string;\n  private _fileResources?: ondewoNlu016.FileResource[];\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmGenerateRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmGenerateRequest.AsObject>) {\n    _value = _value || {};\n    this.llmGenerationRequest = _value.llmGenerationRequest\n      ? new googleProtobuf003.Struct(_value.llmGenerationRequest)\n      : undefined;\n    this.ccaiServiceName = _value.ccaiServiceName;\n    this.fileResources = (_value.fileResources || []).map(\n      m => new ondewoNlu016.FileResource(m)\n    );\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    LlmGenerateRequest.refineValues(this);\n  }\n  get llmGenerationRequest(): googleProtobuf003.Struct | undefined {\n    return this._llmGenerationRequest;\n  }\n  set llmGenerationRequest(value: googleProtobuf003.Struct | undefined) {\n    this._llmGenerationRequest = value;\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n  get fileResources(): ondewoNlu016.FileResource[] | undefined {\n    return this._fileResources;\n  }\n  set fileResources(value: ondewoNlu016.FileResource[] | undefined) {\n    this._fileResources = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmGenerateRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmGenerateRequest.AsObject {\n    return {\n      llmGenerationRequest: this.llmGenerationRequest\n        ? this.llmGenerationRequest.toObject()\n        : undefined,\n      ccaiServiceName: this.ccaiServiceName,\n      fileResources: (this.fileResources || []).map(m => m.toObject()),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmGenerateRequest.AsProtobufJSON {\n    return {\n      llmGenerationRequest: this.llmGenerationRequest\n        ? this.llmGenerationRequest.toProtobufJSON(options)\n        : null,\n      ccaiServiceName: this.ccaiServiceName,\n      fileResources: (this.fileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module LlmGenerateRequest {\n  /**\n   * Standard JavaScript object representation for LlmGenerateRequest\n   */\n  export interface AsObject {\n    llmGenerationRequest?: googleProtobuf003.Struct.AsObject;\n    ccaiServiceName: string;\n    fileResources?: ondewoNlu016.FileResource.AsObject[];\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmGenerateRequest\n   */\n  export interface AsProtobufJSON {\n    llmGenerationRequest: googleProtobuf003.Struct.AsProtobufJSON | null;\n    ccaiServiceName: string;\n    fileResources: ondewoNlu016.FileResource.AsProtobufJSON[] | null;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmGenerateResponse\n */\nexport class LlmGenerateResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmGenerateResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmGenerateResponse();\n    LlmGenerateResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmGenerateResponse) {\n    _instance.llmGenerationResponse =\n      _instance.llmGenerationResponse || undefined;\n    _instance.fileResources = _instance.fileResources || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmGenerateResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmGenerationResponse = new googleProtobuf003.Struct();\n          _reader.readMessage(\n            _instance.llmGenerationResponse,\n            googleProtobuf003.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu016.FileResource();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu016.FileResource.deserializeBinaryFromReader\n          );\n          (_instance.fileResources = _instance.fileResources || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmGenerateResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmGenerateResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmGenerationResponse) {\n      _writer.writeMessage(\n        1,\n        _instance.llmGenerationResponse as any,\n        googleProtobuf003.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fileResources && _instance.fileResources.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.fileResources as any,\n        ondewoNlu016.FileResource.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmGenerationResponse?: googleProtobuf003.Struct;\n  private _fileResources?: ondewoNlu016.FileResource[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmGenerateResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmGenerateResponse.AsObject>) {\n    _value = _value || {};\n    this.llmGenerationResponse = _value.llmGenerationResponse\n      ? new googleProtobuf003.Struct(_value.llmGenerationResponse)\n      : undefined;\n    this.fileResources = (_value.fileResources || []).map(\n      m => new ondewoNlu016.FileResource(m)\n    );\n    LlmGenerateResponse.refineValues(this);\n  }\n  get llmGenerationResponse(): googleProtobuf003.Struct | undefined {\n    return this._llmGenerationResponse;\n  }\n  set llmGenerationResponse(value: googleProtobuf003.Struct | undefined) {\n    this._llmGenerationResponse = value;\n  }\n  get fileResources(): ondewoNlu016.FileResource[] | undefined {\n    return this._fileResources;\n  }\n  set fileResources(value: ondewoNlu016.FileResource[] | undefined) {\n    this._fileResources = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmGenerateResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmGenerateResponse.AsObject {\n    return {\n      llmGenerationResponse: this.llmGenerationResponse\n        ? this.llmGenerationResponse.toObject()\n        : undefined,\n      fileResources: (this.fileResources || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmGenerateResponse.AsProtobufJSON {\n    return {\n      llmGenerationResponse: this.llmGenerationResponse\n        ? this.llmGenerationResponse.toProtobufJSON(options)\n        : null,\n      fileResources: (this.fileResources || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module LlmGenerateResponse {\n  /**\n   * Standard JavaScript object representation for LlmGenerateResponse\n   */\n  export interface AsObject {\n    llmGenerationResponse?: googleProtobuf003.Struct.AsObject;\n    fileResources?: ondewoNlu016.FileResource.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for LlmGenerateResponse\n   */\n  export interface AsProtobufJSON {\n    llmGenerationResponse: googleProtobuf003.Struct.AsProtobufJSON | null;\n    fileResources: ondewoNlu016.FileResource.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StreamingLlmGenerateResponse\n */\nexport class StreamingLlmGenerateResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.StreamingLlmGenerateResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StreamingLlmGenerateResponse();\n    StreamingLlmGenerateResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StreamingLlmGenerateResponse) {\n    _instance.llmGenerationStreamResponse =\n      _instance.llmGenerationStreamResponse || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StreamingLlmGenerateResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.llmGenerationStreamResponse = new googleProtobuf003.Struct();\n          _reader.readMessage(\n            _instance.llmGenerationStreamResponse,\n            googleProtobuf003.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StreamingLlmGenerateResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StreamingLlmGenerateResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.llmGenerationStreamResponse) {\n      _writer.writeMessage(\n        1,\n        _instance.llmGenerationStreamResponse as any,\n        googleProtobuf003.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _llmGenerationStreamResponse?: googleProtobuf003.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StreamingLlmGenerateResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<StreamingLlmGenerateResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.llmGenerationStreamResponse = _value.llmGenerationStreamResponse\n      ? new googleProtobuf003.Struct(_value.llmGenerationStreamResponse)\n      : undefined;\n    StreamingLlmGenerateResponse.refineValues(this);\n  }\n  get llmGenerationStreamResponse(): googleProtobuf003.Struct | undefined {\n    return this._llmGenerationStreamResponse;\n  }\n  set llmGenerationStreamResponse(value: googleProtobuf003.Struct | undefined) {\n    this._llmGenerationStreamResponse = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StreamingLlmGenerateResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StreamingLlmGenerateResponse.AsObject {\n    return {\n      llmGenerationStreamResponse: this.llmGenerationStreamResponse\n        ? this.llmGenerationStreamResponse.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StreamingLlmGenerateResponse.AsProtobufJSON {\n    return {\n      llmGenerationStreamResponse: this.llmGenerationStreamResponse\n        ? this.llmGenerationStreamResponse.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module StreamingLlmGenerateResponse {\n  /**\n   * Standard JavaScript object representation for StreamingLlmGenerateResponse\n   */\n  export interface AsObject {\n    llmGenerationStreamResponse?: googleProtobuf003.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for StreamingLlmGenerateResponse\n   */\n  export interface AsProtobufJSON {\n    llmGenerationStreamResponse: googleProtobuf003.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExtractEntitiesRequest\n */\nexport class ExtractEntitiesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ExtractEntitiesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExtractEntitiesRequest();\n    ExtractEntitiesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExtractEntitiesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.text = _instance.text || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.intentName = _instance.intentName || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExtractEntitiesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.text = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.intentName = _reader.readString();\n          break;\n        case 5:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExtractEntitiesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExtractEntitiesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.text) {\n      _writer.writeString(2, _instance.text);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.intentName) {\n      _writer.writeString(4, _instance.intentName);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        5,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _text: string;\n  private _languageCode: string;\n  private _intentName: string;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExtractEntitiesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExtractEntitiesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.text = _value.text;\n    this.languageCode = _value.languageCode;\n    this.intentName = _value.intentName;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    ExtractEntitiesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExtractEntitiesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExtractEntitiesRequest.AsObject {\n    return {\n      parent: this.parent,\n      text: this.text,\n      languageCode: this.languageCode,\n      intentName: this.intentName,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExtractEntitiesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      text: this.text,\n      languageCode: this.languageCode,\n      intentName: this.intentName,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ExtractEntitiesRequest {\n  /**\n   * Standard JavaScript object representation for ExtractEntitiesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    text: string;\n    languageCode: string;\n    intentName: string;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ExtractEntitiesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    text: string;\n    languageCode: string;\n    intentName: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExtractEntitiesFuzzyRequest\n */\nexport class ExtractEntitiesFuzzyRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ExtractEntitiesFuzzyRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExtractEntitiesFuzzyRequest();\n    ExtractEntitiesFuzzyRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExtractEntitiesFuzzyRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.text = _instance.text || '';\n    _instance.potentialEntities = _instance.potentialEntities || [];\n    _instance.minimalScore = _instance.minimalScore || 0;\n    _instance.allowOverlaps = _instance.allowOverlaps || false;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExtractEntitiesFuzzyRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.text = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new EntityTypeFuzzyNerConfig();\n          _reader.readMessage(\n            messageInitializer3,\n            EntityTypeFuzzyNerConfig.deserializeBinaryFromReader\n          );\n          (_instance.potentialEntities =\n            _instance.potentialEntities || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.minimalScore = _reader.readFloat();\n          break;\n        case 5:\n          _instance.allowOverlaps = _reader.readBool();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExtractEntitiesFuzzyRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExtractEntitiesFuzzyRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.text) {\n      _writer.writeString(2, _instance.text);\n    }\n    if (_instance.potentialEntities && _instance.potentialEntities.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.potentialEntities as any,\n        EntityTypeFuzzyNerConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.minimalScore) {\n      _writer.writeFloat(4, _instance.minimalScore);\n    }\n    if (_instance.allowOverlaps) {\n      _writer.writeBool(5, _instance.allowOverlaps);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _text: string;\n  private _potentialEntities?: EntityTypeFuzzyNerConfig[];\n  private _minimalScore: number;\n  private _allowOverlaps: boolean;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExtractEntitiesFuzzyRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExtractEntitiesFuzzyRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.text = _value.text;\n    this.potentialEntities = (_value.potentialEntities || []).map(\n      m => new EntityTypeFuzzyNerConfig(m)\n    );\n    this.minimalScore = _value.minimalScore;\n    this.allowOverlaps = _value.allowOverlaps;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    ExtractEntitiesFuzzyRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get potentialEntities(): EntityTypeFuzzyNerConfig[] | undefined {\n    return this._potentialEntities;\n  }\n  set potentialEntities(value: EntityTypeFuzzyNerConfig[] | undefined) {\n    this._potentialEntities = value;\n  }\n  get minimalScore(): number {\n    return this._minimalScore;\n  }\n  set minimalScore(value: number) {\n    this._minimalScore = value;\n  }\n  get allowOverlaps(): boolean {\n    return this._allowOverlaps;\n  }\n  set allowOverlaps(value: boolean) {\n    this._allowOverlaps = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExtractEntitiesFuzzyRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExtractEntitiesFuzzyRequest.AsObject {\n    return {\n      parent: this.parent,\n      text: this.text,\n      potentialEntities: (this.potentialEntities || []).map(m => m.toObject()),\n      minimalScore: this.minimalScore,\n      allowOverlaps: this.allowOverlaps,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExtractEntitiesFuzzyRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      text: this.text,\n      potentialEntities: (this.potentialEntities || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      minimalScore: this.minimalScore,\n      allowOverlaps: this.allowOverlaps,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ExtractEntitiesFuzzyRequest {\n  /**\n   * Standard JavaScript object representation for ExtractEntitiesFuzzyRequest\n   */\n  export interface AsObject {\n    parent: string;\n    text: string;\n    potentialEntities?: EntityTypeFuzzyNerConfig.AsObject[];\n    minimalScore: number;\n    allowOverlaps: boolean;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ExtractEntitiesFuzzyRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    text: string;\n    potentialEntities: EntityTypeFuzzyNerConfig.AsProtobufJSON[] | null;\n    minimalScore: number;\n    allowOverlaps: boolean;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityTypeFuzzyNerConfig\n */\nexport class EntityTypeFuzzyNerConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityTypeFuzzyNerConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityTypeFuzzyNerConfig();\n    EntityTypeFuzzyNerConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityTypeFuzzyNerConfig) {\n    _instance.entityType = _instance.entityType || undefined;\n    _instance.minimalScore = _instance.minimalScore || 0;\n    _instance.entityValues = _instance.entityValues || [];\n    _instance.algorithm = _instance.algorithm || 0;\n    _instance.allowOverlaps = _instance.allowOverlaps || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityTypeFuzzyNerConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entityType = new ondewoNlu013.EntityType();\n          _reader.readMessage(\n            _instance.entityType,\n            ondewoNlu013.EntityType.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.minimalScore = _reader.readFloat();\n          break;\n        case 3:\n          (_instance.entityValues = _instance.entityValues || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.algorithm = _reader.readEnum();\n          break;\n        case 5:\n          _instance.allowOverlaps = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityTypeFuzzyNerConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityTypeFuzzyNerConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityType) {\n      _writer.writeMessage(\n        1,\n        _instance.entityType as any,\n        ondewoNlu013.EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.minimalScore) {\n      _writer.writeFloat(2, _instance.minimalScore);\n    }\n    if (_instance.entityValues && _instance.entityValues.length) {\n      _writer.writeRepeatedString(3, _instance.entityValues);\n    }\n    if (_instance.algorithm) {\n      _writer.writeEnum(4, _instance.algorithm);\n    }\n    if (_instance.allowOverlaps) {\n      _writer.writeBool(5, _instance.allowOverlaps);\n    }\n  }\n\n  private _entityType?: ondewoNlu013.EntityType;\n  private _minimalScore: number;\n  private _entityValues: string[];\n  private _algorithm: EntityTypeFuzzyNerConfig.FuzzyNerAlgorithm;\n  private _allowOverlaps: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityTypeFuzzyNerConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityTypeFuzzyNerConfig.AsObject>) {\n    _value = _value || {};\n    this.entityType = _value.entityType\n      ? new ondewoNlu013.EntityType(_value.entityType)\n      : undefined;\n    this.minimalScore = _value.minimalScore;\n    this.entityValues = (_value.entityValues || []).slice();\n    this.algorithm = _value.algorithm;\n    this.allowOverlaps = _value.allowOverlaps;\n    EntityTypeFuzzyNerConfig.refineValues(this);\n  }\n  get entityType(): ondewoNlu013.EntityType | undefined {\n    return this._entityType;\n  }\n  set entityType(value: ondewoNlu013.EntityType | undefined) {\n    this._entityType = value;\n  }\n  get minimalScore(): number {\n    return this._minimalScore;\n  }\n  set minimalScore(value: number) {\n    this._minimalScore = value;\n  }\n  get entityValues(): string[] {\n    return this._entityValues;\n  }\n  set entityValues(value: string[]) {\n    this._entityValues = value;\n  }\n  get algorithm(): EntityTypeFuzzyNerConfig.FuzzyNerAlgorithm {\n    return this._algorithm;\n  }\n  set algorithm(value: EntityTypeFuzzyNerConfig.FuzzyNerAlgorithm) {\n    this._algorithm = value;\n  }\n  get allowOverlaps(): boolean {\n    return this._allowOverlaps;\n  }\n  set allowOverlaps(value: boolean) {\n    this._allowOverlaps = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityTypeFuzzyNerConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityTypeFuzzyNerConfig.AsObject {\n    return {\n      entityType: this.entityType ? this.entityType.toObject() : undefined,\n      minimalScore: this.minimalScore,\n      entityValues: (this.entityValues || []).slice(),\n      algorithm: this.algorithm,\n      allowOverlaps: this.allowOverlaps\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityTypeFuzzyNerConfig.AsProtobufJSON {\n    return {\n      entityType: this.entityType\n        ? this.entityType.toProtobufJSON(options)\n        : null,\n      minimalScore: this.minimalScore,\n      entityValues: (this.entityValues || []).slice(),\n      algorithm:\n        EntityTypeFuzzyNerConfig.FuzzyNerAlgorithm[\n          this.algorithm === null || this.algorithm === undefined\n            ? 0\n            : this.algorithm\n        ],\n      allowOverlaps: this.allowOverlaps\n    };\n  }\n}\nexport module EntityTypeFuzzyNerConfig {\n  /**\n   * Standard JavaScript object representation for EntityTypeFuzzyNerConfig\n   */\n  export interface AsObject {\n    entityType?: ondewoNlu013.EntityType.AsObject;\n    minimalScore: number;\n    entityValues: string[];\n    algorithm: EntityTypeFuzzyNerConfig.FuzzyNerAlgorithm;\n    allowOverlaps: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for EntityTypeFuzzyNerConfig\n   */\n  export interface AsProtobufJSON {\n    entityType: ondewoNlu013.EntityType.AsProtobufJSON | null;\n    minimalScore: number;\n    entityValues: string[];\n    algorithm: string;\n    allowOverlaps: boolean;\n  }\n  export enum FuzzyNerAlgorithm {\n    PREFILTER_LEVENSHTEIN = 0,\n    LOCAL_MAXIMUM = 1\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityDetected\n */\nexport class EntityDetected implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityDetected';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityDetected();\n    EntityDetected.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityDetected) {\n    _instance.entity = _instance.entity || undefined;\n    _instance.extractionMethod = _instance.extractionMethod || '';\n    _instance.score = _instance.score || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityDetected,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entity = new ondewoNlu014.Intent.TrainingPhrase.Entity();\n          _reader.readMessage(\n            _instance.entity,\n            ondewoNlu014.Intent.TrainingPhrase.Entity\n              .deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.extractionMethod = _reader.readString();\n          break;\n        case 3:\n          _instance.score = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityDetected.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityDetected,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entity) {\n      _writer.writeMessage(\n        1,\n        _instance.entity as any,\n        ondewoNlu014.Intent.TrainingPhrase.Entity.serializeBinaryToWriter\n      );\n    }\n    if (_instance.extractionMethod) {\n      _writer.writeString(2, _instance.extractionMethod);\n    }\n    if (_instance.score) {\n      _writer.writeFloat(3, _instance.score);\n    }\n  }\n\n  private _entity?: ondewoNlu014.Intent.TrainingPhrase.Entity;\n  private _extractionMethod: string;\n  private _score: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityDetected to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityDetected.AsObject>) {\n    _value = _value || {};\n    this.entity = _value.entity\n      ? new ondewoNlu014.Intent.TrainingPhrase.Entity(_value.entity)\n      : undefined;\n    this.extractionMethod = _value.extractionMethod;\n    this.score = _value.score;\n    EntityDetected.refineValues(this);\n  }\n  get entity(): ondewoNlu014.Intent.TrainingPhrase.Entity | undefined {\n    return this._entity;\n  }\n  set entity(value: ondewoNlu014.Intent.TrainingPhrase.Entity | undefined) {\n    this._entity = value;\n  }\n  get extractionMethod(): string {\n    return this._extractionMethod;\n  }\n  set extractionMethod(value: string) {\n    this._extractionMethod = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityDetected.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityDetected.AsObject {\n    return {\n      entity: this.entity ? this.entity.toObject() : undefined,\n      extractionMethod: this.extractionMethod,\n      score: this.score\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityDetected.AsProtobufJSON {\n    return {\n      entity: this.entity ? this.entity.toProtobufJSON(options) : null,\n      extractionMethod: this.extractionMethod,\n      score: this.score\n    };\n  }\n}\nexport module EntityDetected {\n  /**\n   * Standard JavaScript object representation for EntityDetected\n   */\n  export interface AsObject {\n    entity?: ondewoNlu014.Intent.TrainingPhrase.Entity.AsObject;\n    extractionMethod: string;\n    score: number;\n  }\n\n  /**\n   * Protobuf JSON representation for EntityDetected\n   */\n  export interface AsProtobufJSON {\n    entity: ondewoNlu014.Intent.TrainingPhrase.Entity.AsProtobufJSON | null;\n    extractionMethod: string;\n    score: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ExtractEntitiesResponse\n */\nexport class ExtractEntitiesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ExtractEntitiesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ExtractEntitiesResponse();\n    ExtractEntitiesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ExtractEntitiesResponse) {\n    _instance.entitiesDetected = _instance.entitiesDetected || [];\n    _instance.text = _instance.text || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ExtractEntitiesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new EntityDetected();\n          _reader.readMessage(\n            messageInitializer1,\n            EntityDetected.deserializeBinaryFromReader\n          );\n          (_instance.entitiesDetected = _instance.entitiesDetected || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.text = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ExtractEntitiesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ExtractEntitiesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entitiesDetected && _instance.entitiesDetected.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.entitiesDetected as any,\n        EntityDetected.serializeBinaryToWriter\n      );\n    }\n    if (_instance.text) {\n      _writer.writeString(2, _instance.text);\n    }\n  }\n\n  private _entitiesDetected?: EntityDetected[];\n  private _text: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ExtractEntitiesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ExtractEntitiesResponse.AsObject>) {\n    _value = _value || {};\n    this.entitiesDetected = (_value.entitiesDetected || []).map(\n      m => new EntityDetected(m)\n    );\n    this.text = _value.text;\n    ExtractEntitiesResponse.refineValues(this);\n  }\n  get entitiesDetected(): EntityDetected[] | undefined {\n    return this._entitiesDetected;\n  }\n  set entitiesDetected(value: EntityDetected[] | undefined) {\n    this._entitiesDetected = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ExtractEntitiesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ExtractEntitiesResponse.AsObject {\n    return {\n      entitiesDetected: (this.entitiesDetected || []).map(m => m.toObject()),\n      text: this.text\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ExtractEntitiesResponse.AsProtobufJSON {\n    return {\n      entitiesDetected: (this.entitiesDetected || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      text: this.text\n    };\n  }\n}\nexport module ExtractEntitiesResponse {\n  /**\n   * Standard JavaScript object representation for ExtractEntitiesResponse\n   */\n  export interface AsObject {\n    entitiesDetected?: EntityDetected.AsObject[];\n    text: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ExtractEntitiesResponse\n   */\n  export interface AsProtobufJSON {\n    entitiesDetected: EntityDetected.AsProtobufJSON[] | null;\n    text: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAlternativeSentencesRequest\n */\nexport class GetAlternativeSentencesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAlternativeSentencesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAlternativeSentencesRequest();\n    GetAlternativeSentencesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAlternativeSentencesRequest) {\n    _instance.config = _instance.config || undefined;\n    _instance.sentence = _instance.sentence || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.parent = _instance.parent || '';\n    _instance.protectedWords = _instance.protectedWords || [];\n    _instance.wordsToChange = _instance.wordsToChange || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAlternativeSentencesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.config = new DataEnrichmentConfig();\n          _reader.readMessage(\n            _instance.config,\n            DataEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.sentence = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.parent = _reader.readString();\n          break;\n        case 6:\n          (_instance.protectedWords = _instance.protectedWords || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          (_instance.wordsToChange = _instance.wordsToChange || []).push(\n            _reader.readString()\n          );\n          break;\n        case 8:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAlternativeSentencesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAlternativeSentencesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.config) {\n      _writer.writeMessage(\n        1,\n        _instance.config as any,\n        DataEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sentence) {\n      _writer.writeString(2, _instance.sentence);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.parent) {\n      _writer.writeString(5, _instance.parent);\n    }\n    if (_instance.protectedWords && _instance.protectedWords.length) {\n      _writer.writeRepeatedString(6, _instance.protectedWords);\n    }\n    if (_instance.wordsToChange && _instance.wordsToChange.length) {\n      _writer.writeRepeatedString(7, _instance.wordsToChange);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        8,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _config?: DataEnrichmentConfig;\n  private _sentence: string;\n  private _languageCode: string;\n  private _parent: string;\n  private _protectedWords: string[];\n  private _wordsToChange: string[];\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAlternativeSentencesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetAlternativeSentencesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.config = _value.config\n      ? new DataEnrichmentConfig(_value.config)\n      : undefined;\n    this.sentence = _value.sentence;\n    this.languageCode = _value.languageCode;\n    this.parent = _value.parent;\n    this.protectedWords = (_value.protectedWords || []).slice();\n    this.wordsToChange = (_value.wordsToChange || []).slice();\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    GetAlternativeSentencesRequest.refineValues(this);\n  }\n  get config(): DataEnrichmentConfig | undefined {\n    return this._config;\n  }\n  set config(value: DataEnrichmentConfig | undefined) {\n    this._config = value;\n  }\n  get sentence(): string {\n    return this._sentence;\n  }\n  set sentence(value: string) {\n    this._sentence = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get protectedWords(): string[] {\n    return this._protectedWords;\n  }\n  set protectedWords(value: string[]) {\n    this._protectedWords = value;\n  }\n  get wordsToChange(): string[] {\n    return this._wordsToChange;\n  }\n  set wordsToChange(value: string[]) {\n    this._wordsToChange = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAlternativeSentencesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAlternativeSentencesRequest.AsObject {\n    return {\n      config: this.config ? this.config.toObject() : undefined,\n      sentence: this.sentence,\n      languageCode: this.languageCode,\n      parent: this.parent,\n      protectedWords: (this.protectedWords || []).slice(),\n      wordsToChange: (this.wordsToChange || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAlternativeSentencesRequest.AsProtobufJSON {\n    return {\n      config: this.config ? this.config.toProtobufJSON(options) : null,\n      sentence: this.sentence,\n      languageCode: this.languageCode,\n      parent: this.parent,\n      protectedWords: (this.protectedWords || []).slice(),\n      wordsToChange: (this.wordsToChange || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetAlternativeSentencesRequest {\n  /**\n   * Standard JavaScript object representation for GetAlternativeSentencesRequest\n   */\n  export interface AsObject {\n    config?: DataEnrichmentConfig.AsObject;\n    sentence: string;\n    languageCode: string;\n    parent: string;\n    protectedWords: string[];\n    wordsToChange: string[];\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAlternativeSentencesRequest\n   */\n  export interface AsProtobufJSON {\n    config: DataEnrichmentConfig.AsProtobufJSON | null;\n    sentence: string;\n    languageCode: string;\n    parent: string;\n    protectedWords: string[];\n    wordsToChange: string[];\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GenerateUserSaysRequest\n */\nexport class GenerateUserSaysRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GenerateUserSaysRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GenerateUserSaysRequest();\n    GenerateUserSaysRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GenerateUserSaysRequest) {\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.parent = _instance.parent || '';\n    _instance.nRepeatSynonym = _instance.nRepeatSynonym || 0;\n    _instance.branch = _instance.branch || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GenerateUserSaysRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.parent = _reader.readString();\n          break;\n        case 6:\n          _instance.nRepeatSynonym = _reader.readInt32();\n          break;\n        case 8:\n          _instance.branch = _reader.readString();\n          break;\n        case 9:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GenerateUserSaysRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GenerateUserSaysRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.parent) {\n      _writer.writeString(5, _instance.parent);\n    }\n    if (_instance.nRepeatSynonym) {\n      _writer.writeInt32(6, _instance.nRepeatSynonym);\n    }\n    if (_instance.branch) {\n      _writer.writeString(8, _instance.branch);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        9,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _languageCode: string;\n  private _parent: string;\n  private _nRepeatSynonym: number;\n  private _branch: string;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GenerateUserSaysRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GenerateUserSaysRequest.AsObject>) {\n    _value = _value || {};\n    this.languageCode = _value.languageCode;\n    this.parent = _value.parent;\n    this.nRepeatSynonym = _value.nRepeatSynonym;\n    this.branch = _value.branch;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    GenerateUserSaysRequest.refineValues(this);\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get nRepeatSynonym(): number {\n    return this._nRepeatSynonym;\n  }\n  set nRepeatSynonym(value: number) {\n    this._nRepeatSynonym = value;\n  }\n  get branch(): string {\n    return this._branch;\n  }\n  set branch(value: string) {\n    this._branch = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GenerateUserSaysRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GenerateUserSaysRequest.AsObject {\n    return {\n      languageCode: this.languageCode,\n      parent: this.parent,\n      nRepeatSynonym: this.nRepeatSynonym,\n      branch: this.branch,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GenerateUserSaysRequest.AsProtobufJSON {\n    return {\n      languageCode: this.languageCode,\n      parent: this.parent,\n      nRepeatSynonym: this.nRepeatSynonym,\n      branch: this.branch,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GenerateUserSaysRequest {\n  /**\n   * Standard JavaScript object representation for GenerateUserSaysRequest\n   */\n  export interface AsObject {\n    languageCode: string;\n    parent: string;\n    nRepeatSynonym: number;\n    branch: string;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GenerateUserSaysRequest\n   */\n  export interface AsProtobufJSON {\n    languageCode: string;\n    parent: string;\n    nRepeatSynonym: number;\n    branch: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GenerateResponsesRequest\n */\nexport class GenerateResponsesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GenerateResponsesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GenerateResponsesRequest();\n    GenerateResponsesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GenerateResponsesRequest) {\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.parent = _instance.parent || '';\n    _instance.nRepeatSynonym = _instance.nRepeatSynonym || 0;\n    _instance.branch = _instance.branch || '';\n    _instance.dropUnknownParameters = _instance.dropUnknownParameters || false;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GenerateResponsesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.parent = _reader.readString();\n          break;\n        case 7:\n          _instance.nRepeatSynonym = _reader.readInt32();\n          break;\n        case 8:\n          _instance.branch = _reader.readString();\n          break;\n        case 9:\n          _instance.dropUnknownParameters = _reader.readBool();\n          break;\n        case 10:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GenerateResponsesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GenerateResponsesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.parent) {\n      _writer.writeString(5, _instance.parent);\n    }\n    if (_instance.nRepeatSynonym) {\n      _writer.writeInt32(7, _instance.nRepeatSynonym);\n    }\n    if (_instance.branch) {\n      _writer.writeString(8, _instance.branch);\n    }\n    if (_instance.dropUnknownParameters) {\n      _writer.writeBool(9, _instance.dropUnknownParameters);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        10,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _languageCode: string;\n  private _parent: string;\n  private _nRepeatSynonym: number;\n  private _branch: string;\n  private _dropUnknownParameters: boolean;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GenerateResponsesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GenerateResponsesRequest.AsObject>) {\n    _value = _value || {};\n    this.languageCode = _value.languageCode;\n    this.parent = _value.parent;\n    this.nRepeatSynonym = _value.nRepeatSynonym;\n    this.branch = _value.branch;\n    this.dropUnknownParameters = _value.dropUnknownParameters;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    GenerateResponsesRequest.refineValues(this);\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get nRepeatSynonym(): number {\n    return this._nRepeatSynonym;\n  }\n  set nRepeatSynonym(value: number) {\n    this._nRepeatSynonym = value;\n  }\n  get branch(): string {\n    return this._branch;\n  }\n  set branch(value: string) {\n    this._branch = value;\n  }\n  get dropUnknownParameters(): boolean {\n    return this._dropUnknownParameters;\n  }\n  set dropUnknownParameters(value: boolean) {\n    this._dropUnknownParameters = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GenerateResponsesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GenerateResponsesRequest.AsObject {\n    return {\n      languageCode: this.languageCode,\n      parent: this.parent,\n      nRepeatSynonym: this.nRepeatSynonym,\n      branch: this.branch,\n      dropUnknownParameters: this.dropUnknownParameters,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GenerateResponsesRequest.AsProtobufJSON {\n    return {\n      languageCode: this.languageCode,\n      parent: this.parent,\n      nRepeatSynonym: this.nRepeatSynonym,\n      branch: this.branch,\n      dropUnknownParameters: this.dropUnknownParameters,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GenerateResponsesRequest {\n  /**\n   * Standard JavaScript object representation for GenerateResponsesRequest\n   */\n  export interface AsObject {\n    languageCode: string;\n    parent: string;\n    nRepeatSynonym: number;\n    branch: string;\n    dropUnknownParameters: boolean;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GenerateResponsesRequest\n   */\n  export interface AsProtobufJSON {\n    languageCode: string;\n    parent: string;\n    nRepeatSynonym: number;\n    branch: string;\n    dropUnknownParameters: boolean;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAlternativeTrainingPhrasesRequest\n */\nexport class GetAlternativeTrainingPhrasesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAlternativeTrainingPhrasesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAlternativeTrainingPhrasesRequest();\n    GetAlternativeTrainingPhrasesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAlternativeTrainingPhrasesRequest) {\n    _instance.config = _instance.config || undefined;\n    _instance.trainingPhrase = _instance.trainingPhrase || undefined;\n    _instance.intentName = _instance.intentName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.parent = _instance.parent || '';\n    _instance.detectEntities = _instance.detectEntities || false;\n    _instance.similarityThreshold = _instance.similarityThreshold || 0;\n    _instance.protectedWords = _instance.protectedWords || [];\n    _instance.wordsToChange = _instance.wordsToChange || [];\n    _instance.branch = _instance.branch || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAlternativeTrainingPhrasesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.config = new DataEnrichmentConfig();\n          _reader.readMessage(\n            _instance.config,\n            DataEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.trainingPhrase = new ondewoNlu014.Intent.TrainingPhrase();\n          _reader.readMessage(\n            _instance.trainingPhrase,\n            ondewoNlu014.Intent.TrainingPhrase.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.intentName = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.parent = _reader.readString();\n          break;\n        case 6:\n          _instance.detectEntities = _reader.readBool();\n          break;\n        case 7:\n          _instance.similarityThreshold = _reader.readFloat();\n          break;\n        case 8:\n          (_instance.protectedWords = _instance.protectedWords || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          (_instance.wordsToChange = _instance.wordsToChange || []).push(\n            _reader.readString()\n          );\n          break;\n        case 10:\n          _instance.branch = _reader.readString();\n          break;\n        case 11:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAlternativeTrainingPhrasesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAlternativeTrainingPhrasesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.config) {\n      _writer.writeMessage(\n        1,\n        _instance.config as any,\n        DataEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.trainingPhrase) {\n      _writer.writeMessage(\n        2,\n        _instance.trainingPhrase as any,\n        ondewoNlu014.Intent.TrainingPhrase.serializeBinaryToWriter\n      );\n    }\n    if (_instance.intentName) {\n      _writer.writeString(3, _instance.intentName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.parent) {\n      _writer.writeString(5, _instance.parent);\n    }\n    if (_instance.detectEntities) {\n      _writer.writeBool(6, _instance.detectEntities);\n    }\n    if (_instance.similarityThreshold) {\n      _writer.writeFloat(7, _instance.similarityThreshold);\n    }\n    if (_instance.protectedWords && _instance.protectedWords.length) {\n      _writer.writeRepeatedString(8, _instance.protectedWords);\n    }\n    if (_instance.wordsToChange && _instance.wordsToChange.length) {\n      _writer.writeRepeatedString(9, _instance.wordsToChange);\n    }\n    if (_instance.branch) {\n      _writer.writeString(10, _instance.branch);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        11,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _config?: DataEnrichmentConfig;\n  private _trainingPhrase?: ondewoNlu014.Intent.TrainingPhrase;\n  private _intentName: string;\n  private _languageCode: string;\n  private _parent: string;\n  private _detectEntities: boolean;\n  private _similarityThreshold: number;\n  private _protectedWords: string[];\n  private _wordsToChange: string[];\n  private _branch: string;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAlternativeTrainingPhrasesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetAlternativeTrainingPhrasesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.config = _value.config\n      ? new DataEnrichmentConfig(_value.config)\n      : undefined;\n    this.trainingPhrase = _value.trainingPhrase\n      ? new ondewoNlu014.Intent.TrainingPhrase(_value.trainingPhrase)\n      : undefined;\n    this.intentName = _value.intentName;\n    this.languageCode = _value.languageCode;\n    this.parent = _value.parent;\n    this.detectEntities = _value.detectEntities;\n    this.similarityThreshold = _value.similarityThreshold;\n    this.protectedWords = (_value.protectedWords || []).slice();\n    this.wordsToChange = (_value.wordsToChange || []).slice();\n    this.branch = _value.branch;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    GetAlternativeTrainingPhrasesRequest.refineValues(this);\n  }\n  get config(): DataEnrichmentConfig | undefined {\n    return this._config;\n  }\n  set config(value: DataEnrichmentConfig | undefined) {\n    this._config = value;\n  }\n  get trainingPhrase(): ondewoNlu014.Intent.TrainingPhrase | undefined {\n    return this._trainingPhrase;\n  }\n  set trainingPhrase(value: ondewoNlu014.Intent.TrainingPhrase | undefined) {\n    this._trainingPhrase = value;\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get detectEntities(): boolean {\n    return this._detectEntities;\n  }\n  set detectEntities(value: boolean) {\n    this._detectEntities = value;\n  }\n  get similarityThreshold(): number {\n    return this._similarityThreshold;\n  }\n  set similarityThreshold(value: number) {\n    this._similarityThreshold = value;\n  }\n  get protectedWords(): string[] {\n    return this._protectedWords;\n  }\n  set protectedWords(value: string[]) {\n    this._protectedWords = value;\n  }\n  get wordsToChange(): string[] {\n    return this._wordsToChange;\n  }\n  set wordsToChange(value: string[]) {\n    this._wordsToChange = value;\n  }\n  get branch(): string {\n    return this._branch;\n  }\n  set branch(value: string) {\n    this._branch = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAlternativeTrainingPhrasesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAlternativeTrainingPhrasesRequest.AsObject {\n    return {\n      config: this.config ? this.config.toObject() : undefined,\n      trainingPhrase: this.trainingPhrase\n        ? this.trainingPhrase.toObject()\n        : undefined,\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      parent: this.parent,\n      detectEntities: this.detectEntities,\n      similarityThreshold: this.similarityThreshold,\n      protectedWords: (this.protectedWords || []).slice(),\n      wordsToChange: (this.wordsToChange || []).slice(),\n      branch: this.branch,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAlternativeTrainingPhrasesRequest.AsProtobufJSON {\n    return {\n      config: this.config ? this.config.toProtobufJSON(options) : null,\n      trainingPhrase: this.trainingPhrase\n        ? this.trainingPhrase.toProtobufJSON(options)\n        : null,\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      parent: this.parent,\n      detectEntities: this.detectEntities,\n      similarityThreshold: this.similarityThreshold,\n      protectedWords: (this.protectedWords || []).slice(),\n      wordsToChange: (this.wordsToChange || []).slice(),\n      branch: this.branch,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetAlternativeTrainingPhrasesRequest {\n  /**\n   * Standard JavaScript object representation for GetAlternativeTrainingPhrasesRequest\n   */\n  export interface AsObject {\n    config?: DataEnrichmentConfig.AsObject;\n    trainingPhrase?: ondewoNlu014.Intent.TrainingPhrase.AsObject;\n    intentName: string;\n    languageCode: string;\n    parent: string;\n    detectEntities: boolean;\n    similarityThreshold: number;\n    protectedWords: string[];\n    wordsToChange: string[];\n    branch: string;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAlternativeTrainingPhrasesRequest\n   */\n  export interface AsProtobufJSON {\n    config: DataEnrichmentConfig.AsProtobufJSON | null;\n    trainingPhrase: ondewoNlu014.Intent.TrainingPhrase.AsProtobufJSON | null;\n    intentName: string;\n    languageCode: string;\n    parent: string;\n    detectEntities: boolean;\n    similarityThreshold: number;\n    protectedWords: string[];\n    wordsToChange: string[];\n    branch: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSynonymsRequest\n */\nexport class GetSynonymsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSynonymsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSynonymsRequest();\n    GetSynonymsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSynonymsRequest) {\n    _instance.config = _instance.config || undefined;\n    _instance.word = _instance.word || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.parent = _instance.parent || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSynonymsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.config = new DataEnrichmentConfig();\n          _reader.readMessage(\n            _instance.config,\n            DataEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.word = _reader.readString();\n          break;\n        case 4:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 5:\n          _instance.parent = _reader.readString();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSynonymsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSynonymsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.config) {\n      _writer.writeMessage(\n        1,\n        _instance.config as any,\n        DataEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.word) {\n      _writer.writeString(2, _instance.word);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(4, _instance.languageCode);\n    }\n    if (_instance.parent) {\n      _writer.writeString(5, _instance.parent);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _config?: DataEnrichmentConfig;\n  private _word: string;\n  private _languageCode: string;\n  private _parent: string;\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSynonymsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetSynonymsRequest.AsObject>) {\n    _value = _value || {};\n    this.config = _value.config\n      ? new DataEnrichmentConfig(_value.config)\n      : undefined;\n    this.word = _value.word;\n    this.languageCode = _value.languageCode;\n    this.parent = _value.parent;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    GetSynonymsRequest.refineValues(this);\n  }\n  get config(): DataEnrichmentConfig | undefined {\n    return this._config;\n  }\n  set config(value: DataEnrichmentConfig | undefined) {\n    this._config = value;\n  }\n  get word(): string {\n    return this._word;\n  }\n  set word(value: string) {\n    this._word = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSynonymsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSynonymsRequest.AsObject {\n    return {\n      config: this.config ? this.config.toObject() : undefined,\n      word: this.word,\n      languageCode: this.languageCode,\n      parent: this.parent,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSynonymsRequest.AsProtobufJSON {\n    return {\n      config: this.config ? this.config.toProtobufJSON(options) : null,\n      word: this.word,\n      languageCode: this.languageCode,\n      parent: this.parent,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetSynonymsRequest {\n  /**\n   * Standard JavaScript object representation for GetSynonymsRequest\n   */\n  export interface AsObject {\n    config?: DataEnrichmentConfig.AsObject;\n    word: string;\n    languageCode: string;\n    parent: string;\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSynonymsRequest\n   */\n  export interface AsProtobufJSON {\n    config: DataEnrichmentConfig.AsProtobufJSON | null;\n    word: string;\n    languageCode: string;\n    parent: string;\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSynonymsResponse\n */\nexport class GetSynonymsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSynonymsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSynonymsResponse();\n    GetSynonymsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSynonymsResponse) {\n    _instance.synonyms = _instance.synonyms || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSynonymsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new Synonym();\n          _reader.readMessage(\n            messageInitializer1,\n            Synonym.deserializeBinaryFromReader\n          );\n          (_instance.synonyms = _instance.synonyms || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSynonymsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSynonymsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.synonyms && _instance.synonyms.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.synonyms as any,\n        Synonym.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _synonyms?: Synonym[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSynonymsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetSynonymsResponse.AsObject>) {\n    _value = _value || {};\n    this.synonyms = (_value.synonyms || []).map(m => new Synonym(m));\n    GetSynonymsResponse.refineValues(this);\n  }\n  get synonyms(): Synonym[] | undefined {\n    return this._synonyms;\n  }\n  set synonyms(value: Synonym[] | undefined) {\n    this._synonyms = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSynonymsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSynonymsResponse.AsObject {\n    return {\n      synonyms: (this.synonyms || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSynonymsResponse.AsProtobufJSON {\n    return {\n      synonyms: (this.synonyms || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module GetSynonymsResponse {\n  /**\n   * Standard JavaScript object representation for GetSynonymsResponse\n   */\n  export interface AsObject {\n    synonyms?: Synonym.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetSynonymsResponse\n   */\n  export interface AsProtobufJSON {\n    synonyms: Synonym.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.Synonym\n */\nexport class Synonym implements GrpcMessage {\n  static id = 'ondewo.nlu.Synonym';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Synonym();\n    Synonym.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Synonym) {\n    _instance.synonym = _instance.synonym || '';\n    _instance.score = _instance.score || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: Synonym,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.synonym = _reader.readString();\n          break;\n        case 2:\n          _instance.score = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Synonym.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: Synonym, _writer: BinaryWriter) {\n    if (_instance.synonym) {\n      _writer.writeString(1, _instance.synonym);\n    }\n    if (_instance.score) {\n      _writer.writeInt32(2, _instance.score);\n    }\n  }\n\n  private _synonym: string;\n  private _score: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Synonym to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Synonym.AsObject>) {\n    _value = _value || {};\n    this.synonym = _value.synonym;\n    this.score = _value.score;\n    Synonym.refineValues(this);\n  }\n  get synonym(): string {\n    return this._synonym;\n  }\n  set synonym(value: string) {\n    this._synonym = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Synonym.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Synonym.AsObject {\n    return {\n      synonym: this.synonym,\n      score: this.score\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Synonym.AsProtobufJSON {\n    return {\n      synonym: this.synonym,\n      score: this.score\n    };\n  }\n}\nexport module Synonym {\n  /**\n   * Standard JavaScript object representation for Synonym\n   */\n  export interface AsObject {\n    synonym: string;\n    score: number;\n  }\n\n  /**\n   * Protobuf JSON representation for Synonym\n   */\n  export interface AsProtobufJSON {\n    synonym: string;\n    score: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAlternativeSentencesResponse\n */\nexport class GetAlternativeSentencesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAlternativeSentencesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAlternativeSentencesResponse();\n    GetAlternativeSentencesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAlternativeSentencesResponse) {\n    _instance.alternativeSentences = _instance.alternativeSentences || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAlternativeSentencesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new AltSentence();\n          _reader.readMessage(\n            messageInitializer1,\n            AltSentence.deserializeBinaryFromReader\n          );\n          (_instance.alternativeSentences =\n            _instance.alternativeSentences || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAlternativeSentencesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAlternativeSentencesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.alternativeSentences &&\n      _instance.alternativeSentences.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.alternativeSentences as any,\n        AltSentence.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _alternativeSentences?: AltSentence[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAlternativeSentencesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetAlternativeSentencesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.alternativeSentences = (_value.alternativeSentences || []).map(\n      m => new AltSentence(m)\n    );\n    GetAlternativeSentencesResponse.refineValues(this);\n  }\n  get alternativeSentences(): AltSentence[] | undefined {\n    return this._alternativeSentences;\n  }\n  set alternativeSentences(value: AltSentence[] | undefined) {\n    this._alternativeSentences = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAlternativeSentencesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAlternativeSentencesResponse.AsObject {\n    return {\n      alternativeSentences: (this.alternativeSentences || []).map(m =>\n        m.toObject()\n      )\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAlternativeSentencesResponse.AsProtobufJSON {\n    return {\n      alternativeSentences: (this.alternativeSentences || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module GetAlternativeSentencesResponse {\n  /**\n   * Standard JavaScript object representation for GetAlternativeSentencesResponse\n   */\n  export interface AsObject {\n    alternativeSentences?: AltSentence.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetAlternativeSentencesResponse\n   */\n  export interface AsProtobufJSON {\n    alternativeSentences: AltSentence.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GenerateResponsesResponse\n */\nexport class GenerateResponsesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GenerateResponsesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GenerateResponsesResponse();\n    GenerateResponsesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GenerateResponsesResponse) {\n    _instance.responses = _instance.responses || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GenerateResponsesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.responses = _instance.responses || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GenerateResponsesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GenerateResponsesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.responses && _instance.responses.length) {\n      _writer.writeRepeatedString(1, _instance.responses);\n    }\n  }\n\n  private _responses: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GenerateResponsesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GenerateResponsesResponse.AsObject>) {\n    _value = _value || {};\n    this.responses = (_value.responses || []).slice();\n    GenerateResponsesResponse.refineValues(this);\n  }\n  get responses(): string[] {\n    return this._responses;\n  }\n  set responses(value: string[]) {\n    this._responses = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GenerateResponsesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GenerateResponsesResponse.AsObject {\n    return {\n      responses: (this.responses || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GenerateResponsesResponse.AsProtobufJSON {\n    return {\n      responses: (this.responses || []).slice()\n    };\n  }\n}\nexport module GenerateResponsesResponse {\n  /**\n   * Standard JavaScript object representation for GenerateResponsesResponse\n   */\n  export interface AsObject {\n    responses: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for GenerateResponsesResponse\n   */\n  export interface AsProtobufJSON {\n    responses: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GenerateUserSaysResponse\n */\nexport class GenerateUserSaysResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GenerateUserSaysResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GenerateUserSaysResponse();\n    GenerateUserSaysResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GenerateUserSaysResponse) {\n    _instance.userSays = _instance.userSays || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GenerateUserSaysResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.userSays = _instance.userSays || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GenerateUserSaysResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GenerateUserSaysResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userSays && _instance.userSays.length) {\n      _writer.writeRepeatedString(1, _instance.userSays);\n    }\n  }\n\n  private _userSays: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GenerateUserSaysResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GenerateUserSaysResponse.AsObject>) {\n    _value = _value || {};\n    this.userSays = (_value.userSays || []).slice();\n    GenerateUserSaysResponse.refineValues(this);\n  }\n  get userSays(): string[] {\n    return this._userSays;\n  }\n  set userSays(value: string[]) {\n    this._userSays = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GenerateUserSaysResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GenerateUserSaysResponse.AsObject {\n    return {\n      userSays: (this.userSays || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GenerateUserSaysResponse.AsProtobufJSON {\n    return {\n      userSays: (this.userSays || []).slice()\n    };\n  }\n}\nexport module GenerateUserSaysResponse {\n  /**\n   * Standard JavaScript object representation for GenerateUserSaysResponse\n   */\n  export interface AsObject {\n    userSays: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for GenerateUserSaysResponse\n   */\n  export interface AsProtobufJSON {\n    userSays: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetAlternativeTrainingPhrasesResponse\n */\nexport class GetAlternativeTrainingPhrasesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.GetAlternativeTrainingPhrasesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAlternativeTrainingPhrasesResponse();\n    GetAlternativeTrainingPhrasesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAlternativeTrainingPhrasesResponse) {\n    _instance.alternativeTrainingPhrases =\n      _instance.alternativeTrainingPhrases || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAlternativeTrainingPhrasesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new AltTrainingPhrase();\n          _reader.readMessage(\n            messageInitializer1,\n            AltTrainingPhrase.deserializeBinaryFromReader\n          );\n          (_instance.alternativeTrainingPhrases =\n            _instance.alternativeTrainingPhrases || []).push(\n            messageInitializer1\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAlternativeTrainingPhrasesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAlternativeTrainingPhrasesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.alternativeTrainingPhrases &&\n      _instance.alternativeTrainingPhrases.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.alternativeTrainingPhrases as any,\n        AltTrainingPhrase.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _alternativeTrainingPhrases?: AltTrainingPhrase[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAlternativeTrainingPhrasesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetAlternativeTrainingPhrasesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.alternativeTrainingPhrases = (\n      _value.alternativeTrainingPhrases || []\n    ).map(m => new AltTrainingPhrase(m));\n    GetAlternativeTrainingPhrasesResponse.refineValues(this);\n  }\n  get alternativeTrainingPhrases(): AltTrainingPhrase[] | undefined {\n    return this._alternativeTrainingPhrases;\n  }\n  set alternativeTrainingPhrases(value: AltTrainingPhrase[] | undefined) {\n    this._alternativeTrainingPhrases = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAlternativeTrainingPhrasesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAlternativeTrainingPhrasesResponse.AsObject {\n    return {\n      alternativeTrainingPhrases: (\n        this.alternativeTrainingPhrases || []\n      ).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAlternativeTrainingPhrasesResponse.AsProtobufJSON {\n    return {\n      alternativeTrainingPhrases: (\n        this.alternativeTrainingPhrases || []\n      ).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module GetAlternativeTrainingPhrasesResponse {\n  /**\n   * Standard JavaScript object representation for GetAlternativeTrainingPhrasesResponse\n   */\n  export interface AsObject {\n    alternativeTrainingPhrases?: AltTrainingPhrase.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for GetAlternativeTrainingPhrasesResponse\n   */\n  export interface AsProtobufJSON {\n    alternativeTrainingPhrases: AltTrainingPhrase.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AltSentence\n */\nexport class AltSentence implements GrpcMessage {\n  static id = 'ondewo.nlu.AltSentence';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AltSentence();\n    AltSentence.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AltSentence) {\n    _instance.sentence = _instance.sentence || '';\n    _instance.score = _instance.score || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AltSentence,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sentence = _reader.readString();\n          break;\n        case 2:\n          _instance.score = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AltSentence.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AltSentence,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sentence) {\n      _writer.writeString(1, _instance.sentence);\n    }\n    if (_instance.score) {\n      _writer.writeFloat(2, _instance.score);\n    }\n  }\n\n  private _sentence: string;\n  private _score: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AltSentence to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AltSentence.AsObject>) {\n    _value = _value || {};\n    this.sentence = _value.sentence;\n    this.score = _value.score;\n    AltSentence.refineValues(this);\n  }\n  get sentence(): string {\n    return this._sentence;\n  }\n  set sentence(value: string) {\n    this._sentence = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AltSentence.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AltSentence.AsObject {\n    return {\n      sentence: this.sentence,\n      score: this.score\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AltSentence.AsProtobufJSON {\n    return {\n      sentence: this.sentence,\n      score: this.score\n    };\n  }\n}\nexport module AltSentence {\n  /**\n   * Standard JavaScript object representation for AltSentence\n   */\n  export interface AsObject {\n    sentence: string;\n    score: number;\n  }\n\n  /**\n   * Protobuf JSON representation for AltSentence\n   */\n  export interface AsProtobufJSON {\n    sentence: string;\n    score: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AltTrainingPhrase\n */\nexport class AltTrainingPhrase implements GrpcMessage {\n  static id = 'ondewo.nlu.AltTrainingPhrase';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AltTrainingPhrase();\n    AltTrainingPhrase.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AltTrainingPhrase) {\n    _instance.trainingPhrase = _instance.trainingPhrase || undefined;\n    _instance.score = _instance.score || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AltTrainingPhrase,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.trainingPhrase = new ondewoNlu014.Intent.TrainingPhrase();\n          _reader.readMessage(\n            _instance.trainingPhrase,\n            ondewoNlu014.Intent.TrainingPhrase.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.score = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AltTrainingPhrase.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AltTrainingPhrase,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.trainingPhrase) {\n      _writer.writeMessage(\n        1,\n        _instance.trainingPhrase as any,\n        ondewoNlu014.Intent.TrainingPhrase.serializeBinaryToWriter\n      );\n    }\n    if (_instance.score) {\n      _writer.writeFloat(2, _instance.score);\n    }\n  }\n\n  private _trainingPhrase?: ondewoNlu014.Intent.TrainingPhrase;\n  private _score: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AltTrainingPhrase to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AltTrainingPhrase.AsObject>) {\n    _value = _value || {};\n    this.trainingPhrase = _value.trainingPhrase\n      ? new ondewoNlu014.Intent.TrainingPhrase(_value.trainingPhrase)\n      : undefined;\n    this.score = _value.score;\n    AltTrainingPhrase.refineValues(this);\n  }\n  get trainingPhrase(): ondewoNlu014.Intent.TrainingPhrase | undefined {\n    return this._trainingPhrase;\n  }\n  set trainingPhrase(value: ondewoNlu014.Intent.TrainingPhrase | undefined) {\n    this._trainingPhrase = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AltTrainingPhrase.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AltTrainingPhrase.AsObject {\n    return {\n      trainingPhrase: this.trainingPhrase\n        ? this.trainingPhrase.toObject()\n        : undefined,\n      score: this.score\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AltTrainingPhrase.AsProtobufJSON {\n    return {\n      trainingPhrase: this.trainingPhrase\n        ? this.trainingPhrase.toProtobufJSON(options)\n        : null,\n      score: this.score\n    };\n  }\n}\nexport module AltTrainingPhrase {\n  /**\n   * Standard JavaScript object representation for AltTrainingPhrase\n   */\n  export interface AsObject {\n    trainingPhrase?: ondewoNlu014.Intent.TrainingPhrase.AsObject;\n    score: number;\n  }\n\n  /**\n   * Protobuf JSON representation for AltTrainingPhrase\n   */\n  export interface AsProtobufJSON {\n    trainingPhrase: ondewoNlu014.Intent.TrainingPhrase.AsProtobufJSON | null;\n    score: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DataEnrichmentConfig\n */\nexport class DataEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.DataEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DataEnrichmentConfig();\n    DataEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DataEnrichmentConfig) {\n    _instance.entityEnrichment = _instance.entityEnrichment || undefined;\n    _instance.thesaurusEnrichment = _instance.thesaurusEnrichment || undefined;\n    _instance.word2vecEnrichment = _instance.word2vecEnrichment || undefined;\n    _instance.wordNetEnrichment = _instance.wordNetEnrichment || undefined;\n    _instance.gpt2Enrichment = _instance.gpt2Enrichment || undefined;\n    _instance.gloveEnrichment = _instance.gloveEnrichment || undefined;\n    _instance.bertEnrichment = _instance.bertEnrichment || undefined;\n    _instance.xlnetEnrichment = _instance.xlnetEnrichment || undefined;\n    _instance.llmEnrichment = _instance.llmEnrichment || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DataEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entityEnrichment = new EntityEnrichmentConfig();\n          _reader.readMessage(\n            _instance.entityEnrichment,\n            EntityEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.thesaurusEnrichment = new ThesaurusEnrichmentConfig();\n          _reader.readMessage(\n            _instance.thesaurusEnrichment,\n            ThesaurusEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.word2vecEnrichment = new Word2VecEnrichmentConfig();\n          _reader.readMessage(\n            _instance.word2vecEnrichment,\n            Word2VecEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.wordNetEnrichment = new WordNetAugEnrichmentConfig();\n          _reader.readMessage(\n            _instance.wordNetEnrichment,\n            WordNetAugEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.gpt2Enrichment = new GPT2EnrichmentConfig();\n          _reader.readMessage(\n            _instance.gpt2Enrichment,\n            GPT2EnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.gloveEnrichment = new GloVeEnrichmentConfig();\n          _reader.readMessage(\n            _instance.gloveEnrichment,\n            GloVeEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.bertEnrichment = new BertAugEnrichmentConfig();\n          _reader.readMessage(\n            _instance.bertEnrichment,\n            BertAugEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.xlnetEnrichment = new XLNetAugEnrichmentConfig();\n          _reader.readMessage(\n            _instance.xlnetEnrichment,\n            XLNetAugEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.llmEnrichment = new LlmEnrichmentConfig();\n          _reader.readMessage(\n            _instance.llmEnrichment,\n            LlmEnrichmentConfig.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DataEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DataEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityEnrichment) {\n      _writer.writeMessage(\n        1,\n        _instance.entityEnrichment as any,\n        EntityEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.thesaurusEnrichment) {\n      _writer.writeMessage(\n        2,\n        _instance.thesaurusEnrichment as any,\n        ThesaurusEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.word2vecEnrichment) {\n      _writer.writeMessage(\n        3,\n        _instance.word2vecEnrichment as any,\n        Word2VecEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.wordNetEnrichment) {\n      _writer.writeMessage(\n        4,\n        _instance.wordNetEnrichment as any,\n        WordNetAugEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.gpt2Enrichment) {\n      _writer.writeMessage(\n        5,\n        _instance.gpt2Enrichment as any,\n        GPT2EnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.gloveEnrichment) {\n      _writer.writeMessage(\n        6,\n        _instance.gloveEnrichment as any,\n        GloVeEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.bertEnrichment) {\n      _writer.writeMessage(\n        8,\n        _instance.bertEnrichment as any,\n        BertAugEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.xlnetEnrichment) {\n      _writer.writeMessage(\n        9,\n        _instance.xlnetEnrichment as any,\n        XLNetAugEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.llmEnrichment) {\n      _writer.writeMessage(\n        10,\n        _instance.llmEnrichment as any,\n        LlmEnrichmentConfig.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entityEnrichment?: EntityEnrichmentConfig;\n  private _thesaurusEnrichment?: ThesaurusEnrichmentConfig;\n  private _word2vecEnrichment?: Word2VecEnrichmentConfig;\n  private _wordNetEnrichment?: WordNetAugEnrichmentConfig;\n  private _gpt2Enrichment?: GPT2EnrichmentConfig;\n  private _gloveEnrichment?: GloVeEnrichmentConfig;\n  private _bertEnrichment?: BertAugEnrichmentConfig;\n  private _xlnetEnrichment?: XLNetAugEnrichmentConfig;\n  private _llmEnrichment?: LlmEnrichmentConfig;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DataEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<DataEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.entityEnrichment = _value.entityEnrichment\n      ? new EntityEnrichmentConfig(_value.entityEnrichment)\n      : undefined;\n    this.thesaurusEnrichment = _value.thesaurusEnrichment\n      ? new ThesaurusEnrichmentConfig(_value.thesaurusEnrichment)\n      : undefined;\n    this.word2vecEnrichment = _value.word2vecEnrichment\n      ? new Word2VecEnrichmentConfig(_value.word2vecEnrichment)\n      : undefined;\n    this.wordNetEnrichment = _value.wordNetEnrichment\n      ? new WordNetAugEnrichmentConfig(_value.wordNetEnrichment)\n      : undefined;\n    this.gpt2Enrichment = _value.gpt2Enrichment\n      ? new GPT2EnrichmentConfig(_value.gpt2Enrichment)\n      : undefined;\n    this.gloveEnrichment = _value.gloveEnrichment\n      ? new GloVeEnrichmentConfig(_value.gloveEnrichment)\n      : undefined;\n    this.bertEnrichment = _value.bertEnrichment\n      ? new BertAugEnrichmentConfig(_value.bertEnrichment)\n      : undefined;\n    this.xlnetEnrichment = _value.xlnetEnrichment\n      ? new XLNetAugEnrichmentConfig(_value.xlnetEnrichment)\n      : undefined;\n    this.llmEnrichment = _value.llmEnrichment\n      ? new LlmEnrichmentConfig(_value.llmEnrichment)\n      : undefined;\n    DataEnrichmentConfig.refineValues(this);\n  }\n  get entityEnrichment(): EntityEnrichmentConfig | undefined {\n    return this._entityEnrichment;\n  }\n  set entityEnrichment(value: EntityEnrichmentConfig | undefined) {\n    this._entityEnrichment = value;\n  }\n  get thesaurusEnrichment(): ThesaurusEnrichmentConfig | undefined {\n    return this._thesaurusEnrichment;\n  }\n  set thesaurusEnrichment(value: ThesaurusEnrichmentConfig | undefined) {\n    this._thesaurusEnrichment = value;\n  }\n  get word2vecEnrichment(): Word2VecEnrichmentConfig | undefined {\n    return this._word2vecEnrichment;\n  }\n  set word2vecEnrichment(value: Word2VecEnrichmentConfig | undefined) {\n    this._word2vecEnrichment = value;\n  }\n  get wordNetEnrichment(): WordNetAugEnrichmentConfig | undefined {\n    return this._wordNetEnrichment;\n  }\n  set wordNetEnrichment(value: WordNetAugEnrichmentConfig | undefined) {\n    this._wordNetEnrichment = value;\n  }\n  get gpt2Enrichment(): GPT2EnrichmentConfig | undefined {\n    return this._gpt2Enrichment;\n  }\n  set gpt2Enrichment(value: GPT2EnrichmentConfig | undefined) {\n    this._gpt2Enrichment = value;\n  }\n  get gloveEnrichment(): GloVeEnrichmentConfig | undefined {\n    return this._gloveEnrichment;\n  }\n  set gloveEnrichment(value: GloVeEnrichmentConfig | undefined) {\n    this._gloveEnrichment = value;\n  }\n  get bertEnrichment(): BertAugEnrichmentConfig | undefined {\n    return this._bertEnrichment;\n  }\n  set bertEnrichment(value: BertAugEnrichmentConfig | undefined) {\n    this._bertEnrichment = value;\n  }\n  get xlnetEnrichment(): XLNetAugEnrichmentConfig | undefined {\n    return this._xlnetEnrichment;\n  }\n  set xlnetEnrichment(value: XLNetAugEnrichmentConfig | undefined) {\n    this._xlnetEnrichment = value;\n  }\n  get llmEnrichment(): LlmEnrichmentConfig | undefined {\n    return this._llmEnrichment;\n  }\n  set llmEnrichment(value: LlmEnrichmentConfig | undefined) {\n    this._llmEnrichment = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DataEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DataEnrichmentConfig.AsObject {\n    return {\n      entityEnrichment: this.entityEnrichment\n        ? this.entityEnrichment.toObject()\n        : undefined,\n      thesaurusEnrichment: this.thesaurusEnrichment\n        ? this.thesaurusEnrichment.toObject()\n        : undefined,\n      word2vecEnrichment: this.word2vecEnrichment\n        ? this.word2vecEnrichment.toObject()\n        : undefined,\n      wordNetEnrichment: this.wordNetEnrichment\n        ? this.wordNetEnrichment.toObject()\n        : undefined,\n      gpt2Enrichment: this.gpt2Enrichment\n        ? this.gpt2Enrichment.toObject()\n        : undefined,\n      gloveEnrichment: this.gloveEnrichment\n        ? this.gloveEnrichment.toObject()\n        : undefined,\n      bertEnrichment: this.bertEnrichment\n        ? this.bertEnrichment.toObject()\n        : undefined,\n      xlnetEnrichment: this.xlnetEnrichment\n        ? this.xlnetEnrichment.toObject()\n        : undefined,\n      llmEnrichment: this.llmEnrichment\n        ? this.llmEnrichment.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DataEnrichmentConfig.AsProtobufJSON {\n    return {\n      entityEnrichment: this.entityEnrichment\n        ? this.entityEnrichment.toProtobufJSON(options)\n        : null,\n      thesaurusEnrichment: this.thesaurusEnrichment\n        ? this.thesaurusEnrichment.toProtobufJSON(options)\n        : null,\n      word2vecEnrichment: this.word2vecEnrichment\n        ? this.word2vecEnrichment.toProtobufJSON(options)\n        : null,\n      wordNetEnrichment: this.wordNetEnrichment\n        ? this.wordNetEnrichment.toProtobufJSON(options)\n        : null,\n      gpt2Enrichment: this.gpt2Enrichment\n        ? this.gpt2Enrichment.toProtobufJSON(options)\n        : null,\n      gloveEnrichment: this.gloveEnrichment\n        ? this.gloveEnrichment.toProtobufJSON(options)\n        : null,\n      bertEnrichment: this.bertEnrichment\n        ? this.bertEnrichment.toProtobufJSON(options)\n        : null,\n      xlnetEnrichment: this.xlnetEnrichment\n        ? this.xlnetEnrichment.toProtobufJSON(options)\n        : null,\n      llmEnrichment: this.llmEnrichment\n        ? this.llmEnrichment.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module DataEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for DataEnrichmentConfig\n   */\n  export interface AsObject {\n    entityEnrichment?: EntityEnrichmentConfig.AsObject;\n    thesaurusEnrichment?: ThesaurusEnrichmentConfig.AsObject;\n    word2vecEnrichment?: Word2VecEnrichmentConfig.AsObject;\n    wordNetEnrichment?: WordNetAugEnrichmentConfig.AsObject;\n    gpt2Enrichment?: GPT2EnrichmentConfig.AsObject;\n    gloveEnrichment?: GloVeEnrichmentConfig.AsObject;\n    bertEnrichment?: BertAugEnrichmentConfig.AsObject;\n    xlnetEnrichment?: XLNetAugEnrichmentConfig.AsObject;\n    llmEnrichment?: LlmEnrichmentConfig.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for DataEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    entityEnrichment: EntityEnrichmentConfig.AsProtobufJSON | null;\n    thesaurusEnrichment: ThesaurusEnrichmentConfig.AsProtobufJSON | null;\n    word2vecEnrichment: Word2VecEnrichmentConfig.AsProtobufJSON | null;\n    wordNetEnrichment: WordNetAugEnrichmentConfig.AsProtobufJSON | null;\n    gpt2Enrichment: GPT2EnrichmentConfig.AsProtobufJSON | null;\n    gloveEnrichment: GloVeEnrichmentConfig.AsProtobufJSON | null;\n    bertEnrichment: BertAugEnrichmentConfig.AsProtobufJSON | null;\n    xlnetEnrichment: XLNetAugEnrichmentConfig.AsProtobufJSON | null;\n    llmEnrichment: LlmEnrichmentConfig.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityEnrichmentConfig\n */\nexport class EntityEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityEnrichmentConfig();\n    EntityEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    EntityEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module EntityEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for EntityEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for EntityEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ThesaurusEnrichmentConfig\n */\nexport class ThesaurusEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.ThesaurusEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ThesaurusEnrichmentConfig();\n    ThesaurusEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ThesaurusEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ThesaurusEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ThesaurusEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ThesaurusEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ThesaurusEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ThesaurusEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    ThesaurusEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ThesaurusEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ThesaurusEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ThesaurusEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module ThesaurusEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for ThesaurusEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for ThesaurusEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.BertAugEnrichmentConfig\n */\nexport class BertAugEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.BertAugEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new BertAugEnrichmentConfig();\n    BertAugEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: BertAugEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: BertAugEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    BertAugEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: BertAugEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of BertAugEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<BertAugEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    BertAugEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    BertAugEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): BertAugEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): BertAugEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module BertAugEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for BertAugEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for BertAugEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GloVeEnrichmentConfig\n */\nexport class GloVeEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.GloVeEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GloVeEnrichmentConfig();\n    GloVeEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GloVeEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GloVeEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GloVeEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GloVeEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GloVeEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GloVeEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    GloVeEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GloVeEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GloVeEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GloVeEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module GloVeEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for GloVeEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for GloVeEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GPT2EnrichmentConfig\n */\nexport class GPT2EnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.GPT2EnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GPT2EnrichmentConfig();\n    GPT2EnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GPT2EnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GPT2EnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GPT2EnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GPT2EnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GPT2EnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GPT2EnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    GPT2EnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GPT2EnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GPT2EnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GPT2EnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module GPT2EnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for GPT2EnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for GPT2EnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.Word2VecEnrichmentConfig\n */\nexport class Word2VecEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.Word2VecEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new Word2VecEnrichmentConfig();\n    Word2VecEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: Word2VecEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: Word2VecEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    Word2VecEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: Word2VecEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of Word2VecEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<Word2VecEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    Word2VecEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    Word2VecEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): Word2VecEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): Word2VecEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module Word2VecEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for Word2VecEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for Word2VecEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.WordNetAugEnrichmentConfig\n */\nexport class WordNetAugEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.WordNetAugEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new WordNetAugEnrichmentConfig();\n    WordNetAugEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: WordNetAugEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: WordNetAugEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    WordNetAugEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: WordNetAugEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of WordNetAugEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<WordNetAugEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    WordNetAugEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    WordNetAugEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): WordNetAugEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): WordNetAugEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module WordNetAugEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for WordNetAugEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for WordNetAugEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.XLNetAugEnrichmentConfig\n */\nexport class XLNetAugEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.XLNetAugEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new XLNetAugEnrichmentConfig();\n    XLNetAugEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: XLNetAugEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: XLNetAugEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    XLNetAugEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: XLNetAugEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of XLNetAugEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<XLNetAugEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    XLNetAugEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    XLNetAugEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): XLNetAugEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): XLNetAugEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder\n    };\n  }\n}\nexport module XLNetAugEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for XLNetAugEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n\n  /**\n   * Protobuf JSON representation for XLNetAugEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.LlmEnrichmentConfig\n */\nexport class LlmEnrichmentConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.LlmEnrichmentConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new LlmEnrichmentConfig();\n    LlmEnrichmentConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: LlmEnrichmentConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.enrichmentFactor = _instance.enrichmentFactor || 0;\n    _instance.executionOrder = _instance.executionOrder || 0;\n    _instance.ccaiServiceName = _instance.ccaiServiceName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: LlmEnrichmentConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.enrichmentFactor = _reader.readInt32();\n          break;\n        case 3:\n          _instance.executionOrder = _reader.readInt32();\n          break;\n        case 4:\n          _instance.ccaiServiceName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    LlmEnrichmentConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: LlmEnrichmentConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.enrichmentFactor) {\n      _writer.writeInt32(2, _instance.enrichmentFactor);\n    }\n    if (_instance.executionOrder) {\n      _writer.writeInt32(3, _instance.executionOrder);\n    }\n    if (_instance.ccaiServiceName) {\n      _writer.writeString(4, _instance.ccaiServiceName);\n    }\n  }\n\n  private _isActive: boolean;\n  private _enrichmentFactor: number;\n  private _executionOrder: number;\n  private _ccaiServiceName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of LlmEnrichmentConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<LlmEnrichmentConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.enrichmentFactor = _value.enrichmentFactor;\n    this.executionOrder = _value.executionOrder;\n    this.ccaiServiceName = _value.ccaiServiceName;\n    LlmEnrichmentConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get enrichmentFactor(): number {\n    return this._enrichmentFactor;\n  }\n  set enrichmentFactor(value: number) {\n    this._enrichmentFactor = value;\n  }\n  get executionOrder(): number {\n    return this._executionOrder;\n  }\n  set executionOrder(value: number) {\n    this._executionOrder = value;\n  }\n  get ccaiServiceName(): string {\n    return this._ccaiServiceName;\n  }\n  set ccaiServiceName(value: string) {\n    this._ccaiServiceName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    LlmEnrichmentConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): LlmEnrichmentConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder,\n      ccaiServiceName: this.ccaiServiceName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): LlmEnrichmentConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      enrichmentFactor: this.enrichmentFactor,\n      executionOrder: this.executionOrder,\n      ccaiServiceName: this.ccaiServiceName\n    };\n  }\n}\nexport module LlmEnrichmentConfig {\n  /**\n   * Standard JavaScript object representation for LlmEnrichmentConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n    ccaiServiceName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for LlmEnrichmentConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    enrichmentFactor: number;\n    executionOrder: number;\n    ccaiServiceName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ClassifyIntentsRequest\n */\nexport class ClassifyIntentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ClassifyIntentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ClassifyIntentsRequest();\n    ClassifyIntentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ClassifyIntentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.text = _instance.text || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.activeContexts = _instance.activeContexts || false;\n    _instance.contextNames = _instance.contextNames || [];\n    _instance.mode = _instance.mode || 0;\n    _instance.algorithms = _instance.algorithms || [];\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ClassifyIntentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.text = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.activeContexts = _reader.readBool();\n          break;\n        case 5:\n          (_instance.contextNames = _instance.contextNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 6:\n          _instance.mode = _reader.readEnum();\n          break;\n        case 7:\n          _reader.readPackableEnumInto(\n            (_instance.algorithms = _instance.algorithms || [])\n          );\n          break;\n        case 8:\n          _instance.fieldMask = new googleProtobuf002.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf002.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ClassifyIntentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ClassifyIntentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.text) {\n      _writer.writeString(2, _instance.text);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.activeContexts) {\n      _writer.writeBool(4, _instance.activeContexts);\n    }\n    if (_instance.contextNames && _instance.contextNames.length) {\n      _writer.writeRepeatedString(5, _instance.contextNames);\n    }\n    if (_instance.mode) {\n      _writer.writeEnum(6, _instance.mode);\n    }\n    if (_instance.algorithms && _instance.algorithms.length) {\n      _writer.writePackedEnum(7, _instance.algorithms);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        8,\n        _instance.fieldMask as any,\n        googleProtobuf002.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _text: string;\n  private _languageCode: string;\n  private _activeContexts: boolean;\n  private _contextNames: string[];\n  private _mode: Mode;\n  private _algorithms: IntentAlgorithms[];\n  private _fieldMask?: googleProtobuf002.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ClassifyIntentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ClassifyIntentsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.text = _value.text;\n    this.languageCode = _value.languageCode;\n    this.activeContexts = _value.activeContexts;\n    this.contextNames = (_value.contextNames || []).slice();\n    this.mode = _value.mode;\n    this.algorithms = (_value.algorithms || []).slice();\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf002.FieldMask(_value.fieldMask)\n      : undefined;\n    ClassifyIntentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get activeContexts(): boolean {\n    return this._activeContexts;\n  }\n  set activeContexts(value: boolean) {\n    this._activeContexts = value;\n  }\n  get contextNames(): string[] {\n    return this._contextNames;\n  }\n  set contextNames(value: string[]) {\n    this._contextNames = value;\n  }\n  get mode(): Mode {\n    return this._mode;\n  }\n  set mode(value: Mode) {\n    this._mode = value;\n  }\n  get algorithms(): IntentAlgorithms[] {\n    return this._algorithms;\n  }\n  set algorithms(value: IntentAlgorithms[]) {\n    this._algorithms = value;\n  }\n  get fieldMask(): googleProtobuf002.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf002.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ClassifyIntentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ClassifyIntentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      text: this.text,\n      languageCode: this.languageCode,\n      activeContexts: this.activeContexts,\n      contextNames: (this.contextNames || []).slice(),\n      mode: this.mode,\n      algorithms: (this.algorithms || []).slice(),\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ClassifyIntentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      text: this.text,\n      languageCode: this.languageCode,\n      activeContexts: this.activeContexts,\n      contextNames: (this.contextNames || []).slice(),\n      mode: Mode[this.mode === null || this.mode === undefined ? 0 : this.mode],\n      algorithms: (this.algorithms || []).map(v => IntentAlgorithms[v]),\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module ClassifyIntentsRequest {\n  /**\n   * Standard JavaScript object representation for ClassifyIntentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    text: string;\n    languageCode: string;\n    activeContexts: boolean;\n    contextNames: string[];\n    mode: Mode;\n    algorithms: IntentAlgorithms[];\n    fieldMask?: googleProtobuf002.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ClassifyIntentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    text: string;\n    languageCode: string;\n    activeContexts: boolean;\n    contextNames: string[];\n    mode: string;\n    algorithms: string[];\n    fieldMask: googleProtobuf002.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.IntentClassified\n */\nexport class IntentClassified implements GrpcMessage {\n  static id = 'ondewo.nlu.IntentClassified';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new IntentClassified();\n    IntentClassified.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: IntentClassified) {\n    _instance.intentName = _instance.intentName || '';\n    _instance.intentDisplayName = _instance.intentDisplayName || '';\n    _instance.classifier = _instance.classifier || '';\n    _instance.score = _instance.score || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: IntentClassified,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intentName = _reader.readString();\n          break;\n        case 2:\n          _instance.intentDisplayName = _reader.readString();\n          break;\n        case 3:\n          _instance.classifier = _reader.readString();\n          break;\n        case 4:\n          _instance.score = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    IntentClassified.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: IntentClassified,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentName) {\n      _writer.writeString(1, _instance.intentName);\n    }\n    if (_instance.intentDisplayName) {\n      _writer.writeString(2, _instance.intentDisplayName);\n    }\n    if (_instance.classifier) {\n      _writer.writeString(3, _instance.classifier);\n    }\n    if (_instance.score) {\n      _writer.writeFloat(4, _instance.score);\n    }\n  }\n\n  private _intentName: string;\n  private _intentDisplayName: string;\n  private _classifier: string;\n  private _score: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of IntentClassified to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<IntentClassified.AsObject>) {\n    _value = _value || {};\n    this.intentName = _value.intentName;\n    this.intentDisplayName = _value.intentDisplayName;\n    this.classifier = _value.classifier;\n    this.score = _value.score;\n    IntentClassified.refineValues(this);\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get intentDisplayName(): string {\n    return this._intentDisplayName;\n  }\n  set intentDisplayName(value: string) {\n    this._intentDisplayName = value;\n  }\n  get classifier(): string {\n    return this._classifier;\n  }\n  set classifier(value: string) {\n    this._classifier = value;\n  }\n  get score(): number {\n    return this._score;\n  }\n  set score(value: number) {\n    this._score = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    IntentClassified.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): IntentClassified.AsObject {\n    return {\n      intentName: this.intentName,\n      intentDisplayName: this.intentDisplayName,\n      classifier: this.classifier,\n      score: this.score\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): IntentClassified.AsProtobufJSON {\n    return {\n      intentName: this.intentName,\n      intentDisplayName: this.intentDisplayName,\n      classifier: this.classifier,\n      score: this.score\n    };\n  }\n}\nexport module IntentClassified {\n  /**\n   * Standard JavaScript object representation for IntentClassified\n   */\n  export interface AsObject {\n    intentName: string;\n    intentDisplayName: string;\n    classifier: string;\n    score: number;\n  }\n\n  /**\n   * Protobuf JSON representation for IntentClassified\n   */\n  export interface AsProtobufJSON {\n    intentName: string;\n    intentDisplayName: string;\n    classifier: string;\n    score: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ClassifyIntentsResponse\n */\nexport class ClassifyIntentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ClassifyIntentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ClassifyIntentsResponse();\n    ClassifyIntentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ClassifyIntentsResponse) {\n    _instance.intentsClassified = _instance.intentsClassified || [];\n    _instance.text = _instance.text || '';\n    _instance.activeContexts = _instance.activeContexts || false;\n    _instance.contextNames = _instance.contextNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ClassifyIntentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new IntentClassified();\n          _reader.readMessage(\n            messageInitializer1,\n            IntentClassified.deserializeBinaryFromReader\n          );\n          (_instance.intentsClassified =\n            _instance.intentsClassified || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.text = _reader.readString();\n          break;\n        case 3:\n          _instance.activeContexts = _reader.readBool();\n          break;\n        case 4:\n          (_instance.contextNames = _instance.contextNames || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ClassifyIntentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ClassifyIntentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentsClassified && _instance.intentsClassified.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.intentsClassified as any,\n        IntentClassified.serializeBinaryToWriter\n      );\n    }\n    if (_instance.text) {\n      _writer.writeString(2, _instance.text);\n    }\n    if (_instance.activeContexts) {\n      _writer.writeBool(3, _instance.activeContexts);\n    }\n    if (_instance.contextNames && _instance.contextNames.length) {\n      _writer.writeRepeatedString(4, _instance.contextNames);\n    }\n  }\n\n  private _intentsClassified?: IntentClassified[];\n  private _text: string;\n  private _activeContexts: boolean;\n  private _contextNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ClassifyIntentsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ClassifyIntentsResponse.AsObject>) {\n    _value = _value || {};\n    this.intentsClassified = (_value.intentsClassified || []).map(\n      m => new IntentClassified(m)\n    );\n    this.text = _value.text;\n    this.activeContexts = _value.activeContexts;\n    this.contextNames = (_value.contextNames || []).slice();\n    ClassifyIntentsResponse.refineValues(this);\n  }\n  get intentsClassified(): IntentClassified[] | undefined {\n    return this._intentsClassified;\n  }\n  set intentsClassified(value: IntentClassified[] | undefined) {\n    this._intentsClassified = value;\n  }\n  get text(): string {\n    return this._text;\n  }\n  set text(value: string) {\n    this._text = value;\n  }\n  get activeContexts(): boolean {\n    return this._activeContexts;\n  }\n  set activeContexts(value: boolean) {\n    this._activeContexts = value;\n  }\n  get contextNames(): string[] {\n    return this._contextNames;\n  }\n  set contextNames(value: string[]) {\n    this._contextNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ClassifyIntentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ClassifyIntentsResponse.AsObject {\n    return {\n      intentsClassified: (this.intentsClassified || []).map(m => m.toObject()),\n      text: this.text,\n      activeContexts: this.activeContexts,\n      contextNames: (this.contextNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ClassifyIntentsResponse.AsProtobufJSON {\n    return {\n      intentsClassified: (this.intentsClassified || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      text: this.text,\n      activeContexts: this.activeContexts,\n      contextNames: (this.contextNames || []).slice()\n    };\n  }\n}\nexport module ClassifyIntentsResponse {\n  /**\n   * Standard JavaScript object representation for ClassifyIntentsResponse\n   */\n  export interface AsObject {\n    intentsClassified?: IntentClassified.AsObject[];\n    text: string;\n    activeContexts: boolean;\n    contextNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ClassifyIntentsResponse\n   */\n  export interface AsProtobufJSON {\n    intentsClassified: IntentClassified.AsProtobufJSON[] | null;\n    text: string;\n    activeContexts: boolean;\n    contextNames: string[];\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for AiServices.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_AI_SERVICES_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_AI_SERVICES_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './aiservices.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu005 from '../../ondewo/nlu/common.pb';\nimport * as googleApi006 from '../../google/api/annotations.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as googleRpc010 from '../../google/rpc/status.pb';\nimport * as googleType011 from '../../google/type/latlng.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/session.pb';\nimport { GRPC_AI_SERVICES_CLIENT_SETTINGS } from './aiservices.pbconf';\n/**\n * Service client implementation for ondewo.nlu.AiServices\n */\n@Injectable({ providedIn: 'any' })\nexport class AiServicesClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.AiServices/ExtractEntities\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ExtractEntitiesResponse>>\n     */\n    extractEntities: (\n      requestData: thisProto.ExtractEntitiesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ExtractEntitiesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/ExtractEntities',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ExtractEntitiesRequest,\n        responseClass: thisProto.ExtractEntitiesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/GenerateUserSays\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GenerateUserSaysResponse>>\n     */\n    generateUserSays: (\n      requestData: thisProto.GenerateUserSaysRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GenerateUserSaysResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/GenerateUserSays',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GenerateUserSaysRequest,\n        responseClass: thisProto.GenerateUserSaysResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/GenerateResponses\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GenerateResponsesResponse>>\n     */\n    generateResponses: (\n      requestData: thisProto.GenerateResponsesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GenerateResponsesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/GenerateResponses',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GenerateResponsesRequest,\n        responseClass: thisProto.GenerateResponsesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/GetAlternativeSentences\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetAlternativeSentencesResponse>>\n     */\n    getAlternativeSentences: (\n      requestData: thisProto.GetAlternativeSentencesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetAlternativeSentencesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/GetAlternativeSentences',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAlternativeSentencesRequest,\n        responseClass: thisProto.GetAlternativeSentencesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/GetAlternativeTrainingPhrases\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetAlternativeTrainingPhrasesResponse>>\n     */\n    getAlternativeTrainingPhrases: (\n      requestData: thisProto.GetAlternativeTrainingPhrasesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.GetAlternativeTrainingPhrasesResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/GetAlternativeTrainingPhrases',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAlternativeTrainingPhrasesRequest,\n        responseClass: thisProto.GetAlternativeTrainingPhrasesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/GetSynonyms\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetSynonymsResponse>>\n     */\n    getSynonyms: (\n      requestData: thisProto.GetSynonymsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetSynonymsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/GetSynonyms',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetSynonymsRequest,\n        responseClass: thisProto.GetSynonymsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/ClassifyIntents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ClassifyIntentsResponse>>\n     */\n    classifyIntents: (\n      requestData: thisProto.ClassifyIntentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ClassifyIntentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/ClassifyIntents',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ClassifyIntentsRequest,\n        responseClass: thisProto.ClassifyIntentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/ExtractEntitiesFuzzy\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ExtractEntitiesResponse>>\n     */\n    extractEntitiesFuzzy: (\n      requestData: thisProto.ExtractEntitiesFuzzyRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ExtractEntitiesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/ExtractEntitiesFuzzy',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ExtractEntitiesFuzzyRequest,\n        responseClass: thisProto.ExtractEntitiesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/LlmGenerate\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmGenerateResponse>>\n     */\n    llmGenerate: (\n      requestData: thisProto.LlmGenerateRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmGenerateResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/LlmGenerate',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.LlmGenerateRequest,\n        responseClass: thisProto.LlmGenerateResponse\n      });\n    },\n    /**\n     * Server streaming: /ondewo.nlu.AiServices/StreamingLlmGenerate\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.StreamingLlmGenerateResponse>>\n     */\n    streamingLlmGenerate: (\n      requestData: thisProto.LlmGenerateRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.StreamingLlmGenerateResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.serverStream,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/StreamingLlmGenerate',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.LlmGenerateRequest,\n        responseClass: thisProto.StreamingLlmGenerateResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.AiServices/ListLlmModels\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmModelsResponse>>\n     */\n    listLlmModels: (\n      requestData: thisProto.ListLlmModelsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmModelsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.AiServices/ListLlmModels',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmModelsRequest,\n        responseClass: thisProto.ListLlmModelsResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_AI_SERVICES_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.AiServices', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/ExtractEntities\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ExtractEntitiesResponse>\n   */\n  extractEntities(\n    requestData: thisProto.ExtractEntitiesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ExtractEntitiesResponse> {\n    return this.$raw\n      .extractEntities(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/GenerateUserSays\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GenerateUserSaysResponse>\n   */\n  generateUserSays(\n    requestData: thisProto.GenerateUserSaysRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GenerateUserSaysResponse> {\n    return this.$raw\n      .generateUserSays(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/GenerateResponses\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GenerateResponsesResponse>\n   */\n  generateResponses(\n    requestData: thisProto.GenerateResponsesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GenerateResponsesResponse> {\n    return this.$raw\n      .generateResponses(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/GetAlternativeSentences\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetAlternativeSentencesResponse>\n   */\n  getAlternativeSentences(\n    requestData: thisProto.GetAlternativeSentencesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetAlternativeSentencesResponse> {\n    return this.$raw\n      .getAlternativeSentences(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/GetAlternativeTrainingPhrases\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetAlternativeTrainingPhrasesResponse>\n   */\n  getAlternativeTrainingPhrases(\n    requestData: thisProto.GetAlternativeTrainingPhrasesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetAlternativeTrainingPhrasesResponse> {\n    return this.$raw\n      .getAlternativeTrainingPhrases(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/GetSynonyms\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetSynonymsResponse>\n   */\n  getSynonyms(\n    requestData: thisProto.GetSynonymsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetSynonymsResponse> {\n    return this.$raw\n      .getSynonyms(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/ClassifyIntents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ClassifyIntentsResponse>\n   */\n  classifyIntents(\n    requestData: thisProto.ClassifyIntentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ClassifyIntentsResponse> {\n    return this.$raw\n      .classifyIntents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/ExtractEntitiesFuzzy\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ExtractEntitiesResponse>\n   */\n  extractEntitiesFuzzy(\n    requestData: thisProto.ExtractEntitiesFuzzyRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ExtractEntitiesResponse> {\n    return this.$raw\n      .extractEntitiesFuzzy(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/LlmGenerate\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmGenerateResponse>\n   */\n  llmGenerate(\n    requestData: thisProto.LlmGenerateRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmGenerateResponse> {\n    return this.$raw\n      .llmGenerate(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Server streaming @/ondewo.nlu.AiServices/StreamingLlmGenerate\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.StreamingLlmGenerateResponse>\n   */\n  streamingLlmGenerate(\n    requestData: thisProto.LlmGenerateRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.StreamingLlmGenerateResponse> {\n    return this.$raw\n      .streamingLlmGenerate(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.AiServices/ListLlmModels\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmModelsResponse>\n   */\n  listLlmModels(\n    requestData: thisProto.ListLlmModelsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmModelsResponse> {\n    return this.$raw\n      .listLlmModels(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for CcaiProjects.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_CCAI_PROJECTS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_CCAI_PROJECTS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './ccai-project.pb';\nimport * as googleProtobuf000 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu003 from '../../ondewo/nlu/common.pb';\nimport { GRPC_CCAI_PROJECTS_CLIENT_SETTINGS } from './ccai-project.pbconf';\n/**\n * Service client implementation for ondewo.nlu.CcaiProjects\n */\n@Injectable({ providedIn: 'any' })\nexport class CcaiProjectsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.CcaiProjects/GetCcaiProject\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CcaiProject>>\n     */\n    getCcaiProject: (\n      requestData: thisProto.GetCcaiProjectRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CcaiProject>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.CcaiProjects/GetCcaiProject',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetCcaiProjectRequest,\n        responseClass: thisProto.CcaiProject\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.CcaiProjects/CreateCcaiProject\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CreateCcaiProjectResponse>>\n     */\n    createCcaiProject: (\n      requestData: thisProto.CreateCcaiProjectRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CreateCcaiProjectResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.CcaiProjects/CreateCcaiProject',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateCcaiProjectRequest,\n        responseClass: thisProto.CreateCcaiProjectResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.CcaiProjects/DeleteCcaiProject\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.DeleteCcaiProjectResponse>>\n     */\n    deleteCcaiProject: (\n      requestData: thisProto.DeleteCcaiProjectRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.DeleteCcaiProjectResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.CcaiProjects/DeleteCcaiProject',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteCcaiProjectRequest,\n        responseClass: thisProto.DeleteCcaiProjectResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.CcaiProjects/ListCcaiProjects\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListCcaiProjectsResponse>>\n     */\n    listCcaiProjects: (\n      requestData: thisProto.ListCcaiProjectsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListCcaiProjectsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.CcaiProjects/ListCcaiProjects',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListCcaiProjectsRequest,\n        responseClass: thisProto.ListCcaiProjectsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.CcaiProjects/UpdateCcaiProject\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.UpdateCcaiProjectResponse>>\n     */\n    updateCcaiProject: (\n      requestData: thisProto.UpdateCcaiProjectRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.UpdateCcaiProjectResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.CcaiProjects/UpdateCcaiProject',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateCcaiProjectRequest,\n        responseClass: thisProto.UpdateCcaiProjectResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.CcaiProjects/GetCcaiService\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CcaiService>>\n     */\n    getCcaiService: (\n      requestData: thisProto.GetCcaiServiceRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CcaiService>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.CcaiProjects/GetCcaiService',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetCcaiServiceRequest,\n        responseClass: thisProto.CcaiService\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_CCAI_PROJECTS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient(\n      'ondewo.nlu.CcaiProjects',\n      settings\n    );\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.CcaiProjects/GetCcaiProject\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CcaiProject>\n   */\n  getCcaiProject(\n    requestData: thisProto.GetCcaiProjectRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CcaiProject> {\n    return this.$raw\n      .getCcaiProject(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.CcaiProjects/CreateCcaiProject\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CreateCcaiProjectResponse>\n   */\n  createCcaiProject(\n    requestData: thisProto.CreateCcaiProjectRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CreateCcaiProjectResponse> {\n    return this.$raw\n      .createCcaiProject(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.CcaiProjects/DeleteCcaiProject\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.DeleteCcaiProjectResponse>\n   */\n  deleteCcaiProject(\n    requestData: thisProto.DeleteCcaiProjectRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.DeleteCcaiProjectResponse> {\n    return this.$raw\n      .deleteCcaiProject(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.CcaiProjects/ListCcaiProjects\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListCcaiProjectsResponse>\n   */\n  listCcaiProjects(\n    requestData: thisProto.ListCcaiProjectsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListCcaiProjectsResponse> {\n    return this.$raw\n      .listCcaiProjects(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.CcaiProjects/UpdateCcaiProject\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.UpdateCcaiProjectResponse>\n   */\n  updateCcaiProject(\n    requestData: thisProto.UpdateCcaiProjectRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.UpdateCcaiProjectResponse> {\n    return this.$raw\n      .updateCcaiProject(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.CcaiProjects/GetCcaiService\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CcaiService>\n   */\n  getCcaiService(\n    requestData: thisProto.GetCcaiServiceRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CcaiService> {\n    return this.$raw\n      .getCcaiService(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Contexts.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_CONTEXTS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_CONTEXTS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './context.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport { GRPC_CONTEXTS_CLIENT_SETTINGS } from './context.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Contexts\n */\n@Injectable({ providedIn: 'any' })\nexport class ContextsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Contexts/ListContexts\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListContextsResponse>>\n     */\n    listContexts: (\n      requestData: thisProto.ListContextsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListContextsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Contexts/ListContexts',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListContextsRequest,\n        responseClass: thisProto.ListContextsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Contexts/GetContext\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Context>>\n     */\n    getContext: (\n      requestData: thisProto.GetContextRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Context>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Contexts/GetContext',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetContextRequest,\n        responseClass: thisProto.Context\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Contexts/CreateContext\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Context>>\n     */\n    createContext: (\n      requestData: thisProto.CreateContextRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Context>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Contexts/CreateContext',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateContextRequest,\n        responseClass: thisProto.Context\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Contexts/UpdateContext\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Context>>\n     */\n    updateContext: (\n      requestData: thisProto.UpdateContextRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Context>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Contexts/UpdateContext',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateContextRequest,\n        responseClass: thisProto.Context\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Contexts/DeleteContext\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteContext: (\n      requestData: thisProto.DeleteContextRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Contexts/DeleteContext',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteContextRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Contexts/DeleteAllContexts\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteAllContexts: (\n      requestData: thisProto.DeleteAllContextsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Contexts/DeleteAllContexts',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteAllContextsRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_CONTEXTS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Contexts', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Contexts/ListContexts\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListContextsResponse>\n   */\n  listContexts(\n    requestData: thisProto.ListContextsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListContextsResponse> {\n    return this.$raw\n      .listContexts(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Contexts/GetContext\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Context>\n   */\n  getContext(\n    requestData: thisProto.GetContextRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Context> {\n    return this.$raw\n      .getContext(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Contexts/CreateContext\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Context>\n   */\n  createContext(\n    requestData: thisProto.CreateContextRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Context> {\n    return this.$raw\n      .createContext(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Contexts/UpdateContext\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Context>\n   */\n  updateContext(\n    requestData: thisProto.UpdateContextRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Context> {\n    return this.$raw\n      .updateContext(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Contexts/DeleteContext\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteContext(\n    requestData: thisProto.DeleteContextRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteContext(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Contexts/DeleteAllContexts\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteAllContexts(\n    requestData: thisProto.DeleteAllContextsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteAllContexts(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for EntityTypes.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_ENTITY_TYPES_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_ENTITY_TYPES_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './entity-type.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleApi005 from '../../google/api/annotations.pb';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleRpc008 from '../../google/rpc/status.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/operations.pb';\nimport { GRPC_ENTITY_TYPES_CLIENT_SETTINGS } from './entity-type.pbconf';\n/**\n * Service client implementation for ondewo.nlu.EntityTypes\n */\n@Injectable({ providedIn: 'any' })\nexport class EntityTypesClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/ListEntityTypes\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListEntityTypesResponse>>\n     */\n    listEntityTypes: (\n      requestData: thisProto.ListEntityTypesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListEntityTypesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/ListEntityTypes',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListEntityTypesRequest,\n        responseClass: thisProto.ListEntityTypesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/GetEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.EntityType>>\n     */\n    getEntityType: (\n      requestData: thisProto.GetEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.EntityType>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/GetEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetEntityTypeRequest,\n        responseClass: thisProto.EntityType\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/CreateEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.EntityType>>\n     */\n    createEntityType: (\n      requestData: thisProto.CreateEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.EntityType>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/CreateEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateEntityTypeRequest,\n        responseClass: thisProto.EntityType\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/UpdateEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.EntityType>>\n     */\n    updateEntityType: (\n      requestData: thisProto.UpdateEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.EntityType>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/UpdateEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateEntityTypeRequest,\n        responseClass: thisProto.EntityType\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/DeleteEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf007.Empty>>\n     */\n    deleteEntityType: (\n      requestData: thisProto.DeleteEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf007.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/DeleteEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteEntityTypeRequest,\n        responseClass: googleProtobuf007.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/BatchUpdateEntityTypes\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu011.Operation>>\n     */\n    batchUpdateEntityTypes: (\n      requestData: thisProto.BatchUpdateEntityTypesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu011.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/BatchUpdateEntityTypes',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchUpdateEntityTypesRequest,\n        responseClass: ondewoNlu011.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/BatchDeleteEntityTypes\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu011.Operation>>\n     */\n    batchDeleteEntityTypes: (\n      requestData: thisProto.BatchDeleteEntityTypesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu011.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/BatchDeleteEntityTypes',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchDeleteEntityTypesRequest,\n        responseClass: ondewoNlu011.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/GetEntity\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.EntityType.Entity>>\n     */\n    getEntity: (\n      requestData: thisProto.GetEntityRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.EntityType.Entity>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/GetEntity',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetEntityRequest,\n        responseClass: thisProto.EntityType.Entity\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/CreateEntity\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.EntityType.Entity>>\n     */\n    createEntity: (\n      requestData: thisProto.CreateEntityRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.EntityType.Entity>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/CreateEntity',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateEntityRequest,\n        responseClass: thisProto.EntityType.Entity\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/UpdateEntity\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.EntityType.Entity>>\n     */\n    updateEntity: (\n      requestData: thisProto.UpdateEntityRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.EntityType.Entity>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/UpdateEntity',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateEntityRequest,\n        responseClass: thisProto.EntityType.Entity\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/DeleteEntity\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.DeleteEntityStatus>>\n     */\n    deleteEntity: (\n      requestData: thisProto.DeleteEntityRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.DeleteEntityStatus>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/DeleteEntity',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteEntityRequest,\n        responseClass: thisProto.DeleteEntityStatus\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/BatchCreateEntities\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchEntitiesResponse>>\n     */\n    batchCreateEntities: (\n      requestData: thisProto.BatchCreateEntitiesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchEntitiesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/BatchCreateEntities',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchCreateEntitiesRequest,\n        responseClass: thisProto.BatchEntitiesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/BatchUpdateEntities\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchEntitiesResponse>>\n     */\n    batchUpdateEntities: (\n      requestData: thisProto.BatchUpdateEntitiesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchEntitiesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/BatchUpdateEntities',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchUpdateEntitiesRequest,\n        responseClass: thisProto.BatchEntitiesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/BatchGetEntities\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchEntitiesResponse>>\n     */\n    batchGetEntities: (\n      requestData: thisProto.BatchGetEntitiesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchEntitiesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/BatchGetEntities',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchGetEntitiesRequest,\n        responseClass: thisProto.BatchEntitiesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/BatchDeleteEntities\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchDeleteEntitiesResponse>>\n     */\n    batchDeleteEntities: (\n      requestData: thisProto.BatchDeleteEntitiesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchDeleteEntitiesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/BatchDeleteEntities',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchDeleteEntitiesRequest,\n        responseClass: thisProto.BatchDeleteEntitiesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.EntityTypes/ListEntities\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListEntitiesResponse>>\n     */\n    listEntities: (\n      requestData: thisProto.ListEntitiesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListEntitiesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.EntityTypes/ListEntities',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListEntitiesRequest,\n        responseClass: thisProto.ListEntitiesResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_ENTITY_TYPES_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient(\n      'ondewo.nlu.EntityTypes',\n      settings\n    );\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/ListEntityTypes\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListEntityTypesResponse>\n   */\n  listEntityTypes(\n    requestData: thisProto.ListEntityTypesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListEntityTypesResponse> {\n    return this.$raw\n      .listEntityTypes(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/GetEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.EntityType>\n   */\n  getEntityType(\n    requestData: thisProto.GetEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.EntityType> {\n    return this.$raw\n      .getEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/CreateEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.EntityType>\n   */\n  createEntityType(\n    requestData: thisProto.CreateEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.EntityType> {\n    return this.$raw\n      .createEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/UpdateEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.EntityType>\n   */\n  updateEntityType(\n    requestData: thisProto.UpdateEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.EntityType> {\n    return this.$raw\n      .updateEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/DeleteEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf007.Empty>\n   */\n  deleteEntityType(\n    requestData: thisProto.DeleteEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf007.Empty> {\n    return this.$raw\n      .deleteEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/BatchUpdateEntityTypes\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu011.Operation>\n   */\n  batchUpdateEntityTypes(\n    requestData: thisProto.BatchUpdateEntityTypesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu011.Operation> {\n    return this.$raw\n      .batchUpdateEntityTypes(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/BatchDeleteEntityTypes\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu011.Operation>\n   */\n  batchDeleteEntityTypes(\n    requestData: thisProto.BatchDeleteEntityTypesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu011.Operation> {\n    return this.$raw\n      .batchDeleteEntityTypes(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/GetEntity\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.EntityType.Entity>\n   */\n  getEntity(\n    requestData: thisProto.GetEntityRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.EntityType.Entity> {\n    return this.$raw\n      .getEntity(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/CreateEntity\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.EntityType.Entity>\n   */\n  createEntity(\n    requestData: thisProto.CreateEntityRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.EntityType.Entity> {\n    return this.$raw\n      .createEntity(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/UpdateEntity\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.EntityType.Entity>\n   */\n  updateEntity(\n    requestData: thisProto.UpdateEntityRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.EntityType.Entity> {\n    return this.$raw\n      .updateEntity(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/DeleteEntity\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.DeleteEntityStatus>\n   */\n  deleteEntity(\n    requestData: thisProto.DeleteEntityRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.DeleteEntityStatus> {\n    return this.$raw\n      .deleteEntity(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/BatchCreateEntities\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchEntitiesResponse>\n   */\n  batchCreateEntities(\n    requestData: thisProto.BatchCreateEntitiesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchEntitiesResponse> {\n    return this.$raw\n      .batchCreateEntities(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/BatchUpdateEntities\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchEntitiesResponse>\n   */\n  batchUpdateEntities(\n    requestData: thisProto.BatchUpdateEntitiesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchEntitiesResponse> {\n    return this.$raw\n      .batchUpdateEntities(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/BatchGetEntities\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchEntitiesResponse>\n   */\n  batchGetEntities(\n    requestData: thisProto.BatchGetEntitiesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchEntitiesResponse> {\n    return this.$raw\n      .batchGetEntities(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/BatchDeleteEntities\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchDeleteEntitiesResponse>\n   */\n  batchDeleteEntities(\n    requestData: thisProto.BatchDeleteEntitiesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchDeleteEntitiesResponse> {\n    return this.$raw\n      .batchDeleteEntities(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.EntityTypes/ListEntities\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListEntitiesResponse>\n   */\n  listEntities(\n    requestData: thisProto.ListEntitiesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListEntitiesResponse> {\n    return this.$raw\n      .listEntities(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Intents.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_INTENTS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_INTENTS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './intent.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleRpc008 from '../../google/rpc/status.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/operations.pb';\nimport { GRPC_INTENTS_CLIENT_SETTINGS } from './intent.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Intents\n */\n@Injectable({ providedIn: 'any' })\nexport class IntentsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Intents/ListIntents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListIntentsResponse>>\n     */\n    listIntents: (\n      requestData: thisProto.ListIntentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListIntentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/ListIntents',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListIntentsRequest,\n        responseClass: thisProto.ListIntentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/GetIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Intent>>\n     */\n    getIntent: (\n      requestData: thisProto.GetIntentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Intent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/GetIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetIntentRequest,\n        responseClass: thisProto.Intent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/CreateIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Intent>>\n     */\n    createIntent: (\n      requestData: thisProto.CreateIntentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Intent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/CreateIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateIntentRequest,\n        responseClass: thisProto.Intent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/UpdateIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Intent>>\n     */\n    updateIntent: (\n      requestData: thisProto.UpdateIntentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Intent>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/UpdateIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateIntentRequest,\n        responseClass: thisProto.Intent\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/DeleteIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteIntent: (\n      requestData: thisProto.DeleteIntentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/DeleteIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteIntentRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchUpdateIntents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchUpdateIntentsResponse>>\n     */\n    batchUpdateIntents: (\n      requestData: thisProto.BatchUpdateIntentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchUpdateIntentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchUpdateIntents',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchUpdateIntentsRequest,\n        responseClass: thisProto.BatchUpdateIntentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchDeleteIntents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu012.Operation>>\n     */\n    batchDeleteIntents: (\n      requestData: thisProto.BatchDeleteIntentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu012.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchDeleteIntents',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchDeleteIntentsRequest,\n        responseClass: ondewoNlu012.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/TagIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    tagIntent: (\n      requestData: thisProto.IntentTagRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/TagIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.IntentTagRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/DeleteIntentTag\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteIntentTag: (\n      requestData: thisProto.IntentTagRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/DeleteIntentTag',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.IntentTagRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/GetIntentTags\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetIntentTagsResponse>>\n     */\n    getIntentTags: (\n      requestData: thisProto.GetIntentTagsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetIntentTagsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/GetIntentTags',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetIntentTagsRequest,\n        responseClass: thisProto.GetIntentTagsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/GetAllIntentTags\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetIntentTagsResponse>>\n     */\n    getAllIntentTags: (\n      requestData: thisProto.GetAllIntentTagsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetIntentTagsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/GetAllIntentTags',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAllIntentTagsRequest,\n        responseClass: thisProto.GetIntentTagsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchCreateTrainingPhrases\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchTrainingPhrasesStatusResponse>>\n     */\n    batchCreateTrainingPhrases: (\n      requestData: thisProto.BatchCreateTrainingPhrasesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchTrainingPhrasesStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchCreateTrainingPhrases',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchCreateTrainingPhrasesRequest,\n        responseClass: thisProto.BatchTrainingPhrasesStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchGetTrainingPhrases\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchTrainingPhrasesStatusResponse>>\n     */\n    batchGetTrainingPhrases: (\n      requestData: thisProto.BatchGetTrainingPhrasesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchTrainingPhrasesStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchGetTrainingPhrases',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchGetTrainingPhrasesRequest,\n        responseClass: thisProto.BatchTrainingPhrasesStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchUpdateTrainingPhrases\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchTrainingPhrasesStatusResponse>>\n     */\n    batchUpdateTrainingPhrases: (\n      requestData: thisProto.BatchUpdateTrainingPhrasesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchTrainingPhrasesStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchUpdateTrainingPhrases',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchUpdateTrainingPhrasesRequest,\n        responseClass: thisProto.BatchTrainingPhrasesStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchDeleteTrainingPhrases\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchDeleteTrainingPhrasesResponse>>\n     */\n    batchDeleteTrainingPhrases: (\n      requestData: thisProto.BatchDeleteTrainingPhrasesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchDeleteTrainingPhrasesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchDeleteTrainingPhrases',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchDeleteTrainingPhrasesRequest,\n        responseClass: thisProto.BatchDeleteTrainingPhrasesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/ListTrainingPhrases\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListTrainingPhrasesResponse>>\n     */\n    listTrainingPhrases: (\n      requestData: thisProto.ListTrainingPhrasesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListTrainingPhrasesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/ListTrainingPhrases',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListTrainingPhrasesRequest,\n        responseClass: thisProto.ListTrainingPhrasesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchCreateResponseMessages\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchResponseMessagesStatusResponse>>\n     */\n    batchCreateResponseMessages: (\n      requestData: thisProto.BatchCreateResponseMessagesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchResponseMessagesStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchCreateResponseMessages',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchCreateResponseMessagesRequest,\n        responseClass: thisProto.BatchResponseMessagesStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchGetResponseMessages\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchResponseMessagesStatusResponse>>\n     */\n    batchGetResponseMessages: (\n      requestData: thisProto.BatchGetResponseMessagesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchResponseMessagesStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchGetResponseMessages',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchGetResponseMessagesRequest,\n        responseClass: thisProto.BatchResponseMessagesStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchUpdateResponseMessages\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchResponseMessagesStatusResponse>>\n     */\n    batchUpdateResponseMessages: (\n      requestData: thisProto.BatchUpdateResponseMessagesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchResponseMessagesStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchUpdateResponseMessages',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchUpdateResponseMessagesRequest,\n        responseClass: thisProto.BatchResponseMessagesStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchDeleteResponseMessages\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchDeleteResponseMessagesResponse>>\n     */\n    batchDeleteResponseMessages: (\n      requestData: thisProto.BatchDeleteResponseMessagesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchDeleteResponseMessagesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchDeleteResponseMessages',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchDeleteResponseMessagesRequest,\n        responseClass: thisProto.BatchDeleteResponseMessagesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/ListResponseMessages\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListResponseMessagesResponse>>\n     */\n    listResponseMessages: (\n      requestData: thisProto.ListResponseMessagesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListResponseMessagesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/ListResponseMessages',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListResponseMessagesRequest,\n        responseClass: thisProto.ListResponseMessagesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchCreateParameters\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchParametersStatusResponse>>\n     */\n    batchCreateParameters: (\n      requestData: thisProto.BatchCreateParametersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchParametersStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchCreateParameters',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchCreateParametersRequest,\n        responseClass: thisProto.BatchParametersStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchGetParameters\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchParametersStatusResponse>>\n     */\n    batchGetParameters: (\n      requestData: thisProto.BatchGetParametersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchParametersStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchGetParameters',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchGetParametersRequest,\n        responseClass: thisProto.BatchParametersStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchUpdateParameters\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchParametersStatusResponse>>\n     */\n    batchUpdateParameters: (\n      requestData: thisProto.BatchUpdateParametersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchParametersStatusResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchUpdateParameters',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchUpdateParametersRequest,\n        responseClass: thisProto.BatchParametersStatusResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/BatchDeleteParameters\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.BatchDeleteParametersResponse>>\n     */\n    batchDeleteParameters: (\n      requestData: thisProto.BatchDeleteParametersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.BatchDeleteParametersResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/BatchDeleteParameters',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.BatchDeleteParametersRequest,\n        responseClass: thisProto.BatchDeleteParametersResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/ListParameters\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListParametersResponse>>\n     */\n    listParameters: (\n      requestData: thisProto.ListParametersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListParametersResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/ListParameters',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListParametersRequest,\n        responseClass: thisProto.ListParametersResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Intents/ListTrainingPhrasesofIntentsWithEnrichment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListTrainingPhrasesofIntentsWithEnrichmentResponse>>\n     */\n    listTrainingPhrasesofIntentsWithEnrichment: (\n      requestData: thisProto.ListTrainingPhrasesofIntentsWithEnrichmentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListTrainingPhrasesofIntentsWithEnrichmentResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Intents/ListTrainingPhrasesofIntentsWithEnrichment',\n        requestData,\n        requestMetadata,\n        requestClass:\n          thisProto.ListTrainingPhrasesofIntentsWithEnrichmentRequest,\n        responseClass:\n          thisProto.ListTrainingPhrasesofIntentsWithEnrichmentResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_INTENTS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Intents', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/ListIntents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListIntentsResponse>\n   */\n  listIntents(\n    requestData: thisProto.ListIntentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListIntentsResponse> {\n    return this.$raw\n      .listIntents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/GetIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Intent>\n   */\n  getIntent(\n    requestData: thisProto.GetIntentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Intent> {\n    return this.$raw\n      .getIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/CreateIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Intent>\n   */\n  createIntent(\n    requestData: thisProto.CreateIntentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Intent> {\n    return this.$raw\n      .createIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/UpdateIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Intent>\n   */\n  updateIntent(\n    requestData: thisProto.UpdateIntentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Intent> {\n    return this.$raw\n      .updateIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/DeleteIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteIntent(\n    requestData: thisProto.DeleteIntentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchUpdateIntents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchUpdateIntentsResponse>\n   */\n  batchUpdateIntents(\n    requestData: thisProto.BatchUpdateIntentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchUpdateIntentsResponse> {\n    return this.$raw\n      .batchUpdateIntents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchDeleteIntents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu012.Operation>\n   */\n  batchDeleteIntents(\n    requestData: thisProto.BatchDeleteIntentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu012.Operation> {\n    return this.$raw\n      .batchDeleteIntents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/TagIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  tagIntent(\n    requestData: thisProto.IntentTagRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .tagIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/DeleteIntentTag\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteIntentTag(\n    requestData: thisProto.IntentTagRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteIntentTag(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/GetIntentTags\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetIntentTagsResponse>\n   */\n  getIntentTags(\n    requestData: thisProto.GetIntentTagsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetIntentTagsResponse> {\n    return this.$raw\n      .getIntentTags(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/GetAllIntentTags\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetIntentTagsResponse>\n   */\n  getAllIntentTags(\n    requestData: thisProto.GetAllIntentTagsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetIntentTagsResponse> {\n    return this.$raw\n      .getAllIntentTags(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchCreateTrainingPhrases\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchTrainingPhrasesStatusResponse>\n   */\n  batchCreateTrainingPhrases(\n    requestData: thisProto.BatchCreateTrainingPhrasesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchTrainingPhrasesStatusResponse> {\n    return this.$raw\n      .batchCreateTrainingPhrases(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchGetTrainingPhrases\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchTrainingPhrasesStatusResponse>\n   */\n  batchGetTrainingPhrases(\n    requestData: thisProto.BatchGetTrainingPhrasesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchTrainingPhrasesStatusResponse> {\n    return this.$raw\n      .batchGetTrainingPhrases(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchUpdateTrainingPhrases\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchTrainingPhrasesStatusResponse>\n   */\n  batchUpdateTrainingPhrases(\n    requestData: thisProto.BatchUpdateTrainingPhrasesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchTrainingPhrasesStatusResponse> {\n    return this.$raw\n      .batchUpdateTrainingPhrases(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchDeleteTrainingPhrases\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchDeleteTrainingPhrasesResponse>\n   */\n  batchDeleteTrainingPhrases(\n    requestData: thisProto.BatchDeleteTrainingPhrasesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchDeleteTrainingPhrasesResponse> {\n    return this.$raw\n      .batchDeleteTrainingPhrases(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/ListTrainingPhrases\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListTrainingPhrasesResponse>\n   */\n  listTrainingPhrases(\n    requestData: thisProto.ListTrainingPhrasesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListTrainingPhrasesResponse> {\n    return this.$raw\n      .listTrainingPhrases(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchCreateResponseMessages\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchResponseMessagesStatusResponse>\n   */\n  batchCreateResponseMessages(\n    requestData: thisProto.BatchCreateResponseMessagesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchResponseMessagesStatusResponse> {\n    return this.$raw\n      .batchCreateResponseMessages(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchGetResponseMessages\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchResponseMessagesStatusResponse>\n   */\n  batchGetResponseMessages(\n    requestData: thisProto.BatchGetResponseMessagesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchResponseMessagesStatusResponse> {\n    return this.$raw\n      .batchGetResponseMessages(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchUpdateResponseMessages\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchResponseMessagesStatusResponse>\n   */\n  batchUpdateResponseMessages(\n    requestData: thisProto.BatchUpdateResponseMessagesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchResponseMessagesStatusResponse> {\n    return this.$raw\n      .batchUpdateResponseMessages(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchDeleteResponseMessages\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchDeleteResponseMessagesResponse>\n   */\n  batchDeleteResponseMessages(\n    requestData: thisProto.BatchDeleteResponseMessagesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchDeleteResponseMessagesResponse> {\n    return this.$raw\n      .batchDeleteResponseMessages(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/ListResponseMessages\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListResponseMessagesResponse>\n   */\n  listResponseMessages(\n    requestData: thisProto.ListResponseMessagesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListResponseMessagesResponse> {\n    return this.$raw\n      .listResponseMessages(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchCreateParameters\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchParametersStatusResponse>\n   */\n  batchCreateParameters(\n    requestData: thisProto.BatchCreateParametersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchParametersStatusResponse> {\n    return this.$raw\n      .batchCreateParameters(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchGetParameters\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchParametersStatusResponse>\n   */\n  batchGetParameters(\n    requestData: thisProto.BatchGetParametersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchParametersStatusResponse> {\n    return this.$raw\n      .batchGetParameters(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchUpdateParameters\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchParametersStatusResponse>\n   */\n  batchUpdateParameters(\n    requestData: thisProto.BatchUpdateParametersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchParametersStatusResponse> {\n    return this.$raw\n      .batchUpdateParameters(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/BatchDeleteParameters\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.BatchDeleteParametersResponse>\n   */\n  batchDeleteParameters(\n    requestData: thisProto.BatchDeleteParametersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.BatchDeleteParametersResponse> {\n    return this.$raw\n      .batchDeleteParameters(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/ListParameters\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListParametersResponse>\n   */\n  listParameters(\n    requestData: thisProto.ListParametersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListParametersResponse> {\n    return this.$raw\n      .listParameters(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Intents/ListTrainingPhrasesofIntentsWithEnrichment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListTrainingPhrasesofIntentsWithEnrichmentResponse>\n   */\n  listTrainingPhrasesofIntentsWithEnrichment(\n    requestData: thisProto.ListTrainingPhrasesofIntentsWithEnrichmentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListTrainingPhrasesofIntentsWithEnrichmentResponse> {\n    return this.$raw\n      .listTrainingPhrasesofIntentsWithEnrichment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for LlmEvaluations.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_LLM_EVALUATIONS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_LLM_EVALUATIONS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './llm-evaluation.pb';\nimport * as googleApi000 from '../../google/api/annotations.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleRpc004 from '../../google/rpc/status.pb';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu006 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/common.pb';\nimport * as googleProtobuf008 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operations.pb';\nimport { GRPC_LLM_EVALUATIONS_CLIENT_SETTINGS } from './llm-evaluation.pbconf';\n/**\n * Service client implementation for ondewo.nlu.LlmEvaluations\n */\n@Injectable({ providedIn: 'any' })\nexport class LlmEvaluationsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateDataset\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationDataset>>\n     */\n    llmEvaluationCreateDataset: (\n      requestData: thisProto.CreateLlmEvaluationDatasetRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationDataset>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateDataset',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationDatasetRequest,\n        responseClass: thisProto.LlmEvaluationDataset\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetDataset\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationDataset>>\n     */\n    llmEvaluationGetDataset: (\n      requestData: thisProto.GetLlmEvaluationDatasetRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationDataset>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetDataset',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationDatasetRequest,\n        responseClass: thisProto.LlmEvaluationDataset\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListDatasets\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationDatasetsResponse>>\n     */\n    llmEvaluationListDatasets: (\n      requestData: thisProto.ListLlmEvaluationDatasetsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmEvaluationDatasetsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListDatasets',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationDatasetsRequest,\n        responseClass: thisProto.ListLlmEvaluationDatasetsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateDataset\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationDataset>>\n     */\n    llmEvaluationUpdateDataset: (\n      requestData: thisProto.UpdateLlmEvaluationDatasetRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationDataset>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateDataset',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationDatasetRequest,\n        responseClass: thisProto.LlmEvaluationDataset\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteDataset\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteDataset: (\n      requestData: thisProto.DeleteLlmEvaluationDatasetRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteDataset',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationDatasetRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationAddExample\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationExample>>\n     */\n    llmEvaluationAddExample: (\n      requestData: thisProto.AddLlmEvaluationExampleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationExample>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationAddExample',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddLlmEvaluationExampleRequest,\n        responseClass: thisProto.LlmEvaluationExample\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationAddExamples\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.AddLlmEvaluationExamplesResponse>>\n     */\n    llmEvaluationAddExamples: (\n      requestData: thisProto.AddLlmEvaluationExamplesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.AddLlmEvaluationExamplesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationAddExamples',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddLlmEvaluationExamplesRequest,\n        responseClass: thisProto.AddLlmEvaluationExamplesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetExample\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationExample>>\n     */\n    llmEvaluationGetExample: (\n      requestData: thisProto.GetLlmEvaluationExampleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationExample>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetExample',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationExampleRequest,\n        responseClass: thisProto.LlmEvaluationExample\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListExamples\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationExamplesResponse>>\n     */\n    llmEvaluationListExamples: (\n      requestData: thisProto.ListLlmEvaluationExamplesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmEvaluationExamplesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListExamples',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationExamplesRequest,\n        responseClass: thisProto.ListLlmEvaluationExamplesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateExample\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationExample>>\n     */\n    llmEvaluationUpdateExample: (\n      requestData: thisProto.UpdateLlmEvaluationExampleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationExample>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateExample',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationExampleRequest,\n        responseClass: thisProto.LlmEvaluationExample\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteExample\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteExample: (\n      requestData: thisProto.DeleteLlmEvaluationExampleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteExample',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationExampleRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationRunExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu009.Operation>>\n     */\n    llmEvaluationRunExperiment: (\n      requestData: thisProto.RunLlmEvaluationExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu009.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationRunExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RunLlmEvaluationExperimentRequest,\n        responseClass: ondewoNlu009.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationExperiment>>\n     */\n    llmEvaluationGetExperiment: (\n      requestData: thisProto.GetLlmEvaluationExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationExperimentRequest,\n        responseClass: thisProto.LlmEvaluationExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListExperiments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationExperimentsResponse>>\n     */\n    llmEvaluationListExperiments: (\n      requestData: thisProto.ListLlmEvaluationExperimentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationExperimentsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListExperiments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationExperimentsRequest,\n        responseClass: thisProto.ListLlmEvaluationExperimentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationExperiment>>\n     */\n    llmEvaluationUpdateExperiment: (\n      requestData: thisProto.UpdateLlmEvaluationExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationExperimentRequest,\n        responseClass: thisProto.LlmEvaluationExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteExperiment: (\n      requestData: thisProto.DeleteLlmEvaluationExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationExperimentRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCancelExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationExperiment>>\n     */\n    llmEvaluationCancelExperiment: (\n      requestData: thisProto.CancelLlmEvaluationExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCancelExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CancelLlmEvaluationExperimentRequest,\n        responseClass: thisProto.LlmEvaluationExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCompareExperiments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationComparison>>\n     */\n    llmEvaluationCompareExperiments: (\n      requestData: thisProto.CompareLlmEvaluationExperimentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationComparison>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCompareExperiments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CompareLlmEvaluationExperimentsRequest,\n        responseClass: thisProto.LlmEvaluationComparison\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationSubmitFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationFeedback>>\n     */\n    llmEvaluationSubmitFeedback: (\n      requestData: thisProto.SubmitLlmEvaluationFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationFeedback>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationSubmitFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.SubmitLlmEvaluationFeedbackRequest,\n        responseClass: thisProto.LlmEvaluationFeedback\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationFeedbackResponse>>\n     */\n    llmEvaluationListFeedback: (\n      requestData: thisProto.ListLlmEvaluationFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmEvaluationFeedbackResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationFeedbackRequest,\n        responseClass: thisProto.ListLlmEvaluationFeedbackResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteFeedback: (\n      requestData: thisProto.DeleteLlmEvaluationFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationFeedbackRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationFeedback>>\n     */\n    llmEvaluationUpdateFeedback: (\n      requestData: thisProto.UpdateLlmEvaluationFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationFeedback>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationFeedbackRequest,\n        responseClass: thisProto.LlmEvaluationFeedback\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateReleaseGate\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGate>>\n     */\n    llmEvaluationCreateReleaseGate: (\n      requestData: thisProto.CreateLlmEvaluationReleaseGateRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGate>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateReleaseGate',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationReleaseGateRequest,\n        responseClass: thisProto.LlmEvaluationReleaseGate\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetReleaseGate\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGate>>\n     */\n    llmEvaluationGetReleaseGate: (\n      requestData: thisProto.GetLlmEvaluationReleaseGateRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGate>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetReleaseGate',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationReleaseGateRequest,\n        responseClass: thisProto.LlmEvaluationReleaseGate\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListReleaseGates\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationReleaseGatesResponse>>\n     */\n    llmEvaluationListReleaseGates: (\n      requestData: thisProto.ListLlmEvaluationReleaseGatesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationReleaseGatesResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListReleaseGates',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationReleaseGatesRequest,\n        responseClass: thisProto.ListLlmEvaluationReleaseGatesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateReleaseGate\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGate>>\n     */\n    llmEvaluationUpdateReleaseGate: (\n      requestData: thisProto.UpdateLlmEvaluationReleaseGateRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGate>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateReleaseGate',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationReleaseGateRequest,\n        responseClass: thisProto.LlmEvaluationReleaseGate\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteReleaseGate\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteReleaseGate: (\n      requestData: thisProto.DeleteLlmEvaluationReleaseGateRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteReleaseGate',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationReleaseGateRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationRunReleaseGate\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu009.Operation>>\n     */\n    llmEvaluationRunReleaseGate: (\n      requestData: thisProto.RunLlmEvaluationReleaseGateRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu009.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationRunReleaseGate',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RunLlmEvaluationReleaseGateRequest,\n        responseClass: ondewoNlu009.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetReleaseGateRun\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGateRun>>\n     */\n    llmEvaluationGetReleaseGateRun: (\n      requestData: thisProto.GetLlmEvaluationReleaseGateRunRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationReleaseGateRun>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetReleaseGateRun',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationReleaseGateRunRequest,\n        responseClass: thisProto.LlmEvaluationReleaseGateRun\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListReleaseGateRuns\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationReleaseGateRunsResponse>>\n     */\n    llmEvaluationListReleaseGateRuns: (\n      requestData: thisProto.ListLlmEvaluationReleaseGateRunsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationReleaseGateRunsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListReleaseGateRuns',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationReleaseGateRunsRequest,\n        responseClass: thisProto.ListLlmEvaluationReleaseGateRunsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateScorecard\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationScorecard>>\n     */\n    llmEvaluationCreateScorecard: (\n      requestData: thisProto.CreateLlmEvaluationScorecardRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationScorecard>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateScorecard',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationScorecardRequest,\n        responseClass: thisProto.LlmEvaluationScorecard\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetScorecard\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationScorecard>>\n     */\n    llmEvaluationGetScorecard: (\n      requestData: thisProto.GetLlmEvaluationScorecardRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationScorecard>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetScorecard',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationScorecardRequest,\n        responseClass: thisProto.LlmEvaluationScorecard\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListScorecards\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationScorecardsResponse>>\n     */\n    llmEvaluationListScorecards: (\n      requestData: thisProto.ListLlmEvaluationScorecardsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmEvaluationScorecardsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListScorecards',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationScorecardsRequest,\n        responseClass: thisProto.ListLlmEvaluationScorecardsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateScorecard\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationScorecard>>\n     */\n    llmEvaluationUpdateScorecard: (\n      requestData: thisProto.UpdateLlmEvaluationScorecardRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationScorecard>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateScorecard',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationScorecardRequest,\n        responseClass: thisProto.LlmEvaluationScorecard\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteScorecard\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteScorecard: (\n      requestData: thisProto.DeleteLlmEvaluationScorecardRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteScorecard',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationScorecardRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetProjectSettings\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationProjectSettings>>\n     */\n    llmEvaluationGetProjectSettings: (\n      requestData: thisProto.GetLlmEvaluationProjectSettingsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationProjectSettings>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetProjectSettings',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationProjectSettingsRequest,\n        responseClass: thisProto.LlmEvaluationProjectSettings\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateProjectSettings\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationProjectSettings>>\n     */\n    llmEvaluationUpdateProjectSettings: (\n      requestData: thisProto.UpdateLlmEvaluationProjectSettingsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationProjectSettings>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateProjectSettings',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationProjectSettingsRequest,\n        responseClass: thisProto.LlmEvaluationProjectSettings\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListEvaluators\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationEvaluatorsResponse>>\n     */\n    llmEvaluationListEvaluators: (\n      requestData: thisProto.ListLlmEvaluationEvaluatorsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmEvaluationEvaluatorsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListEvaluators',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationEvaluatorsRequest,\n        responseClass: thisProto.ListLlmEvaluationEvaluatorsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateExamplesFromSession\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CreateLlmEvaluationExamplesFromSessionResponse>>\n     */\n    llmEvaluationCreateExamplesFromSession: (\n      requestData: thisProto.CreateLlmEvaluationExamplesFromSessionRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.CreateLlmEvaluationExamplesFromSessionResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path:\n          '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateExamplesFromSession',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationExamplesFromSessionRequest,\n        responseClass: thisProto.CreateLlmEvaluationExamplesFromSessionResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationSimulateConversations\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu009.Operation>>\n     */\n    llmEvaluationSimulateConversations: (\n      requestData: thisProto.SimulateLlmEvaluationConversationsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu009.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationSimulateConversations',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.SimulateLlmEvaluationConversationsRequest,\n        responseClass: ondewoNlu009.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateSchedule\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationSchedule>>\n     */\n    llmEvaluationCreateSchedule: (\n      requestData: thisProto.CreateLlmEvaluationScheduleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationSchedule>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateSchedule',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationScheduleRequest,\n        responseClass: thisProto.LlmEvaluationSchedule\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetSchedule\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationSchedule>>\n     */\n    llmEvaluationGetSchedule: (\n      requestData: thisProto.GetLlmEvaluationScheduleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationSchedule>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetSchedule',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationScheduleRequest,\n        responseClass: thisProto.LlmEvaluationSchedule\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListSchedules\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationSchedulesResponse>>\n     */\n    llmEvaluationListSchedules: (\n      requestData: thisProto.ListLlmEvaluationSchedulesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmEvaluationSchedulesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListSchedules',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationSchedulesRequest,\n        responseClass: thisProto.ListLlmEvaluationSchedulesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateSchedule\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationSchedule>>\n     */\n    llmEvaluationUpdateSchedule: (\n      requestData: thisProto.UpdateLlmEvaluationScheduleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationSchedule>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateSchedule',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationScheduleRequest,\n        responseClass: thisProto.LlmEvaluationSchedule\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteSchedule\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteSchedule: (\n      requestData: thisProto.DeleteLlmEvaluationScheduleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteSchedule',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationScheduleRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateReport\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationReport>>\n     */\n    llmEvaluationCreateReport: (\n      requestData: thisProto.CreateLlmEvaluationReportRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationReport>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateReport',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationReportRequest,\n        responseClass: thisProto.LlmEvaluationReport\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetReport\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationReport>>\n     */\n    llmEvaluationGetReport: (\n      requestData: thisProto.GetLlmEvaluationReportRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationReport>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetReport',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationReportRequest,\n        responseClass: thisProto.LlmEvaluationReport\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListReports\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationReportsResponse>>\n     */\n    llmEvaluationListReports: (\n      requestData: thisProto.ListLlmEvaluationReportsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLlmEvaluationReportsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListReports',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationReportsRequest,\n        responseClass: thisProto.ListLlmEvaluationReportsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteReport\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteReport: (\n      requestData: thisProto.DeleteLlmEvaluationReportRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteReport',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationReportRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateAbExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>>\n     */\n    llmEvaluationCreateAbExperiment: (\n      requestData: thisProto.CreateLlmEvaluationAbExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateAbExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationAbExperimentRequest,\n        responseClass: thisProto.LlmEvaluationAbExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>>\n     */\n    llmEvaluationGetAbExperiment: (\n      requestData: thisProto.GetLlmEvaluationAbExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationAbExperimentRequest,\n        responseClass: thisProto.LlmEvaluationAbExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListAbExperiments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationAbExperimentsResponse>>\n     */\n    llmEvaluationListAbExperiments: (\n      requestData: thisProto.ListLlmEvaluationAbExperimentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationAbExperimentsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListAbExperiments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationAbExperimentsRequest,\n        responseClass: thisProto.ListLlmEvaluationAbExperimentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateAbExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>>\n     */\n    llmEvaluationUpdateAbExperiment: (\n      requestData: thisProto.UpdateLlmEvaluationAbExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateAbExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationAbExperimentRequest,\n        responseClass: thisProto.LlmEvaluationAbExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteAbExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteAbExperiment: (\n      requestData: thisProto.DeleteLlmEvaluationAbExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteAbExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationAbExperimentRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationStartAbExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>>\n     */\n    llmEvaluationStartAbExperiment: (\n      requestData: thisProto.StartLlmEvaluationAbExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationStartAbExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.StartLlmEvaluationAbExperimentRequest,\n        responseClass: thisProto.LlmEvaluationAbExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationStopAbExperiment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>>\n     */\n    llmEvaluationStopAbExperiment: (\n      requestData: thisProto.StopLlmEvaluationAbExperimentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAbExperiment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationStopAbExperiment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.StopLlmEvaluationAbExperimentRequest,\n        responseClass: thisProto.LlmEvaluationAbExperiment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbExperimentResults\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetLlmEvaluationAbExperimentResultsResponse>>\n     */\n    llmEvaluationGetAbExperimentResults: (\n      requestData: thisProto.GetLlmEvaluationAbExperimentResultsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.GetLlmEvaluationAbExperimentResultsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbExperimentResults',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationAbExperimentResultsRequest,\n        responseClass: thisProto.GetLlmEvaluationAbExperimentResultsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbRolloutRecommendation\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbRolloutRecommendation>>\n     */\n    llmEvaluationGetAbRolloutRecommendation: (\n      requestData: thisProto.GetLlmEvaluationAbRolloutRecommendationRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.LlmEvaluationAbRolloutRecommendation>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path:\n          '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbRolloutRecommendation',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationAbRolloutRecommendationRequest,\n        responseClass: thisProto.LlmEvaluationAbRolloutRecommendation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationApplyAbRollout\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbRolloutDecision>>\n     */\n    llmEvaluationApplyAbRollout: (\n      requestData: thisProto.ApplyLlmEvaluationAbRolloutRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAbRolloutDecision>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationApplyAbRollout',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ApplyLlmEvaluationAbRolloutRequest,\n        responseClass: thisProto.LlmEvaluationAbRolloutDecision\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbRolloutDecision\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAbRolloutDecision>>\n     */\n    llmEvaluationGetAbRolloutDecision: (\n      requestData: thisProto.GetLlmEvaluationAbRolloutDecisionRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAbRolloutDecision>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbRolloutDecision',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationAbRolloutDecisionRequest,\n        responseClass: thisProto.LlmEvaluationAbRolloutDecision\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListAbRolloutDecisions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationAbRolloutDecisionsResponse>>\n     */\n    llmEvaluationListAbRolloutDecisions: (\n      requestData: thisProto.ListLlmEvaluationAbRolloutDecisionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationAbRolloutDecisionsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListAbRolloutDecisions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationAbRolloutDecisionsRequest,\n        responseClass: thisProto.ListLlmEvaluationAbRolloutDecisionsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationCreateOnlineConfig\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationOnlineConfig>>\n     */\n    llmEvaluationCreateOnlineConfig: (\n      requestData: thisProto.CreateLlmEvaluationOnlineConfigRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationOnlineConfig>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateOnlineConfig',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateLlmEvaluationOnlineConfigRequest,\n        responseClass: thisProto.LlmEvaluationOnlineConfig\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetOnlineConfig\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationOnlineConfig>>\n     */\n    llmEvaluationGetOnlineConfig: (\n      requestData: thisProto.GetLlmEvaluationOnlineConfigRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationOnlineConfig>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetOnlineConfig',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationOnlineConfigRequest,\n        responseClass: thisProto.LlmEvaluationOnlineConfig\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListOnlineConfigs\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationOnlineConfigsResponse>>\n     */\n    llmEvaluationListOnlineConfigs: (\n      requestData: thisProto.ListLlmEvaluationOnlineConfigsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationOnlineConfigsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListOnlineConfigs',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationOnlineConfigsRequest,\n        responseClass: thisProto.ListLlmEvaluationOnlineConfigsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateOnlineConfig\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationOnlineConfig>>\n     */\n    llmEvaluationUpdateOnlineConfig: (\n      requestData: thisProto.UpdateLlmEvaluationOnlineConfigRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationOnlineConfig>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateOnlineConfig',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationOnlineConfigRequest,\n        responseClass: thisProto.LlmEvaluationOnlineConfig\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteOnlineConfig\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf002.Empty>>\n     */\n    llmEvaluationDeleteOnlineConfig: (\n      requestData: thisProto.DeleteLlmEvaluationOnlineConfigRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf002.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteOnlineConfig',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteLlmEvaluationOnlineConfigRequest,\n        responseClass: googleProtobuf002.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetOnlineResult\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationOnlineResult>>\n     */\n    llmEvaluationGetOnlineResult: (\n      requestData: thisProto.GetLlmEvaluationOnlineResultRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationOnlineResult>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetOnlineResult',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationOnlineResultRequest,\n        responseClass: thisProto.LlmEvaluationOnlineResult\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListOnlineResults\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationOnlineResultsResponse>>\n     */\n    llmEvaluationListOnlineResults: (\n      requestData: thisProto.ListLlmEvaluationOnlineResultsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationOnlineResultsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationListOnlineResults',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationOnlineResultsRequest,\n        responseClass: thisProto.ListLlmEvaluationOnlineResultsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationGetAnnotationQueueItem\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAnnotationQueueItem>>\n     */\n    llmEvaluationGetAnnotationQueueItem: (\n      requestData: thisProto.GetLlmEvaluationAnnotationQueueItemRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAnnotationQueueItem>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAnnotationQueueItem',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLlmEvaluationAnnotationQueueItemRequest,\n        responseClass: thisProto.LlmEvaluationAnnotationQueueItem\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationListAnnotationQueueItems\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLlmEvaluationAnnotationQueueItemsResponse>>\n     */\n    llmEvaluationListAnnotationQueueItems: (\n      requestData: thisProto.ListLlmEvaluationAnnotationQueueItemsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListLlmEvaluationAnnotationQueueItemsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path:\n          '/ondewo.nlu.LlmEvaluations/LlmEvaluationListAnnotationQueueItems',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLlmEvaluationAnnotationQueueItemsRequest,\n        responseClass: thisProto.ListLlmEvaluationAnnotationQueueItemsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateAnnotationQueueItem\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.LlmEvaluationAnnotationQueueItem>>\n     */\n    llmEvaluationUpdateAnnotationQueueItem: (\n      requestData: thisProto.UpdateLlmEvaluationAnnotationQueueItemRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.LlmEvaluationAnnotationQueueItem>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path:\n          '/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateAnnotationQueueItem',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateLlmEvaluationAnnotationQueueItemRequest,\n        responseClass: thisProto.LlmEvaluationAnnotationQueueItem\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.LlmEvaluations/LlmEvaluationPromoteAnnotationQueueItem\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.PromoteLlmEvaluationAnnotationQueueItemResponse>>\n     */\n    llmEvaluationPromoteAnnotationQueueItem: (\n      requestData: thisProto.PromoteLlmEvaluationAnnotationQueueItemRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.PromoteLlmEvaluationAnnotationQueueItemResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path:\n          '/ondewo.nlu.LlmEvaluations/LlmEvaluationPromoteAnnotationQueueItem',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.PromoteLlmEvaluationAnnotationQueueItemRequest,\n        responseClass: thisProto.PromoteLlmEvaluationAnnotationQueueItemResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_LLM_EVALUATIONS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient(\n      'ondewo.nlu.LlmEvaluations',\n      settings\n    );\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateDataset\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationDataset>\n   */\n  llmEvaluationCreateDataset(\n    requestData: thisProto.CreateLlmEvaluationDatasetRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationDataset> {\n    return this.$raw\n      .llmEvaluationCreateDataset(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetDataset\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationDataset>\n   */\n  llmEvaluationGetDataset(\n    requestData: thisProto.GetLlmEvaluationDatasetRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationDataset> {\n    return this.$raw\n      .llmEvaluationGetDataset(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListDatasets\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationDatasetsResponse>\n   */\n  llmEvaluationListDatasets(\n    requestData: thisProto.ListLlmEvaluationDatasetsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationDatasetsResponse> {\n    return this.$raw\n      .llmEvaluationListDatasets(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateDataset\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationDataset>\n   */\n  llmEvaluationUpdateDataset(\n    requestData: thisProto.UpdateLlmEvaluationDatasetRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationDataset> {\n    return this.$raw\n      .llmEvaluationUpdateDataset(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteDataset\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteDataset(\n    requestData: thisProto.DeleteLlmEvaluationDatasetRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteDataset(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationAddExample\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationExample>\n   */\n  llmEvaluationAddExample(\n    requestData: thisProto.AddLlmEvaluationExampleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationExample> {\n    return this.$raw\n      .llmEvaluationAddExample(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationAddExamples\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.AddLlmEvaluationExamplesResponse>\n   */\n  llmEvaluationAddExamples(\n    requestData: thisProto.AddLlmEvaluationExamplesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.AddLlmEvaluationExamplesResponse> {\n    return this.$raw\n      .llmEvaluationAddExamples(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetExample\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationExample>\n   */\n  llmEvaluationGetExample(\n    requestData: thisProto.GetLlmEvaluationExampleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationExample> {\n    return this.$raw\n      .llmEvaluationGetExample(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListExamples\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationExamplesResponse>\n   */\n  llmEvaluationListExamples(\n    requestData: thisProto.ListLlmEvaluationExamplesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationExamplesResponse> {\n    return this.$raw\n      .llmEvaluationListExamples(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateExample\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationExample>\n   */\n  llmEvaluationUpdateExample(\n    requestData: thisProto.UpdateLlmEvaluationExampleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationExample> {\n    return this.$raw\n      .llmEvaluationUpdateExample(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteExample\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteExample(\n    requestData: thisProto.DeleteLlmEvaluationExampleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteExample(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationRunExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu009.Operation>\n   */\n  llmEvaluationRunExperiment(\n    requestData: thisProto.RunLlmEvaluationExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu009.Operation> {\n    return this.$raw\n      .llmEvaluationRunExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationExperiment>\n   */\n  llmEvaluationGetExperiment(\n    requestData: thisProto.GetLlmEvaluationExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationExperiment> {\n    return this.$raw\n      .llmEvaluationGetExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListExperiments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationExperimentsResponse>\n   */\n  llmEvaluationListExperiments(\n    requestData: thisProto.ListLlmEvaluationExperimentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationExperimentsResponse> {\n    return this.$raw\n      .llmEvaluationListExperiments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationExperiment>\n   */\n  llmEvaluationUpdateExperiment(\n    requestData: thisProto.UpdateLlmEvaluationExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationExperiment> {\n    return this.$raw\n      .llmEvaluationUpdateExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteExperiment(\n    requestData: thisProto.DeleteLlmEvaluationExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCancelExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationExperiment>\n   */\n  llmEvaluationCancelExperiment(\n    requestData: thisProto.CancelLlmEvaluationExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationExperiment> {\n    return this.$raw\n      .llmEvaluationCancelExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCompareExperiments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationComparison>\n   */\n  llmEvaluationCompareExperiments(\n    requestData: thisProto.CompareLlmEvaluationExperimentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationComparison> {\n    return this.$raw\n      .llmEvaluationCompareExperiments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationSubmitFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationFeedback>\n   */\n  llmEvaluationSubmitFeedback(\n    requestData: thisProto.SubmitLlmEvaluationFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationFeedback> {\n    return this.$raw\n      .llmEvaluationSubmitFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationFeedbackResponse>\n   */\n  llmEvaluationListFeedback(\n    requestData: thisProto.ListLlmEvaluationFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationFeedbackResponse> {\n    return this.$raw\n      .llmEvaluationListFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteFeedback(\n    requestData: thisProto.DeleteLlmEvaluationFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationFeedback>\n   */\n  llmEvaluationUpdateFeedback(\n    requestData: thisProto.UpdateLlmEvaluationFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationFeedback> {\n    return this.$raw\n      .llmEvaluationUpdateFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateReleaseGate\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationReleaseGate>\n   */\n  llmEvaluationCreateReleaseGate(\n    requestData: thisProto.CreateLlmEvaluationReleaseGateRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationReleaseGate> {\n    return this.$raw\n      .llmEvaluationCreateReleaseGate(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetReleaseGate\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationReleaseGate>\n   */\n  llmEvaluationGetReleaseGate(\n    requestData: thisProto.GetLlmEvaluationReleaseGateRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationReleaseGate> {\n    return this.$raw\n      .llmEvaluationGetReleaseGate(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListReleaseGates\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationReleaseGatesResponse>\n   */\n  llmEvaluationListReleaseGates(\n    requestData: thisProto.ListLlmEvaluationReleaseGatesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationReleaseGatesResponse> {\n    return this.$raw\n      .llmEvaluationListReleaseGates(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateReleaseGate\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationReleaseGate>\n   */\n  llmEvaluationUpdateReleaseGate(\n    requestData: thisProto.UpdateLlmEvaluationReleaseGateRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationReleaseGate> {\n    return this.$raw\n      .llmEvaluationUpdateReleaseGate(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteReleaseGate\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteReleaseGate(\n    requestData: thisProto.DeleteLlmEvaluationReleaseGateRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteReleaseGate(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationRunReleaseGate\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu009.Operation>\n   */\n  llmEvaluationRunReleaseGate(\n    requestData: thisProto.RunLlmEvaluationReleaseGateRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu009.Operation> {\n    return this.$raw\n      .llmEvaluationRunReleaseGate(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetReleaseGateRun\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationReleaseGateRun>\n   */\n  llmEvaluationGetReleaseGateRun(\n    requestData: thisProto.GetLlmEvaluationReleaseGateRunRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationReleaseGateRun> {\n    return this.$raw\n      .llmEvaluationGetReleaseGateRun(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListReleaseGateRuns\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationReleaseGateRunsResponse>\n   */\n  llmEvaluationListReleaseGateRuns(\n    requestData: thisProto.ListLlmEvaluationReleaseGateRunsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationReleaseGateRunsResponse> {\n    return this.$raw\n      .llmEvaluationListReleaseGateRuns(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateScorecard\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationScorecard>\n   */\n  llmEvaluationCreateScorecard(\n    requestData: thisProto.CreateLlmEvaluationScorecardRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationScorecard> {\n    return this.$raw\n      .llmEvaluationCreateScorecard(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetScorecard\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationScorecard>\n   */\n  llmEvaluationGetScorecard(\n    requestData: thisProto.GetLlmEvaluationScorecardRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationScorecard> {\n    return this.$raw\n      .llmEvaluationGetScorecard(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListScorecards\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationScorecardsResponse>\n   */\n  llmEvaluationListScorecards(\n    requestData: thisProto.ListLlmEvaluationScorecardsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationScorecardsResponse> {\n    return this.$raw\n      .llmEvaluationListScorecards(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateScorecard\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationScorecard>\n   */\n  llmEvaluationUpdateScorecard(\n    requestData: thisProto.UpdateLlmEvaluationScorecardRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationScorecard> {\n    return this.$raw\n      .llmEvaluationUpdateScorecard(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteScorecard\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteScorecard(\n    requestData: thisProto.DeleteLlmEvaluationScorecardRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteScorecard(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetProjectSettings\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationProjectSettings>\n   */\n  llmEvaluationGetProjectSettings(\n    requestData: thisProto.GetLlmEvaluationProjectSettingsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationProjectSettings> {\n    return this.$raw\n      .llmEvaluationGetProjectSettings(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateProjectSettings\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationProjectSettings>\n   */\n  llmEvaluationUpdateProjectSettings(\n    requestData: thisProto.UpdateLlmEvaluationProjectSettingsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationProjectSettings> {\n    return this.$raw\n      .llmEvaluationUpdateProjectSettings(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListEvaluators\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationEvaluatorsResponse>\n   */\n  llmEvaluationListEvaluators(\n    requestData: thisProto.ListLlmEvaluationEvaluatorsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationEvaluatorsResponse> {\n    return this.$raw\n      .llmEvaluationListEvaluators(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateExamplesFromSession\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CreateLlmEvaluationExamplesFromSessionResponse>\n   */\n  llmEvaluationCreateExamplesFromSession(\n    requestData: thisProto.CreateLlmEvaluationExamplesFromSessionRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CreateLlmEvaluationExamplesFromSessionResponse> {\n    return this.$raw\n      .llmEvaluationCreateExamplesFromSession(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationSimulateConversations\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu009.Operation>\n   */\n  llmEvaluationSimulateConversations(\n    requestData: thisProto.SimulateLlmEvaluationConversationsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu009.Operation> {\n    return this.$raw\n      .llmEvaluationSimulateConversations(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateSchedule\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationSchedule>\n   */\n  llmEvaluationCreateSchedule(\n    requestData: thisProto.CreateLlmEvaluationScheduleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationSchedule> {\n    return this.$raw\n      .llmEvaluationCreateSchedule(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetSchedule\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationSchedule>\n   */\n  llmEvaluationGetSchedule(\n    requestData: thisProto.GetLlmEvaluationScheduleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationSchedule> {\n    return this.$raw\n      .llmEvaluationGetSchedule(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListSchedules\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationSchedulesResponse>\n   */\n  llmEvaluationListSchedules(\n    requestData: thisProto.ListLlmEvaluationSchedulesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationSchedulesResponse> {\n    return this.$raw\n      .llmEvaluationListSchedules(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateSchedule\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationSchedule>\n   */\n  llmEvaluationUpdateSchedule(\n    requestData: thisProto.UpdateLlmEvaluationScheduleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationSchedule> {\n    return this.$raw\n      .llmEvaluationUpdateSchedule(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteSchedule\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteSchedule(\n    requestData: thisProto.DeleteLlmEvaluationScheduleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteSchedule(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateReport\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationReport>\n   */\n  llmEvaluationCreateReport(\n    requestData: thisProto.CreateLlmEvaluationReportRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationReport> {\n    return this.$raw\n      .llmEvaluationCreateReport(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetReport\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationReport>\n   */\n  llmEvaluationGetReport(\n    requestData: thisProto.GetLlmEvaluationReportRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationReport> {\n    return this.$raw\n      .llmEvaluationGetReport(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListReports\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationReportsResponse>\n   */\n  llmEvaluationListReports(\n    requestData: thisProto.ListLlmEvaluationReportsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationReportsResponse> {\n    return this.$raw\n      .llmEvaluationListReports(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteReport\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteReport(\n    requestData: thisProto.DeleteLlmEvaluationReportRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteReport(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateAbExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbExperiment>\n   */\n  llmEvaluationCreateAbExperiment(\n    requestData: thisProto.CreateLlmEvaluationAbExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbExperiment> {\n    return this.$raw\n      .llmEvaluationCreateAbExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbExperiment>\n   */\n  llmEvaluationGetAbExperiment(\n    requestData: thisProto.GetLlmEvaluationAbExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbExperiment> {\n    return this.$raw\n      .llmEvaluationGetAbExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListAbExperiments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationAbExperimentsResponse>\n   */\n  llmEvaluationListAbExperiments(\n    requestData: thisProto.ListLlmEvaluationAbExperimentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationAbExperimentsResponse> {\n    return this.$raw\n      .llmEvaluationListAbExperiments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateAbExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbExperiment>\n   */\n  llmEvaluationUpdateAbExperiment(\n    requestData: thisProto.UpdateLlmEvaluationAbExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbExperiment> {\n    return this.$raw\n      .llmEvaluationUpdateAbExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteAbExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteAbExperiment(\n    requestData: thisProto.DeleteLlmEvaluationAbExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteAbExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationStartAbExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbExperiment>\n   */\n  llmEvaluationStartAbExperiment(\n    requestData: thisProto.StartLlmEvaluationAbExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbExperiment> {\n    return this.$raw\n      .llmEvaluationStartAbExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationStopAbExperiment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbExperiment>\n   */\n  llmEvaluationStopAbExperiment(\n    requestData: thisProto.StopLlmEvaluationAbExperimentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbExperiment> {\n    return this.$raw\n      .llmEvaluationStopAbExperiment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbExperimentResults\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetLlmEvaluationAbExperimentResultsResponse>\n   */\n  llmEvaluationGetAbExperimentResults(\n    requestData: thisProto.GetLlmEvaluationAbExperimentResultsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetLlmEvaluationAbExperimentResultsResponse> {\n    return this.$raw\n      .llmEvaluationGetAbExperimentResults(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbRolloutRecommendation\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbRolloutRecommendation>\n   */\n  llmEvaluationGetAbRolloutRecommendation(\n    requestData: thisProto.GetLlmEvaluationAbRolloutRecommendationRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbRolloutRecommendation> {\n    return this.$raw\n      .llmEvaluationGetAbRolloutRecommendation(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationApplyAbRollout\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbRolloutDecision>\n   */\n  llmEvaluationApplyAbRollout(\n    requestData: thisProto.ApplyLlmEvaluationAbRolloutRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbRolloutDecision> {\n    return this.$raw\n      .llmEvaluationApplyAbRollout(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAbRolloutDecision\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAbRolloutDecision>\n   */\n  llmEvaluationGetAbRolloutDecision(\n    requestData: thisProto.GetLlmEvaluationAbRolloutDecisionRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAbRolloutDecision> {\n    return this.$raw\n      .llmEvaluationGetAbRolloutDecision(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListAbRolloutDecisions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationAbRolloutDecisionsResponse>\n   */\n  llmEvaluationListAbRolloutDecisions(\n    requestData: thisProto.ListLlmEvaluationAbRolloutDecisionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationAbRolloutDecisionsResponse> {\n    return this.$raw\n      .llmEvaluationListAbRolloutDecisions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationCreateOnlineConfig\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationOnlineConfig>\n   */\n  llmEvaluationCreateOnlineConfig(\n    requestData: thisProto.CreateLlmEvaluationOnlineConfigRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationOnlineConfig> {\n    return this.$raw\n      .llmEvaluationCreateOnlineConfig(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetOnlineConfig\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationOnlineConfig>\n   */\n  llmEvaluationGetOnlineConfig(\n    requestData: thisProto.GetLlmEvaluationOnlineConfigRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationOnlineConfig> {\n    return this.$raw\n      .llmEvaluationGetOnlineConfig(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListOnlineConfigs\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationOnlineConfigsResponse>\n   */\n  llmEvaluationListOnlineConfigs(\n    requestData: thisProto.ListLlmEvaluationOnlineConfigsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationOnlineConfigsResponse> {\n    return this.$raw\n      .llmEvaluationListOnlineConfigs(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateOnlineConfig\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationOnlineConfig>\n   */\n  llmEvaluationUpdateOnlineConfig(\n    requestData: thisProto.UpdateLlmEvaluationOnlineConfigRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationOnlineConfig> {\n    return this.$raw\n      .llmEvaluationUpdateOnlineConfig(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationDeleteOnlineConfig\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf002.Empty>\n   */\n  llmEvaluationDeleteOnlineConfig(\n    requestData: thisProto.DeleteLlmEvaluationOnlineConfigRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf002.Empty> {\n    return this.$raw\n      .llmEvaluationDeleteOnlineConfig(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetOnlineResult\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationOnlineResult>\n   */\n  llmEvaluationGetOnlineResult(\n    requestData: thisProto.GetLlmEvaluationOnlineResultRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationOnlineResult> {\n    return this.$raw\n      .llmEvaluationGetOnlineResult(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListOnlineResults\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationOnlineResultsResponse>\n   */\n  llmEvaluationListOnlineResults(\n    requestData: thisProto.ListLlmEvaluationOnlineResultsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationOnlineResultsResponse> {\n    return this.$raw\n      .llmEvaluationListOnlineResults(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationGetAnnotationQueueItem\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAnnotationQueueItem>\n   */\n  llmEvaluationGetAnnotationQueueItem(\n    requestData: thisProto.GetLlmEvaluationAnnotationQueueItemRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAnnotationQueueItem> {\n    return this.$raw\n      .llmEvaluationGetAnnotationQueueItem(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationListAnnotationQueueItems\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLlmEvaluationAnnotationQueueItemsResponse>\n   */\n  llmEvaluationListAnnotationQueueItems(\n    requestData: thisProto.ListLlmEvaluationAnnotationQueueItemsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLlmEvaluationAnnotationQueueItemsResponse> {\n    return this.$raw\n      .llmEvaluationListAnnotationQueueItems(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationUpdateAnnotationQueueItem\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.LlmEvaluationAnnotationQueueItem>\n   */\n  llmEvaluationUpdateAnnotationQueueItem(\n    requestData: thisProto.UpdateLlmEvaluationAnnotationQueueItemRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.LlmEvaluationAnnotationQueueItem> {\n    return this.$raw\n      .llmEvaluationUpdateAnnotationQueueItem(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.LlmEvaluations/LlmEvaluationPromoteAnnotationQueueItem\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.PromoteLlmEvaluationAnnotationQueueItemResponse>\n   */\n  llmEvaluationPromoteAnnotationQueueItem(\n    requestData: thisProto.PromoteLlmEvaluationAnnotationQueueItemRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.PromoteLlmEvaluationAnnotationQueueItemResponse> {\n    return this.$raw\n      .llmEvaluationPromoteAnnotationQueueItem(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Operations.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_OPERATIONS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_OPERATIONS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './operations.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleApi006 from '../../google/api/annotations.pb';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleRpc008 from '../../google/rpc/status.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nimport { GRPC_OPERATIONS_CLIENT_SETTINGS } from './operations.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Operations\n */\n@Injectable({ providedIn: 'any' })\nexport class OperationsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Operations/ListOperations\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListOperationsResponse>>\n     */\n    listOperations: (\n      requestData: thisProto.ListOperationsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListOperationsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/ListOperations',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListOperationsRequest,\n        responseClass: thisProto.ListOperationsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Operations/GetOperation\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Operation>>\n     */\n    getOperation: (\n      requestData: thisProto.GetOperationRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/GetOperation',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetOperationRequest,\n        responseClass: thisProto.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Operations/DeleteOperation\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf007.Empty>>\n     */\n    deleteOperation: (\n      requestData: thisProto.DeleteOperationRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf007.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/DeleteOperation',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteOperationRequest,\n        responseClass: googleProtobuf007.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Operations/CancelOperation\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf007.Empty>>\n     */\n    cancelOperation: (\n      requestData: thisProto.CancelOperationRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf007.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/CancelOperation',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CancelOperationRequest,\n        responseClass: googleProtobuf007.Empty\n      });\n    },\n    /**\n     * Server streaming: /ondewo.nlu.Operations/StreamRemoteOperationContainerLogs\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RemoteOperationContainerLogLine>>\n     */\n    streamRemoteOperationContainerLogs: (\n      requestData: thisProto.StreamRemoteOperationContainerLogsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RemoteOperationContainerLogLine>> => {\n      return this.handler.handle({\n        type: GrpcCallType.serverStream,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/StreamRemoteOperationContainerLogs',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.StreamRemoteOperationContainerLogsRequest,\n        responseClass: thisProto.RemoteOperationContainerLogLine\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Operations/GetRemoteOperationContainerLogs\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetRemoteOperationContainerLogsResponse>>\n     */\n    getRemoteOperationContainerLogs: (\n      requestData: thisProto.GetRemoteOperationContainerLogsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.GetRemoteOperationContainerLogsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/GetRemoteOperationContainerLogs',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetRemoteOperationContainerLogsRequest,\n        responseClass: thisProto.GetRemoteOperationContainerLogsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Operations/GetRemoteOperationContainerStatus\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RemoteOperationContainerStatus>>\n     */\n    getRemoteOperationContainerStatus: (\n      requestData: thisProto.GetRemoteOperationContainerStatusRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RemoteOperationContainerStatus>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/GetRemoteOperationContainerStatus',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetRemoteOperationContainerStatusRequest,\n        responseClass: thisProto.RemoteOperationContainerStatus\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Operations/ListRemoteOperationContainers\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListRemoteOperationContainersResponse>>\n     */\n    listRemoteOperationContainers: (\n      requestData: thisProto.ListRemoteOperationContainersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.ListRemoteOperationContainersResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Operations/ListRemoteOperationContainers',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListRemoteOperationContainersRequest,\n        responseClass: thisProto.ListRemoteOperationContainersResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_OPERATIONS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Operations', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Operations/ListOperations\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListOperationsResponse>\n   */\n  listOperations(\n    requestData: thisProto.ListOperationsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListOperationsResponse> {\n    return this.$raw\n      .listOperations(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Operations/GetOperation\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Operation>\n   */\n  getOperation(\n    requestData: thisProto.GetOperationRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Operation> {\n    return this.$raw\n      .getOperation(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Operations/DeleteOperation\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf007.Empty>\n   */\n  deleteOperation(\n    requestData: thisProto.DeleteOperationRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf007.Empty> {\n    return this.$raw\n      .deleteOperation(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Operations/CancelOperation\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf007.Empty>\n   */\n  cancelOperation(\n    requestData: thisProto.CancelOperationRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf007.Empty> {\n    return this.$raw\n      .cancelOperation(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Server streaming @/ondewo.nlu.Operations/StreamRemoteOperationContainerLogs\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RemoteOperationContainerLogLine>\n   */\n  streamRemoteOperationContainerLogs(\n    requestData: thisProto.StreamRemoteOperationContainerLogsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RemoteOperationContainerLogLine> {\n    return this.$raw\n      .streamRemoteOperationContainerLogs(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Operations/GetRemoteOperationContainerLogs\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetRemoteOperationContainerLogsResponse>\n   */\n  getRemoteOperationContainerLogs(\n    requestData: thisProto.GetRemoteOperationContainerLogsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetRemoteOperationContainerLogsResponse> {\n    return this.$raw\n      .getRemoteOperationContainerLogs(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Operations/GetRemoteOperationContainerStatus\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RemoteOperationContainerStatus>\n   */\n  getRemoteOperationContainerStatus(\n    requestData: thisProto.GetRemoteOperationContainerStatusRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RemoteOperationContainerStatus> {\n    return this.$raw\n      .getRemoteOperationContainerStatus(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Operations/ListRemoteOperationContainers\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListRemoteOperationContainersResponse>\n   */\n  listRemoteOperationContainers(\n    requestData: thisProto.ListRemoteOperationContainersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListRemoteOperationContainersResponse> {\n    return this.$raw\n      .listRemoteOperationContainers(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for ProjectRoles.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_PROJECT_ROLES_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_PROJECT_ROLES_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './project-role.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport { GRPC_PROJECT_ROLES_CLIENT_SETTINGS } from './project-role.pbconf';\n/**\n * Service client implementation for ondewo.nlu.ProjectRoles\n */\n@Injectable({ providedIn: 'any' })\nexport class ProjectRolesClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.ProjectRoles/CreateProjectRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ProjectRole>>\n     */\n    createProjectRole: (\n      requestData: thisProto.CreateProjectRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ProjectRole>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectRoles/CreateProjectRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateProjectRoleRequest,\n        responseClass: thisProto.ProjectRole\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectRoles/GetProjectRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ProjectRole>>\n     */\n    getProjectRole: (\n      requestData: thisProto.GetProjectRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ProjectRole>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectRoles/GetProjectRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectRoleRequest,\n        responseClass: thisProto.ProjectRole\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectRoles/DeleteProjectRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteProjectRole: (\n      requestData: thisProto.DeleteProjectRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectRoles/DeleteProjectRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteProjectRoleRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectRoles/UpdateProjectRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ProjectRole>>\n     */\n    updateProjectRole: (\n      requestData: thisProto.UpdateProjectRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ProjectRole>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectRoles/UpdateProjectRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateProjectRoleRequest,\n        responseClass: thisProto.ProjectRole\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectRoles/ListProjectRoles\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListProjectRolesResponse>>\n     */\n    listProjectRoles: (\n      requestData: thisProto.ListProjectRolesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListProjectRolesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectRoles/ListProjectRoles',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListProjectRolesRequest,\n        responseClass: thisProto.ListProjectRolesResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_PROJECT_ROLES_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient(\n      'ondewo.nlu.ProjectRoles',\n      settings\n    );\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectRoles/CreateProjectRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ProjectRole>\n   */\n  createProjectRole(\n    requestData: thisProto.CreateProjectRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ProjectRole> {\n    return this.$raw\n      .createProjectRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectRoles/GetProjectRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ProjectRole>\n   */\n  getProjectRole(\n    requestData: thisProto.GetProjectRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ProjectRole> {\n    return this.$raw\n      .getProjectRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectRoles/DeleteProjectRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteProjectRole(\n    requestData: thisProto.DeleteProjectRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteProjectRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectRoles/UpdateProjectRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ProjectRole>\n   */\n  updateProjectRole(\n    requestData: thisProto.UpdateProjectRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ProjectRole> {\n    return this.$raw\n      .updateProjectRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectRoles/ListProjectRoles\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListProjectRolesResponse>\n   */\n  listProjectRoles(\n    requestData: thisProto.ListProjectRolesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListProjectRolesResponse> {\n    return this.$raw\n      .listProjectRoles(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as ondewoNlu003 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu004 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu005 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf008 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu010 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/entity-type.pb';\n/**\n * Message implementation for ondewo.nlu.GetIntentCountRequest\n */\nexport class GetIntentCountRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetIntentCountRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetIntentCountRequest();\n    GetIntentCountRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetIntentCountRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.filterByCategory = _instance.filterByCategory || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetIntentCountRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.filterByCategory = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetIntentCountRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetIntentCountRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.filterByCategory) {\n      _writer.writeEnum(2, _instance.filterByCategory);\n    }\n  }\n\n  private _parent: string;\n  private _filterByCategory: ondewoNlu010.IntentCategory;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetIntentCountRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetIntentCountRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.filterByCategory = _value.filterByCategory;\n    GetIntentCountRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get filterByCategory(): ondewoNlu010.IntentCategory {\n    return this._filterByCategory;\n  }\n  set filterByCategory(value: ondewoNlu010.IntentCategory) {\n    this._filterByCategory = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetIntentCountRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetIntentCountRequest.AsObject {\n    return {\n      parent: this.parent,\n      filterByCategory: this.filterByCategory\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetIntentCountRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      filterByCategory:\n        ondewoNlu010.IntentCategory[\n          this.filterByCategory === null || this.filterByCategory === undefined\n            ? 0\n            : this.filterByCategory\n        ]\n    };\n  }\n}\nexport module GetIntentCountRequest {\n  /**\n   * Standard JavaScript object representation for GetIntentCountRequest\n   */\n  export interface AsObject {\n    parent: string;\n    filterByCategory: ondewoNlu010.IntentCategory;\n  }\n\n  /**\n   * Protobuf JSON representation for GetIntentCountRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    filterByCategory: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetEntityTypeCountRequest\n */\nexport class GetEntityTypeCountRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetEntityTypeCountRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetEntityTypeCountRequest();\n    GetEntityTypeCountRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetEntityTypeCountRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.filterByCategory = _instance.filterByCategory || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetEntityTypeCountRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.filterByCategory = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetEntityTypeCountRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetEntityTypeCountRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.filterByCategory) {\n      _writer.writeEnum(2, _instance.filterByCategory);\n    }\n  }\n\n  private _parent: string;\n  private _filterByCategory: ondewoNlu011.EntityTypeCategory;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetEntityTypeCountRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetEntityTypeCountRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.filterByCategory = _value.filterByCategory;\n    GetEntityTypeCountRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get filterByCategory(): ondewoNlu011.EntityTypeCategory {\n    return this._filterByCategory;\n  }\n  set filterByCategory(value: ondewoNlu011.EntityTypeCategory) {\n    this._filterByCategory = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetEntityTypeCountRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetEntityTypeCountRequest.AsObject {\n    return {\n      parent: this.parent,\n      filterByCategory: this.filterByCategory\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetEntityTypeCountRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      filterByCategory:\n        ondewoNlu011.EntityTypeCategory[\n          this.filterByCategory === null || this.filterByCategory === undefined\n            ? 0\n            : this.filterByCategory\n        ]\n    };\n  }\n}\nexport module GetEntityTypeCountRequest {\n  /**\n   * Standard JavaScript object representation for GetEntityTypeCountRequest\n   */\n  export interface AsObject {\n    parent: string;\n    filterByCategory: ondewoNlu011.EntityTypeCategory;\n  }\n\n  /**\n   * Protobuf JSON representation for GetEntityTypeCountRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    filterByCategory: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetProjectStatRequest\n */\nexport class GetProjectStatRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetProjectStatRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetProjectStatRequest();\n    GetProjectStatRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetProjectStatRequest) {\n    _instance.parent = _instance.parent || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetProjectStatRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetProjectStatRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetProjectStatRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n  }\n\n  private _parent: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetProjectStatRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetProjectStatRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    GetProjectStatRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetProjectStatRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetProjectStatRequest.AsObject {\n    return {\n      parent: this.parent\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetProjectStatRequest.AsProtobufJSON {\n    return {\n      parent: this.parent\n    };\n  }\n}\nexport module GetProjectStatRequest {\n  /**\n   * Standard JavaScript object representation for GetProjectStatRequest\n   */\n  export interface AsObject {\n    parent: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetProjectStatRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetProjectElementStatRequest\n */\nexport class GetProjectElementStatRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetProjectElementStatRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetProjectElementStatRequest();\n    GetProjectElementStatRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetProjectElementStatRequest) {\n    _instance.name = _instance.name || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetProjectElementStatRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetProjectElementStatRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetProjectElementStatRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetProjectElementStatRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<GetProjectElementStatRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.languageCode = _value.languageCode;\n    GetProjectElementStatRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetProjectElementStatRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetProjectElementStatRequest.AsObject {\n    return {\n      name: this.name,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetProjectElementStatRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module GetProjectElementStatRequest {\n  /**\n   * Standard JavaScript object representation for GetProjectElementStatRequest\n   */\n  export interface AsObject {\n    name: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetProjectElementStatRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    languageCode: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for ProjectStatistics.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_PROJECT_STATISTICS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_PROJECT_STATISTICS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './project-statistics.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as ondewoNlu003 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu004 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu005 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf008 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu010 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/entity-type.pb';\nimport { GRPC_PROJECT_STATISTICS_CLIENT_SETTINGS } from './project-statistics.pbconf';\n/**\n * Service client implementation for ondewo.nlu.ProjectStatistics\n */\n@Injectable({ providedIn: 'any' })\nexport class ProjectStatisticsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetIntentCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getIntentCount: (\n      requestData: thisProto.GetIntentCountRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetIntentCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetIntentCountRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetEntityTypeCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getEntityTypeCount: (\n      requestData: thisProto.GetEntityTypeCountRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetEntityTypeCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetEntityTypeCountRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetUserCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getUserCount: (\n      requestData: thisProto.GetProjectStatRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetUserCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectStatRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetSessionCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getSessionCount: (\n      requestData: thisProto.GetProjectStatRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetSessionCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectStatRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetTrainingPhraseCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getTrainingPhraseCount: (\n      requestData: thisProto.GetProjectElementStatRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetTrainingPhraseCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectElementStatRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetResponseCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getResponseCount: (\n      requestData: thisProto.GetProjectElementStatRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetResponseCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectElementStatRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetEntityValueCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getEntityValueCount: (\n      requestData: thisProto.GetProjectElementStatRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetEntityValueCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectElementStatRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ProjectStatistics/GetEntitySynonymCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu004.StatResponse>>\n     */\n    getEntitySynonymCount: (\n      requestData: thisProto.GetProjectElementStatRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu004.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ProjectStatistics/GetEntitySynonymCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectElementStatRequest,\n        responseClass: ondewoNlu004.StatResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_PROJECT_STATISTICS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient(\n      'ondewo.nlu.ProjectStatistics',\n      settings\n    );\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetIntentCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getIntentCount(\n    requestData: thisProto.GetIntentCountRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getIntentCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetEntityTypeCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getEntityTypeCount(\n    requestData: thisProto.GetEntityTypeCountRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getEntityTypeCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetUserCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getUserCount(\n    requestData: thisProto.GetProjectStatRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getUserCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetSessionCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getSessionCount(\n    requestData: thisProto.GetProjectStatRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getSessionCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetTrainingPhraseCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getTrainingPhraseCount(\n    requestData: thisProto.GetProjectElementStatRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getTrainingPhraseCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetResponseCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getResponseCount(\n    requestData: thisProto.GetProjectElementStatRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getResponseCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetEntityValueCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getEntityValueCount(\n    requestData: thisProto.GetProjectElementStatRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getEntityValueCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ProjectStatistics/GetEntitySynonymCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu004.StatResponse>\n   */\n  getEntitySynonymCount(\n    requestData: thisProto.GetProjectElementStatRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu004.StatResponse> {\n    return this.$raw\n      .getEntitySynonymCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions,\n  uint8ArrayToBase64\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleProtobuf000 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleApi003 from '../../google/api/annotations.pb';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleRpc006 from '../../google/rpc/status.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/common.pb';\nimport * as googleType009 from '../../google/type/latlng.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/operations.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/session.pb';\nexport enum RagChunkMethod {\n  RAG_CHUNK_METHOD_UNSPECIFIED = 0,\n  RAG_CHUNK_METHOD_NAIVE = 1,\n  RAG_CHUNK_METHOD_BOOK = 2,\n  RAG_CHUNK_METHOD_EMAIL = 3,\n  RAG_CHUNK_METHOD_LAWS = 4,\n  RAG_CHUNK_METHOD_MANUAL = 5,\n  RAG_CHUNK_METHOD_ONE = 6,\n  RAG_CHUNK_METHOD_PAPER = 7,\n  RAG_CHUNK_METHOD_PICTURE = 8,\n  RAG_CHUNK_METHOD_PRESENTATION = 9,\n  RAG_CHUNK_METHOD_QA = 10,\n  RAG_CHUNK_METHOD_TABLE = 11,\n  RAG_CHUNK_METHOD_TAG = 12\n}\nexport enum RagGraphRagMethod {\n  RAG_GRAPH_RAG_METHOD_UNSPECIFIED = 0,\n  RAG_GRAPH_RAG_METHOD_LIGHT = 1,\n  RAG_GRAPH_RAG_METHOD_GENERAL = 2\n}\nexport enum RagDocumentType {\n  RAG_DOCUMENT_TYPE_UNSPECIFIED = 0,\n  RAG_DOCUMENT_TYPE_PDF = 1,\n  RAG_DOCUMENT_TYPE_DOC = 2,\n  RAG_DOCUMENT_TYPE_VISUAL = 3,\n  RAG_DOCUMENT_TYPE_AURAL = 4,\n  RAG_DOCUMENT_TYPE_VIRTUAL = 5,\n  RAG_DOCUMENT_TYPE_FOLDER = 6,\n  RAG_DOCUMENT_TYPE_OTHER = 7\n}\nexport enum RagDocumentStatus {\n  RAG_DOCUMENT_STATUS_UNSPECIFIED = 0,\n  RAG_DOCUMENT_STATUS_UNSTART = 1,\n  RAG_DOCUMENT_STATUS_RUNNING = 2,\n  RAG_DOCUMENT_STATUS_CANCEL = 3,\n  RAG_DOCUMENT_STATUS_DONE = 4,\n  RAG_DOCUMENT_STATUS_FAIL = 5\n}\nexport enum RagLogic {\n  RAG_LOGIC_UNSPECIFIED = 0,\n  RAG_LOGIC_AND = 1,\n  RAG_LOGIC_OR = 2\n}\nexport enum RagComparisonOperator {\n  RAG_COMPARISON_OPERATOR_UNSPECIFIED = 0,\n  RAG_COMPARISON_OPERATOR_CONTAINS = 1,\n  RAG_COMPARISON_OPERATOR_NOT_CONTAINS = 2,\n  RAG_COMPARISON_OPERATOR_IN = 3,\n  RAG_COMPARISON_OPERATOR_NOT_IN = 4,\n  RAG_COMPARISON_OPERATOR_START_WITH = 5,\n  RAG_COMPARISON_OPERATOR_END_WITH = 6,\n  RAG_COMPARISON_OPERATOR_EMPTY = 7,\n  RAG_COMPARISON_OPERATOR_NOT_EMPTY = 8,\n  RAG_COMPARISON_OPERATOR_EQ = 9,\n  RAG_COMPARISON_OPERATOR_NEQ = 10,\n  RAG_COMPARISON_OPERATOR_GT = 11,\n  RAG_COMPARISON_OPERATOR_LT = 12,\n  RAG_COMPARISON_OPERATOR_GEQ = 13,\n  RAG_COMPARISON_OPERATOR_LEQ = 14\n}\nexport enum RagCrawlerSelectorType {\n  RAG_CRAWLER_SELECTOR_TYPE_UNSPECIFIED = 0,\n  RAG_CRAWLER_SELECTOR_TYPE_ID = 1,\n  RAG_CRAWLER_SELECTOR_TYPE_CSS_CLASS = 2,\n  RAG_CRAWLER_SELECTOR_TYPE_XPATH = 3\n}\nexport enum RagCrawlerAuthenticationExecutionType {\n  RAG_CRAWLER_AUTHENTICATION_EXECUTION_TYPE_UNSPECIFIED = 0,\n  RAG_CRAWLER_AUTHENTICATION_EXECUTION_TYPE_SERVER_SIDE = 1,\n  RAG_CRAWLER_AUTHENTICATION_EXECUTION_TYPE_CLIENT_SIDE = 2\n}\nexport enum RagCrawlerPruningThresholdType {\n  RAG_CRAWLER_PRUNING_THRESHOLD_TYPE_UNSPECIFIED = 0,\n  RAG_CRAWLER_PRUNING_THRESHOLD_TYPE_FIXED = 1,\n  RAG_CRAWLER_PRUNING_THRESHOLD_TYPE_DYNAMIC = 2\n}\nexport enum RagCrawlerMetaDataExtractorType {\n  RAG_CRAWLER_META_DATA_EXTRACTOR_TPYE_UNSPECIFIED = 0,\n  RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_REGEX = 1,\n  RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_FIXED_VALUE = 2,\n  RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_CSS_SELECTOR = 3,\n  RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_XPATH_SELECTOR = 4,\n  RAG_CRAWLER_META_DATA_EXTRACTOR_TYPE_ID_SELECTOR = 5\n}\nexport enum RagCrawlerCrawlStrategy {\n  RAG_CRAWLER_CRAWL_STRATEGY_UNSPECIFIED = 0,\n  RAG_CRAWLER_CRAWL_STRATEGY_BFS = 1,\n  RAG_CRAWLER_CRAWL_STRATEGY_DFS = 2,\n  RAG_CRAWLER_CRAWL_STRATEGY_BEST_FIRST = 3\n}\n/**\n * Message implementation for ondewo.nlu.RagFileMetadata\n */\nexport class RagFileMetadata implements GrpcMessage {\n  static id = 'ondewo.nlu.RagFileMetadata';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagFileMetadata();\n    RagFileMetadata.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagFileMetadata) {\n    _instance.fileName = _instance.fileName || '';\n    _instance.contentType = _instance.contentType || '';\n    _instance.size = _instance.size || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagFileMetadata,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.fileName = _reader.readString();\n          break;\n        case 2:\n          _instance.contentType = _reader.readString();\n          break;\n        case 3:\n          _instance.size = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagFileMetadata.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagFileMetadata,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.fileName) {\n      _writer.writeString(1, _instance.fileName);\n    }\n    if (_instance.contentType) {\n      _writer.writeString(2, _instance.contentType);\n    }\n    if (_instance.size) {\n      _writer.writeInt64String(3, _instance.size);\n    }\n  }\n\n  private _fileName: string;\n  private _contentType: string;\n  private _size: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagFileMetadata to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagFileMetadata.AsObject>) {\n    _value = _value || {};\n    this.fileName = _value.fileName;\n    this.contentType = _value.contentType;\n    this.size = _value.size;\n    RagFileMetadata.refineValues(this);\n  }\n  get fileName(): string {\n    return this._fileName;\n  }\n  set fileName(value: string) {\n    this._fileName = value;\n  }\n  get contentType(): string {\n    return this._contentType;\n  }\n  set contentType(value: string) {\n    this._contentType = value;\n  }\n  get size(): string {\n    return this._size;\n  }\n  set size(value: string) {\n    this._size = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagFileMetadata.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagFileMetadata.AsObject {\n    return {\n      fileName: this.fileName,\n      contentType: this.contentType,\n      size: this.size\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagFileMetadata.AsProtobufJSON {\n    return {\n      fileName: this.fileName,\n      contentType: this.contentType,\n      size: this.size\n    };\n  }\n}\nexport module RagFileMetadata {\n  /**\n   * Standard JavaScript object representation for RagFileMetadata\n   */\n  export interface AsObject {\n    fileName: string;\n    contentType: string;\n    size: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagFileMetadata\n   */\n  export interface AsProtobufJSON {\n    fileName: string;\n    contentType: string;\n    size: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagPartialSuccess\n */\nexport class RagPartialSuccess implements GrpcMessage {\n  static id = 'ondewo.nlu.RagPartialSuccess';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagPartialSuccess();\n    RagPartialSuccess.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagPartialSuccess) {\n    _instance.successCount = _instance.successCount || 0;\n    _instance.errors = _instance.errors || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagPartialSuccess,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.successCount = _reader.readInt32();\n          break;\n        case 2:\n          (_instance.errors = _instance.errors || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagPartialSuccess.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagPartialSuccess,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.successCount) {\n      _writer.writeInt32(1, _instance.successCount);\n    }\n    if (_instance.errors && _instance.errors.length) {\n      _writer.writeRepeatedString(2, _instance.errors);\n    }\n  }\n\n  private _successCount: number;\n  private _errors: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagPartialSuccess to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagPartialSuccess.AsObject>) {\n    _value = _value || {};\n    this.successCount = _value.successCount;\n    this.errors = (_value.errors || []).slice();\n    RagPartialSuccess.refineValues(this);\n  }\n  get successCount(): number {\n    return this._successCount;\n  }\n  set successCount(value: number) {\n    this._successCount = value;\n  }\n  get errors(): string[] {\n    return this._errors;\n  }\n  set errors(value: string[]) {\n    this._errors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagPartialSuccess.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagPartialSuccess.AsObject {\n    return {\n      successCount: this.successCount,\n      errors: (this.errors || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagPartialSuccess.AsProtobufJSON {\n    return {\n      successCount: this.successCount,\n      errors: (this.errors || []).slice()\n    };\n  }\n}\nexport module RagPartialSuccess {\n  /**\n   * Standard JavaScript object representation for RagPartialSuccess\n   */\n  export interface AsObject {\n    successCount: number;\n    errors: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagPartialSuccess\n   */\n  export interface AsProtobufJSON {\n    successCount: number;\n    errors: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCreateDatasetRequest\n */\nexport class RagCreateDatasetRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCreateDatasetRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCreateDatasetRequest();\n    RagCreateDatasetRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCreateDatasetRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.name = _instance.name || '';\n    _instance.description = _instance.description || '';\n    _instance.avatar = _instance.avatar || '';\n    _instance.chunkMethod = _instance.chunkMethod || 0;\n    _instance.parserConfig = _instance.parserConfig || undefined;\n    _instance.embeddingModelCcaiServiceName =\n      _instance.embeddingModelCcaiServiceName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCreateDatasetRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.name = _reader.readString();\n          break;\n        case 4:\n          _instance.description = _reader.readString();\n          break;\n        case 5:\n          _instance.avatar = _reader.readString();\n          break;\n        case 6:\n          _instance.chunkMethod = _reader.readEnum();\n          break;\n        case 7:\n          _instance.parserConfig = new RagParserConfig();\n          _reader.readMessage(\n            _instance.parserConfig,\n            RagParserConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.embeddingModelCcaiServiceName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCreateDatasetRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCreateDatasetRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.name) {\n      _writer.writeString(3, _instance.name);\n    }\n    if (_instance.description) {\n      _writer.writeString(4, _instance.description);\n    }\n    if (_instance.avatar) {\n      _writer.writeString(5, _instance.avatar);\n    }\n    if (_instance.chunkMethod) {\n      _writer.writeEnum(6, _instance.chunkMethod);\n    }\n    if (_instance.parserConfig) {\n      _writer.writeMessage(\n        7,\n        _instance.parserConfig as any,\n        RagParserConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.embeddingModelCcaiServiceName) {\n      _writer.writeString(8, _instance.embeddingModelCcaiServiceName);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _name: string;\n  private _description: string;\n  private _avatar: string;\n  private _chunkMethod: RagChunkMethod;\n  private _parserConfig?: RagParserConfig;\n  private _embeddingModelCcaiServiceName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCreateDatasetRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCreateDatasetRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.name = _value.name;\n    this.description = _value.description;\n    this.avatar = _value.avatar;\n    this.chunkMethod = _value.chunkMethod;\n    this.parserConfig = _value.parserConfig\n      ? new RagParserConfig(_value.parserConfig)\n      : undefined;\n    this.embeddingModelCcaiServiceName = _value.embeddingModelCcaiServiceName;\n    RagCreateDatasetRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get avatar(): string {\n    return this._avatar;\n  }\n  set avatar(value: string) {\n    this._avatar = value;\n  }\n  get chunkMethod(): RagChunkMethod {\n    return this._chunkMethod;\n  }\n  set chunkMethod(value: RagChunkMethod) {\n    this._chunkMethod = value;\n  }\n  get parserConfig(): RagParserConfig | undefined {\n    return this._parserConfig;\n  }\n  set parserConfig(value: RagParserConfig | undefined) {\n    this._parserConfig = value;\n  }\n  get embeddingModelCcaiServiceName(): string {\n    return this._embeddingModelCcaiServiceName;\n  }\n  set embeddingModelCcaiServiceName(value: string) {\n    this._embeddingModelCcaiServiceName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCreateDatasetRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCreateDatasetRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      name: this.name,\n      description: this.description,\n      avatar: this.avatar,\n      chunkMethod: this.chunkMethod,\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toObject()\n        : undefined,\n      embeddingModelCcaiServiceName: this.embeddingModelCcaiServiceName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCreateDatasetRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      name: this.name,\n      description: this.description,\n      avatar: this.avatar,\n      chunkMethod:\n        RagChunkMethod[\n          this.chunkMethod === null || this.chunkMethod === undefined\n            ? 0\n            : this.chunkMethod\n        ],\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toProtobufJSON(options)\n        : null,\n      embeddingModelCcaiServiceName: this.embeddingModelCcaiServiceName\n    };\n  }\n}\nexport module RagCreateDatasetRequest {\n  /**\n   * Standard JavaScript object representation for RagCreateDatasetRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    name: string;\n    description: string;\n    avatar: string;\n    chunkMethod: RagChunkMethod;\n    parserConfig?: RagParserConfig.AsObject;\n    embeddingModelCcaiServiceName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCreateDatasetRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    name: string;\n    description: string;\n    avatar: string;\n    chunkMethod: string;\n    parserConfig: RagParserConfig.AsProtobufJSON | null;\n    embeddingModelCcaiServiceName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagParserConfig\n */\nexport class RagParserConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagParserConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagParserConfig();\n    RagParserConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagParserConfig) {\n    _instance.autoKeywords = _instance.autoKeywords || 0;\n    _instance.autoQuestions = _instance.autoQuestions || 0;\n    _instance.chunkTokenNum = _instance.chunkTokenNum || 0;\n    _instance.delimiter = _instance.delimiter || '';\n    _instance.html4excel = _instance.html4excel || false;\n    _instance.layoutRecognize = _instance.layoutRecognize || '';\n    _instance.tagKbIds = _instance.tagKbIds || [];\n    _instance.topnTags = _instance.topnTags || 0;\n    _instance.filenameEmbdWeight = _instance.filenameEmbdWeight || 0;\n    _instance.taskPageSize = _instance.taskPageSize || 0;\n    _instance.raptor = _instance.raptor || undefined;\n    _instance.graphrag = _instance.graphrag || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagParserConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.autoKeywords = _reader.readInt32();\n          break;\n        case 2:\n          _instance.autoQuestions = _reader.readInt32();\n          break;\n        case 3:\n          _instance.chunkTokenNum = _reader.readInt32();\n          break;\n        case 4:\n          _instance.delimiter = _reader.readString();\n          break;\n        case 5:\n          _instance.html4excel = _reader.readBool();\n          break;\n        case 6:\n          _instance.layoutRecognize = _reader.readString();\n          break;\n        case 7:\n          (_instance.tagKbIds = _instance.tagKbIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 8:\n          _instance.topnTags = _reader.readInt32();\n          break;\n        case 9:\n          _instance.filenameEmbdWeight = _reader.readFloat();\n          break;\n        case 10:\n          _instance.taskPageSize = _reader.readInt32();\n          break;\n        case 11:\n          _instance.raptor = new RagRaptorConfig();\n          _reader.readMessage(\n            _instance.raptor,\n            RagRaptorConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.graphrag = new RagGraphRagConfig();\n          _reader.readMessage(\n            _instance.graphrag,\n            RagGraphRagConfig.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagParserConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagParserConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.autoKeywords) {\n      _writer.writeInt32(1, _instance.autoKeywords);\n    }\n    if (_instance.autoQuestions) {\n      _writer.writeInt32(2, _instance.autoQuestions);\n    }\n    if (_instance.chunkTokenNum) {\n      _writer.writeInt32(3, _instance.chunkTokenNum);\n    }\n    if (_instance.delimiter) {\n      _writer.writeString(4, _instance.delimiter);\n    }\n    if (_instance.html4excel) {\n      _writer.writeBool(5, _instance.html4excel);\n    }\n    if (_instance.layoutRecognize) {\n      _writer.writeString(6, _instance.layoutRecognize);\n    }\n    if (_instance.tagKbIds && _instance.tagKbIds.length) {\n      _writer.writeRepeatedString(7, _instance.tagKbIds);\n    }\n    if (_instance.topnTags) {\n      _writer.writeInt32(8, _instance.topnTags);\n    }\n    if (_instance.filenameEmbdWeight) {\n      _writer.writeFloat(9, _instance.filenameEmbdWeight);\n    }\n    if (_instance.taskPageSize) {\n      _writer.writeInt32(10, _instance.taskPageSize);\n    }\n    if (_instance.raptor) {\n      _writer.writeMessage(\n        11,\n        _instance.raptor as any,\n        RagRaptorConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.graphrag) {\n      _writer.writeMessage(\n        12,\n        _instance.graphrag as any,\n        RagGraphRagConfig.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _autoKeywords: number;\n  private _autoQuestions: number;\n  private _chunkTokenNum: number;\n  private _delimiter: string;\n  private _html4excel: boolean;\n  private _layoutRecognize: string;\n  private _tagKbIds: string[];\n  private _topnTags: number;\n  private _filenameEmbdWeight: number;\n  private _taskPageSize: number;\n  private _raptor?: RagRaptorConfig;\n  private _graphrag?: RagGraphRagConfig;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagParserConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagParserConfig.AsObject>) {\n    _value = _value || {};\n    this.autoKeywords = _value.autoKeywords;\n    this.autoQuestions = _value.autoQuestions;\n    this.chunkTokenNum = _value.chunkTokenNum;\n    this.delimiter = _value.delimiter;\n    this.html4excel = _value.html4excel;\n    this.layoutRecognize = _value.layoutRecognize;\n    this.tagKbIds = (_value.tagKbIds || []).slice();\n    this.topnTags = _value.topnTags;\n    this.filenameEmbdWeight = _value.filenameEmbdWeight;\n    this.taskPageSize = _value.taskPageSize;\n    this.raptor = _value.raptor\n      ? new RagRaptorConfig(_value.raptor)\n      : undefined;\n    this.graphrag = _value.graphrag\n      ? new RagGraphRagConfig(_value.graphrag)\n      : undefined;\n    RagParserConfig.refineValues(this);\n  }\n  get autoKeywords(): number {\n    return this._autoKeywords;\n  }\n  set autoKeywords(value: number) {\n    this._autoKeywords = value;\n  }\n  get autoQuestions(): number {\n    return this._autoQuestions;\n  }\n  set autoQuestions(value: number) {\n    this._autoQuestions = value;\n  }\n  get chunkTokenNum(): number {\n    return this._chunkTokenNum;\n  }\n  set chunkTokenNum(value: number) {\n    this._chunkTokenNum = value;\n  }\n  get delimiter(): string {\n    return this._delimiter;\n  }\n  set delimiter(value: string) {\n    this._delimiter = value;\n  }\n  get html4excel(): boolean {\n    return this._html4excel;\n  }\n  set html4excel(value: boolean) {\n    this._html4excel = value;\n  }\n  get layoutRecognize(): string {\n    return this._layoutRecognize;\n  }\n  set layoutRecognize(value: string) {\n    this._layoutRecognize = value;\n  }\n  get tagKbIds(): string[] {\n    return this._tagKbIds;\n  }\n  set tagKbIds(value: string[]) {\n    this._tagKbIds = value;\n  }\n  get topnTags(): number {\n    return this._topnTags;\n  }\n  set topnTags(value: number) {\n    this._topnTags = value;\n  }\n  get filenameEmbdWeight(): number {\n    return this._filenameEmbdWeight;\n  }\n  set filenameEmbdWeight(value: number) {\n    this._filenameEmbdWeight = value;\n  }\n  get taskPageSize(): number {\n    return this._taskPageSize;\n  }\n  set taskPageSize(value: number) {\n    this._taskPageSize = value;\n  }\n  get raptor(): RagRaptorConfig | undefined {\n    return this._raptor;\n  }\n  set raptor(value: RagRaptorConfig | undefined) {\n    this._raptor = value;\n  }\n  get graphrag(): RagGraphRagConfig | undefined {\n    return this._graphrag;\n  }\n  set graphrag(value: RagGraphRagConfig | undefined) {\n    this._graphrag = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagParserConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagParserConfig.AsObject {\n    return {\n      autoKeywords: this.autoKeywords,\n      autoQuestions: this.autoQuestions,\n      chunkTokenNum: this.chunkTokenNum,\n      delimiter: this.delimiter,\n      html4excel: this.html4excel,\n      layoutRecognize: this.layoutRecognize,\n      tagKbIds: (this.tagKbIds || []).slice(),\n      topnTags: this.topnTags,\n      filenameEmbdWeight: this.filenameEmbdWeight,\n      taskPageSize: this.taskPageSize,\n      raptor: this.raptor ? this.raptor.toObject() : undefined,\n      graphrag: this.graphrag ? this.graphrag.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagParserConfig.AsProtobufJSON {\n    return {\n      autoKeywords: this.autoKeywords,\n      autoQuestions: this.autoQuestions,\n      chunkTokenNum: this.chunkTokenNum,\n      delimiter: this.delimiter,\n      html4excel: this.html4excel,\n      layoutRecognize: this.layoutRecognize,\n      tagKbIds: (this.tagKbIds || []).slice(),\n      topnTags: this.topnTags,\n      filenameEmbdWeight: this.filenameEmbdWeight,\n      taskPageSize: this.taskPageSize,\n      raptor: this.raptor ? this.raptor.toProtobufJSON(options) : null,\n      graphrag: this.graphrag ? this.graphrag.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagParserConfig {\n  /**\n   * Standard JavaScript object representation for RagParserConfig\n   */\n  export interface AsObject {\n    autoKeywords: number;\n    autoQuestions: number;\n    chunkTokenNum: number;\n    delimiter: string;\n    html4excel: boolean;\n    layoutRecognize: string;\n    tagKbIds: string[];\n    topnTags: number;\n    filenameEmbdWeight: number;\n    taskPageSize: number;\n    raptor?: RagRaptorConfig.AsObject;\n    graphrag?: RagGraphRagConfig.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagParserConfig\n   */\n  export interface AsProtobufJSON {\n    autoKeywords: number;\n    autoQuestions: number;\n    chunkTokenNum: number;\n    delimiter: string;\n    html4excel: boolean;\n    layoutRecognize: string;\n    tagKbIds: string[];\n    topnTags: number;\n    filenameEmbdWeight: number;\n    taskPageSize: number;\n    raptor: RagRaptorConfig.AsProtobufJSON | null;\n    graphrag: RagGraphRagConfig.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagRaptorConfig\n */\nexport class RagRaptorConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagRaptorConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagRaptorConfig();\n    RagRaptorConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagRaptorConfig) {\n    _instance.useRaptor = _instance.useRaptor || false;\n    _instance.prompt = _instance.prompt || '';\n    _instance.maxToken = _instance.maxToken || 0;\n    _instance.threshold = _instance.threshold || 0;\n    _instance.maxCluster = _instance.maxCluster || 0;\n    _instance.randomSeed = _instance.randomSeed || '0';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagRaptorConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.useRaptor = _reader.readBool();\n          break;\n        case 2:\n          _instance.prompt = _reader.readString();\n          break;\n        case 3:\n          _instance.maxToken = _reader.readInt32();\n          break;\n        case 4:\n          _instance.threshold = _reader.readFloat();\n          break;\n        case 5:\n          _instance.maxCluster = _reader.readInt32();\n          break;\n        case 6:\n          _instance.randomSeed = _reader.readInt64String();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagRaptorConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagRaptorConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.useRaptor) {\n      _writer.writeBool(1, _instance.useRaptor);\n    }\n    if (_instance.prompt) {\n      _writer.writeString(2, _instance.prompt);\n    }\n    if (_instance.maxToken) {\n      _writer.writeInt32(3, _instance.maxToken);\n    }\n    if (_instance.threshold) {\n      _writer.writeFloat(4, _instance.threshold);\n    }\n    if (_instance.maxCluster) {\n      _writer.writeInt32(5, _instance.maxCluster);\n    }\n    if (_instance.randomSeed) {\n      _writer.writeInt64String(6, _instance.randomSeed);\n    }\n  }\n\n  private _useRaptor: boolean;\n  private _prompt: string;\n  private _maxToken: number;\n  private _threshold: number;\n  private _maxCluster: number;\n  private _randomSeed: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagRaptorConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagRaptorConfig.AsObject>) {\n    _value = _value || {};\n    this.useRaptor = _value.useRaptor;\n    this.prompt = _value.prompt;\n    this.maxToken = _value.maxToken;\n    this.threshold = _value.threshold;\n    this.maxCluster = _value.maxCluster;\n    this.randomSeed = _value.randomSeed;\n    RagRaptorConfig.refineValues(this);\n  }\n  get useRaptor(): boolean {\n    return this._useRaptor;\n  }\n  set useRaptor(value: boolean) {\n    this._useRaptor = value;\n  }\n  get prompt(): string {\n    return this._prompt;\n  }\n  set prompt(value: string) {\n    this._prompt = value;\n  }\n  get maxToken(): number {\n    return this._maxToken;\n  }\n  set maxToken(value: number) {\n    this._maxToken = value;\n  }\n  get threshold(): number {\n    return this._threshold;\n  }\n  set threshold(value: number) {\n    this._threshold = value;\n  }\n  get maxCluster(): number {\n    return this._maxCluster;\n  }\n  set maxCluster(value: number) {\n    this._maxCluster = value;\n  }\n  get randomSeed(): string {\n    return this._randomSeed;\n  }\n  set randomSeed(value: string) {\n    this._randomSeed = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagRaptorConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagRaptorConfig.AsObject {\n    return {\n      useRaptor: this.useRaptor,\n      prompt: this.prompt,\n      maxToken: this.maxToken,\n      threshold: this.threshold,\n      maxCluster: this.maxCluster,\n      randomSeed: this.randomSeed\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagRaptorConfig.AsProtobufJSON {\n    return {\n      useRaptor: this.useRaptor,\n      prompt: this.prompt,\n      maxToken: this.maxToken,\n      threshold: this.threshold,\n      maxCluster: this.maxCluster,\n      randomSeed: this.randomSeed\n    };\n  }\n}\nexport module RagRaptorConfig {\n  /**\n   * Standard JavaScript object representation for RagRaptorConfig\n   */\n  export interface AsObject {\n    useRaptor: boolean;\n    prompt: string;\n    maxToken: number;\n    threshold: number;\n    maxCluster: number;\n    randomSeed: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagRaptorConfig\n   */\n  export interface AsProtobufJSON {\n    useRaptor: boolean;\n    prompt: string;\n    maxToken: number;\n    threshold: number;\n    maxCluster: number;\n    randomSeed: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGraphRagConfig\n */\nexport class RagGraphRagConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGraphRagConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGraphRagConfig();\n    RagGraphRagConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGraphRagConfig) {\n    _instance.useGraphrag = _instance.useGraphrag || false;\n    _instance.entityTypes = _instance.entityTypes || [];\n    _instance.method = _instance.method || 0;\n    _instance.community = _instance.community || false;\n    _instance.resolution = _instance.resolution || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGraphRagConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.useGraphrag = _reader.readBool();\n          break;\n        case 2:\n          (_instance.entityTypes = _instance.entityTypes || []).push(\n            _reader.readString()\n          );\n          break;\n        case 3:\n          _instance.method = _reader.readEnum();\n          break;\n        case 4:\n          _instance.community = _reader.readBool();\n          break;\n        case 5:\n          _instance.resolution = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGraphRagConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGraphRagConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.useGraphrag) {\n      _writer.writeBool(1, _instance.useGraphrag);\n    }\n    if (_instance.entityTypes && _instance.entityTypes.length) {\n      _writer.writeRepeatedString(2, _instance.entityTypes);\n    }\n    if (_instance.method) {\n      _writer.writeEnum(3, _instance.method);\n    }\n    if (_instance.community) {\n      _writer.writeBool(4, _instance.community);\n    }\n    if (_instance.resolution) {\n      _writer.writeBool(5, _instance.resolution);\n    }\n  }\n\n  private _useGraphrag: boolean;\n  private _entityTypes: string[];\n  private _method: RagGraphRagMethod;\n  private _community: boolean;\n  private _resolution: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGraphRagConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagGraphRagConfig.AsObject>) {\n    _value = _value || {};\n    this.useGraphrag = _value.useGraphrag;\n    this.entityTypes = (_value.entityTypes || []).slice();\n    this.method = _value.method;\n    this.community = _value.community;\n    this.resolution = _value.resolution;\n    RagGraphRagConfig.refineValues(this);\n  }\n  get useGraphrag(): boolean {\n    return this._useGraphrag;\n  }\n  set useGraphrag(value: boolean) {\n    this._useGraphrag = value;\n  }\n  get entityTypes(): string[] {\n    return this._entityTypes;\n  }\n  set entityTypes(value: string[]) {\n    this._entityTypes = value;\n  }\n  get method(): RagGraphRagMethod {\n    return this._method;\n  }\n  set method(value: RagGraphRagMethod) {\n    this._method = value;\n  }\n  get community(): boolean {\n    return this._community;\n  }\n  set community(value: boolean) {\n    this._community = value;\n  }\n  get resolution(): boolean {\n    return this._resolution;\n  }\n  set resolution(value: boolean) {\n    this._resolution = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGraphRagConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGraphRagConfig.AsObject {\n    return {\n      useGraphrag: this.useGraphrag,\n      entityTypes: (this.entityTypes || []).slice(),\n      method: this.method,\n      community: this.community,\n      resolution: this.resolution\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGraphRagConfig.AsProtobufJSON {\n    return {\n      useGraphrag: this.useGraphrag,\n      entityTypes: (this.entityTypes || []).slice(),\n      method:\n        RagGraphRagMethod[\n          this.method === null || this.method === undefined ? 0 : this.method\n        ],\n      community: this.community,\n      resolution: this.resolution\n    };\n  }\n}\nexport module RagGraphRagConfig {\n  /**\n   * Standard JavaScript object representation for RagGraphRagConfig\n   */\n  export interface AsObject {\n    useGraphrag: boolean;\n    entityTypes: string[];\n    method: RagGraphRagMethod;\n    community: boolean;\n    resolution: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGraphRagConfig\n   */\n  export interface AsProtobufJSON {\n    useGraphrag: boolean;\n    entityTypes: string[];\n    method: string;\n    community: boolean;\n    resolution: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDataset\n */\nexport class RagDataset implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDataset';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDataset();\n    RagDataset.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDataset) {\n    _instance.id = _instance.id || '';\n    _instance.avatar = _instance.avatar || '';\n    _instance.name = _instance.name || '';\n    _instance.description = _instance.description || '';\n    _instance.documentCount = _instance.documentCount || 0;\n    _instance.tokenNum = _instance.tokenNum || 0;\n    _instance.chunkCount = _instance.chunkCount || 0;\n    _instance.chunkMethod = _instance.chunkMethod || 0;\n    _instance.parserConfig = _instance.parserConfig || undefined;\n    _instance.pagerank = _instance.pagerank || 0;\n    _instance.parsingStatus = _instance.parsingStatus || undefined;\n    _instance.createTime = _instance.createTime || undefined;\n    _instance.updateTime = _instance.updateTime || undefined;\n    _instance.embeddingModelCcaiServiceName =\n      _instance.embeddingModelCcaiServiceName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDataset,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.id = _reader.readString();\n          break;\n        case 2:\n          _instance.avatar = _reader.readString();\n          break;\n        case 3:\n          _instance.name = _reader.readString();\n          break;\n        case 4:\n          _instance.description = _reader.readString();\n          break;\n        case 5:\n          _instance.documentCount = _reader.readInt32();\n          break;\n        case 6:\n          _instance.tokenNum = _reader.readInt32();\n          break;\n        case 7:\n          _instance.chunkCount = _reader.readInt32();\n          break;\n        case 8:\n          _instance.chunkMethod = _reader.readEnum();\n          break;\n        case 9:\n          _instance.parserConfig = new RagParserConfig();\n          _reader.readMessage(\n            _instance.parserConfig,\n            RagParserConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.pagerank = _reader.readInt32();\n          break;\n        case 11:\n          _instance.parsingStatus = new RagDatasetParsingStatus();\n          _reader.readMessage(\n            _instance.parsingStatus,\n            RagDatasetParsingStatus.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.createTime = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createTime,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.updateTime = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.updateTime,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 14:\n          _instance.embeddingModelCcaiServiceName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDataset.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: RagDataset, _writer: BinaryWriter) {\n    if (_instance.id) {\n      _writer.writeString(1, _instance.id);\n    }\n    if (_instance.avatar) {\n      _writer.writeString(2, _instance.avatar);\n    }\n    if (_instance.name) {\n      _writer.writeString(3, _instance.name);\n    }\n    if (_instance.description) {\n      _writer.writeString(4, _instance.description);\n    }\n    if (_instance.documentCount) {\n      _writer.writeInt32(5, _instance.documentCount);\n    }\n    if (_instance.tokenNum) {\n      _writer.writeInt32(6, _instance.tokenNum);\n    }\n    if (_instance.chunkCount) {\n      _writer.writeInt32(7, _instance.chunkCount);\n    }\n    if (_instance.chunkMethod) {\n      _writer.writeEnum(8, _instance.chunkMethod);\n    }\n    if (_instance.parserConfig) {\n      _writer.writeMessage(\n        9,\n        _instance.parserConfig as any,\n        RagParserConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pagerank) {\n      _writer.writeInt32(10, _instance.pagerank);\n    }\n    if (_instance.parsingStatus) {\n      _writer.writeMessage(\n        11,\n        _instance.parsingStatus as any,\n        RagDatasetParsingStatus.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createTime) {\n      _writer.writeMessage(\n        12,\n        _instance.createTime as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateTime) {\n      _writer.writeMessage(\n        13,\n        _instance.updateTime as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.embeddingModelCcaiServiceName) {\n      _writer.writeString(14, _instance.embeddingModelCcaiServiceName);\n    }\n  }\n\n  private _id: string;\n  private _avatar: string;\n  private _name: string;\n  private _description: string;\n  private _documentCount: number;\n  private _tokenNum: number;\n  private _chunkCount: number;\n  private _chunkMethod: RagChunkMethod;\n  private _parserConfig?: RagParserConfig;\n  private _pagerank: number;\n  private _parsingStatus?: RagDatasetParsingStatus;\n  private _createTime?: googleProtobuf002.Timestamp;\n  private _updateTime?: googleProtobuf002.Timestamp;\n  private _embeddingModelCcaiServiceName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDataset to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDataset.AsObject>) {\n    _value = _value || {};\n    this.id = _value.id;\n    this.avatar = _value.avatar;\n    this.name = _value.name;\n    this.description = _value.description;\n    this.documentCount = _value.documentCount;\n    this.tokenNum = _value.tokenNum;\n    this.chunkCount = _value.chunkCount;\n    this.chunkMethod = _value.chunkMethod;\n    this.parserConfig = _value.parserConfig\n      ? new RagParserConfig(_value.parserConfig)\n      : undefined;\n    this.pagerank = _value.pagerank;\n    this.parsingStatus = _value.parsingStatus\n      ? new RagDatasetParsingStatus(_value.parsingStatus)\n      : undefined;\n    this.createTime = _value.createTime\n      ? new googleProtobuf002.Timestamp(_value.createTime)\n      : undefined;\n    this.updateTime = _value.updateTime\n      ? new googleProtobuf002.Timestamp(_value.updateTime)\n      : undefined;\n    this.embeddingModelCcaiServiceName = _value.embeddingModelCcaiServiceName;\n    RagDataset.refineValues(this);\n  }\n  get id(): string {\n    return this._id;\n  }\n  set id(value: string) {\n    this._id = value;\n  }\n  get avatar(): string {\n    return this._avatar;\n  }\n  set avatar(value: string) {\n    this._avatar = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get documentCount(): number {\n    return this._documentCount;\n  }\n  set documentCount(value: number) {\n    this._documentCount = value;\n  }\n  get tokenNum(): number {\n    return this._tokenNum;\n  }\n  set tokenNum(value: number) {\n    this._tokenNum = value;\n  }\n  get chunkCount(): number {\n    return this._chunkCount;\n  }\n  set chunkCount(value: number) {\n    this._chunkCount = value;\n  }\n  get chunkMethod(): RagChunkMethod {\n    return this._chunkMethod;\n  }\n  set chunkMethod(value: RagChunkMethod) {\n    this._chunkMethod = value;\n  }\n  get parserConfig(): RagParserConfig | undefined {\n    return this._parserConfig;\n  }\n  set parserConfig(value: RagParserConfig | undefined) {\n    this._parserConfig = value;\n  }\n  get pagerank(): number {\n    return this._pagerank;\n  }\n  set pagerank(value: number) {\n    this._pagerank = value;\n  }\n  get parsingStatus(): RagDatasetParsingStatus | undefined {\n    return this._parsingStatus;\n  }\n  set parsingStatus(value: RagDatasetParsingStatus | undefined) {\n    this._parsingStatus = value;\n  }\n  get createTime(): googleProtobuf002.Timestamp | undefined {\n    return this._createTime;\n  }\n  set createTime(value: googleProtobuf002.Timestamp | undefined) {\n    this._createTime = value;\n  }\n  get updateTime(): googleProtobuf002.Timestamp | undefined {\n    return this._updateTime;\n  }\n  set updateTime(value: googleProtobuf002.Timestamp | undefined) {\n    this._updateTime = value;\n  }\n  get embeddingModelCcaiServiceName(): string {\n    return this._embeddingModelCcaiServiceName;\n  }\n  set embeddingModelCcaiServiceName(value: string) {\n    this._embeddingModelCcaiServiceName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDataset.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDataset.AsObject {\n    return {\n      id: this.id,\n      avatar: this.avatar,\n      name: this.name,\n      description: this.description,\n      documentCount: this.documentCount,\n      tokenNum: this.tokenNum,\n      chunkCount: this.chunkCount,\n      chunkMethod: this.chunkMethod,\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toObject()\n        : undefined,\n      pagerank: this.pagerank,\n      parsingStatus: this.parsingStatus\n        ? this.parsingStatus.toObject()\n        : undefined,\n      createTime: this.createTime ? this.createTime.toObject() : undefined,\n      updateTime: this.updateTime ? this.updateTime.toObject() : undefined,\n      embeddingModelCcaiServiceName: this.embeddingModelCcaiServiceName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDataset.AsProtobufJSON {\n    return {\n      id: this.id,\n      avatar: this.avatar,\n      name: this.name,\n      description: this.description,\n      documentCount: this.documentCount,\n      tokenNum: this.tokenNum,\n      chunkCount: this.chunkCount,\n      chunkMethod:\n        RagChunkMethod[\n          this.chunkMethod === null || this.chunkMethod === undefined\n            ? 0\n            : this.chunkMethod\n        ],\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toProtobufJSON(options)\n        : null,\n      pagerank: this.pagerank,\n      parsingStatus: this.parsingStatus\n        ? this.parsingStatus.toProtobufJSON(options)\n        : null,\n      createTime: this.createTime\n        ? this.createTime.toProtobufJSON(options)\n        : null,\n      updateTime: this.updateTime\n        ? this.updateTime.toProtobufJSON(options)\n        : null,\n      embeddingModelCcaiServiceName: this.embeddingModelCcaiServiceName\n    };\n  }\n}\nexport module RagDataset {\n  /**\n   * Standard JavaScript object representation for RagDataset\n   */\n  export interface AsObject {\n    id: string;\n    avatar: string;\n    name: string;\n    description: string;\n    documentCount: number;\n    tokenNum: number;\n    chunkCount: number;\n    chunkMethod: RagChunkMethod;\n    parserConfig?: RagParserConfig.AsObject;\n    pagerank: number;\n    parsingStatus?: RagDatasetParsingStatus.AsObject;\n    createTime?: googleProtobuf002.Timestamp.AsObject;\n    updateTime?: googleProtobuf002.Timestamp.AsObject;\n    embeddingModelCcaiServiceName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDataset\n   */\n  export interface AsProtobufJSON {\n    id: string;\n    avatar: string;\n    name: string;\n    description: string;\n    documentCount: number;\n    tokenNum: number;\n    chunkCount: number;\n    chunkMethod: string;\n    parserConfig: RagParserConfig.AsProtobufJSON | null;\n    pagerank: number;\n    parsingStatus: RagDatasetParsingStatus.AsProtobufJSON | null;\n    createTime: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    updateTime: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    embeddingModelCcaiServiceName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDatasetParsingStatus\n */\nexport class RagDatasetParsingStatus implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDatasetParsingStatus';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDatasetParsingStatus();\n    RagDatasetParsingStatus.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDatasetParsingStatus) {\n    _instance.unstart = _instance.unstart || 0;\n    _instance.running = _instance.running || 0;\n    _instance.cancel = _instance.cancel || 0;\n    _instance.done = _instance.done || 0;\n    _instance.fail = _instance.fail || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDatasetParsingStatus,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.unstart = _reader.readInt32();\n          break;\n        case 2:\n          _instance.running = _reader.readInt32();\n          break;\n        case 3:\n          _instance.cancel = _reader.readInt32();\n          break;\n        case 4:\n          _instance.done = _reader.readInt32();\n          break;\n        case 5:\n          _instance.fail = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDatasetParsingStatus.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDatasetParsingStatus,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.unstart) {\n      _writer.writeInt32(1, _instance.unstart);\n    }\n    if (_instance.running) {\n      _writer.writeInt32(2, _instance.running);\n    }\n    if (_instance.cancel) {\n      _writer.writeInt32(3, _instance.cancel);\n    }\n    if (_instance.done) {\n      _writer.writeInt32(4, _instance.done);\n    }\n    if (_instance.fail) {\n      _writer.writeInt32(5, _instance.fail);\n    }\n  }\n\n  private _unstart: number;\n  private _running: number;\n  private _cancel: number;\n  private _done: number;\n  private _fail: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDatasetParsingStatus to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDatasetParsingStatus.AsObject>) {\n    _value = _value || {};\n    this.unstart = _value.unstart;\n    this.running = _value.running;\n    this.cancel = _value.cancel;\n    this.done = _value.done;\n    this.fail = _value.fail;\n    RagDatasetParsingStatus.refineValues(this);\n  }\n  get unstart(): number {\n    return this._unstart;\n  }\n  set unstart(value: number) {\n    this._unstart = value;\n  }\n  get running(): number {\n    return this._running;\n  }\n  set running(value: number) {\n    this._running = value;\n  }\n  get cancel(): number {\n    return this._cancel;\n  }\n  set cancel(value: number) {\n    this._cancel = value;\n  }\n  get done(): number {\n    return this._done;\n  }\n  set done(value: number) {\n    this._done = value;\n  }\n  get fail(): number {\n    return this._fail;\n  }\n  set fail(value: number) {\n    this._fail = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDatasetParsingStatus.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDatasetParsingStatus.AsObject {\n    return {\n      unstart: this.unstart,\n      running: this.running,\n      cancel: this.cancel,\n      done: this.done,\n      fail: this.fail\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDatasetParsingStatus.AsProtobufJSON {\n    return {\n      unstart: this.unstart,\n      running: this.running,\n      cancel: this.cancel,\n      done: this.done,\n      fail: this.fail\n    };\n  }\n}\nexport module RagDatasetParsingStatus {\n  /**\n   * Standard JavaScript object representation for RagDatasetParsingStatus\n   */\n  export interface AsObject {\n    unstart: number;\n    running: number;\n    cancel: number;\n    done: number;\n    fail: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDatasetParsingStatus\n   */\n  export interface AsProtobufJSON {\n    unstart: number;\n    running: number;\n    cancel: number;\n    done: number;\n    fail: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagUpdateDatasetRequest\n */\nexport class RagUpdateDatasetRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagUpdateDatasetRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagUpdateDatasetRequest();\n    RagUpdateDatasetRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagUpdateDatasetRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.name = _instance.name || '';\n    _instance.description = _instance.description || '';\n    _instance.avatar = _instance.avatar || '';\n    _instance.chunkMethod = _instance.chunkMethod || 0;\n    _instance.parserConfig = _instance.parserConfig || undefined;\n    _instance.pagerank = _instance.pagerank || 0;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.embeddingModelCcaiServiceName =\n      _instance.embeddingModelCcaiServiceName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagUpdateDatasetRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          _instance.name = _reader.readString();\n          break;\n        case 5:\n          _instance.description = _reader.readString();\n          break;\n        case 6:\n          _instance.avatar = _reader.readString();\n          break;\n        case 7:\n          _instance.chunkMethod = _reader.readEnum();\n          break;\n        case 8:\n          _instance.parserConfig = new RagParserConfig();\n          _reader.readMessage(\n            _instance.parserConfig,\n            RagParserConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.pagerank = _reader.readInt32();\n          break;\n        case 10:\n          _instance.updateMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.embeddingModelCcaiServiceName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagUpdateDatasetRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagUpdateDatasetRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.name) {\n      _writer.writeString(4, _instance.name);\n    }\n    if (_instance.description) {\n      _writer.writeString(5, _instance.description);\n    }\n    if (_instance.avatar) {\n      _writer.writeString(6, _instance.avatar);\n    }\n    if (_instance.chunkMethod) {\n      _writer.writeEnum(7, _instance.chunkMethod);\n    }\n    if (_instance.parserConfig) {\n      _writer.writeMessage(\n        8,\n        _instance.parserConfig as any,\n        RagParserConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pagerank) {\n      _writer.writeInt32(9, _instance.pagerank);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        10,\n        _instance.updateMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        11,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.embeddingModelCcaiServiceName) {\n      _writer.writeString(12, _instance.embeddingModelCcaiServiceName);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetId: string;\n  private _name: string;\n  private _description: string;\n  private _avatar: string;\n  private _chunkMethod: RagChunkMethod;\n  private _parserConfig?: RagParserConfig;\n  private _pagerank: number;\n  private _updateMask?: googleProtobuf000.FieldMask;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n  private _embeddingModelCcaiServiceName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagUpdateDatasetRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagUpdateDatasetRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetId = _value.datasetId;\n    this.name = _value.name;\n    this.description = _value.description;\n    this.avatar = _value.avatar;\n    this.chunkMethod = _value.chunkMethod;\n    this.parserConfig = _value.parserConfig\n      ? new RagParserConfig(_value.parserConfig)\n      : undefined;\n    this.pagerank = _value.pagerank;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf000.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    this.embeddingModelCcaiServiceName = _value.embeddingModelCcaiServiceName;\n    RagUpdateDatasetRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get description(): string {\n    return this._description;\n  }\n  set description(value: string) {\n    this._description = value;\n  }\n  get avatar(): string {\n    return this._avatar;\n  }\n  set avatar(value: string) {\n    this._avatar = value;\n  }\n  get chunkMethod(): RagChunkMethod {\n    return this._chunkMethod;\n  }\n  set chunkMethod(value: RagChunkMethod) {\n    this._chunkMethod = value;\n  }\n  get parserConfig(): RagParserConfig | undefined {\n    return this._parserConfig;\n  }\n  set parserConfig(value: RagParserConfig | undefined) {\n    this._parserConfig = value;\n  }\n  get pagerank(): number {\n    return this._pagerank;\n  }\n  set pagerank(value: number) {\n    this._pagerank = value;\n  }\n  get updateMask(): googleProtobuf000.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get embeddingModelCcaiServiceName(): string {\n    return this._embeddingModelCcaiServiceName;\n  }\n  set embeddingModelCcaiServiceName(value: string) {\n    this._embeddingModelCcaiServiceName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagUpdateDatasetRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagUpdateDatasetRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      name: this.name,\n      description: this.description,\n      avatar: this.avatar,\n      chunkMethod: this.chunkMethod,\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toObject()\n        : undefined,\n      pagerank: this.pagerank,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      embeddingModelCcaiServiceName: this.embeddingModelCcaiServiceName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagUpdateDatasetRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      name: this.name,\n      description: this.description,\n      avatar: this.avatar,\n      chunkMethod:\n        RagChunkMethod[\n          this.chunkMethod === null || this.chunkMethod === undefined\n            ? 0\n            : this.chunkMethod\n        ],\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toProtobufJSON(options)\n        : null,\n      pagerank: this.pagerank,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      embeddingModelCcaiServiceName: this.embeddingModelCcaiServiceName\n    };\n  }\n}\nexport module RagUpdateDatasetRequest {\n  /**\n   * Standard JavaScript object representation for RagUpdateDatasetRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    name: string;\n    description: string;\n    avatar: string;\n    chunkMethod: RagChunkMethod;\n    parserConfig?: RagParserConfig.AsObject;\n    pagerank: number;\n    updateMask?: googleProtobuf000.FieldMask.AsObject;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n    embeddingModelCcaiServiceName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagUpdateDatasetRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    name: string;\n    description: string;\n    avatar: string;\n    chunkMethod: string;\n    parserConfig: RagParserConfig.AsProtobufJSON | null;\n    pagerank: number;\n    updateMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    embeddingModelCcaiServiceName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteRequest\n */\nexport class RagDeleteRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteRequest();\n    RagDeleteRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.ids = _instance.ids || [];\n    _instance.deleteAll = _instance.deleteAll || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          (_instance.ids = _instance.ids || []).push(_reader.readString());\n          break;\n        case 4:\n          _instance.deleteAll = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.ids && _instance.ids.length) {\n      _writer.writeRepeatedString(3, _instance.ids);\n    }\n    if (_instance.deleteAll) {\n      _writer.writeBool(4, _instance.deleteAll);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _ids: string[];\n  private _deleteAll: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDeleteRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.ids = (_value.ids || []).slice();\n    this.deleteAll = _value.deleteAll;\n    RagDeleteRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get ids(): string[] {\n    return this._ids;\n  }\n  set ids(value: string[]) {\n    this._ids = value;\n  }\n  get deleteAll(): boolean {\n    return this._deleteAll;\n  }\n  set deleteAll(value: boolean) {\n    this._deleteAll = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      ids: (this.ids || []).slice(),\n      deleteAll: this.deleteAll\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      ids: (this.ids || []).slice(),\n      deleteAll: this.deleteAll\n    };\n  }\n}\nexport module RagDeleteRequest {\n  /**\n   * Standard JavaScript object representation for RagDeleteRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    ids: string[];\n    deleteAll: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    ids: string[];\n    deleteAll: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagListDatasetsRequest\n */\nexport class RagListDatasetsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagListDatasetsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagListDatasetsRequest();\n    RagListDatasetsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagListDatasetsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.id = _instance.id || '';\n    _instance.name = _instance.name || '';\n    _instance.orderby = _instance.orderby || '';\n    _instance.desc = _instance.desc || false;\n    _instance.sortingMode = _instance.sortingMode || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagListDatasetsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 4:\n          _instance.id = _reader.readString();\n          break;\n        case 5:\n          _instance.name = _reader.readString();\n          break;\n        case 6:\n          _instance.orderby = _reader.readString();\n          break;\n        case 7:\n          _instance.desc = _reader.readBool();\n          break;\n        case 8:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        case 9:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagListDatasetsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagListDatasetsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n    if (_instance.id) {\n      _writer.writeString(4, _instance.id);\n    }\n    if (_instance.name) {\n      _writer.writeString(5, _instance.name);\n    }\n    if (_instance.orderby) {\n      _writer.writeString(6, _instance.orderby);\n    }\n    if (_instance.desc) {\n      _writer.writeBool(7, _instance.desc);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(8, _instance.sortingMode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        9,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _pageToken: string;\n  private _id: string;\n  private _name: string;\n  private _orderby: string;\n  private _desc: boolean;\n  private _sortingMode: ondewoNlu008.SortingMode;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagListDatasetsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagListDatasetsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    this.id = _value.id;\n    this.name = _value.name;\n    this.orderby = _value.orderby;\n    this.desc = _value.desc;\n    this.sortingMode = _value.sortingMode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagListDatasetsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get id(): string {\n    return this._id;\n  }\n  set id(value: string) {\n    this._id = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get orderby(): string {\n    return this._orderby;\n  }\n  set orderby(value: string) {\n    this._orderby = value;\n  }\n  get desc(): boolean {\n    return this._desc;\n  }\n  set desc(value: boolean) {\n    this._desc = value;\n  }\n  get sortingMode(): ondewoNlu008.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu008.SortingMode) {\n    this._sortingMode = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagListDatasetsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagListDatasetsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      id: this.id,\n      name: this.name,\n      orderby: this.orderby,\n      desc: this.desc,\n      sortingMode: this.sortingMode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagListDatasetsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      id: this.id,\n      name: this.name,\n      orderby: this.orderby,\n      desc: this.desc,\n      sortingMode:\n        ondewoNlu008.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagListDatasetsRequest {\n  /**\n   * Standard JavaScript object representation for RagListDatasetsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    pageToken: string;\n    id: string;\n    name: string;\n    orderby: string;\n    desc: boolean;\n    sortingMode: ondewoNlu008.SortingMode;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagListDatasetsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    pageToken: string;\n    id: string;\n    name: string;\n    orderby: string;\n    desc: boolean;\n    sortingMode: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDatasetList\n */\nexport class RagDatasetList implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDatasetList';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDatasetList();\n    RagDatasetList.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDatasetList) {\n    _instance.datasets = _instance.datasets || [];\n    _instance.total = _instance.total || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDatasetList,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RagDataset();\n          _reader.readMessage(\n            messageInitializer1,\n            RagDataset.deserializeBinaryFromReader\n          );\n          (_instance.datasets = _instance.datasets || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.total = _reader.readInt32();\n          break;\n        case 3:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDatasetList.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDatasetList,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.datasets && _instance.datasets.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.datasets as any,\n        RagDataset.serializeBinaryToWriter\n      );\n    }\n    if (_instance.total) {\n      _writer.writeInt32(2, _instance.total);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(3, _instance.nextPageToken);\n    }\n  }\n\n  private _datasets?: RagDataset[];\n  private _total: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDatasetList to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDatasetList.AsObject>) {\n    _value = _value || {};\n    this.datasets = (_value.datasets || []).map(m => new RagDataset(m));\n    this.total = _value.total;\n    this.nextPageToken = _value.nextPageToken;\n    RagDatasetList.refineValues(this);\n  }\n  get datasets(): RagDataset[] | undefined {\n    return this._datasets;\n  }\n  set datasets(value: RagDataset[] | undefined) {\n    this._datasets = value;\n  }\n  get total(): number {\n    return this._total;\n  }\n  set total(value: number) {\n    this._total = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDatasetList.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDatasetList.AsObject {\n    return {\n      datasets: (this.datasets || []).map(m => m.toObject()),\n      total: this.total,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDatasetList.AsProtobufJSON {\n    return {\n      datasets: (this.datasets || []).map(m => m.toProtobufJSON(options)),\n      total: this.total,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module RagDatasetList {\n  /**\n   * Standard JavaScript object representation for RagDatasetList\n   */\n  export interface AsObject {\n    datasets?: RagDataset.AsObject[];\n    total: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDatasetList\n   */\n  export interface AsProtobufJSON {\n    datasets: RagDataset.AsProtobufJSON[] | null;\n    total: number;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagUploadDocumentRequest\n */\nexport class RagUploadDocumentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagUploadDocumentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagUploadDocumentRequest();\n    RagUploadDocumentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagUploadDocumentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.metadata = _instance.metadata || undefined;\n    _instance.data = _instance.data || new Uint8Array();\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagUploadDocumentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          _instance.metadata = new RagFileMetadata();\n          _reader.readMessage(\n            _instance.metadata,\n            RagFileMetadata.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.data = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagUploadDocumentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagUploadDocumentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.metadata) {\n      _writer.writeMessage(\n        4,\n        _instance.metadata as any,\n        RagFileMetadata.serializeBinaryToWriter\n      );\n    }\n    if (_instance.data && _instance.data.length) {\n      _writer.writeBytes(5, _instance.data);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetId: string;\n  private _metadata?: RagFileMetadata;\n  private _data: Uint8Array;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagUploadDocumentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagUploadDocumentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetId = _value.datasetId;\n    this.metadata = _value.metadata\n      ? new RagFileMetadata(_value.metadata)\n      : undefined;\n    this.data = _value.data;\n    RagUploadDocumentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get metadata(): RagFileMetadata | undefined {\n    return this._metadata;\n  }\n  set metadata(value: RagFileMetadata | undefined) {\n    this._metadata = value;\n  }\n  get data(): Uint8Array {\n    return this._data;\n  }\n  set data(value: Uint8Array) {\n    this._data = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagUploadDocumentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagUploadDocumentRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      metadata: this.metadata ? this.metadata.toObject() : undefined,\n      data: this.data ? this.data.subarray(0) : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagUploadDocumentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      metadata: this.metadata ? this.metadata.toProtobufJSON(options) : null,\n      data: this.data ? uint8ArrayToBase64(this.data) : ''\n    };\n  }\n}\nexport module RagUploadDocumentRequest {\n  /**\n   * Standard JavaScript object representation for RagUploadDocumentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    metadata?: RagFileMetadata.AsObject;\n    data: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for RagUploadDocumentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    metadata: RagFileMetadata.AsProtobufJSON | null;\n    data: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDocument\n */\nexport class RagDocument implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDocument';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDocument();\n    RagDocument.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDocument) {\n    _instance.id = _instance.id || '';\n    _instance.thumbnail = _instance.thumbnail || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.chunkMethod = _instance.chunkMethod || 0;\n    _instance.parserConfig = _instance.parserConfig || undefined;\n    _instance.type = _instance.type || 0;\n    _instance.name = _instance.name || '';\n    _instance.size = _instance.size || '0';\n    _instance.chunkCount = _instance.chunkCount || 0;\n    _instance.tokenCount = _instance.tokenCount || 0;\n    _instance.progress = _instance.progress || 0;\n    _instance.progressMsg = _instance.progressMsg || '';\n    _instance.processBeginAt = _instance.processBeginAt || undefined;\n    _instance.processDuration = _instance.processDuration || 0;\n    _instance.metaFields = _instance.metaFields || undefined;\n    _instance.run = _instance.run || 0;\n    _instance.status = _instance.status || '';\n    _instance.createTime = _instance.createTime || undefined;\n    _instance.updateTime = _instance.updateTime || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDocument,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.id = _reader.readString();\n          break;\n        case 2:\n          _instance.thumbnail = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          _instance.chunkMethod = _reader.readEnum();\n          break;\n        case 5:\n          _instance.parserConfig = new RagParserConfig();\n          _reader.readMessage(\n            _instance.parserConfig,\n            RagParserConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.type = _reader.readEnum();\n          break;\n        case 7:\n          _instance.name = _reader.readString();\n          break;\n        case 8:\n          _instance.size = _reader.readInt64String();\n          break;\n        case 9:\n          _instance.chunkCount = _reader.readInt32();\n          break;\n        case 10:\n          _instance.tokenCount = _reader.readInt32();\n          break;\n        case 11:\n          _instance.progress = _reader.readFloat();\n          break;\n        case 12:\n          _instance.progressMsg = _reader.readString();\n          break;\n        case 13:\n          _instance.processBeginAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.processBeginAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 14:\n          _instance.processDuration = _reader.readFloat();\n          break;\n        case 15:\n          _instance.metaFields = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.metaFields,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 16:\n          _instance.run = _reader.readEnum();\n          break;\n        case 17:\n          _instance.status = _reader.readString();\n          break;\n        case 18:\n          _instance.createTime = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createTime,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 19:\n          _instance.updateTime = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.updateTime,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDocument.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDocument,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.id) {\n      _writer.writeString(1, _instance.id);\n    }\n    if (_instance.thumbnail) {\n      _writer.writeString(2, _instance.thumbnail);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.chunkMethod) {\n      _writer.writeEnum(4, _instance.chunkMethod);\n    }\n    if (_instance.parserConfig) {\n      _writer.writeMessage(\n        5,\n        _instance.parserConfig as any,\n        RagParserConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.type) {\n      _writer.writeEnum(6, _instance.type);\n    }\n    if (_instance.name) {\n      _writer.writeString(7, _instance.name);\n    }\n    if (_instance.size) {\n      _writer.writeInt64String(8, _instance.size);\n    }\n    if (_instance.chunkCount) {\n      _writer.writeInt32(9, _instance.chunkCount);\n    }\n    if (_instance.tokenCount) {\n      _writer.writeInt32(10, _instance.tokenCount);\n    }\n    if (_instance.progress) {\n      _writer.writeFloat(11, _instance.progress);\n    }\n    if (_instance.progressMsg) {\n      _writer.writeString(12, _instance.progressMsg);\n    }\n    if (_instance.processBeginAt) {\n      _writer.writeMessage(\n        13,\n        _instance.processBeginAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.processDuration) {\n      _writer.writeFloat(14, _instance.processDuration);\n    }\n    if (_instance.metaFields) {\n      _writer.writeMessage(\n        15,\n        _instance.metaFields as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.run) {\n      _writer.writeEnum(16, _instance.run);\n    }\n    if (_instance.status) {\n      _writer.writeString(17, _instance.status);\n    }\n    if (_instance.createTime) {\n      _writer.writeMessage(\n        18,\n        _instance.createTime as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateTime) {\n      _writer.writeMessage(\n        19,\n        _instance.updateTime as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _id: string;\n  private _thumbnail: string;\n  private _datasetId: string;\n  private _chunkMethod: RagChunkMethod;\n  private _parserConfig?: RagParserConfig;\n  private _type: RagDocumentType;\n  private _name: string;\n  private _size: string;\n  private _chunkCount: number;\n  private _tokenCount: number;\n  private _progress: number;\n  private _progressMsg: string;\n  private _processBeginAt?: googleProtobuf002.Timestamp;\n  private _processDuration: number;\n  private _metaFields?: googleProtobuf001.Struct;\n  private _run: RagDocumentStatus;\n  private _status: string;\n  private _createTime?: googleProtobuf002.Timestamp;\n  private _updateTime?: googleProtobuf002.Timestamp;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDocument to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDocument.AsObject>) {\n    _value = _value || {};\n    this.id = _value.id;\n    this.thumbnail = _value.thumbnail;\n    this.datasetId = _value.datasetId;\n    this.chunkMethod = _value.chunkMethod;\n    this.parserConfig = _value.parserConfig\n      ? new RagParserConfig(_value.parserConfig)\n      : undefined;\n    this.type = _value.type;\n    this.name = _value.name;\n    this.size = _value.size;\n    this.chunkCount = _value.chunkCount;\n    this.tokenCount = _value.tokenCount;\n    this.progress = _value.progress;\n    this.progressMsg = _value.progressMsg;\n    this.processBeginAt = _value.processBeginAt\n      ? new googleProtobuf002.Timestamp(_value.processBeginAt)\n      : undefined;\n    this.processDuration = _value.processDuration;\n    this.metaFields = _value.metaFields\n      ? new googleProtobuf001.Struct(_value.metaFields)\n      : undefined;\n    this.run = _value.run;\n    this.status = _value.status;\n    this.createTime = _value.createTime\n      ? new googleProtobuf002.Timestamp(_value.createTime)\n      : undefined;\n    this.updateTime = _value.updateTime\n      ? new googleProtobuf002.Timestamp(_value.updateTime)\n      : undefined;\n    RagDocument.refineValues(this);\n  }\n  get id(): string {\n    return this._id;\n  }\n  set id(value: string) {\n    this._id = value;\n  }\n  get thumbnail(): string {\n    return this._thumbnail;\n  }\n  set thumbnail(value: string) {\n    this._thumbnail = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get chunkMethod(): RagChunkMethod {\n    return this._chunkMethod;\n  }\n  set chunkMethod(value: RagChunkMethod) {\n    this._chunkMethod = value;\n  }\n  get parserConfig(): RagParserConfig | undefined {\n    return this._parserConfig;\n  }\n  set parserConfig(value: RagParserConfig | undefined) {\n    this._parserConfig = value;\n  }\n  get type(): RagDocumentType {\n    return this._type;\n  }\n  set type(value: RagDocumentType) {\n    this._type = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get size(): string {\n    return this._size;\n  }\n  set size(value: string) {\n    this._size = value;\n  }\n  get chunkCount(): number {\n    return this._chunkCount;\n  }\n  set chunkCount(value: number) {\n    this._chunkCount = value;\n  }\n  get tokenCount(): number {\n    return this._tokenCount;\n  }\n  set tokenCount(value: number) {\n    this._tokenCount = value;\n  }\n  get progress(): number {\n    return this._progress;\n  }\n  set progress(value: number) {\n    this._progress = value;\n  }\n  get progressMsg(): string {\n    return this._progressMsg;\n  }\n  set progressMsg(value: string) {\n    this._progressMsg = value;\n  }\n  get processBeginAt(): googleProtobuf002.Timestamp | undefined {\n    return this._processBeginAt;\n  }\n  set processBeginAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._processBeginAt = value;\n  }\n  get processDuration(): number {\n    return this._processDuration;\n  }\n  set processDuration(value: number) {\n    this._processDuration = value;\n  }\n  get metaFields(): googleProtobuf001.Struct | undefined {\n    return this._metaFields;\n  }\n  set metaFields(value: googleProtobuf001.Struct | undefined) {\n    this._metaFields = value;\n  }\n  get run(): RagDocumentStatus {\n    return this._run;\n  }\n  set run(value: RagDocumentStatus) {\n    this._run = value;\n  }\n  get status(): string {\n    return this._status;\n  }\n  set status(value: string) {\n    this._status = value;\n  }\n  get createTime(): googleProtobuf002.Timestamp | undefined {\n    return this._createTime;\n  }\n  set createTime(value: googleProtobuf002.Timestamp | undefined) {\n    this._createTime = value;\n  }\n  get updateTime(): googleProtobuf002.Timestamp | undefined {\n    return this._updateTime;\n  }\n  set updateTime(value: googleProtobuf002.Timestamp | undefined) {\n    this._updateTime = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDocument.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDocument.AsObject {\n    return {\n      id: this.id,\n      thumbnail: this.thumbnail,\n      datasetId: this.datasetId,\n      chunkMethod: this.chunkMethod,\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toObject()\n        : undefined,\n      type: this.type,\n      name: this.name,\n      size: this.size,\n      chunkCount: this.chunkCount,\n      tokenCount: this.tokenCount,\n      progress: this.progress,\n      progressMsg: this.progressMsg,\n      processBeginAt: this.processBeginAt\n        ? this.processBeginAt.toObject()\n        : undefined,\n      processDuration: this.processDuration,\n      metaFields: this.metaFields ? this.metaFields.toObject() : undefined,\n      run: this.run,\n      status: this.status,\n      createTime: this.createTime ? this.createTime.toObject() : undefined,\n      updateTime: this.updateTime ? this.updateTime.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDocument.AsProtobufJSON {\n    return {\n      id: this.id,\n      thumbnail: this.thumbnail,\n      datasetId: this.datasetId,\n      chunkMethod:\n        RagChunkMethod[\n          this.chunkMethod === null || this.chunkMethod === undefined\n            ? 0\n            : this.chunkMethod\n        ],\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toProtobufJSON(options)\n        : null,\n      type:\n        RagDocumentType[\n          this.type === null || this.type === undefined ? 0 : this.type\n        ],\n      name: this.name,\n      size: this.size,\n      chunkCount: this.chunkCount,\n      tokenCount: this.tokenCount,\n      progress: this.progress,\n      progressMsg: this.progressMsg,\n      processBeginAt: this.processBeginAt\n        ? this.processBeginAt.toProtobufJSON(options)\n        : null,\n      processDuration: this.processDuration,\n      metaFields: this.metaFields\n        ? this.metaFields.toProtobufJSON(options)\n        : null,\n      run:\n        RagDocumentStatus[\n          this.run === null || this.run === undefined ? 0 : this.run\n        ],\n      status: this.status,\n      createTime: this.createTime\n        ? this.createTime.toProtobufJSON(options)\n        : null,\n      updateTime: this.updateTime\n        ? this.updateTime.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module RagDocument {\n  /**\n   * Standard JavaScript object representation for RagDocument\n   */\n  export interface AsObject {\n    id: string;\n    thumbnail: string;\n    datasetId: string;\n    chunkMethod: RagChunkMethod;\n    parserConfig?: RagParserConfig.AsObject;\n    type: RagDocumentType;\n    name: string;\n    size: string;\n    chunkCount: number;\n    tokenCount: number;\n    progress: number;\n    progressMsg: string;\n    processBeginAt?: googleProtobuf002.Timestamp.AsObject;\n    processDuration: number;\n    metaFields?: googleProtobuf001.Struct.AsObject;\n    run: RagDocumentStatus;\n    status: string;\n    createTime?: googleProtobuf002.Timestamp.AsObject;\n    updateTime?: googleProtobuf002.Timestamp.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDocument\n   */\n  export interface AsProtobufJSON {\n    id: string;\n    thumbnail: string;\n    datasetId: string;\n    chunkMethod: string;\n    parserConfig: RagParserConfig.AsProtobufJSON | null;\n    type: string;\n    name: string;\n    size: string;\n    chunkCount: number;\n    tokenCount: number;\n    progress: number;\n    progressMsg: string;\n    processBeginAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    processDuration: number;\n    metaFields: googleProtobuf001.Struct.AsProtobufJSON | null;\n    run: string;\n    status: string;\n    createTime: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    updateTime: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagUpdateDocumentRequest\n */\nexport class RagUpdateDocumentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagUpdateDocumentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagUpdateDocumentRequest();\n    RagUpdateDocumentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagUpdateDocumentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.documentId = _instance.documentId || '';\n    _instance.name = _instance.name || '';\n    _instance.chunkMethod = _instance.chunkMethod || 0;\n    _instance.parserConfig = _instance.parserConfig || undefined;\n    _instance.enabled = _instance.enabled || false;\n    _instance.metaFields = _instance.metaFields || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagUpdateDocumentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          _instance.documentId = _reader.readString();\n          break;\n        case 5:\n          _instance.name = _reader.readString();\n          break;\n        case 6:\n          _instance.chunkMethod = _reader.readEnum();\n          break;\n        case 7:\n          _instance.parserConfig = new RagParserConfig();\n          _reader.readMessage(\n            _instance.parserConfig,\n            RagParserConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.enabled = _reader.readBool();\n          break;\n        case 9:\n          _instance.metaFields = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.metaFields,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.updateMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagUpdateDocumentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagUpdateDocumentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.documentId) {\n      _writer.writeString(4, _instance.documentId);\n    }\n    if (_instance.name) {\n      _writer.writeString(5, _instance.name);\n    }\n    if (_instance.chunkMethod) {\n      _writer.writeEnum(6, _instance.chunkMethod);\n    }\n    if (_instance.parserConfig) {\n      _writer.writeMessage(\n        7,\n        _instance.parserConfig as any,\n        RagParserConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.enabled) {\n      _writer.writeBool(8, _instance.enabled);\n    }\n    if (_instance.metaFields) {\n      _writer.writeMessage(\n        9,\n        _instance.metaFields as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        10,\n        _instance.updateMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        11,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetId: string;\n  private _documentId: string;\n  private _name: string;\n  private _chunkMethod: RagChunkMethod;\n  private _parserConfig?: RagParserConfig;\n  private _enabled: boolean;\n  private _metaFields?: googleProtobuf001.Struct;\n  private _updateMask?: googleProtobuf000.FieldMask;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagUpdateDocumentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagUpdateDocumentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetId = _value.datasetId;\n    this.documentId = _value.documentId;\n    this.name = _value.name;\n    this.chunkMethod = _value.chunkMethod;\n    this.parserConfig = _value.parserConfig\n      ? new RagParserConfig(_value.parserConfig)\n      : undefined;\n    this.enabled = _value.enabled;\n    this.metaFields = _value.metaFields\n      ? new googleProtobuf001.Struct(_value.metaFields)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf000.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagUpdateDocumentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get documentId(): string {\n    return this._documentId;\n  }\n  set documentId(value: string) {\n    this._documentId = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get chunkMethod(): RagChunkMethod {\n    return this._chunkMethod;\n  }\n  set chunkMethod(value: RagChunkMethod) {\n    this._chunkMethod = value;\n  }\n  get parserConfig(): RagParserConfig | undefined {\n    return this._parserConfig;\n  }\n  set parserConfig(value: RagParserConfig | undefined) {\n    this._parserConfig = value;\n  }\n  get enabled(): boolean {\n    return this._enabled;\n  }\n  set enabled(value: boolean) {\n    this._enabled = value;\n  }\n  get metaFields(): googleProtobuf001.Struct | undefined {\n    return this._metaFields;\n  }\n  set metaFields(value: googleProtobuf001.Struct | undefined) {\n    this._metaFields = value;\n  }\n  get updateMask(): googleProtobuf000.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagUpdateDocumentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagUpdateDocumentRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      documentId: this.documentId,\n      name: this.name,\n      chunkMethod: this.chunkMethod,\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toObject()\n        : undefined,\n      enabled: this.enabled,\n      metaFields: this.metaFields ? this.metaFields.toObject() : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagUpdateDocumentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      documentId: this.documentId,\n      name: this.name,\n      chunkMethod:\n        RagChunkMethod[\n          this.chunkMethod === null || this.chunkMethod === undefined\n            ? 0\n            : this.chunkMethod\n        ],\n      parserConfig: this.parserConfig\n        ? this.parserConfig.toProtobufJSON(options)\n        : null,\n      enabled: this.enabled,\n      metaFields: this.metaFields\n        ? this.metaFields.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagUpdateDocumentRequest {\n  /**\n   * Standard JavaScript object representation for RagUpdateDocumentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    documentId: string;\n    name: string;\n    chunkMethod: RagChunkMethod;\n    parserConfig?: RagParserConfig.AsObject;\n    enabled: boolean;\n    metaFields?: googleProtobuf001.Struct.AsObject;\n    updateMask?: googleProtobuf000.FieldMask.AsObject;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagUpdateDocumentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    documentId: string;\n    name: string;\n    chunkMethod: string;\n    parserConfig: RagParserConfig.AsProtobufJSON | null;\n    enabled: boolean;\n    metaFields: googleProtobuf001.Struct.AsProtobufJSON | null;\n    updateMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDownloadDocumentRequest\n */\nexport class RagDownloadDocumentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDownloadDocumentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDownloadDocumentRequest();\n    RagDownloadDocumentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDownloadDocumentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.documentId = _instance.documentId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDownloadDocumentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          _instance.documentId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDownloadDocumentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDownloadDocumentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.documentId) {\n      _writer.writeString(4, _instance.documentId);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetId: string;\n  private _documentId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDownloadDocumentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDownloadDocumentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetId = _value.datasetId;\n    this.documentId = _value.documentId;\n    RagDownloadDocumentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get documentId(): string {\n    return this._documentId;\n  }\n  set documentId(value: string) {\n    this._documentId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDownloadDocumentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDownloadDocumentRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      documentId: this.documentId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDownloadDocumentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      documentId: this.documentId\n    };\n  }\n}\nexport module RagDownloadDocumentRequest {\n  /**\n   * Standard JavaScript object representation for RagDownloadDocumentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    documentId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDownloadDocumentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    documentId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagFileChunk\n */\nexport class RagFileChunk implements GrpcMessage {\n  static id = 'ondewo.nlu.RagFileChunk';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagFileChunk();\n    RagFileChunk.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagFileChunk) {\n    _instance.metadata = _instance.metadata || undefined;\n    _instance.data = _instance.data || new Uint8Array();\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagFileChunk,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.metadata = new RagFileMetadata();\n          _reader.readMessage(\n            _instance.metadata,\n            RagFileMetadata.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.data = _reader.readBytes();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagFileChunk.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagFileChunk,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.metadata) {\n      _writer.writeMessage(\n        1,\n        _instance.metadata as any,\n        RagFileMetadata.serializeBinaryToWriter\n      );\n    }\n    if (_instance.data && _instance.data.length) {\n      _writer.writeBytes(2, _instance.data);\n    }\n  }\n\n  private _metadata?: RagFileMetadata;\n  private _data: Uint8Array;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagFileChunk to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagFileChunk.AsObject>) {\n    _value = _value || {};\n    this.metadata = _value.metadata\n      ? new RagFileMetadata(_value.metadata)\n      : undefined;\n    this.data = _value.data;\n    RagFileChunk.refineValues(this);\n  }\n  get metadata(): RagFileMetadata | undefined {\n    return this._metadata;\n  }\n  set metadata(value: RagFileMetadata | undefined) {\n    this._metadata = value;\n  }\n  get data(): Uint8Array {\n    return this._data;\n  }\n  set data(value: Uint8Array) {\n    this._data = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagFileChunk.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagFileChunk.AsObject {\n    return {\n      metadata: this.metadata ? this.metadata.toObject() : undefined,\n      data: this.data ? this.data.subarray(0) : new Uint8Array()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagFileChunk.AsProtobufJSON {\n    return {\n      metadata: this.metadata ? this.metadata.toProtobufJSON(options) : null,\n      data: this.data ? uint8ArrayToBase64(this.data) : ''\n    };\n  }\n}\nexport module RagFileChunk {\n  /**\n   * Standard JavaScript object representation for RagFileChunk\n   */\n  export interface AsObject {\n    metadata?: RagFileMetadata.AsObject;\n    data: Uint8Array;\n  }\n\n  /**\n   * Protobuf JSON representation for RagFileChunk\n   */\n  export interface AsProtobufJSON {\n    metadata: RagFileMetadata.AsProtobufJSON | null;\n    data: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagListDocumentsRequest\n */\nexport class RagListDocumentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagListDocumentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagListDocumentsRequest();\n    RagListDocumentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagListDocumentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.id = _instance.id || '';\n    _instance.name = _instance.name || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.orderby = _instance.orderby || '';\n    _instance.desc = _instance.desc || false;\n    _instance.keywords = _instance.keywords || '';\n    _instance.suffix = _instance.suffix || [];\n    _instance.runStatus = _instance.runStatus || [];\n    _instance.createTimeFrom = _instance.createTimeFrom || undefined;\n    _instance.createTimeTo = _instance.createTimeTo || undefined;\n    _instance.metadataCondition = _instance.metadataCondition || undefined;\n    _instance.sortingMode = _instance.sortingMode || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagListDocumentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          _instance.id = _reader.readString();\n          break;\n        case 5:\n          _instance.name = _reader.readString();\n          break;\n        case 6:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 7:\n          _instance.orderby = _reader.readString();\n          break;\n        case 8:\n          _instance.desc = _reader.readBool();\n          break;\n        case 9:\n          _instance.keywords = _reader.readString();\n          break;\n        case 10:\n          (_instance.suffix = _instance.suffix || []).push(\n            _reader.readString()\n          );\n          break;\n        case 11:\n          _reader.readPackableEnumInto(\n            (_instance.runStatus = _instance.runStatus || [])\n          );\n          break;\n        case 12:\n          _instance.createTimeFrom = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createTimeFrom,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 13:\n          _instance.createTimeTo = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createTimeTo,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 14:\n          _instance.metadataCondition = new RagMetadataConditions();\n          _reader.readMessage(\n            _instance.metadataCondition,\n            RagMetadataConditions.deserializeBinaryFromReader\n          );\n          break;\n        case 15:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        case 16:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagListDocumentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagListDocumentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.id) {\n      _writer.writeString(4, _instance.id);\n    }\n    if (_instance.name) {\n      _writer.writeString(5, _instance.name);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(6, _instance.pageToken);\n    }\n    if (_instance.orderby) {\n      _writer.writeString(7, _instance.orderby);\n    }\n    if (_instance.desc) {\n      _writer.writeBool(8, _instance.desc);\n    }\n    if (_instance.keywords) {\n      _writer.writeString(9, _instance.keywords);\n    }\n    if (_instance.suffix && _instance.suffix.length) {\n      _writer.writeRepeatedString(10, _instance.suffix);\n    }\n    if (_instance.runStatus && _instance.runStatus.length) {\n      _writer.writePackedEnum(11, _instance.runStatus);\n    }\n    if (_instance.createTimeFrom) {\n      _writer.writeMessage(\n        12,\n        _instance.createTimeFrom as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createTimeTo) {\n      _writer.writeMessage(\n        13,\n        _instance.createTimeTo as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.metadataCondition) {\n      _writer.writeMessage(\n        14,\n        _instance.metadataCondition as any,\n        RagMetadataConditions.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(15, _instance.sortingMode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        16,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetId: string;\n  private _id: string;\n  private _name: string;\n  private _pageToken: string;\n  private _orderby: string;\n  private _desc: boolean;\n  private _keywords: string;\n  private _suffix: string[];\n  private _runStatus: RagDocumentStatus[];\n  private _createTimeFrom?: googleProtobuf002.Timestamp;\n  private _createTimeTo?: googleProtobuf002.Timestamp;\n  private _metadataCondition?: RagMetadataConditions;\n  private _sortingMode: ondewoNlu008.SortingMode;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagListDocumentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagListDocumentsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetId = _value.datasetId;\n    this.id = _value.id;\n    this.name = _value.name;\n    this.pageToken = _value.pageToken;\n    this.orderby = _value.orderby;\n    this.desc = _value.desc;\n    this.keywords = _value.keywords;\n    this.suffix = (_value.suffix || []).slice();\n    this.runStatus = (_value.runStatus || []).slice();\n    this.createTimeFrom = _value.createTimeFrom\n      ? new googleProtobuf002.Timestamp(_value.createTimeFrom)\n      : undefined;\n    this.createTimeTo = _value.createTimeTo\n      ? new googleProtobuf002.Timestamp(_value.createTimeTo)\n      : undefined;\n    this.metadataCondition = _value.metadataCondition\n      ? new RagMetadataConditions(_value.metadataCondition)\n      : undefined;\n    this.sortingMode = _value.sortingMode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagListDocumentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get id(): string {\n    return this._id;\n  }\n  set id(value: string) {\n    this._id = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get orderby(): string {\n    return this._orderby;\n  }\n  set orderby(value: string) {\n    this._orderby = value;\n  }\n  get desc(): boolean {\n    return this._desc;\n  }\n  set desc(value: boolean) {\n    this._desc = value;\n  }\n  get keywords(): string {\n    return this._keywords;\n  }\n  set keywords(value: string) {\n    this._keywords = value;\n  }\n  get suffix(): string[] {\n    return this._suffix;\n  }\n  set suffix(value: string[]) {\n    this._suffix = value;\n  }\n  get runStatus(): RagDocumentStatus[] {\n    return this._runStatus;\n  }\n  set runStatus(value: RagDocumentStatus[]) {\n    this._runStatus = value;\n  }\n  get createTimeFrom(): googleProtobuf002.Timestamp | undefined {\n    return this._createTimeFrom;\n  }\n  set createTimeFrom(value: googleProtobuf002.Timestamp | undefined) {\n    this._createTimeFrom = value;\n  }\n  get createTimeTo(): googleProtobuf002.Timestamp | undefined {\n    return this._createTimeTo;\n  }\n  set createTimeTo(value: googleProtobuf002.Timestamp | undefined) {\n    this._createTimeTo = value;\n  }\n  get metadataCondition(): RagMetadataConditions | undefined {\n    return this._metadataCondition;\n  }\n  set metadataCondition(value: RagMetadataConditions | undefined) {\n    this._metadataCondition = value;\n  }\n  get sortingMode(): ondewoNlu008.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu008.SortingMode) {\n    this._sortingMode = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagListDocumentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagListDocumentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      id: this.id,\n      name: this.name,\n      pageToken: this.pageToken,\n      orderby: this.orderby,\n      desc: this.desc,\n      keywords: this.keywords,\n      suffix: (this.suffix || []).slice(),\n      runStatus: (this.runStatus || []).slice(),\n      createTimeFrom: this.createTimeFrom\n        ? this.createTimeFrom.toObject()\n        : undefined,\n      createTimeTo: this.createTimeTo\n        ? this.createTimeTo.toObject()\n        : undefined,\n      metadataCondition: this.metadataCondition\n        ? this.metadataCondition.toObject()\n        : undefined,\n      sortingMode: this.sortingMode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagListDocumentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      id: this.id,\n      name: this.name,\n      pageToken: this.pageToken,\n      orderby: this.orderby,\n      desc: this.desc,\n      keywords: this.keywords,\n      suffix: (this.suffix || []).slice(),\n      runStatus: (this.runStatus || []).map(v => RagDocumentStatus[v]),\n      createTimeFrom: this.createTimeFrom\n        ? this.createTimeFrom.toProtobufJSON(options)\n        : null,\n      createTimeTo: this.createTimeTo\n        ? this.createTimeTo.toProtobufJSON(options)\n        : null,\n      metadataCondition: this.metadataCondition\n        ? this.metadataCondition.toProtobufJSON(options)\n        : null,\n      sortingMode:\n        ondewoNlu008.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagListDocumentsRequest {\n  /**\n   * Standard JavaScript object representation for RagListDocumentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    id: string;\n    name: string;\n    pageToken: string;\n    orderby: string;\n    desc: boolean;\n    keywords: string;\n    suffix: string[];\n    runStatus: RagDocumentStatus[];\n    createTimeFrom?: googleProtobuf002.Timestamp.AsObject;\n    createTimeTo?: googleProtobuf002.Timestamp.AsObject;\n    metadataCondition?: RagMetadataConditions.AsObject;\n    sortingMode: ondewoNlu008.SortingMode;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagListDocumentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    id: string;\n    name: string;\n    pageToken: string;\n    orderby: string;\n    desc: boolean;\n    keywords: string;\n    suffix: string[];\n    runStatus: string[];\n    createTimeFrom: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    createTimeTo: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    metadataCondition: RagMetadataConditions.AsProtobufJSON | null;\n    sortingMode: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagMetadataConditions\n */\nexport class RagMetadataConditions implements GrpcMessage {\n  static id = 'ondewo.nlu.RagMetadataConditions';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagMetadataConditions();\n    RagMetadataConditions.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagMetadataConditions) {\n    _instance.logic = _instance.logic || 0;\n    _instance.conditions = _instance.conditions || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagMetadataConditions,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.logic = _reader.readEnum();\n          break;\n        case 2:\n          const messageInitializer2 = new RagMetadataCondition();\n          _reader.readMessage(\n            messageInitializer2,\n            RagMetadataCondition.deserializeBinaryFromReader\n          );\n          (_instance.conditions = _instance.conditions || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagMetadataConditions.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagMetadataConditions,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.logic) {\n      _writer.writeEnum(1, _instance.logic);\n    }\n    if (_instance.conditions && _instance.conditions.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.conditions as any,\n        RagMetadataCondition.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _logic: RagLogic;\n  private _conditions?: RagMetadataCondition[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagMetadataConditions to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagMetadataConditions.AsObject>) {\n    _value = _value || {};\n    this.logic = _value.logic;\n    this.conditions = (_value.conditions || []).map(\n      m => new RagMetadataCondition(m)\n    );\n    RagMetadataConditions.refineValues(this);\n  }\n  get logic(): RagLogic {\n    return this._logic;\n  }\n  set logic(value: RagLogic) {\n    this._logic = value;\n  }\n  get conditions(): RagMetadataCondition[] | undefined {\n    return this._conditions;\n  }\n  set conditions(value: RagMetadataCondition[] | undefined) {\n    this._conditions = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagMetadataConditions.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagMetadataConditions.AsObject {\n    return {\n      logic: this.logic,\n      conditions: (this.conditions || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagMetadataConditions.AsProtobufJSON {\n    return {\n      logic:\n        RagLogic[\n          this.logic === null || this.logic === undefined ? 0 : this.logic\n        ],\n      conditions: (this.conditions || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module RagMetadataConditions {\n  /**\n   * Standard JavaScript object representation for RagMetadataConditions\n   */\n  export interface AsObject {\n    logic: RagLogic;\n    conditions?: RagMetadataCondition.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagMetadataConditions\n   */\n  export interface AsProtobufJSON {\n    logic: string;\n    conditions: RagMetadataCondition.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagMetadataCondition\n */\nexport class RagMetadataCondition implements GrpcMessage {\n  static id = 'ondewo.nlu.RagMetadataCondition';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagMetadataCondition();\n    RagMetadataCondition.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagMetadataCondition) {\n    _instance.name = _instance.name || '';\n    _instance.comparisonOperator = _instance.comparisonOperator || 0;\n    _instance.value = _instance.value || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagMetadataCondition,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.comparisonOperator = _reader.readEnum();\n          break;\n        case 3:\n          _instance.value = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagMetadataCondition.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagMetadataCondition,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.comparisonOperator) {\n      _writer.writeEnum(2, _instance.comparisonOperator);\n    }\n    if (_instance.value) {\n      _writer.writeString(3, _instance.value);\n    }\n  }\n\n  private _name: string;\n  private _comparisonOperator: RagComparisonOperator;\n  private _value: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagMetadataCondition to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagMetadataCondition.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.comparisonOperator = _value.comparisonOperator;\n    this.value = _value.value;\n    RagMetadataCondition.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get comparisonOperator(): RagComparisonOperator {\n    return this._comparisonOperator;\n  }\n  set comparisonOperator(value: RagComparisonOperator) {\n    this._comparisonOperator = value;\n  }\n  get value(): string {\n    return this._value;\n  }\n  set value(value: string) {\n    this._value = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagMetadataCondition.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagMetadataCondition.AsObject {\n    return {\n      name: this.name,\n      comparisonOperator: this.comparisonOperator,\n      value: this.value\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagMetadataCondition.AsProtobufJSON {\n    return {\n      name: this.name,\n      comparisonOperator:\n        RagComparisonOperator[\n          this.comparisonOperator === null ||\n          this.comparisonOperator === undefined\n            ? 0\n            : this.comparisonOperator\n        ],\n      value: this.value\n    };\n  }\n}\nexport module RagMetadataCondition {\n  /**\n   * Standard JavaScript object representation for RagMetadataCondition\n   */\n  export interface AsObject {\n    name: string;\n    comparisonOperator: RagComparisonOperator;\n    value: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagMetadataCondition\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    comparisonOperator: string;\n    value: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDocumentList\n */\nexport class RagDocumentList implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDocumentList';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDocumentList();\n    RagDocumentList.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDocumentList) {\n    _instance.documents = _instance.documents || [];\n    _instance.total = _instance.total || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDocumentList,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RagDocument();\n          _reader.readMessage(\n            messageInitializer1,\n            RagDocument.deserializeBinaryFromReader\n          );\n          (_instance.documents = _instance.documents || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.total = _reader.readInt32();\n          break;\n        case 3:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDocumentList.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDocumentList,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.documents && _instance.documents.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.documents as any,\n        RagDocument.serializeBinaryToWriter\n      );\n    }\n    if (_instance.total) {\n      _writer.writeInt32(2, _instance.total);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(3, _instance.nextPageToken);\n    }\n  }\n\n  private _documents?: RagDocument[];\n  private _total: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDocumentList to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDocumentList.AsObject>) {\n    _value = _value || {};\n    this.documents = (_value.documents || []).map(m => new RagDocument(m));\n    this.total = _value.total;\n    this.nextPageToken = _value.nextPageToken;\n    RagDocumentList.refineValues(this);\n  }\n  get documents(): RagDocument[] | undefined {\n    return this._documents;\n  }\n  set documents(value: RagDocument[] | undefined) {\n    this._documents = value;\n  }\n  get total(): number {\n    return this._total;\n  }\n  set total(value: number) {\n    this._total = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDocumentList.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDocumentList.AsObject {\n    return {\n      documents: (this.documents || []).map(m => m.toObject()),\n      total: this.total,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDocumentList.AsProtobufJSON {\n    return {\n      documents: (this.documents || []).map(m => m.toProtobufJSON(options)),\n      total: this.total,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module RagDocumentList {\n  /**\n   * Standard JavaScript object representation for RagDocumentList\n   */\n  export interface AsObject {\n    documents?: RagDocument.AsObject[];\n    total: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDocumentList\n   */\n  export interface AsProtobufJSON {\n    documents: RagDocument.AsProtobufJSON[] | null;\n    total: number;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteDocumentsRequest\n */\nexport class RagDeleteDocumentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteDocumentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteDocumentsRequest();\n    RagDeleteDocumentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteDocumentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.ids = _instance.ids || [];\n    _instance.deleteAll = _instance.deleteAll || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteDocumentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          (_instance.ids = _instance.ids || []).push(_reader.readString());\n          break;\n        case 5:\n          _instance.deleteAll = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteDocumentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteDocumentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.ids && _instance.ids.length) {\n      _writer.writeRepeatedString(4, _instance.ids);\n    }\n    if (_instance.deleteAll) {\n      _writer.writeBool(5, _instance.deleteAll);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetId: string;\n  private _ids: string[];\n  private _deleteAll: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteDocumentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDeleteDocumentsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetId = _value.datasetId;\n    this.ids = (_value.ids || []).slice();\n    this.deleteAll = _value.deleteAll;\n    RagDeleteDocumentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get ids(): string[] {\n    return this._ids;\n  }\n  set ids(value: string[]) {\n    this._ids = value;\n  }\n  get deleteAll(): boolean {\n    return this._deleteAll;\n  }\n  set deleteAll(value: boolean) {\n    this._deleteAll = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteDocumentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteDocumentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      ids: (this.ids || []).slice(),\n      deleteAll: this.deleteAll\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteDocumentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      ids: (this.ids || []).slice(),\n      deleteAll: this.deleteAll\n    };\n  }\n}\nexport module RagDeleteDocumentsRequest {\n  /**\n   * Standard JavaScript object representation for RagDeleteDocumentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    ids: string[];\n    deleteAll: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteDocumentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    ids: string[];\n    deleteAll: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDocumentIdsRequest\n */\nexport class RagDocumentIdsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDocumentIdsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDocumentIdsRequest();\n    RagDocumentIdsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDocumentIdsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.documentIds = _instance.documentIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDocumentIdsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 4:\n          (_instance.documentIds = _instance.documentIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDocumentIdsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDocumentIdsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(3, _instance.datasetId);\n    }\n    if (_instance.documentIds && _instance.documentIds.length) {\n      _writer.writeRepeatedString(4, _instance.documentIds);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetId: string;\n  private _documentIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDocumentIdsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDocumentIdsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetId = _value.datasetId;\n    this.documentIds = (_value.documentIds || []).slice();\n    RagDocumentIdsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get documentIds(): string[] {\n    return this._documentIds;\n  }\n  set documentIds(value: string[]) {\n    this._documentIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDocumentIdsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDocumentIdsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      documentIds: (this.documentIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDocumentIdsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetId: this.datasetId,\n      documentIds: (this.documentIds || []).slice()\n    };\n  }\n}\nexport module RagDocumentIdsRequest {\n  /**\n   * Standard JavaScript object representation for RagDocumentIdsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    documentIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagDocumentIdsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetId: string;\n    documentIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagRetrievalRequest\n */\nexport class RagRetrievalRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagRetrievalRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagRetrievalRequest();\n    RagRetrievalRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagRetrievalRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.datasetIds = _instance.datasetIds || [];\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.question = _instance.question || '';\n    _instance.documentIds = _instance.documentIds || [];\n    _instance.useKg = _instance.useKg || false;\n    _instance.crossLanguages = _instance.crossLanguages || [];\n    _instance.metadataCondition = _instance.metadataCondition || undefined;\n    _instance.similarityThreshold = _instance.similarityThreshold || 0;\n    _instance.vectorSimilarityWeight = _instance.vectorSimilarityWeight || 0;\n    _instance.topK = _instance.topK || 0;\n    _instance.highlight = _instance.highlight || false;\n    _instance.keyword = _instance.keyword || false;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.rerankModelCcaiServiceName =\n      _instance.rerankModelCcaiServiceName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagRetrievalRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          (_instance.datasetIds = _instance.datasetIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.question = _reader.readString();\n          break;\n        case 6:\n          (_instance.documentIds = _instance.documentIds || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          _instance.useKg = _reader.readBool();\n          break;\n        case 8:\n          (_instance.crossLanguages = _instance.crossLanguages || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          _instance.metadataCondition = new RagMetadataConditions();\n          _reader.readMessage(\n            _instance.metadataCondition,\n            RagMetadataConditions.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.similarityThreshold = _reader.readFloat();\n          break;\n        case 11:\n          _instance.vectorSimilarityWeight = _reader.readFloat();\n          break;\n        case 12:\n          _instance.topK = _reader.readInt32();\n          break;\n        case 13:\n          _instance.highlight = _reader.readBool();\n          break;\n        case 14:\n          _instance.keyword = _reader.readBool();\n          break;\n        case 15:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 16:\n          _instance.rerankModelCcaiServiceName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagRetrievalRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagRetrievalRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.datasetIds && _instance.datasetIds.length) {\n      _writer.writeRepeatedString(3, _instance.datasetIds);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.question) {\n      _writer.writeString(5, _instance.question);\n    }\n    if (_instance.documentIds && _instance.documentIds.length) {\n      _writer.writeRepeatedString(6, _instance.documentIds);\n    }\n    if (_instance.useKg) {\n      _writer.writeBool(7, _instance.useKg);\n    }\n    if (_instance.crossLanguages && _instance.crossLanguages.length) {\n      _writer.writeRepeatedString(8, _instance.crossLanguages);\n    }\n    if (_instance.metadataCondition) {\n      _writer.writeMessage(\n        9,\n        _instance.metadataCondition as any,\n        RagMetadataConditions.serializeBinaryToWriter\n      );\n    }\n    if (_instance.similarityThreshold) {\n      _writer.writeFloat(10, _instance.similarityThreshold);\n    }\n    if (_instance.vectorSimilarityWeight) {\n      _writer.writeFloat(11, _instance.vectorSimilarityWeight);\n    }\n    if (_instance.topK) {\n      _writer.writeInt32(12, _instance.topK);\n    }\n    if (_instance.highlight) {\n      _writer.writeBool(13, _instance.highlight);\n    }\n    if (_instance.keyword) {\n      _writer.writeBool(14, _instance.keyword);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        15,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.rerankModelCcaiServiceName) {\n      _writer.writeString(16, _instance.rerankModelCcaiServiceName);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _datasetIds: string[];\n  private _pageToken: string;\n  private _question: string;\n  private _documentIds: string[];\n  private _useKg: boolean;\n  private _crossLanguages: string[];\n  private _metadataCondition?: RagMetadataConditions;\n  private _similarityThreshold: number;\n  private _vectorSimilarityWeight: number;\n  private _topK: number;\n  private _highlight: boolean;\n  private _keyword: boolean;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n  private _rerankModelCcaiServiceName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagRetrievalRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagRetrievalRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.datasetIds = (_value.datasetIds || []).slice();\n    this.pageToken = _value.pageToken;\n    this.question = _value.question;\n    this.documentIds = (_value.documentIds || []).slice();\n    this.useKg = _value.useKg;\n    this.crossLanguages = (_value.crossLanguages || []).slice();\n    this.metadataCondition = _value.metadataCondition\n      ? new RagMetadataConditions(_value.metadataCondition)\n      : undefined;\n    this.similarityThreshold = _value.similarityThreshold;\n    this.vectorSimilarityWeight = _value.vectorSimilarityWeight;\n    this.topK = _value.topK;\n    this.highlight = _value.highlight;\n    this.keyword = _value.keyword;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    this.rerankModelCcaiServiceName = _value.rerankModelCcaiServiceName;\n    RagRetrievalRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get datasetIds(): string[] {\n    return this._datasetIds;\n  }\n  set datasetIds(value: string[]) {\n    this._datasetIds = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get question(): string {\n    return this._question;\n  }\n  set question(value: string) {\n    this._question = value;\n  }\n  get documentIds(): string[] {\n    return this._documentIds;\n  }\n  set documentIds(value: string[]) {\n    this._documentIds = value;\n  }\n  get useKg(): boolean {\n    return this._useKg;\n  }\n  set useKg(value: boolean) {\n    this._useKg = value;\n  }\n  get crossLanguages(): string[] {\n    return this._crossLanguages;\n  }\n  set crossLanguages(value: string[]) {\n    this._crossLanguages = value;\n  }\n  get metadataCondition(): RagMetadataConditions | undefined {\n    return this._metadataCondition;\n  }\n  set metadataCondition(value: RagMetadataConditions | undefined) {\n    this._metadataCondition = value;\n  }\n  get similarityThreshold(): number {\n    return this._similarityThreshold;\n  }\n  set similarityThreshold(value: number) {\n    this._similarityThreshold = value;\n  }\n  get vectorSimilarityWeight(): number {\n    return this._vectorSimilarityWeight;\n  }\n  set vectorSimilarityWeight(value: number) {\n    this._vectorSimilarityWeight = value;\n  }\n  get topK(): number {\n    return this._topK;\n  }\n  set topK(value: number) {\n    this._topK = value;\n  }\n  get highlight(): boolean {\n    return this._highlight;\n  }\n  set highlight(value: boolean) {\n    this._highlight = value;\n  }\n  get keyword(): boolean {\n    return this._keyword;\n  }\n  set keyword(value: boolean) {\n    this._keyword = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get rerankModelCcaiServiceName(): string {\n    return this._rerankModelCcaiServiceName;\n  }\n  set rerankModelCcaiServiceName(value: string) {\n    this._rerankModelCcaiServiceName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagRetrievalRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagRetrievalRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetIds: (this.datasetIds || []).slice(),\n      pageToken: this.pageToken,\n      question: this.question,\n      documentIds: (this.documentIds || []).slice(),\n      useKg: this.useKg,\n      crossLanguages: (this.crossLanguages || []).slice(),\n      metadataCondition: this.metadataCondition\n        ? this.metadataCondition.toObject()\n        : undefined,\n      similarityThreshold: this.similarityThreshold,\n      vectorSimilarityWeight: this.vectorSimilarityWeight,\n      topK: this.topK,\n      highlight: this.highlight,\n      keyword: this.keyword,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      rerankModelCcaiServiceName: this.rerankModelCcaiServiceName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagRetrievalRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      datasetIds: (this.datasetIds || []).slice(),\n      pageToken: this.pageToken,\n      question: this.question,\n      documentIds: (this.documentIds || []).slice(),\n      useKg: this.useKg,\n      crossLanguages: (this.crossLanguages || []).slice(),\n      metadataCondition: this.metadataCondition\n        ? this.metadataCondition.toProtobufJSON(options)\n        : null,\n      similarityThreshold: this.similarityThreshold,\n      vectorSimilarityWeight: this.vectorSimilarityWeight,\n      topK: this.topK,\n      highlight: this.highlight,\n      keyword: this.keyword,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      rerankModelCcaiServiceName: this.rerankModelCcaiServiceName\n    };\n  }\n}\nexport module RagRetrievalRequest {\n  /**\n   * Standard JavaScript object representation for RagRetrievalRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    datasetIds: string[];\n    pageToken: string;\n    question: string;\n    documentIds: string[];\n    useKg: boolean;\n    crossLanguages: string[];\n    metadataCondition?: RagMetadataConditions.AsObject;\n    similarityThreshold: number;\n    vectorSimilarityWeight: number;\n    topK: number;\n    highlight: boolean;\n    keyword: boolean;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n    rerankModelCcaiServiceName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagRetrievalRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    datasetIds: string[];\n    pageToken: string;\n    question: string;\n    documentIds: string[];\n    useKg: boolean;\n    crossLanguages: string[];\n    metadataCondition: RagMetadataConditions.AsProtobufJSON | null;\n    similarityThreshold: number;\n    vectorSimilarityWeight: number;\n    topK: number;\n    highlight: boolean;\n    keyword: boolean;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    rerankModelCcaiServiceName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagRetrievalResponse\n */\nexport class RagRetrievalResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagRetrievalResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagRetrievalResponse();\n    RagRetrievalResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagRetrievalResponse) {\n    _instance.chunks = _instance.chunks || [];\n    _instance.docAggs = _instance.docAggs || [];\n    _instance.total = _instance.total || 0;\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagRetrievalResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RagChunk();\n          _reader.readMessage(\n            messageInitializer1,\n            RagChunk.deserializeBinaryFromReader\n          );\n          (_instance.chunks = _instance.chunks || []).push(messageInitializer1);\n          break;\n        case 2:\n          const messageInitializer2 = new RagDocAgg();\n          _reader.readMessage(\n            messageInitializer2,\n            RagDocAgg.deserializeBinaryFromReader\n          );\n          (_instance.docAggs = _instance.docAggs || []).push(\n            messageInitializer2\n          );\n          break;\n        case 3:\n          _instance.total = _reader.readInt32();\n          break;\n        case 4:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagRetrievalResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagRetrievalResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.chunks && _instance.chunks.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.chunks as any,\n        RagChunk.serializeBinaryToWriter\n      );\n    }\n    if (_instance.docAggs && _instance.docAggs.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.docAggs as any,\n        RagDocAgg.serializeBinaryToWriter\n      );\n    }\n    if (_instance.total) {\n      _writer.writeInt32(3, _instance.total);\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(4, _instance.nextPageToken);\n    }\n  }\n\n  private _chunks?: RagChunk[];\n  private _docAggs?: RagDocAgg[];\n  private _total: number;\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagRetrievalResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagRetrievalResponse.AsObject>) {\n    _value = _value || {};\n    this.chunks = (_value.chunks || []).map(m => new RagChunk(m));\n    this.docAggs = (_value.docAggs || []).map(m => new RagDocAgg(m));\n    this.total = _value.total;\n    this.nextPageToken = _value.nextPageToken;\n    RagRetrievalResponse.refineValues(this);\n  }\n  get chunks(): RagChunk[] | undefined {\n    return this._chunks;\n  }\n  set chunks(value: RagChunk[] | undefined) {\n    this._chunks = value;\n  }\n  get docAggs(): RagDocAgg[] | undefined {\n    return this._docAggs;\n  }\n  set docAggs(value: RagDocAgg[] | undefined) {\n    this._docAggs = value;\n  }\n  get total(): number {\n    return this._total;\n  }\n  set total(value: number) {\n    this._total = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagRetrievalResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagRetrievalResponse.AsObject {\n    return {\n      chunks: (this.chunks || []).map(m => m.toObject()),\n      docAggs: (this.docAggs || []).map(m => m.toObject()),\n      total: this.total,\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagRetrievalResponse.AsProtobufJSON {\n    return {\n      chunks: (this.chunks || []).map(m => m.toProtobufJSON(options)),\n      docAggs: (this.docAggs || []).map(m => m.toProtobufJSON(options)),\n      total: this.total,\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module RagRetrievalResponse {\n  /**\n   * Standard JavaScript object representation for RagRetrievalResponse\n   */\n  export interface AsObject {\n    chunks?: RagChunk.AsObject[];\n    docAggs?: RagDocAgg.AsObject[];\n    total: number;\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagRetrievalResponse\n   */\n  export interface AsProtobufJSON {\n    chunks: RagChunk.AsProtobufJSON[] | null;\n    docAggs: RagDocAgg.AsProtobufJSON[] | null;\n    total: number;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagChunk\n */\nexport class RagChunk implements GrpcMessage {\n  static id = 'ondewo.nlu.RagChunk';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagChunk();\n    RagChunk.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagChunk) {\n    _instance.id = _instance.id || '';\n    _instance.datasetId = _instance.datasetId || '';\n    _instance.documentId = _instance.documentId || '';\n    _instance.content = _instance.content || '';\n    _instance.importantKeywords = _instance.importantKeywords || [];\n    _instance.questions = _instance.questions || [];\n    _instance.imageId = _instance.imageId || '';\n    _instance.positions = _instance.positions || [];\n    _instance.createTime = _instance.createTime || undefined;\n    _instance.documentKeyword = _instance.documentKeyword || '';\n    _instance.similarity = _instance.similarity || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagChunk,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.id = _reader.readString();\n          break;\n        case 2:\n          _instance.datasetId = _reader.readString();\n          break;\n        case 3:\n          _instance.documentId = _reader.readString();\n          break;\n        case 4:\n          _instance.content = _reader.readString();\n          break;\n        case 5:\n          (_instance.importantKeywords =\n            _instance.importantKeywords || []).push(_reader.readString());\n          break;\n        case 6:\n          (_instance.questions = _instance.questions || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          _instance.imageId = _reader.readString();\n          break;\n        case 8:\n          const messageInitializer8 = new googleProtobuf001.ListValue();\n          _reader.readMessage(\n            messageInitializer8,\n            googleProtobuf001.ListValue.deserializeBinaryFromReader\n          );\n          (_instance.positions = _instance.positions || []).push(\n            messageInitializer8\n          );\n          break;\n        case 9:\n          _instance.createTime = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createTime,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.documentKeyword = _reader.readString();\n          break;\n        case 11:\n          _instance.similarity = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagChunk.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: RagChunk, _writer: BinaryWriter) {\n    if (_instance.id) {\n      _writer.writeString(1, _instance.id);\n    }\n    if (_instance.datasetId) {\n      _writer.writeString(2, _instance.datasetId);\n    }\n    if (_instance.documentId) {\n      _writer.writeString(3, _instance.documentId);\n    }\n    if (_instance.content) {\n      _writer.writeString(4, _instance.content);\n    }\n    if (_instance.importantKeywords && _instance.importantKeywords.length) {\n      _writer.writeRepeatedString(5, _instance.importantKeywords);\n    }\n    if (_instance.questions && _instance.questions.length) {\n      _writer.writeRepeatedString(6, _instance.questions);\n    }\n    if (_instance.imageId) {\n      _writer.writeString(7, _instance.imageId);\n    }\n    if (_instance.positions && _instance.positions.length) {\n      _writer.writeRepeatedMessage(\n        8,\n        _instance.positions as any,\n        googleProtobuf001.ListValue.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createTime) {\n      _writer.writeMessage(\n        9,\n        _instance.createTime as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.documentKeyword) {\n      _writer.writeString(10, _instance.documentKeyword);\n    }\n    if (_instance.similarity) {\n      _writer.writeFloat(11, _instance.similarity);\n    }\n  }\n\n  private _id: string;\n  private _datasetId: string;\n  private _documentId: string;\n  private _content: string;\n  private _importantKeywords: string[];\n  private _questions: string[];\n  private _imageId: string;\n  private _positions?: googleProtobuf001.ListValue[];\n  private _createTime?: googleProtobuf002.Timestamp;\n  private _documentKeyword: string;\n  private _similarity: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagChunk to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagChunk.AsObject>) {\n    _value = _value || {};\n    this.id = _value.id;\n    this.datasetId = _value.datasetId;\n    this.documentId = _value.documentId;\n    this.content = _value.content;\n    this.importantKeywords = (_value.importantKeywords || []).slice();\n    this.questions = (_value.questions || []).slice();\n    this.imageId = _value.imageId;\n    this.positions = (_value.positions || []).map(\n      m => new googleProtobuf001.ListValue(m)\n    );\n    this.createTime = _value.createTime\n      ? new googleProtobuf002.Timestamp(_value.createTime)\n      : undefined;\n    this.documentKeyword = _value.documentKeyword;\n    this.similarity = _value.similarity;\n    RagChunk.refineValues(this);\n  }\n  get id(): string {\n    return this._id;\n  }\n  set id(value: string) {\n    this._id = value;\n  }\n  get datasetId(): string {\n    return this._datasetId;\n  }\n  set datasetId(value: string) {\n    this._datasetId = value;\n  }\n  get documentId(): string {\n    return this._documentId;\n  }\n  set documentId(value: string) {\n    this._documentId = value;\n  }\n  get content(): string {\n    return this._content;\n  }\n  set content(value: string) {\n    this._content = value;\n  }\n  get importantKeywords(): string[] {\n    return this._importantKeywords;\n  }\n  set importantKeywords(value: string[]) {\n    this._importantKeywords = value;\n  }\n  get questions(): string[] {\n    return this._questions;\n  }\n  set questions(value: string[]) {\n    this._questions = value;\n  }\n  get imageId(): string {\n    return this._imageId;\n  }\n  set imageId(value: string) {\n    this._imageId = value;\n  }\n  get positions(): googleProtobuf001.ListValue[] | undefined {\n    return this._positions;\n  }\n  set positions(value: googleProtobuf001.ListValue[] | undefined) {\n    this._positions = value;\n  }\n  get createTime(): googleProtobuf002.Timestamp | undefined {\n    return this._createTime;\n  }\n  set createTime(value: googleProtobuf002.Timestamp | undefined) {\n    this._createTime = value;\n  }\n  get documentKeyword(): string {\n    return this._documentKeyword;\n  }\n  set documentKeyword(value: string) {\n    this._documentKeyword = value;\n  }\n  get similarity(): number {\n    return this._similarity;\n  }\n  set similarity(value: number) {\n    this._similarity = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagChunk.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagChunk.AsObject {\n    return {\n      id: this.id,\n      datasetId: this.datasetId,\n      documentId: this.documentId,\n      content: this.content,\n      importantKeywords: (this.importantKeywords || []).slice(),\n      questions: (this.questions || []).slice(),\n      imageId: this.imageId,\n      positions: (this.positions || []).map(m => m.toObject()),\n      createTime: this.createTime ? this.createTime.toObject() : undefined,\n      documentKeyword: this.documentKeyword,\n      similarity: this.similarity\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagChunk.AsProtobufJSON {\n    return {\n      id: this.id,\n      datasetId: this.datasetId,\n      documentId: this.documentId,\n      content: this.content,\n      importantKeywords: (this.importantKeywords || []).slice(),\n      questions: (this.questions || []).slice(),\n      imageId: this.imageId,\n      positions: (this.positions || []).map(m => m.toProtobufJSON(options)),\n      createTime: this.createTime\n        ? this.createTime.toProtobufJSON(options)\n        : null,\n      documentKeyword: this.documentKeyword,\n      similarity: this.similarity\n    };\n  }\n}\nexport module RagChunk {\n  /**\n   * Standard JavaScript object representation for RagChunk\n   */\n  export interface AsObject {\n    id: string;\n    datasetId: string;\n    documentId: string;\n    content: string;\n    importantKeywords: string[];\n    questions: string[];\n    imageId: string;\n    positions?: googleProtobuf001.ListValue.AsObject[];\n    createTime?: googleProtobuf002.Timestamp.AsObject;\n    documentKeyword: string;\n    similarity: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RagChunk\n   */\n  export interface AsProtobufJSON {\n    id: string;\n    datasetId: string;\n    documentId: string;\n    content: string;\n    importantKeywords: string[];\n    questions: string[];\n    imageId: string;\n    positions: googleProtobuf001.ListValue.AsProtobufJSON[] | null;\n    createTime: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    documentKeyword: string;\n    similarity: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDocAgg\n */\nexport class RagDocAgg implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDocAgg';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDocAgg();\n    RagDocAgg.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDocAgg) {\n    _instance.docName = _instance.docName || '';\n    _instance.docId = _instance.docId || '';\n    _instance.count = _instance.count || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDocAgg,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.docName = _reader.readString();\n          break;\n        case 2:\n          _instance.docId = _reader.readString();\n          break;\n        case 3:\n          _instance.count = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDocAgg.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: RagDocAgg, _writer: BinaryWriter) {\n    if (_instance.docName) {\n      _writer.writeString(1, _instance.docName);\n    }\n    if (_instance.docId) {\n      _writer.writeString(2, _instance.docId);\n    }\n    if (_instance.count) {\n      _writer.writeInt32(3, _instance.count);\n    }\n  }\n\n  private _docName: string;\n  private _docId: string;\n  private _count: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDocAgg to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDocAgg.AsObject>) {\n    _value = _value || {};\n    this.docName = _value.docName;\n    this.docId = _value.docId;\n    this.count = _value.count;\n    RagDocAgg.refineValues(this);\n  }\n  get docName(): string {\n    return this._docName;\n  }\n  set docName(value: string) {\n    this._docName = value;\n  }\n  get docId(): string {\n    return this._docId;\n  }\n  set docId(value: string) {\n    this._docId = value;\n  }\n  get count(): number {\n    return this._count;\n  }\n  set count(value: number) {\n    this._count = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDocAgg.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDocAgg.AsObject {\n    return {\n      docName: this.docName,\n      docId: this.docId,\n      count: this.count\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDocAgg.AsProtobufJSON {\n    return {\n      docName: this.docName,\n      docId: this.docId,\n      count: this.count\n    };\n  }\n}\nexport module RagDocAgg {\n  /**\n   * Standard JavaScript object representation for RagDocAgg\n   */\n  export interface AsObject {\n    docName: string;\n    docId: string;\n    count: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDocAgg\n   */\n  export interface AsProtobufJSON {\n    docName: string;\n    docId: string;\n    count: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCreateCrawlerRequest\n */\nexport class RagCreateCrawlerRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCreateCrawlerRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCreateCrawlerRequest();\n    RagCreateCrawlerRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCreateCrawlerRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawler = _instance.crawler || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCreateCrawlerRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.crawler = new RagCrawler();\n          _reader.readMessage(\n            _instance.crawler,\n            RagCrawler.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCreateCrawlerRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCreateCrawlerRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawler) {\n      _writer.writeMessage(\n        3,\n        _instance.crawler as any,\n        RagCrawler.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawler?: RagCrawler;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCreateCrawlerRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCreateCrawlerRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawler = _value.crawler ? new RagCrawler(_value.crawler) : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagCreateCrawlerRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawler(): RagCrawler | undefined {\n    return this._crawler;\n  }\n  set crawler(value: RagCrawler | undefined) {\n    this._crawler = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCreateCrawlerRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCreateCrawlerRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawler: this.crawler ? this.crawler.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCreateCrawlerRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawler: this.crawler ? this.crawler.toProtobufJSON(options) : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagCreateCrawlerRequest {\n  /**\n   * Standard JavaScript object representation for RagCreateCrawlerRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawler?: RagCrawler.AsObject;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCreateCrawlerRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawler: RagCrawler.AsProtobufJSON | null;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteCrawlerRequest\n */\nexport class RagDeleteCrawlerRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteCrawlerRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteCrawlerRequest();\n    RagDeleteCrawlerRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteCrawlerRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteCrawlerRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteCrawlerRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteCrawlerRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteCrawlerRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDeleteCrawlerRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    RagDeleteCrawlerRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteCrawlerRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteCrawlerRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteCrawlerRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode\n    };\n  }\n}\nexport module RagDeleteCrawlerRequest {\n  /**\n   * Standard JavaScript object representation for RagDeleteCrawlerRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteCrawlerRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteCrawlerResponse\n */\nexport class RagDeleteCrawlerResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteCrawlerResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteCrawlerResponse();\n    RagDeleteCrawlerResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteCrawlerResponse) {\n    _instance.name = _instance.name || '';\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteCrawlerResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteCrawlerResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteCrawlerResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _name: string;\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteCrawlerResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDeleteCrawlerResponse.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.errorMessage = _value.errorMessage;\n    RagDeleteCrawlerResponse.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteCrawlerResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteCrawlerResponse.AsObject {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteCrawlerResponse.AsProtobufJSON {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module RagDeleteCrawlerResponse {\n  /**\n   * Standard JavaScript object representation for RagDeleteCrawlerResponse\n   */\n  export interface AsObject {\n    name: string;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteCrawlerResponse\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteCrawlersRequest\n */\nexport class RagDeleteCrawlersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteCrawlersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteCrawlersRequest();\n    RagDeleteCrawlersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteCrawlersRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.names = _instance.names || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteCrawlersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          (_instance.names = _instance.names || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteCrawlersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteCrawlersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.names && _instance.names.length) {\n      _writer.writeRepeatedString(3, _instance.names);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _names: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteCrawlersRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDeleteCrawlersRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.names = (_value.names || []).slice();\n    RagDeleteCrawlersRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get names(): string[] {\n    return this._names;\n  }\n  set names(value: string[]) {\n    this._names = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteCrawlersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteCrawlersRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      names: (this.names || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteCrawlersRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      names: (this.names || []).slice()\n    };\n  }\n}\nexport module RagDeleteCrawlersRequest {\n  /**\n   * Standard JavaScript object representation for RagDeleteCrawlersRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    names: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteCrawlersRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    names: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteCrawlersResponse\n */\nexport class RagDeleteCrawlersResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteCrawlersResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteCrawlersResponse();\n    RagDeleteCrawlersResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteCrawlersResponse) {\n    _instance.deleteCrawlerResponses = _instance.deleteCrawlerResponses || [];\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteCrawlersResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RagDeleteCrawlerResponse();\n          _reader.readMessage(\n            messageInitializer1,\n            RagDeleteCrawlerResponse.deserializeBinaryFromReader\n          );\n          (_instance.deleteCrawlerResponses =\n            _instance.deleteCrawlerResponses || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteCrawlersResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteCrawlersResponse,\n    _writer: BinaryWriter\n  ) {\n    if (\n      _instance.deleteCrawlerResponses &&\n      _instance.deleteCrawlerResponses.length\n    ) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.deleteCrawlerResponses as any,\n        RagDeleteCrawlerResponse.serializeBinaryToWriter\n      );\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _deleteCrawlerResponses?: RagDeleteCrawlerResponse[];\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteCrawlersResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDeleteCrawlersResponse.AsObject>) {\n    _value = _value || {};\n    this.deleteCrawlerResponses = (_value.deleteCrawlerResponses || []).map(\n      m => new RagDeleteCrawlerResponse(m)\n    );\n    this.errorMessage = _value.errorMessage;\n    RagDeleteCrawlersResponse.refineValues(this);\n  }\n  get deleteCrawlerResponses(): RagDeleteCrawlerResponse[] | undefined {\n    return this._deleteCrawlerResponses;\n  }\n  set deleteCrawlerResponses(value: RagDeleteCrawlerResponse[] | undefined) {\n    this._deleteCrawlerResponses = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteCrawlersResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteCrawlersResponse.AsObject {\n    return {\n      deleteCrawlerResponses: (this.deleteCrawlerResponses || []).map(m =>\n        m.toObject()\n      ),\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteCrawlersResponse.AsProtobufJSON {\n    return {\n      deleteCrawlerResponses: (this.deleteCrawlerResponses || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module RagDeleteCrawlersResponse {\n  /**\n   * Standard JavaScript object representation for RagDeleteCrawlersResponse\n   */\n  export interface AsObject {\n    deleteCrawlerResponses?: RagDeleteCrawlerResponse.AsObject[];\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteCrawlersResponse\n   */\n  export interface AsProtobufJSON {\n    deleteCrawlerResponses: RagDeleteCrawlerResponse.AsProtobufJSON[] | null;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagListCrawlersRequest\n */\nexport class RagListCrawlersRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagListCrawlersRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagListCrawlersRequest();\n    RagListCrawlersRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagListCrawlersRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.datasetName = _instance.datasetName || '';\n    _instance.crawlerName = _instance.crawlerName || '';\n    _instance.orderby = _instance.orderby || '';\n    _instance.sortingMode = _instance.sortingMode || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagListCrawlersRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 4:\n          _instance.datasetName = _reader.readString();\n          break;\n        case 5:\n          _instance.crawlerName = _reader.readString();\n          break;\n        case 6:\n          _instance.orderby = _reader.readString();\n          break;\n        case 7:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        case 8:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagListCrawlersRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagListCrawlersRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n    if (_instance.datasetName) {\n      _writer.writeString(4, _instance.datasetName);\n    }\n    if (_instance.crawlerName) {\n      _writer.writeString(5, _instance.crawlerName);\n    }\n    if (_instance.orderby) {\n      _writer.writeString(6, _instance.orderby);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(7, _instance.sortingMode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        8,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _pageToken: string;\n  private _datasetName: string;\n  private _crawlerName: string;\n  private _orderby: string;\n  private _sortingMode: ondewoNlu008.SortingMode;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagListCrawlersRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagListCrawlersRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.pageToken = _value.pageToken;\n    this.datasetName = _value.datasetName;\n    this.crawlerName = _value.crawlerName;\n    this.orderby = _value.orderby;\n    this.sortingMode = _value.sortingMode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagListCrawlersRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get datasetName(): string {\n    return this._datasetName;\n  }\n  set datasetName(value: string) {\n    this._datasetName = value;\n  }\n  get crawlerName(): string {\n    return this._crawlerName;\n  }\n  set crawlerName(value: string) {\n    this._crawlerName = value;\n  }\n  get orderby(): string {\n    return this._orderby;\n  }\n  set orderby(value: string) {\n    this._orderby = value;\n  }\n  get sortingMode(): ondewoNlu008.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu008.SortingMode) {\n    this._sortingMode = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagListCrawlersRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagListCrawlersRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      datasetName: this.datasetName,\n      crawlerName: this.crawlerName,\n      orderby: this.orderby,\n      sortingMode: this.sortingMode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagListCrawlersRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      pageToken: this.pageToken,\n      datasetName: this.datasetName,\n      crawlerName: this.crawlerName,\n      orderby: this.orderby,\n      sortingMode:\n        ondewoNlu008.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagListCrawlersRequest {\n  /**\n   * Standard JavaScript object representation for RagListCrawlersRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    pageToken: string;\n    datasetName: string;\n    crawlerName: string;\n    orderby: string;\n    sortingMode: ondewoNlu008.SortingMode;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagListCrawlersRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    pageToken: string;\n    datasetName: string;\n    crawlerName: string;\n    orderby: string;\n    sortingMode: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagListCrawlersResponse\n */\nexport class RagListCrawlersResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagListCrawlersResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagListCrawlersResponse();\n    RagListCrawlersResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagListCrawlersResponse) {\n    _instance.crawlers = _instance.crawlers || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagListCrawlersResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RagCrawler();\n          _reader.readMessage(\n            messageInitializer1,\n            RagCrawler.deserializeBinaryFromReader\n          );\n          (_instance.crawlers = _instance.crawlers || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagListCrawlersResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagListCrawlersResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.crawlers && _instance.crawlers.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.crawlers as any,\n        RagCrawler.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _crawlers?: RagCrawler[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagListCrawlersResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagListCrawlersResponse.AsObject>) {\n    _value = _value || {};\n    this.crawlers = (_value.crawlers || []).map(m => new RagCrawler(m));\n    this.nextPageToken = _value.nextPageToken;\n    RagListCrawlersResponse.refineValues(this);\n  }\n  get crawlers(): RagCrawler[] | undefined {\n    return this._crawlers;\n  }\n  set crawlers(value: RagCrawler[] | undefined) {\n    this._crawlers = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagListCrawlersResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagListCrawlersResponse.AsObject {\n    return {\n      crawlers: (this.crawlers || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagListCrawlersResponse.AsProtobufJSON {\n    return {\n      crawlers: (this.crawlers || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module RagListCrawlersResponse {\n  /**\n   * Standard JavaScript object representation for RagListCrawlersResponse\n   */\n  export interface AsObject {\n    crawlers?: RagCrawler.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagListCrawlersResponse\n   */\n  export interface AsProtobufJSON {\n    crawlers: RagCrawler.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerRequest\n */\nexport class RagGetCrawlerRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerRequest();\n    RagGetCrawlerRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerRequest) {\n    _instance.name = _instance.name || '';\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        4,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _parent: string;\n  private _languageCode: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagGetCrawlerRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagGetCrawlerRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerRequest.AsObject {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerRequest.AsProtobufJSON {\n    return {\n      name: this.name,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagGetCrawlerRequest {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerRequest\n   */\n  export interface AsObject {\n    name: string;\n    parent: string;\n    languageCode: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    parent: string;\n    languageCode: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagUpdateCrawlerRequest\n */\nexport class RagUpdateCrawlerRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagUpdateCrawlerRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagUpdateCrawlerRequest();\n    RagUpdateCrawlerRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagUpdateCrawlerRequest) {\n    _instance.crawler = _instance.crawler || undefined;\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.updateMask = _instance.updateMask || undefined;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagUpdateCrawlerRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.crawler = new RagCrawler();\n          _reader.readMessage(\n            _instance.crawler,\n            RagCrawler.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.parent = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.updateMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagUpdateCrawlerRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagUpdateCrawlerRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.crawler) {\n      _writer.writeMessage(\n        1,\n        _instance.crawler as any,\n        RagCrawler.serializeBinaryToWriter\n      );\n    }\n    if (_instance.parent) {\n      _writer.writeString(2, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        4,\n        _instance.updateMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        5,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _crawler?: RagCrawler;\n  private _parent: string;\n  private _languageCode: string;\n  private _updateMask?: googleProtobuf000.FieldMask;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagUpdateCrawlerRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagUpdateCrawlerRequest.AsObject>) {\n    _value = _value || {};\n    this.crawler = _value.crawler ? new RagCrawler(_value.crawler) : undefined;\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf000.FieldMask(_value.updateMask)\n      : undefined;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagUpdateCrawlerRequest.refineValues(this);\n  }\n  get crawler(): RagCrawler | undefined {\n    return this._crawler;\n  }\n  set crawler(value: RagCrawler | undefined) {\n    this._crawler = value;\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get updateMask(): googleProtobuf000.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagUpdateCrawlerRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagUpdateCrawlerRequest.AsObject {\n    return {\n      crawler: this.crawler ? this.crawler.toObject() : undefined,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagUpdateCrawlerRequest.AsProtobufJSON {\n    return {\n      crawler: this.crawler ? this.crawler.toProtobufJSON(options) : null,\n      parent: this.parent,\n      languageCode: this.languageCode,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagUpdateCrawlerRequest {\n  /**\n   * Standard JavaScript object representation for RagUpdateCrawlerRequest\n   */\n  export interface AsObject {\n    crawler?: RagCrawler.AsObject;\n    parent: string;\n    languageCode: string;\n    updateMask?: googleProtobuf000.FieldMask.AsObject;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagUpdateCrawlerRequest\n   */\n  export interface AsProtobufJSON {\n    crawler: RagCrawler.AsProtobufJSON | null;\n    parent: string;\n    languageCode: string;\n    updateMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawler\n */\nexport class RagCrawler implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawler';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawler();\n    RagCrawler.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawler) {\n    _instance.name = _instance.name || '';\n    _instance.displayName = _instance.displayName || '';\n    _instance.createdAt = _instance.createdAt || undefined;\n    _instance.modifiedAt = _instance.modifiedAt || undefined;\n    _instance.createdBy = _instance.createdBy || '';\n    _instance.modifiedBy = _instance.modifiedBy || '';\n    _instance.crawlerSources = _instance.crawlerSources || undefined;\n    _instance.crawlerSeedUrlFilters =\n      _instance.crawlerSeedUrlFilters || undefined;\n    _instance.crawlerAuth = _instance.crawlerAuth || undefined;\n    _instance.crawlerBrowserConfig =\n      _instance.crawlerBrowserConfig || undefined;\n    _instance.crawlerConfig = _instance.crawlerConfig || undefined;\n    _instance.retryConfig = _instance.retryConfig || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawler,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.displayName = _reader.readString();\n          break;\n        case 3:\n          _instance.createdAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.createdAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.modifiedAt = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.modifiedAt,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          _instance.createdBy = _reader.readString();\n          break;\n        case 6:\n          _instance.modifiedBy = _reader.readString();\n          break;\n        case 7:\n          _instance.crawlerSources = new RagCrawlerSources();\n          _reader.readMessage(\n            _instance.crawlerSources,\n            RagCrawlerSources.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.crawlerSeedUrlFilters = new RagCrawlerSeedUrlFilters();\n          _reader.readMessage(\n            _instance.crawlerSeedUrlFilters,\n            RagCrawlerSeedUrlFilters.deserializeBinaryFromReader\n          );\n          break;\n        case 9:\n          _instance.crawlerAuth = new RagCrawlerAuth();\n          _reader.readMessage(\n            _instance.crawlerAuth,\n            RagCrawlerAuth.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.crawlerBrowserConfig = new RagCrawlerBrowserConfig();\n          _reader.readMessage(\n            _instance.crawlerBrowserConfig,\n            RagCrawlerBrowserConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.crawlerConfig = new RagCrawlerConfig();\n          _reader.readMessage(\n            _instance.crawlerConfig,\n            RagCrawlerConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 12:\n          _instance.retryConfig = new RagCrawlerRetryConfig();\n          _reader.readMessage(\n            _instance.retryConfig,\n            RagCrawlerRetryConfig.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawler.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: RagCrawler, _writer: BinaryWriter) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.displayName) {\n      _writer.writeString(2, _instance.displayName);\n    }\n    if (_instance.createdAt) {\n      _writer.writeMessage(\n        3,\n        _instance.createdAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.modifiedAt) {\n      _writer.writeMessage(\n        4,\n        _instance.modifiedAt as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.createdBy) {\n      _writer.writeString(5, _instance.createdBy);\n    }\n    if (_instance.modifiedBy) {\n      _writer.writeString(6, _instance.modifiedBy);\n    }\n    if (_instance.crawlerSources) {\n      _writer.writeMessage(\n        7,\n        _instance.crawlerSources as any,\n        RagCrawlerSources.serializeBinaryToWriter\n      );\n    }\n    if (_instance.crawlerSeedUrlFilters) {\n      _writer.writeMessage(\n        8,\n        _instance.crawlerSeedUrlFilters as any,\n        RagCrawlerSeedUrlFilters.serializeBinaryToWriter\n      );\n    }\n    if (_instance.crawlerAuth) {\n      _writer.writeMessage(\n        9,\n        _instance.crawlerAuth as any,\n        RagCrawlerAuth.serializeBinaryToWriter\n      );\n    }\n    if (_instance.crawlerBrowserConfig) {\n      _writer.writeMessage(\n        10,\n        _instance.crawlerBrowserConfig as any,\n        RagCrawlerBrowserConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.crawlerConfig) {\n      _writer.writeMessage(\n        11,\n        _instance.crawlerConfig as any,\n        RagCrawlerConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.retryConfig) {\n      _writer.writeMessage(\n        12,\n        _instance.retryConfig as any,\n        RagCrawlerRetryConfig.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _displayName: string;\n  private _createdAt?: googleProtobuf002.Timestamp;\n  private _modifiedAt?: googleProtobuf002.Timestamp;\n  private _createdBy: string;\n  private _modifiedBy: string;\n  private _crawlerSources?: RagCrawlerSources;\n  private _crawlerSeedUrlFilters?: RagCrawlerSeedUrlFilters;\n  private _crawlerAuth?: RagCrawlerAuth;\n  private _crawlerBrowserConfig?: RagCrawlerBrowserConfig;\n  private _crawlerConfig?: RagCrawlerConfig;\n  private _retryConfig?: RagCrawlerRetryConfig;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawler to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawler.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.displayName = _value.displayName;\n    this.createdAt = _value.createdAt\n      ? new googleProtobuf002.Timestamp(_value.createdAt)\n      : undefined;\n    this.modifiedAt = _value.modifiedAt\n      ? new googleProtobuf002.Timestamp(_value.modifiedAt)\n      : undefined;\n    this.createdBy = _value.createdBy;\n    this.modifiedBy = _value.modifiedBy;\n    this.crawlerSources = _value.crawlerSources\n      ? new RagCrawlerSources(_value.crawlerSources)\n      : undefined;\n    this.crawlerSeedUrlFilters = _value.crawlerSeedUrlFilters\n      ? new RagCrawlerSeedUrlFilters(_value.crawlerSeedUrlFilters)\n      : undefined;\n    this.crawlerAuth = _value.crawlerAuth\n      ? new RagCrawlerAuth(_value.crawlerAuth)\n      : undefined;\n    this.crawlerBrowserConfig = _value.crawlerBrowserConfig\n      ? new RagCrawlerBrowserConfig(_value.crawlerBrowserConfig)\n      : undefined;\n    this.crawlerConfig = _value.crawlerConfig\n      ? new RagCrawlerConfig(_value.crawlerConfig)\n      : undefined;\n    this.retryConfig = _value.retryConfig\n      ? new RagCrawlerRetryConfig(_value.retryConfig)\n      : undefined;\n    RagCrawler.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get displayName(): string {\n    return this._displayName;\n  }\n  set displayName(value: string) {\n    this._displayName = value;\n  }\n  get createdAt(): googleProtobuf002.Timestamp | undefined {\n    return this._createdAt;\n  }\n  set createdAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._createdAt = value;\n  }\n  get modifiedAt(): googleProtobuf002.Timestamp | undefined {\n    return this._modifiedAt;\n  }\n  set modifiedAt(value: googleProtobuf002.Timestamp | undefined) {\n    this._modifiedAt = value;\n  }\n  get createdBy(): string {\n    return this._createdBy;\n  }\n  set createdBy(value: string) {\n    this._createdBy = value;\n  }\n  get modifiedBy(): string {\n    return this._modifiedBy;\n  }\n  set modifiedBy(value: string) {\n    this._modifiedBy = value;\n  }\n  get crawlerSources(): RagCrawlerSources | undefined {\n    return this._crawlerSources;\n  }\n  set crawlerSources(value: RagCrawlerSources | undefined) {\n    this._crawlerSources = value;\n  }\n  get crawlerSeedUrlFilters(): RagCrawlerSeedUrlFilters | undefined {\n    return this._crawlerSeedUrlFilters;\n  }\n  set crawlerSeedUrlFilters(value: RagCrawlerSeedUrlFilters | undefined) {\n    this._crawlerSeedUrlFilters = value;\n  }\n  get crawlerAuth(): RagCrawlerAuth | undefined {\n    return this._crawlerAuth;\n  }\n  set crawlerAuth(value: RagCrawlerAuth | undefined) {\n    this._crawlerAuth = value;\n  }\n  get crawlerBrowserConfig(): RagCrawlerBrowserConfig | undefined {\n    return this._crawlerBrowserConfig;\n  }\n  set crawlerBrowserConfig(value: RagCrawlerBrowserConfig | undefined) {\n    this._crawlerBrowserConfig = value;\n  }\n  get crawlerConfig(): RagCrawlerConfig | undefined {\n    return this._crawlerConfig;\n  }\n  set crawlerConfig(value: RagCrawlerConfig | undefined) {\n    this._crawlerConfig = value;\n  }\n  get retryConfig(): RagCrawlerRetryConfig | undefined {\n    return this._retryConfig;\n  }\n  set retryConfig(value: RagCrawlerRetryConfig | undefined) {\n    this._retryConfig = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawler.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawler.AsObject {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      createdAt: this.createdAt ? this.createdAt.toObject() : undefined,\n      modifiedAt: this.modifiedAt ? this.modifiedAt.toObject() : undefined,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      crawlerSources: this.crawlerSources\n        ? this.crawlerSources.toObject()\n        : undefined,\n      crawlerSeedUrlFilters: this.crawlerSeedUrlFilters\n        ? this.crawlerSeedUrlFilters.toObject()\n        : undefined,\n      crawlerAuth: this.crawlerAuth ? this.crawlerAuth.toObject() : undefined,\n      crawlerBrowserConfig: this.crawlerBrowserConfig\n        ? this.crawlerBrowserConfig.toObject()\n        : undefined,\n      crawlerConfig: this.crawlerConfig\n        ? this.crawlerConfig.toObject()\n        : undefined,\n      retryConfig: this.retryConfig ? this.retryConfig.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawler.AsProtobufJSON {\n    return {\n      name: this.name,\n      displayName: this.displayName,\n      createdAt: this.createdAt ? this.createdAt.toProtobufJSON(options) : null,\n      modifiedAt: this.modifiedAt\n        ? this.modifiedAt.toProtobufJSON(options)\n        : null,\n      createdBy: this.createdBy,\n      modifiedBy: this.modifiedBy,\n      crawlerSources: this.crawlerSources\n        ? this.crawlerSources.toProtobufJSON(options)\n        : null,\n      crawlerSeedUrlFilters: this.crawlerSeedUrlFilters\n        ? this.crawlerSeedUrlFilters.toProtobufJSON(options)\n        : null,\n      crawlerAuth: this.crawlerAuth\n        ? this.crawlerAuth.toProtobufJSON(options)\n        : null,\n      crawlerBrowserConfig: this.crawlerBrowserConfig\n        ? this.crawlerBrowserConfig.toProtobufJSON(options)\n        : null,\n      crawlerConfig: this.crawlerConfig\n        ? this.crawlerConfig.toProtobufJSON(options)\n        : null,\n      retryConfig: this.retryConfig\n        ? this.retryConfig.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module RagCrawler {\n  /**\n   * Standard JavaScript object representation for RagCrawler\n   */\n  export interface AsObject {\n    name: string;\n    displayName: string;\n    createdAt?: googleProtobuf002.Timestamp.AsObject;\n    modifiedAt?: googleProtobuf002.Timestamp.AsObject;\n    createdBy: string;\n    modifiedBy: string;\n    crawlerSources?: RagCrawlerSources.AsObject;\n    crawlerSeedUrlFilters?: RagCrawlerSeedUrlFilters.AsObject;\n    crawlerAuth?: RagCrawlerAuth.AsObject;\n    crawlerBrowserConfig?: RagCrawlerBrowserConfig.AsObject;\n    crawlerConfig?: RagCrawlerConfig.AsObject;\n    retryConfig?: RagCrawlerRetryConfig.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawler\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    displayName: string;\n    createdAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    modifiedAt: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    createdBy: string;\n    modifiedBy: string;\n    crawlerSources: RagCrawlerSources.AsProtobufJSON | null;\n    crawlerSeedUrlFilters: RagCrawlerSeedUrlFilters.AsProtobufJSON | null;\n    crawlerAuth: RagCrawlerAuth.AsProtobufJSON | null;\n    crawlerBrowserConfig: RagCrawlerBrowserConfig.AsProtobufJSON | null;\n    crawlerConfig: RagCrawlerConfig.AsProtobufJSON | null;\n    retryConfig: RagCrawlerRetryConfig.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerSources\n */\nexport class RagCrawlerSources implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerSources';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerSources();\n    RagCrawlerSources.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerSources) {\n    _instance.urls = _instance.urls || [];\n    _instance.sitemaps = _instance.sitemaps || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerSources,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.urls = _instance.urls || []).push(_reader.readString());\n          break;\n        case 2:\n          (_instance.sitemaps = _instance.sitemaps || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerSources.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerSources,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.urls && _instance.urls.length) {\n      _writer.writeRepeatedString(1, _instance.urls);\n    }\n    if (_instance.sitemaps && _instance.sitemaps.length) {\n      _writer.writeRepeatedString(2, _instance.sitemaps);\n    }\n  }\n\n  private _urls: string[];\n  private _sitemaps: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerSources to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerSources.AsObject>) {\n    _value = _value || {};\n    this.urls = (_value.urls || []).slice();\n    this.sitemaps = (_value.sitemaps || []).slice();\n    RagCrawlerSources.refineValues(this);\n  }\n  get urls(): string[] {\n    return this._urls;\n  }\n  set urls(value: string[]) {\n    this._urls = value;\n  }\n  get sitemaps(): string[] {\n    return this._sitemaps;\n  }\n  set sitemaps(value: string[]) {\n    this._sitemaps = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerSources.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerSources.AsObject {\n    return {\n      urls: (this.urls || []).slice(),\n      sitemaps: (this.sitemaps || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerSources.AsProtobufJSON {\n    return {\n      urls: (this.urls || []).slice(),\n      sitemaps: (this.sitemaps || []).slice()\n    };\n  }\n}\nexport module RagCrawlerSources {\n  /**\n   * Standard JavaScript object representation for RagCrawlerSources\n   */\n  export interface AsObject {\n    urls: string[];\n    sitemaps: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerSources\n   */\n  export interface AsProtobufJSON {\n    urls: string[];\n    sitemaps: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerFilters\n */\nexport class RagCrawlerFilters implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerFilters';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerFilters();\n    RagCrawlerFilters.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerFilters) {\n    _instance.allowedDomains = _instance.allowedDomains || [];\n    _instance.disallowedDomains = _instance.disallowedDomains || [];\n    _instance.allowInternalLinks = _instance.allowInternalLinks || false;\n    _instance.allowExternalLinks = _instance.allowExternalLinks || false;\n    _instance.allowSocialMediaLinks = _instance.allowSocialMediaLinks || false;\n    _instance.allowedRegex = _instance.allowedRegex || [];\n    _instance.disallowedRegex = _instance.disallowedRegex || [];\n    _instance.allowedPaths = _instance.allowedPaths || [];\n    _instance.disallowedPaths = _instance.disallowedPaths || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerFilters,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.allowedDomains = _instance.allowedDomains || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          (_instance.disallowedDomains =\n            _instance.disallowedDomains || []).push(_reader.readString());\n          break;\n        case 3:\n          _instance.allowInternalLinks = _reader.readBool();\n          break;\n        case 4:\n          _instance.allowExternalLinks = _reader.readBool();\n          break;\n        case 5:\n          _instance.allowSocialMediaLinks = _reader.readBool();\n          break;\n        case 6:\n          (_instance.allowedRegex = _instance.allowedRegex || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          (_instance.disallowedRegex = _instance.disallowedRegex || []).push(\n            _reader.readString()\n          );\n          break;\n        case 8:\n          (_instance.allowedPaths = _instance.allowedPaths || []).push(\n            _reader.readString()\n          );\n          break;\n        case 9:\n          (_instance.disallowedPaths = _instance.disallowedPaths || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerFilters.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerFilters,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.allowedDomains && _instance.allowedDomains.length) {\n      _writer.writeRepeatedString(1, _instance.allowedDomains);\n    }\n    if (_instance.disallowedDomains && _instance.disallowedDomains.length) {\n      _writer.writeRepeatedString(2, _instance.disallowedDomains);\n    }\n    if (_instance.allowInternalLinks) {\n      _writer.writeBool(3, _instance.allowInternalLinks);\n    }\n    if (_instance.allowExternalLinks) {\n      _writer.writeBool(4, _instance.allowExternalLinks);\n    }\n    if (_instance.allowSocialMediaLinks) {\n      _writer.writeBool(5, _instance.allowSocialMediaLinks);\n    }\n    if (_instance.allowedRegex && _instance.allowedRegex.length) {\n      _writer.writeRepeatedString(6, _instance.allowedRegex);\n    }\n    if (_instance.disallowedRegex && _instance.disallowedRegex.length) {\n      _writer.writeRepeatedString(7, _instance.disallowedRegex);\n    }\n    if (_instance.allowedPaths && _instance.allowedPaths.length) {\n      _writer.writeRepeatedString(8, _instance.allowedPaths);\n    }\n    if (_instance.disallowedPaths && _instance.disallowedPaths.length) {\n      _writer.writeRepeatedString(9, _instance.disallowedPaths);\n    }\n  }\n\n  private _allowedDomains: string[];\n  private _disallowedDomains: string[];\n  private _allowInternalLinks: boolean;\n  private _allowExternalLinks: boolean;\n  private _allowSocialMediaLinks: boolean;\n  private _allowedRegex: string[];\n  private _disallowedRegex: string[];\n  private _allowedPaths: string[];\n  private _disallowedPaths: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerFilters to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerFilters.AsObject>) {\n    _value = _value || {};\n    this.allowedDomains = (_value.allowedDomains || []).slice();\n    this.disallowedDomains = (_value.disallowedDomains || []).slice();\n    this.allowInternalLinks = _value.allowInternalLinks;\n    this.allowExternalLinks = _value.allowExternalLinks;\n    this.allowSocialMediaLinks = _value.allowSocialMediaLinks;\n    this.allowedRegex = (_value.allowedRegex || []).slice();\n    this.disallowedRegex = (_value.disallowedRegex || []).slice();\n    this.allowedPaths = (_value.allowedPaths || []).slice();\n    this.disallowedPaths = (_value.disallowedPaths || []).slice();\n    RagCrawlerFilters.refineValues(this);\n  }\n  get allowedDomains(): string[] {\n    return this._allowedDomains;\n  }\n  set allowedDomains(value: string[]) {\n    this._allowedDomains = value;\n  }\n  get disallowedDomains(): string[] {\n    return this._disallowedDomains;\n  }\n  set disallowedDomains(value: string[]) {\n    this._disallowedDomains = value;\n  }\n  get allowInternalLinks(): boolean {\n    return this._allowInternalLinks;\n  }\n  set allowInternalLinks(value: boolean) {\n    this._allowInternalLinks = value;\n  }\n  get allowExternalLinks(): boolean {\n    return this._allowExternalLinks;\n  }\n  set allowExternalLinks(value: boolean) {\n    this._allowExternalLinks = value;\n  }\n  get allowSocialMediaLinks(): boolean {\n    return this._allowSocialMediaLinks;\n  }\n  set allowSocialMediaLinks(value: boolean) {\n    this._allowSocialMediaLinks = value;\n  }\n  get allowedRegex(): string[] {\n    return this._allowedRegex;\n  }\n  set allowedRegex(value: string[]) {\n    this._allowedRegex = value;\n  }\n  get disallowedRegex(): string[] {\n    return this._disallowedRegex;\n  }\n  set disallowedRegex(value: string[]) {\n    this._disallowedRegex = value;\n  }\n  get allowedPaths(): string[] {\n    return this._allowedPaths;\n  }\n  set allowedPaths(value: string[]) {\n    this._allowedPaths = value;\n  }\n  get disallowedPaths(): string[] {\n    return this._disallowedPaths;\n  }\n  set disallowedPaths(value: string[]) {\n    this._disallowedPaths = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerFilters.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerFilters.AsObject {\n    return {\n      allowedDomains: (this.allowedDomains || []).slice(),\n      disallowedDomains: (this.disallowedDomains || []).slice(),\n      allowInternalLinks: this.allowInternalLinks,\n      allowExternalLinks: this.allowExternalLinks,\n      allowSocialMediaLinks: this.allowSocialMediaLinks,\n      allowedRegex: (this.allowedRegex || []).slice(),\n      disallowedRegex: (this.disallowedRegex || []).slice(),\n      allowedPaths: (this.allowedPaths || []).slice(),\n      disallowedPaths: (this.disallowedPaths || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerFilters.AsProtobufJSON {\n    return {\n      allowedDomains: (this.allowedDomains || []).slice(),\n      disallowedDomains: (this.disallowedDomains || []).slice(),\n      allowInternalLinks: this.allowInternalLinks,\n      allowExternalLinks: this.allowExternalLinks,\n      allowSocialMediaLinks: this.allowSocialMediaLinks,\n      allowedRegex: (this.allowedRegex || []).slice(),\n      disallowedRegex: (this.disallowedRegex || []).slice(),\n      allowedPaths: (this.allowedPaths || []).slice(),\n      disallowedPaths: (this.disallowedPaths || []).slice()\n    };\n  }\n}\nexport module RagCrawlerFilters {\n  /**\n   * Standard JavaScript object representation for RagCrawlerFilters\n   */\n  export interface AsObject {\n    allowedDomains: string[];\n    disallowedDomains: string[];\n    allowInternalLinks: boolean;\n    allowExternalLinks: boolean;\n    allowSocialMediaLinks: boolean;\n    allowedRegex: string[];\n    disallowedRegex: string[];\n    allowedPaths: string[];\n    disallowedPaths: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerFilters\n   */\n  export interface AsProtobufJSON {\n    allowedDomains: string[];\n    disallowedDomains: string[];\n    allowInternalLinks: boolean;\n    allowExternalLinks: boolean;\n    allowSocialMediaLinks: boolean;\n    allowedRegex: string[];\n    disallowedRegex: string[];\n    allowedPaths: string[];\n    disallowedPaths: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerSeedUrlFilters\n */\nexport class RagCrawlerSeedUrlFilters implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerSeedUrlFilters';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerSeedUrlFilters();\n    RagCrawlerSeedUrlFilters.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerSeedUrlFilters) {\n    _instance.allowedRegex = _instance.allowedRegex || [];\n    _instance.disallowedRegex = _instance.disallowedRegex || [];\n    _instance.allowedDomains = _instance.allowedDomains || [];\n    _instance.disallowedDomains = _instance.disallowedDomains || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerSeedUrlFilters,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.allowedRegex = _instance.allowedRegex || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          (_instance.disallowedRegex = _instance.disallowedRegex || []).push(\n            _reader.readString()\n          );\n          break;\n        case 3:\n          (_instance.allowedDomains = _instance.allowedDomains || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          (_instance.disallowedDomains =\n            _instance.disallowedDomains || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerSeedUrlFilters.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerSeedUrlFilters,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.allowedRegex && _instance.allowedRegex.length) {\n      _writer.writeRepeatedString(1, _instance.allowedRegex);\n    }\n    if (_instance.disallowedRegex && _instance.disallowedRegex.length) {\n      _writer.writeRepeatedString(2, _instance.disallowedRegex);\n    }\n    if (_instance.allowedDomains && _instance.allowedDomains.length) {\n      _writer.writeRepeatedString(3, _instance.allowedDomains);\n    }\n    if (_instance.disallowedDomains && _instance.disallowedDomains.length) {\n      _writer.writeRepeatedString(4, _instance.disallowedDomains);\n    }\n  }\n\n  private _allowedRegex: string[];\n  private _disallowedRegex: string[];\n  private _allowedDomains: string[];\n  private _disallowedDomains: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerSeedUrlFilters to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerSeedUrlFilters.AsObject>) {\n    _value = _value || {};\n    this.allowedRegex = (_value.allowedRegex || []).slice();\n    this.disallowedRegex = (_value.disallowedRegex || []).slice();\n    this.allowedDomains = (_value.allowedDomains || []).slice();\n    this.disallowedDomains = (_value.disallowedDomains || []).slice();\n    RagCrawlerSeedUrlFilters.refineValues(this);\n  }\n  get allowedRegex(): string[] {\n    return this._allowedRegex;\n  }\n  set allowedRegex(value: string[]) {\n    this._allowedRegex = value;\n  }\n  get disallowedRegex(): string[] {\n    return this._disallowedRegex;\n  }\n  set disallowedRegex(value: string[]) {\n    this._disallowedRegex = value;\n  }\n  get allowedDomains(): string[] {\n    return this._allowedDomains;\n  }\n  set allowedDomains(value: string[]) {\n    this._allowedDomains = value;\n  }\n  get disallowedDomains(): string[] {\n    return this._disallowedDomains;\n  }\n  set disallowedDomains(value: string[]) {\n    this._disallowedDomains = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerSeedUrlFilters.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerSeedUrlFilters.AsObject {\n    return {\n      allowedRegex: (this.allowedRegex || []).slice(),\n      disallowedRegex: (this.disallowedRegex || []).slice(),\n      allowedDomains: (this.allowedDomains || []).slice(),\n      disallowedDomains: (this.disallowedDomains || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerSeedUrlFilters.AsProtobufJSON {\n    return {\n      allowedRegex: (this.allowedRegex || []).slice(),\n      disallowedRegex: (this.disallowedRegex || []).slice(),\n      allowedDomains: (this.allowedDomains || []).slice(),\n      disallowedDomains: (this.disallowedDomains || []).slice()\n    };\n  }\n}\nexport module RagCrawlerSeedUrlFilters {\n  /**\n   * Standard JavaScript object representation for RagCrawlerSeedUrlFilters\n   */\n  export interface AsObject {\n    allowedRegex: string[];\n    disallowedRegex: string[];\n    allowedDomains: string[];\n    disallowedDomains: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerSeedUrlFilters\n   */\n  export interface AsProtobufJSON {\n    allowedRegex: string[];\n    disallowedRegex: string[];\n    allowedDomains: string[];\n    disallowedDomains: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerAuth\n */\nexport class RagCrawlerAuth implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerAuth';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerAuth();\n    RagCrawlerAuth.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerAuth) {\n    _instance.httpAuth = _instance.httpAuth || undefined;\n    _instance.htmlAuth = _instance.htmlAuth || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerAuth,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.httpAuth = new RagCrawlerHttpAuth();\n          _reader.readMessage(\n            _instance.httpAuth,\n            RagCrawlerHttpAuth.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.htmlAuth = new RagCrawlerHtmlAuth();\n          _reader.readMessage(\n            _instance.htmlAuth,\n            RagCrawlerHtmlAuth.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerAuth.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerAuth,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.httpAuth) {\n      _writer.writeMessage(\n        1,\n        _instance.httpAuth as any,\n        RagCrawlerHttpAuth.serializeBinaryToWriter\n      );\n    }\n    if (_instance.htmlAuth) {\n      _writer.writeMessage(\n        2,\n        _instance.htmlAuth as any,\n        RagCrawlerHtmlAuth.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _httpAuth?: RagCrawlerHttpAuth;\n  private _htmlAuth?: RagCrawlerHtmlAuth;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerAuth to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerAuth.AsObject>) {\n    _value = _value || {};\n    this.httpAuth = _value.httpAuth\n      ? new RagCrawlerHttpAuth(_value.httpAuth)\n      : undefined;\n    this.htmlAuth = _value.htmlAuth\n      ? new RagCrawlerHtmlAuth(_value.htmlAuth)\n      : undefined;\n    RagCrawlerAuth.refineValues(this);\n  }\n  get httpAuth(): RagCrawlerHttpAuth | undefined {\n    return this._httpAuth;\n  }\n  set httpAuth(value: RagCrawlerHttpAuth | undefined) {\n    this._httpAuth = value;\n  }\n  get htmlAuth(): RagCrawlerHtmlAuth | undefined {\n    return this._htmlAuth;\n  }\n  set htmlAuth(value: RagCrawlerHtmlAuth | undefined) {\n    this._htmlAuth = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerAuth.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerAuth.AsObject {\n    return {\n      httpAuth: this.httpAuth ? this.httpAuth.toObject() : undefined,\n      htmlAuth: this.htmlAuth ? this.htmlAuth.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerAuth.AsProtobufJSON {\n    return {\n      httpAuth: this.httpAuth ? this.httpAuth.toProtobufJSON(options) : null,\n      htmlAuth: this.htmlAuth ? this.htmlAuth.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagCrawlerAuth {\n  /**\n   * Standard JavaScript object representation for RagCrawlerAuth\n   */\n  export interface AsObject {\n    httpAuth?: RagCrawlerHttpAuth.AsObject;\n    htmlAuth?: RagCrawlerHtmlAuth.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerAuth\n   */\n  export interface AsProtobufJSON {\n    httpAuth: RagCrawlerHttpAuth.AsProtobufJSON | null;\n    htmlAuth: RagCrawlerHtmlAuth.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerHtmlAuth\n */\nexport class RagCrawlerHtmlAuth implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerHtmlAuth';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerHtmlAuth();\n    RagCrawlerHtmlAuth.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerHtmlAuth) {\n    _instance.htmlAuthBaseUrl = _instance.htmlAuthBaseUrl || '';\n    _instance.htmlAuthUsernameSelectorType =\n      _instance.htmlAuthUsernameSelectorType || 0;\n    _instance.htmlAuthUsernameSelector =\n      _instance.htmlAuthUsernameSelector || '';\n    _instance.htmlAuthUsername = _instance.htmlAuthUsername || '';\n    _instance.htmlAuthPasswordSelectorType =\n      _instance.htmlAuthPasswordSelectorType || 0;\n    _instance.htmlAuthPasswordSelector =\n      _instance.htmlAuthPasswordSelector || '';\n    _instance.htmlAuthPassword = _instance.htmlAuthPassword || '';\n    _instance.authenticationExecutionType =\n      _instance.authenticationExecutionType || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerHtmlAuth,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.htmlAuthBaseUrl = _reader.readString();\n          break;\n        case 2:\n          _instance.htmlAuthUsernameSelectorType = _reader.readEnum();\n          break;\n        case 3:\n          _instance.htmlAuthUsernameSelector = _reader.readString();\n          break;\n        case 4:\n          _instance.htmlAuthUsername = _reader.readString();\n          break;\n        case 5:\n          _instance.htmlAuthPasswordSelectorType = _reader.readEnum();\n          break;\n        case 6:\n          _instance.htmlAuthPasswordSelector = _reader.readString();\n          break;\n        case 7:\n          _instance.htmlAuthPassword = _reader.readString();\n          break;\n        case 8:\n          _instance.authenticationExecutionType = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerHtmlAuth.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerHtmlAuth,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.htmlAuthBaseUrl) {\n      _writer.writeString(1, _instance.htmlAuthBaseUrl);\n    }\n    if (_instance.htmlAuthUsernameSelectorType) {\n      _writer.writeEnum(2, _instance.htmlAuthUsernameSelectorType);\n    }\n    if (_instance.htmlAuthUsernameSelector) {\n      _writer.writeString(3, _instance.htmlAuthUsernameSelector);\n    }\n    if (_instance.htmlAuthUsername) {\n      _writer.writeString(4, _instance.htmlAuthUsername);\n    }\n    if (_instance.htmlAuthPasswordSelectorType) {\n      _writer.writeEnum(5, _instance.htmlAuthPasswordSelectorType);\n    }\n    if (_instance.htmlAuthPasswordSelector) {\n      _writer.writeString(6, _instance.htmlAuthPasswordSelector);\n    }\n    if (_instance.htmlAuthPassword) {\n      _writer.writeString(7, _instance.htmlAuthPassword);\n    }\n    if (_instance.authenticationExecutionType) {\n      _writer.writeEnum(8, _instance.authenticationExecutionType);\n    }\n  }\n\n  private _htmlAuthBaseUrl: string;\n  private _htmlAuthUsernameSelectorType: RagCrawlerSelectorType;\n  private _htmlAuthUsernameSelector: string;\n  private _htmlAuthUsername: string;\n  private _htmlAuthPasswordSelectorType: RagCrawlerSelectorType;\n  private _htmlAuthPasswordSelector: string;\n  private _htmlAuthPassword: string;\n  private _authenticationExecutionType: RagCrawlerAuthenticationExecutionType;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerHtmlAuth to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerHtmlAuth.AsObject>) {\n    _value = _value || {};\n    this.htmlAuthBaseUrl = _value.htmlAuthBaseUrl;\n    this.htmlAuthUsernameSelectorType = _value.htmlAuthUsernameSelectorType;\n    this.htmlAuthUsernameSelector = _value.htmlAuthUsernameSelector;\n    this.htmlAuthUsername = _value.htmlAuthUsername;\n    this.htmlAuthPasswordSelectorType = _value.htmlAuthPasswordSelectorType;\n    this.htmlAuthPasswordSelector = _value.htmlAuthPasswordSelector;\n    this.htmlAuthPassword = _value.htmlAuthPassword;\n    this.authenticationExecutionType = _value.authenticationExecutionType;\n    RagCrawlerHtmlAuth.refineValues(this);\n  }\n  get htmlAuthBaseUrl(): string {\n    return this._htmlAuthBaseUrl;\n  }\n  set htmlAuthBaseUrl(value: string) {\n    this._htmlAuthBaseUrl = value;\n  }\n  get htmlAuthUsernameSelectorType(): RagCrawlerSelectorType {\n    return this._htmlAuthUsernameSelectorType;\n  }\n  set htmlAuthUsernameSelectorType(value: RagCrawlerSelectorType) {\n    this._htmlAuthUsernameSelectorType = value;\n  }\n  get htmlAuthUsernameSelector(): string {\n    return this._htmlAuthUsernameSelector;\n  }\n  set htmlAuthUsernameSelector(value: string) {\n    this._htmlAuthUsernameSelector = value;\n  }\n  get htmlAuthUsername(): string {\n    return this._htmlAuthUsername;\n  }\n  set htmlAuthUsername(value: string) {\n    this._htmlAuthUsername = value;\n  }\n  get htmlAuthPasswordSelectorType(): RagCrawlerSelectorType {\n    return this._htmlAuthPasswordSelectorType;\n  }\n  set htmlAuthPasswordSelectorType(value: RagCrawlerSelectorType) {\n    this._htmlAuthPasswordSelectorType = value;\n  }\n  get htmlAuthPasswordSelector(): string {\n    return this._htmlAuthPasswordSelector;\n  }\n  set htmlAuthPasswordSelector(value: string) {\n    this._htmlAuthPasswordSelector = value;\n  }\n  get htmlAuthPassword(): string {\n    return this._htmlAuthPassword;\n  }\n  set htmlAuthPassword(value: string) {\n    this._htmlAuthPassword = value;\n  }\n  get authenticationExecutionType(): RagCrawlerAuthenticationExecutionType {\n    return this._authenticationExecutionType;\n  }\n  set authenticationExecutionType(\n    value: RagCrawlerAuthenticationExecutionType\n  ) {\n    this._authenticationExecutionType = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerHtmlAuth.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerHtmlAuth.AsObject {\n    return {\n      htmlAuthBaseUrl: this.htmlAuthBaseUrl,\n      htmlAuthUsernameSelectorType: this.htmlAuthUsernameSelectorType,\n      htmlAuthUsernameSelector: this.htmlAuthUsernameSelector,\n      htmlAuthUsername: this.htmlAuthUsername,\n      htmlAuthPasswordSelectorType: this.htmlAuthPasswordSelectorType,\n      htmlAuthPasswordSelector: this.htmlAuthPasswordSelector,\n      htmlAuthPassword: this.htmlAuthPassword,\n      authenticationExecutionType: this.authenticationExecutionType\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerHtmlAuth.AsProtobufJSON {\n    return {\n      htmlAuthBaseUrl: this.htmlAuthBaseUrl,\n      htmlAuthUsernameSelectorType:\n        RagCrawlerSelectorType[\n          this.htmlAuthUsernameSelectorType === null ||\n          this.htmlAuthUsernameSelectorType === undefined\n            ? 0\n            : this.htmlAuthUsernameSelectorType\n        ],\n      htmlAuthUsernameSelector: this.htmlAuthUsernameSelector,\n      htmlAuthUsername: this.htmlAuthUsername,\n      htmlAuthPasswordSelectorType:\n        RagCrawlerSelectorType[\n          this.htmlAuthPasswordSelectorType === null ||\n          this.htmlAuthPasswordSelectorType === undefined\n            ? 0\n            : this.htmlAuthPasswordSelectorType\n        ],\n      htmlAuthPasswordSelector: this.htmlAuthPasswordSelector,\n      htmlAuthPassword: this.htmlAuthPassword,\n      authenticationExecutionType:\n        RagCrawlerAuthenticationExecutionType[\n          this.authenticationExecutionType === null ||\n          this.authenticationExecutionType === undefined\n            ? 0\n            : this.authenticationExecutionType\n        ]\n    };\n  }\n}\nexport module RagCrawlerHtmlAuth {\n  /**\n   * Standard JavaScript object representation for RagCrawlerHtmlAuth\n   */\n  export interface AsObject {\n    htmlAuthBaseUrl: string;\n    htmlAuthUsernameSelectorType: RagCrawlerSelectorType;\n    htmlAuthUsernameSelector: string;\n    htmlAuthUsername: string;\n    htmlAuthPasswordSelectorType: RagCrawlerSelectorType;\n    htmlAuthPasswordSelector: string;\n    htmlAuthPassword: string;\n    authenticationExecutionType: RagCrawlerAuthenticationExecutionType;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerHtmlAuth\n   */\n  export interface AsProtobufJSON {\n    htmlAuthBaseUrl: string;\n    htmlAuthUsernameSelectorType: string;\n    htmlAuthUsernameSelector: string;\n    htmlAuthUsername: string;\n    htmlAuthPasswordSelectorType: string;\n    htmlAuthPasswordSelector: string;\n    htmlAuthPassword: string;\n    authenticationExecutionType: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerHttpAuth\n */\nexport class RagCrawlerHttpAuth implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerHttpAuth';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerHttpAuth();\n    RagCrawlerHttpAuth.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerHttpAuth) {\n    _instance.httpAuthUsername = _instance.httpAuthUsername || '';\n    _instance.httpAuthPassword = _instance.httpAuthPassword || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerHttpAuth,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.httpAuthUsername = _reader.readString();\n          break;\n        case 2:\n          _instance.httpAuthPassword = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerHttpAuth.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerHttpAuth,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.httpAuthUsername) {\n      _writer.writeString(1, _instance.httpAuthUsername);\n    }\n    if (_instance.httpAuthPassword) {\n      _writer.writeString(2, _instance.httpAuthPassword);\n    }\n  }\n\n  private _httpAuthUsername: string;\n  private _httpAuthPassword: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerHttpAuth to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerHttpAuth.AsObject>) {\n    _value = _value || {};\n    this.httpAuthUsername = _value.httpAuthUsername;\n    this.httpAuthPassword = _value.httpAuthPassword;\n    RagCrawlerHttpAuth.refineValues(this);\n  }\n  get httpAuthUsername(): string {\n    return this._httpAuthUsername;\n  }\n  set httpAuthUsername(value: string) {\n    this._httpAuthUsername = value;\n  }\n  get httpAuthPassword(): string {\n    return this._httpAuthPassword;\n  }\n  set httpAuthPassword(value: string) {\n    this._httpAuthPassword = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerHttpAuth.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerHttpAuth.AsObject {\n    return {\n      httpAuthUsername: this.httpAuthUsername,\n      httpAuthPassword: this.httpAuthPassword\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerHttpAuth.AsProtobufJSON {\n    return {\n      httpAuthUsername: this.httpAuthUsername,\n      httpAuthPassword: this.httpAuthPassword\n    };\n  }\n}\nexport module RagCrawlerHttpAuth {\n  /**\n   * Standard JavaScript object representation for RagCrawlerHttpAuth\n   */\n  export interface AsObject {\n    httpAuthUsername: string;\n    httpAuthPassword: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerHttpAuth\n   */\n  export interface AsProtobufJSON {\n    httpAuthUsername: string;\n    httpAuthPassword: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerBrowserConfig\n */\nexport class RagCrawlerBrowserConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerBrowserConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerBrowserConfig();\n    RagCrawlerBrowserConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerBrowserConfig) {\n    _instance.crawlerHeaders = _instance.crawlerHeaders || [];\n    _instance.crawlerCookies = _instance.crawlerCookies || [];\n    _instance.crawlerUserAgent = _instance.crawlerUserAgent || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerBrowserConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            messageInitializer1,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          (_instance.crawlerHeaders = _instance.crawlerHeaders || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          const messageInitializer2 = new RagCrawlerCookie();\n          _reader.readMessage(\n            messageInitializer2,\n            RagCrawlerCookie.deserializeBinaryFromReader\n          );\n          (_instance.crawlerCookies = _instance.crawlerCookies || []).push(\n            messageInitializer2\n          );\n          break;\n        case 3:\n          _instance.crawlerUserAgent = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerBrowserConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerBrowserConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.crawlerHeaders && _instance.crawlerHeaders.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.crawlerHeaders as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.crawlerCookies && _instance.crawlerCookies.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.crawlerCookies as any,\n        RagCrawlerCookie.serializeBinaryToWriter\n      );\n    }\n    if (_instance.crawlerUserAgent) {\n      _writer.writeString(3, _instance.crawlerUserAgent);\n    }\n  }\n\n  private _crawlerHeaders?: googleProtobuf001.Struct[];\n  private _crawlerCookies?: RagCrawlerCookie[];\n  private _crawlerUserAgent: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerBrowserConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerBrowserConfig.AsObject>) {\n    _value = _value || {};\n    this.crawlerHeaders = (_value.crawlerHeaders || []).map(\n      m => new googleProtobuf001.Struct(m)\n    );\n    this.crawlerCookies = (_value.crawlerCookies || []).map(\n      m => new RagCrawlerCookie(m)\n    );\n    this.crawlerUserAgent = _value.crawlerUserAgent;\n    RagCrawlerBrowserConfig.refineValues(this);\n  }\n  get crawlerHeaders(): googleProtobuf001.Struct[] | undefined {\n    return this._crawlerHeaders;\n  }\n  set crawlerHeaders(value: googleProtobuf001.Struct[] | undefined) {\n    this._crawlerHeaders = value;\n  }\n  get crawlerCookies(): RagCrawlerCookie[] | undefined {\n    return this._crawlerCookies;\n  }\n  set crawlerCookies(value: RagCrawlerCookie[] | undefined) {\n    this._crawlerCookies = value;\n  }\n  get crawlerUserAgent(): string {\n    return this._crawlerUserAgent;\n  }\n  set crawlerUserAgent(value: string) {\n    this._crawlerUserAgent = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerBrowserConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerBrowserConfig.AsObject {\n    return {\n      crawlerHeaders: (this.crawlerHeaders || []).map(m => m.toObject()),\n      crawlerCookies: (this.crawlerCookies || []).map(m => m.toObject()),\n      crawlerUserAgent: this.crawlerUserAgent\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerBrowserConfig.AsProtobufJSON {\n    return {\n      crawlerHeaders: (this.crawlerHeaders || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      crawlerCookies: (this.crawlerCookies || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      crawlerUserAgent: this.crawlerUserAgent\n    };\n  }\n}\nexport module RagCrawlerBrowserConfig {\n  /**\n   * Standard JavaScript object representation for RagCrawlerBrowserConfig\n   */\n  export interface AsObject {\n    crawlerHeaders?: googleProtobuf001.Struct.AsObject[];\n    crawlerCookies?: RagCrawlerCookie.AsObject[];\n    crawlerUserAgent: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerBrowserConfig\n   */\n  export interface AsProtobufJSON {\n    crawlerHeaders: googleProtobuf001.Struct.AsProtobufJSON[] | null;\n    crawlerCookies: RagCrawlerCookie.AsProtobufJSON[] | null;\n    crawlerUserAgent: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerCookie\n */\nexport class RagCrawlerCookie implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerCookie';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerCookie();\n    RagCrawlerCookie.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerCookie) {\n    _instance.cookieName = _instance.cookieName || '';\n    _instance.cookieValue = _instance.cookieValue || '';\n    _instance.cookieDomain = _instance.cookieDomain || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerCookie,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.cookieName = _reader.readString();\n          break;\n        case 2:\n          _instance.cookieValue = _reader.readString();\n          break;\n        case 3:\n          _instance.cookieDomain = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerCookie.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerCookie,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.cookieName) {\n      _writer.writeString(1, _instance.cookieName);\n    }\n    if (_instance.cookieValue) {\n      _writer.writeString(2, _instance.cookieValue);\n    }\n    if (_instance.cookieDomain) {\n      _writer.writeString(3, _instance.cookieDomain);\n    }\n  }\n\n  private _cookieName: string;\n  private _cookieValue: string;\n  private _cookieDomain: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerCookie to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerCookie.AsObject>) {\n    _value = _value || {};\n    this.cookieName = _value.cookieName;\n    this.cookieValue = _value.cookieValue;\n    this.cookieDomain = _value.cookieDomain;\n    RagCrawlerCookie.refineValues(this);\n  }\n  get cookieName(): string {\n    return this._cookieName;\n  }\n  set cookieName(value: string) {\n    this._cookieName = value;\n  }\n  get cookieValue(): string {\n    return this._cookieValue;\n  }\n  set cookieValue(value: string) {\n    this._cookieValue = value;\n  }\n  get cookieDomain(): string {\n    return this._cookieDomain;\n  }\n  set cookieDomain(value: string) {\n    this._cookieDomain = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerCookie.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerCookie.AsObject {\n    return {\n      cookieName: this.cookieName,\n      cookieValue: this.cookieValue,\n      cookieDomain: this.cookieDomain\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerCookie.AsProtobufJSON {\n    return {\n      cookieName: this.cookieName,\n      cookieValue: this.cookieValue,\n      cookieDomain: this.cookieDomain\n    };\n  }\n}\nexport module RagCrawlerCookie {\n  /**\n   * Standard JavaScript object representation for RagCrawlerCookie\n   */\n  export interface AsObject {\n    cookieName: string;\n    cookieValue: string;\n    cookieDomain: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerCookie\n   */\n  export interface AsProtobufJSON {\n    cookieName: string;\n    cookieValue: string;\n    cookieDomain: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerConcurrencyConfig\n */\nexport class RagCrawlerConcurrencyConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerConcurrencyConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerConcurrencyConfig();\n    RagCrawlerConcurrencyConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerConcurrencyConfig) {\n    _instance.maxConcurrentRequests = _instance.maxConcurrentRequests || 0;\n    _instance.slowCrawl = _instance.slowCrawl || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerConcurrencyConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.maxConcurrentRequests = _reader.readInt32();\n          break;\n        case 2:\n          _instance.slowCrawl = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerConcurrencyConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerConcurrencyConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.maxConcurrentRequests) {\n      _writer.writeInt32(1, _instance.maxConcurrentRequests);\n    }\n    if (_instance.slowCrawl) {\n      _writer.writeBool(2, _instance.slowCrawl);\n    }\n  }\n\n  private _maxConcurrentRequests: number;\n  private _slowCrawl: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerConcurrencyConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerConcurrencyConfig.AsObject>) {\n    _value = _value || {};\n    this.maxConcurrentRequests = _value.maxConcurrentRequests;\n    this.slowCrawl = _value.slowCrawl;\n    RagCrawlerConcurrencyConfig.refineValues(this);\n  }\n  get maxConcurrentRequests(): number {\n    return this._maxConcurrentRequests;\n  }\n  set maxConcurrentRequests(value: number) {\n    this._maxConcurrentRequests = value;\n  }\n  get slowCrawl(): boolean {\n    return this._slowCrawl;\n  }\n  set slowCrawl(value: boolean) {\n    this._slowCrawl = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerConcurrencyConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerConcurrencyConfig.AsObject {\n    return {\n      maxConcurrentRequests: this.maxConcurrentRequests,\n      slowCrawl: this.slowCrawl\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerConcurrencyConfig.AsProtobufJSON {\n    return {\n      maxConcurrentRequests: this.maxConcurrentRequests,\n      slowCrawl: this.slowCrawl\n    };\n  }\n}\nexport module RagCrawlerConcurrencyConfig {\n  /**\n   * Standard JavaScript object representation for RagCrawlerConcurrencyConfig\n   */\n  export interface AsObject {\n    maxConcurrentRequests: number;\n    slowCrawl: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerConcurrencyConfig\n   */\n  export interface AsProtobufJSON {\n    maxConcurrentRequests: number;\n    slowCrawl: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerConfig\n */\nexport class RagCrawlerConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerConfig();\n    RagCrawlerConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerConfig) {\n    _instance.concurrencyConfig = _instance.concurrencyConfig || undefined;\n    _instance.deepCrawlerConfig = _instance.deepCrawlerConfig || undefined;\n    _instance.outputConfig = _instance.outputConfig || undefined;\n    _instance.statusFilter = _instance.statusFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.concurrencyConfig = new RagCrawlerConcurrencyConfig();\n          _reader.readMessage(\n            _instance.concurrencyConfig,\n            RagCrawlerConcurrencyConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.deepCrawlerConfig = new RagCrawlerDeepCrawlerConfig();\n          _reader.readMessage(\n            _instance.deepCrawlerConfig,\n            RagCrawlerDeepCrawlerConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.outputConfig = new RagCrawlerResultsConfig();\n          _reader.readMessage(\n            _instance.outputConfig,\n            RagCrawlerResultsConfig.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.statusFilter = new RagCrawlerStatusFilter();\n          _reader.readMessage(\n            _instance.statusFilter,\n            RagCrawlerStatusFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.concurrencyConfig) {\n      _writer.writeMessage(\n        1,\n        _instance.concurrencyConfig as any,\n        RagCrawlerConcurrencyConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.deepCrawlerConfig) {\n      _writer.writeMessage(\n        2,\n        _instance.deepCrawlerConfig as any,\n        RagCrawlerDeepCrawlerConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.outputConfig) {\n      _writer.writeMessage(\n        3,\n        _instance.outputConfig as any,\n        RagCrawlerResultsConfig.serializeBinaryToWriter\n      );\n    }\n    if (_instance.statusFilter) {\n      _writer.writeMessage(\n        4,\n        _instance.statusFilter as any,\n        RagCrawlerStatusFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _concurrencyConfig?: RagCrawlerConcurrencyConfig;\n  private _deepCrawlerConfig?: RagCrawlerDeepCrawlerConfig;\n  private _outputConfig?: RagCrawlerResultsConfig;\n  private _statusFilter?: RagCrawlerStatusFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerConfig.AsObject>) {\n    _value = _value || {};\n    this.concurrencyConfig = _value.concurrencyConfig\n      ? new RagCrawlerConcurrencyConfig(_value.concurrencyConfig)\n      : undefined;\n    this.deepCrawlerConfig = _value.deepCrawlerConfig\n      ? new RagCrawlerDeepCrawlerConfig(_value.deepCrawlerConfig)\n      : undefined;\n    this.outputConfig = _value.outputConfig\n      ? new RagCrawlerResultsConfig(_value.outputConfig)\n      : undefined;\n    this.statusFilter = _value.statusFilter\n      ? new RagCrawlerStatusFilter(_value.statusFilter)\n      : undefined;\n    RagCrawlerConfig.refineValues(this);\n  }\n  get concurrencyConfig(): RagCrawlerConcurrencyConfig | undefined {\n    return this._concurrencyConfig;\n  }\n  set concurrencyConfig(value: RagCrawlerConcurrencyConfig | undefined) {\n    this._concurrencyConfig = value;\n  }\n  get deepCrawlerConfig(): RagCrawlerDeepCrawlerConfig | undefined {\n    return this._deepCrawlerConfig;\n  }\n  set deepCrawlerConfig(value: RagCrawlerDeepCrawlerConfig | undefined) {\n    this._deepCrawlerConfig = value;\n  }\n  get outputConfig(): RagCrawlerResultsConfig | undefined {\n    return this._outputConfig;\n  }\n  set outputConfig(value: RagCrawlerResultsConfig | undefined) {\n    this._outputConfig = value;\n  }\n  get statusFilter(): RagCrawlerStatusFilter | undefined {\n    return this._statusFilter;\n  }\n  set statusFilter(value: RagCrawlerStatusFilter | undefined) {\n    this._statusFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerConfig.AsObject {\n    return {\n      concurrencyConfig: this.concurrencyConfig\n        ? this.concurrencyConfig.toObject()\n        : undefined,\n      deepCrawlerConfig: this.deepCrawlerConfig\n        ? this.deepCrawlerConfig.toObject()\n        : undefined,\n      outputConfig: this.outputConfig\n        ? this.outputConfig.toObject()\n        : undefined,\n      statusFilter: this.statusFilter ? this.statusFilter.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerConfig.AsProtobufJSON {\n    return {\n      concurrencyConfig: this.concurrencyConfig\n        ? this.concurrencyConfig.toProtobufJSON(options)\n        : null,\n      deepCrawlerConfig: this.deepCrawlerConfig\n        ? this.deepCrawlerConfig.toProtobufJSON(options)\n        : null,\n      outputConfig: this.outputConfig\n        ? this.outputConfig.toProtobufJSON(options)\n        : null,\n      statusFilter: this.statusFilter\n        ? this.statusFilter.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module RagCrawlerConfig {\n  /**\n   * Standard JavaScript object representation for RagCrawlerConfig\n   */\n  export interface AsObject {\n    concurrencyConfig?: RagCrawlerConcurrencyConfig.AsObject;\n    deepCrawlerConfig?: RagCrawlerDeepCrawlerConfig.AsObject;\n    outputConfig?: RagCrawlerResultsConfig.AsObject;\n    statusFilter?: RagCrawlerStatusFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerConfig\n   */\n  export interface AsProtobufJSON {\n    concurrencyConfig: RagCrawlerConcurrencyConfig.AsProtobufJSON | null;\n    deepCrawlerConfig: RagCrawlerDeepCrawlerConfig.AsProtobufJSON | null;\n    outputConfig: RagCrawlerResultsConfig.AsProtobufJSON | null;\n    statusFilter: RagCrawlerStatusFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerDeepCrawlerConfig\n */\nexport class RagCrawlerDeepCrawlerConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerDeepCrawlerConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerDeepCrawlerConfig();\n    RagCrawlerDeepCrawlerConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerDeepCrawlerConfig) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.crawlStrategy = _instance.crawlStrategy || 0;\n    _instance.maxDepth = _instance.maxDepth || 0;\n    _instance.maxPages = _instance.maxPages || 0;\n    _instance.deepCrawlerFilters = _instance.deepCrawlerFilters || undefined;\n    _instance.normalizeUrlCase = _instance.normalizeUrlCase || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerDeepCrawlerConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.crawlStrategy = _reader.readEnum();\n          break;\n        case 3:\n          _instance.maxDepth = _reader.readInt32();\n          break;\n        case 4:\n          _instance.maxPages = _reader.readInt32();\n          break;\n        case 5:\n          _instance.deepCrawlerFilters = new RagCrawlerFilters();\n          _reader.readMessage(\n            _instance.deepCrawlerFilters,\n            RagCrawlerFilters.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.normalizeUrlCase = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerDeepCrawlerConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerDeepCrawlerConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.crawlStrategy) {\n      _writer.writeEnum(2, _instance.crawlStrategy);\n    }\n    if (_instance.maxDepth) {\n      _writer.writeInt32(3, _instance.maxDepth);\n    }\n    if (_instance.maxPages) {\n      _writer.writeInt32(4, _instance.maxPages);\n    }\n    if (_instance.deepCrawlerFilters) {\n      _writer.writeMessage(\n        5,\n        _instance.deepCrawlerFilters as any,\n        RagCrawlerFilters.serializeBinaryToWriter\n      );\n    }\n    if (_instance.normalizeUrlCase) {\n      _writer.writeBool(6, _instance.normalizeUrlCase);\n    }\n  }\n\n  private _isActive: boolean;\n  private _crawlStrategy: RagCrawlerCrawlStrategy;\n  private _maxDepth: number;\n  private _maxPages: number;\n  private _deepCrawlerFilters?: RagCrawlerFilters;\n  private _normalizeUrlCase: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerDeepCrawlerConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerDeepCrawlerConfig.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.crawlStrategy = _value.crawlStrategy;\n    this.maxDepth = _value.maxDepth;\n    this.maxPages = _value.maxPages;\n    this.deepCrawlerFilters = _value.deepCrawlerFilters\n      ? new RagCrawlerFilters(_value.deepCrawlerFilters)\n      : undefined;\n    this.normalizeUrlCase = _value.normalizeUrlCase;\n    RagCrawlerDeepCrawlerConfig.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get crawlStrategy(): RagCrawlerCrawlStrategy {\n    return this._crawlStrategy;\n  }\n  set crawlStrategy(value: RagCrawlerCrawlStrategy) {\n    this._crawlStrategy = value;\n  }\n  get maxDepth(): number {\n    return this._maxDepth;\n  }\n  set maxDepth(value: number) {\n    this._maxDepth = value;\n  }\n  get maxPages(): number {\n    return this._maxPages;\n  }\n  set maxPages(value: number) {\n    this._maxPages = value;\n  }\n  get deepCrawlerFilters(): RagCrawlerFilters | undefined {\n    return this._deepCrawlerFilters;\n  }\n  set deepCrawlerFilters(value: RagCrawlerFilters | undefined) {\n    this._deepCrawlerFilters = value;\n  }\n  get normalizeUrlCase(): boolean {\n    return this._normalizeUrlCase;\n  }\n  set normalizeUrlCase(value: boolean) {\n    this._normalizeUrlCase = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerDeepCrawlerConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerDeepCrawlerConfig.AsObject {\n    return {\n      isActive: this.isActive,\n      crawlStrategy: this.crawlStrategy,\n      maxDepth: this.maxDepth,\n      maxPages: this.maxPages,\n      deepCrawlerFilters: this.deepCrawlerFilters\n        ? this.deepCrawlerFilters.toObject()\n        : undefined,\n      normalizeUrlCase: this.normalizeUrlCase\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerDeepCrawlerConfig.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      crawlStrategy:\n        RagCrawlerCrawlStrategy[\n          this.crawlStrategy === null || this.crawlStrategy === undefined\n            ? 0\n            : this.crawlStrategy\n        ],\n      maxDepth: this.maxDepth,\n      maxPages: this.maxPages,\n      deepCrawlerFilters: this.deepCrawlerFilters\n        ? this.deepCrawlerFilters.toProtobufJSON(options)\n        : null,\n      normalizeUrlCase: this.normalizeUrlCase\n    };\n  }\n}\nexport module RagCrawlerDeepCrawlerConfig {\n  /**\n   * Standard JavaScript object representation for RagCrawlerDeepCrawlerConfig\n   */\n  export interface AsObject {\n    isActive: boolean;\n    crawlStrategy: RagCrawlerCrawlStrategy;\n    maxDepth: number;\n    maxPages: number;\n    deepCrawlerFilters?: RagCrawlerFilters.AsObject;\n    normalizeUrlCase: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerDeepCrawlerConfig\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    crawlStrategy: string;\n    maxDepth: number;\n    maxPages: number;\n    deepCrawlerFilters: RagCrawlerFilters.AsProtobufJSON | null;\n    normalizeUrlCase: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerResultsConfig\n */\nexport class RagCrawlerResultsConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerResultsConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerResultsConfig();\n    RagCrawlerResultsConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerResultsConfig) {\n    _instance.injectFrontmatter = _instance.injectFrontmatter || false;\n    _instance.metaDataExtractors = _instance.metaDataExtractors || [];\n    _instance.contentScope = _instance.contentScope || undefined;\n    _instance.densityPruning = _instance.densityPruning || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerResultsConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.injectFrontmatter = _reader.readBool();\n          break;\n        case 2:\n          const messageInitializer2 = new RagCrawlerMetaDataExtractor();\n          _reader.readMessage(\n            messageInitializer2,\n            RagCrawlerMetaDataExtractor.deserializeBinaryFromReader\n          );\n          (_instance.metaDataExtractors =\n            _instance.metaDataExtractors || []).push(messageInitializer2);\n          break;\n        case 3:\n          _instance.contentScope = new RagCrawlerContentScope();\n          _reader.readMessage(\n            _instance.contentScope,\n            RagCrawlerContentScope.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.densityPruning = new RagCrawlerDensityPruning();\n          _reader.readMessage(\n            _instance.densityPruning,\n            RagCrawlerDensityPruning.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerResultsConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerResultsConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.injectFrontmatter) {\n      _writer.writeBool(1, _instance.injectFrontmatter);\n    }\n    if (_instance.metaDataExtractors && _instance.metaDataExtractors.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.metaDataExtractors as any,\n        RagCrawlerMetaDataExtractor.serializeBinaryToWriter\n      );\n    }\n    if (_instance.contentScope) {\n      _writer.writeMessage(\n        3,\n        _instance.contentScope as any,\n        RagCrawlerContentScope.serializeBinaryToWriter\n      );\n    }\n    if (_instance.densityPruning) {\n      _writer.writeMessage(\n        4,\n        _instance.densityPruning as any,\n        RagCrawlerDensityPruning.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _injectFrontmatter: boolean;\n  private _metaDataExtractors?: RagCrawlerMetaDataExtractor[];\n  private _contentScope?: RagCrawlerContentScope;\n  private _densityPruning?: RagCrawlerDensityPruning;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerResultsConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerResultsConfig.AsObject>) {\n    _value = _value || {};\n    this.injectFrontmatter = _value.injectFrontmatter;\n    this.metaDataExtractors = (_value.metaDataExtractors || []).map(\n      m => new RagCrawlerMetaDataExtractor(m)\n    );\n    this.contentScope = _value.contentScope\n      ? new RagCrawlerContentScope(_value.contentScope)\n      : undefined;\n    this.densityPruning = _value.densityPruning\n      ? new RagCrawlerDensityPruning(_value.densityPruning)\n      : undefined;\n    RagCrawlerResultsConfig.refineValues(this);\n  }\n  get injectFrontmatter(): boolean {\n    return this._injectFrontmatter;\n  }\n  set injectFrontmatter(value: boolean) {\n    this._injectFrontmatter = value;\n  }\n  get metaDataExtractors(): RagCrawlerMetaDataExtractor[] | undefined {\n    return this._metaDataExtractors;\n  }\n  set metaDataExtractors(value: RagCrawlerMetaDataExtractor[] | undefined) {\n    this._metaDataExtractors = value;\n  }\n  get contentScope(): RagCrawlerContentScope | undefined {\n    return this._contentScope;\n  }\n  set contentScope(value: RagCrawlerContentScope | undefined) {\n    this._contentScope = value;\n  }\n  get densityPruning(): RagCrawlerDensityPruning | undefined {\n    return this._densityPruning;\n  }\n  set densityPruning(value: RagCrawlerDensityPruning | undefined) {\n    this._densityPruning = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerResultsConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerResultsConfig.AsObject {\n    return {\n      injectFrontmatter: this.injectFrontmatter,\n      metaDataExtractors: (this.metaDataExtractors || []).map(m =>\n        m.toObject()\n      ),\n      contentScope: this.contentScope\n        ? this.contentScope.toObject()\n        : undefined,\n      densityPruning: this.densityPruning\n        ? this.densityPruning.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerResultsConfig.AsProtobufJSON {\n    return {\n      injectFrontmatter: this.injectFrontmatter,\n      metaDataExtractors: (this.metaDataExtractors || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      contentScope: this.contentScope\n        ? this.contentScope.toProtobufJSON(options)\n        : null,\n      densityPruning: this.densityPruning\n        ? this.densityPruning.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module RagCrawlerResultsConfig {\n  /**\n   * Standard JavaScript object representation for RagCrawlerResultsConfig\n   */\n  export interface AsObject {\n    injectFrontmatter: boolean;\n    metaDataExtractors?: RagCrawlerMetaDataExtractor.AsObject[];\n    contentScope?: RagCrawlerContentScope.AsObject;\n    densityPruning?: RagCrawlerDensityPruning.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerResultsConfig\n   */\n  export interface AsProtobufJSON {\n    injectFrontmatter: boolean;\n    metaDataExtractors: RagCrawlerMetaDataExtractor.AsProtobufJSON[] | null;\n    contentScope: RagCrawlerContentScope.AsProtobufJSON | null;\n    densityPruning: RagCrawlerDensityPruning.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerContentScope\n */\nexport class RagCrawlerContentScope implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerContentScope';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerContentScope();\n    RagCrawlerContentScope.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerContentScope) {\n    _instance.includeSelectors = _instance.includeSelectors || [];\n    _instance.excludeSelectors = _instance.excludeSelectors || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerContentScope,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.includeSelectors = _instance.includeSelectors || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          (_instance.excludeSelectors = _instance.excludeSelectors || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerContentScope.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerContentScope,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.includeSelectors && _instance.includeSelectors.length) {\n      _writer.writeRepeatedString(1, _instance.includeSelectors);\n    }\n    if (_instance.excludeSelectors && _instance.excludeSelectors.length) {\n      _writer.writeRepeatedString(2, _instance.excludeSelectors);\n    }\n  }\n\n  private _includeSelectors: string[];\n  private _excludeSelectors: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerContentScope to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerContentScope.AsObject>) {\n    _value = _value || {};\n    this.includeSelectors = (_value.includeSelectors || []).slice();\n    this.excludeSelectors = (_value.excludeSelectors || []).slice();\n    RagCrawlerContentScope.refineValues(this);\n  }\n  get includeSelectors(): string[] {\n    return this._includeSelectors;\n  }\n  set includeSelectors(value: string[]) {\n    this._includeSelectors = value;\n  }\n  get excludeSelectors(): string[] {\n    return this._excludeSelectors;\n  }\n  set excludeSelectors(value: string[]) {\n    this._excludeSelectors = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerContentScope.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerContentScope.AsObject {\n    return {\n      includeSelectors: (this.includeSelectors || []).slice(),\n      excludeSelectors: (this.excludeSelectors || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerContentScope.AsProtobufJSON {\n    return {\n      includeSelectors: (this.includeSelectors || []).slice(),\n      excludeSelectors: (this.excludeSelectors || []).slice()\n    };\n  }\n}\nexport module RagCrawlerContentScope {\n  /**\n   * Standard JavaScript object representation for RagCrawlerContentScope\n   */\n  export interface AsObject {\n    includeSelectors: string[];\n    excludeSelectors: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerContentScope\n   */\n  export interface AsProtobufJSON {\n    includeSelectors: string[];\n    excludeSelectors: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerDensityPruning\n */\nexport class RagCrawlerDensityPruning implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerDensityPruning';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerDensityPruning();\n    RagCrawlerDensityPruning.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerDensityPruning) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.threshold = _instance.threshold || 0;\n    _instance.thresholdType = _instance.thresholdType || 0;\n    _instance.minWordThreshold = _instance.minWordThreshold || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerDensityPruning,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _instance.threshold = _reader.readFloat();\n          break;\n        case 3:\n          _instance.thresholdType = _reader.readEnum();\n          break;\n        case 4:\n          _instance.minWordThreshold = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerDensityPruning.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerDensityPruning,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.threshold) {\n      _writer.writeFloat(2, _instance.threshold);\n    }\n    if (_instance.thresholdType) {\n      _writer.writeEnum(3, _instance.thresholdType);\n    }\n    if (_instance.minWordThreshold) {\n      _writer.writeInt32(4, _instance.minWordThreshold);\n    }\n  }\n\n  private _isActive: boolean;\n  private _threshold: number;\n  private _thresholdType: RagCrawlerPruningThresholdType;\n  private _minWordThreshold: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerDensityPruning to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerDensityPruning.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.threshold = _value.threshold;\n    this.thresholdType = _value.thresholdType;\n    this.minWordThreshold = _value.minWordThreshold;\n    RagCrawlerDensityPruning.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get threshold(): number {\n    return this._threshold;\n  }\n  set threshold(value: number) {\n    this._threshold = value;\n  }\n  get thresholdType(): RagCrawlerPruningThresholdType {\n    return this._thresholdType;\n  }\n  set thresholdType(value: RagCrawlerPruningThresholdType) {\n    this._thresholdType = value;\n  }\n  get minWordThreshold(): number {\n    return this._minWordThreshold;\n  }\n  set minWordThreshold(value: number) {\n    this._minWordThreshold = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerDensityPruning.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerDensityPruning.AsObject {\n    return {\n      isActive: this.isActive,\n      threshold: this.threshold,\n      thresholdType: this.thresholdType,\n      minWordThreshold: this.minWordThreshold\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerDensityPruning.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      threshold: this.threshold,\n      thresholdType:\n        RagCrawlerPruningThresholdType[\n          this.thresholdType === null || this.thresholdType === undefined\n            ? 0\n            : this.thresholdType\n        ],\n      minWordThreshold: this.minWordThreshold\n    };\n  }\n}\nexport module RagCrawlerDensityPruning {\n  /**\n   * Standard JavaScript object representation for RagCrawlerDensityPruning\n   */\n  export interface AsObject {\n    isActive: boolean;\n    threshold: number;\n    thresholdType: RagCrawlerPruningThresholdType;\n    minWordThreshold: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerDensityPruning\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    threshold: number;\n    thresholdType: string;\n    minWordThreshold: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerMetaDataExtractor\n */\nexport class RagCrawlerMetaDataExtractor implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerMetaDataExtractor';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerMetaDataExtractor();\n    RagCrawlerMetaDataExtractor.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerMetaDataExtractor) {\n    _instance.type = _instance.type || 0;\n    _instance.value = _instance.value || '';\n    _instance.key = _instance.key || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerMetaDataExtractor,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.type = _reader.readEnum();\n          break;\n        case 2:\n          _instance.value = _reader.readString();\n          break;\n        case 3:\n          _instance.key = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerMetaDataExtractor.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerMetaDataExtractor,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.type) {\n      _writer.writeEnum(1, _instance.type);\n    }\n    if (_instance.value) {\n      _writer.writeString(2, _instance.value);\n    }\n    if (_instance.key) {\n      _writer.writeString(3, _instance.key);\n    }\n  }\n\n  private _type: RagCrawlerMetaDataExtractorType;\n  private _value: string;\n  private _key: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerMetaDataExtractor to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerMetaDataExtractor.AsObject>) {\n    _value = _value || {};\n    this.type = _value.type;\n    this.value = _value.value;\n    this.key = _value.key;\n    RagCrawlerMetaDataExtractor.refineValues(this);\n  }\n  get type(): RagCrawlerMetaDataExtractorType {\n    return this._type;\n  }\n  set type(value: RagCrawlerMetaDataExtractorType) {\n    this._type = value;\n  }\n  get value(): string {\n    return this._value;\n  }\n  set value(value: string) {\n    this._value = value;\n  }\n  get key(): string {\n    return this._key;\n  }\n  set key(value: string) {\n    this._key = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerMetaDataExtractor.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerMetaDataExtractor.AsObject {\n    return {\n      type: this.type,\n      value: this.value,\n      key: this.key\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerMetaDataExtractor.AsProtobufJSON {\n    return {\n      type:\n        RagCrawlerMetaDataExtractorType[\n          this.type === null || this.type === undefined ? 0 : this.type\n        ],\n      value: this.value,\n      key: this.key\n    };\n  }\n}\nexport module RagCrawlerMetaDataExtractor {\n  /**\n   * Standard JavaScript object representation for RagCrawlerMetaDataExtractor\n   */\n  export interface AsObject {\n    type: RagCrawlerMetaDataExtractorType;\n    value: string;\n    key: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerMetaDataExtractor\n   */\n  export interface AsProtobufJSON {\n    type: string;\n    value: string;\n    key: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerRetryConfig\n */\nexport class RagCrawlerRetryConfig implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerRetryConfig';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerRetryConfig();\n    RagCrawlerRetryConfig.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerRetryConfig) {\n    _instance.pageLoadTimeoutSeconds = _instance.pageLoadTimeoutSeconds || 0;\n    _instance.retryMaxAttempts = _instance.retryMaxAttempts || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerRetryConfig,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.pageLoadTimeoutSeconds = _reader.readInt32();\n          break;\n        case 2:\n          _instance.retryMaxAttempts = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerRetryConfig.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerRetryConfig,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.pageLoadTimeoutSeconds) {\n      _writer.writeInt32(1, _instance.pageLoadTimeoutSeconds);\n    }\n    if (_instance.retryMaxAttempts) {\n      _writer.writeInt32(2, _instance.retryMaxAttempts);\n    }\n  }\n\n  private _pageLoadTimeoutSeconds: number;\n  private _retryMaxAttempts: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerRetryConfig to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerRetryConfig.AsObject>) {\n    _value = _value || {};\n    this.pageLoadTimeoutSeconds = _value.pageLoadTimeoutSeconds;\n    this.retryMaxAttempts = _value.retryMaxAttempts;\n    RagCrawlerRetryConfig.refineValues(this);\n  }\n  get pageLoadTimeoutSeconds(): number {\n    return this._pageLoadTimeoutSeconds;\n  }\n  set pageLoadTimeoutSeconds(value: number) {\n    this._pageLoadTimeoutSeconds = value;\n  }\n  get retryMaxAttempts(): number {\n    return this._retryMaxAttempts;\n  }\n  set retryMaxAttempts(value: number) {\n    this._retryMaxAttempts = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerRetryConfig.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerRetryConfig.AsObject {\n    return {\n      pageLoadTimeoutSeconds: this.pageLoadTimeoutSeconds,\n      retryMaxAttempts: this.retryMaxAttempts\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerRetryConfig.AsProtobufJSON {\n    return {\n      pageLoadTimeoutSeconds: this.pageLoadTimeoutSeconds,\n      retryMaxAttempts: this.retryMaxAttempts\n    };\n  }\n}\nexport module RagCrawlerRetryConfig {\n  /**\n   * Standard JavaScript object representation for RagCrawlerRetryConfig\n   */\n  export interface AsObject {\n    pageLoadTimeoutSeconds: number;\n    retryMaxAttempts: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerRetryConfig\n   */\n  export interface AsProtobufJSON {\n    pageLoadTimeoutSeconds: number;\n    retryMaxAttempts: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerStatusFilter\n */\nexport class RagCrawlerStatusFilter implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerStatusFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerStatusFilter();\n    RagCrawlerStatusFilter.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerStatusFilter) {\n    _instance.isActive = _instance.isActive || false;\n    _instance.acceptedStatusCodes = _instance.acceptedStatusCodes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerStatusFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isActive = _reader.readBool();\n          break;\n        case 2:\n          _reader.readPackableInt32Into(\n            (_instance.acceptedStatusCodes =\n              _instance.acceptedStatusCodes || [])\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerStatusFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerStatusFilter,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isActive) {\n      _writer.writeBool(1, _instance.isActive);\n    }\n    if (_instance.acceptedStatusCodes && _instance.acceptedStatusCodes.length) {\n      _writer.writePackedInt32(2, _instance.acceptedStatusCodes);\n    }\n  }\n\n  private _isActive: boolean;\n  private _acceptedStatusCodes: number[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerStatusFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerStatusFilter.AsObject>) {\n    _value = _value || {};\n    this.isActive = _value.isActive;\n    this.acceptedStatusCodes = (_value.acceptedStatusCodes || []).slice();\n    RagCrawlerStatusFilter.refineValues(this);\n  }\n  get isActive(): boolean {\n    return this._isActive;\n  }\n  set isActive(value: boolean) {\n    this._isActive = value;\n  }\n  get acceptedStatusCodes(): number[] {\n    return this._acceptedStatusCodes;\n  }\n  set acceptedStatusCodes(value: number[]) {\n    this._acceptedStatusCodes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerStatusFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerStatusFilter.AsObject {\n    return {\n      isActive: this.isActive,\n      acceptedStatusCodes: (this.acceptedStatusCodes || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerStatusFilter.AsProtobufJSON {\n    return {\n      isActive: this.isActive,\n      acceptedStatusCodes: (this.acceptedStatusCodes || []).slice()\n    };\n  }\n}\nexport module RagCrawlerStatusFilter {\n  /**\n   * Standard JavaScript object representation for RagCrawlerStatusFilter\n   */\n  export interface AsObject {\n    isActive: boolean;\n    acceptedStatusCodes: number[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerStatusFilter\n   */\n  export interface AsProtobufJSON {\n    isActive: boolean;\n    acceptedStatusCodes: number[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerContentResult\n */\nexport class RagCrawlerContentResult implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerContentResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerContentResult();\n    RagCrawlerContentResult.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerContentResult) {\n    _instance.metadata = _instance.metadata || undefined;\n    _instance.markdown = _instance.markdown || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerContentResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.metadata = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.metadata,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.markdown = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerContentResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerContentResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.metadata) {\n      _writer.writeMessage(\n        1,\n        _instance.metadata as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.markdown) {\n      _writer.writeString(2, _instance.markdown);\n    }\n  }\n\n  private _metadata?: googleProtobuf001.Struct;\n  private _markdown: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerContentResult to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerContentResult.AsObject>) {\n    _value = _value || {};\n    this.metadata = _value.metadata\n      ? new googleProtobuf001.Struct(_value.metadata)\n      : undefined;\n    this.markdown = _value.markdown;\n    RagCrawlerContentResult.refineValues(this);\n  }\n  get metadata(): googleProtobuf001.Struct | undefined {\n    return this._metadata;\n  }\n  set metadata(value: googleProtobuf001.Struct | undefined) {\n    this._metadata = value;\n  }\n  get markdown(): string {\n    return this._markdown;\n  }\n  set markdown(value: string) {\n    this._markdown = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerContentResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerContentResult.AsObject {\n    return {\n      metadata: this.metadata ? this.metadata.toObject() : undefined,\n      markdown: this.markdown\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerContentResult.AsProtobufJSON {\n    return {\n      metadata: this.metadata ? this.metadata.toProtobufJSON(options) : null,\n      markdown: this.markdown\n    };\n  }\n}\nexport module RagCrawlerContentResult {\n  /**\n   * Standard JavaScript object representation for RagCrawlerContentResult\n   */\n  export interface AsObject {\n    metadata?: googleProtobuf001.Struct.AsObject;\n    markdown: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerContentResult\n   */\n  export interface AsProtobufJSON {\n    metadata: googleProtobuf001.Struct.AsProtobufJSON | null;\n    markdown: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerExecutionInfo\n */\nexport class RagCrawlerExecutionInfo implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerExecutionInfo';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerExecutionInfo();\n    RagCrawlerExecutionInfo.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerExecutionInfo) {\n    _instance.sslCertificate = _instance.sslCertificate || undefined;\n    _instance.success = _instance.success || false;\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerExecutionInfo,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sslCertificate = new googleProtobuf001.Struct();\n          _reader.readMessage(\n            _instance.sslCertificate,\n            googleProtobuf001.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.success = _reader.readBool();\n          break;\n        case 3:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerExecutionInfo.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerExecutionInfo,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sslCertificate) {\n      _writer.writeMessage(\n        1,\n        _instance.sslCertificate as any,\n        googleProtobuf001.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.success) {\n      _writer.writeBool(2, _instance.success);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(3, _instance.errorMessage);\n    }\n  }\n\n  private _sslCertificate?: googleProtobuf001.Struct;\n  private _success: boolean;\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerExecutionInfo to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerExecutionInfo.AsObject>) {\n    _value = _value || {};\n    this.sslCertificate = _value.sslCertificate\n      ? new googleProtobuf001.Struct(_value.sslCertificate)\n      : undefined;\n    this.success = _value.success;\n    this.errorMessage = _value.errorMessage;\n    RagCrawlerExecutionInfo.refineValues(this);\n  }\n  get sslCertificate(): googleProtobuf001.Struct | undefined {\n    return this._sslCertificate;\n  }\n  set sslCertificate(value: googleProtobuf001.Struct | undefined) {\n    this._sslCertificate = value;\n  }\n  get success(): boolean {\n    return this._success;\n  }\n  set success(value: boolean) {\n    this._success = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerExecutionInfo.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerExecutionInfo.AsObject {\n    return {\n      sslCertificate: this.sslCertificate\n        ? this.sslCertificate.toObject()\n        : undefined,\n      success: this.success,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerExecutionInfo.AsProtobufJSON {\n    return {\n      sslCertificate: this.sslCertificate\n        ? this.sslCertificate.toProtobufJSON(options)\n        : null,\n      success: this.success,\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module RagCrawlerExecutionInfo {\n  /**\n   * Standard JavaScript object representation for RagCrawlerExecutionInfo\n   */\n  export interface AsObject {\n    sslCertificate?: googleProtobuf001.Struct.AsObject;\n    success: boolean;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerExecutionInfo\n   */\n  export interface AsProtobufJSON {\n    sslCertificate: googleProtobuf001.Struct.AsProtobufJSON | null;\n    success: boolean;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagCrawlerResult\n */\nexport class RagCrawlerResult implements GrpcMessage {\n  static id = 'ondewo.nlu.RagCrawlerResult';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagCrawlerResult();\n    RagCrawlerResult.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagCrawlerResult) {\n    _instance.name = _instance.name || '';\n    _instance.crawlerName = _instance.crawlerName || '';\n    _instance.operationName = _instance.operationName || '';\n    _instance.sourceUrl = _instance.sourceUrl || '';\n    _instance.fileResource = _instance.fileResource || undefined;\n    _instance.lastCrawledDate = _instance.lastCrawledDate || undefined;\n    _instance.contentResult = _instance.contentResult || undefined;\n    _instance.pageLastUpdatedDate = _instance.pageLastUpdatedDate || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagCrawlerResult,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.crawlerName = _reader.readString();\n          break;\n        case 3:\n          _instance.operationName = _reader.readString();\n          break;\n        case 4:\n          _instance.sourceUrl = _reader.readString();\n          break;\n        case 5:\n          _instance.fileResource = new ondewoNlu016.FileResource();\n          _reader.readMessage(\n            _instance.fileResource,\n            ondewoNlu016.FileResource.deserializeBinaryFromReader\n          );\n          break;\n        case 6:\n          _instance.lastCrawledDate = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.lastCrawledDate,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.contentResult = new RagCrawlerContentResult();\n          _reader.readMessage(\n            _instance.contentResult,\n            RagCrawlerContentResult.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.pageLastUpdatedDate = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.pageLastUpdatedDate,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagCrawlerResult.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagCrawlerResult,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.crawlerName) {\n      _writer.writeString(2, _instance.crawlerName);\n    }\n    if (_instance.operationName) {\n      _writer.writeString(3, _instance.operationName);\n    }\n    if (_instance.sourceUrl) {\n      _writer.writeString(4, _instance.sourceUrl);\n    }\n    if (_instance.fileResource) {\n      _writer.writeMessage(\n        5,\n        _instance.fileResource as any,\n        ondewoNlu016.FileResource.serializeBinaryToWriter\n      );\n    }\n    if (_instance.lastCrawledDate) {\n      _writer.writeMessage(\n        6,\n        _instance.lastCrawledDate as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.contentResult) {\n      _writer.writeMessage(\n        7,\n        _instance.contentResult as any,\n        RagCrawlerContentResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.pageLastUpdatedDate) {\n      _writer.writeMessage(\n        8,\n        _instance.pageLastUpdatedDate as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _crawlerName: string;\n  private _operationName: string;\n  private _sourceUrl: string;\n  private _fileResource?: ondewoNlu016.FileResource;\n  private _lastCrawledDate?: googleProtobuf002.Timestamp;\n  private _contentResult?: RagCrawlerContentResult;\n  private _pageLastUpdatedDate?: googleProtobuf002.Timestamp;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagCrawlerResult to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagCrawlerResult.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.crawlerName = _value.crawlerName;\n    this.operationName = _value.operationName;\n    this.sourceUrl = _value.sourceUrl;\n    this.fileResource = _value.fileResource\n      ? new ondewoNlu016.FileResource(_value.fileResource)\n      : undefined;\n    this.lastCrawledDate = _value.lastCrawledDate\n      ? new googleProtobuf002.Timestamp(_value.lastCrawledDate)\n      : undefined;\n    this.contentResult = _value.contentResult\n      ? new RagCrawlerContentResult(_value.contentResult)\n      : undefined;\n    this.pageLastUpdatedDate = _value.pageLastUpdatedDate\n      ? new googleProtobuf002.Timestamp(_value.pageLastUpdatedDate)\n      : undefined;\n    RagCrawlerResult.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get crawlerName(): string {\n    return this._crawlerName;\n  }\n  set crawlerName(value: string) {\n    this._crawlerName = value;\n  }\n  get operationName(): string {\n    return this._operationName;\n  }\n  set operationName(value: string) {\n    this._operationName = value;\n  }\n  get sourceUrl(): string {\n    return this._sourceUrl;\n  }\n  set sourceUrl(value: string) {\n    this._sourceUrl = value;\n  }\n  get fileResource(): ondewoNlu016.FileResource | undefined {\n    return this._fileResource;\n  }\n  set fileResource(value: ondewoNlu016.FileResource | undefined) {\n    this._fileResource = value;\n  }\n  get lastCrawledDate(): googleProtobuf002.Timestamp | undefined {\n    return this._lastCrawledDate;\n  }\n  set lastCrawledDate(value: googleProtobuf002.Timestamp | undefined) {\n    this._lastCrawledDate = value;\n  }\n  get contentResult(): RagCrawlerContentResult | undefined {\n    return this._contentResult;\n  }\n  set contentResult(value: RagCrawlerContentResult | undefined) {\n    this._contentResult = value;\n  }\n  get pageLastUpdatedDate(): googleProtobuf002.Timestamp | undefined {\n    return this._pageLastUpdatedDate;\n  }\n  set pageLastUpdatedDate(value: googleProtobuf002.Timestamp | undefined) {\n    this._pageLastUpdatedDate = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagCrawlerResult.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagCrawlerResult.AsObject {\n    return {\n      name: this.name,\n      crawlerName: this.crawlerName,\n      operationName: this.operationName,\n      sourceUrl: this.sourceUrl,\n      fileResource: this.fileResource\n        ? this.fileResource.toObject()\n        : undefined,\n      lastCrawledDate: this.lastCrawledDate\n        ? this.lastCrawledDate.toObject()\n        : undefined,\n      contentResult: this.contentResult\n        ? this.contentResult.toObject()\n        : undefined,\n      pageLastUpdatedDate: this.pageLastUpdatedDate\n        ? this.pageLastUpdatedDate.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagCrawlerResult.AsProtobufJSON {\n    return {\n      name: this.name,\n      crawlerName: this.crawlerName,\n      operationName: this.operationName,\n      sourceUrl: this.sourceUrl,\n      fileResource: this.fileResource\n        ? this.fileResource.toProtobufJSON(options)\n        : null,\n      lastCrawledDate: this.lastCrawledDate\n        ? this.lastCrawledDate.toProtobufJSON(options)\n        : null,\n      contentResult: this.contentResult\n        ? this.contentResult.toProtobufJSON(options)\n        : null,\n      pageLastUpdatedDate: this.pageLastUpdatedDate\n        ? this.pageLastUpdatedDate.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module RagCrawlerResult {\n  /**\n   * Standard JavaScript object representation for RagCrawlerResult\n   */\n  export interface AsObject {\n    name: string;\n    crawlerName: string;\n    operationName: string;\n    sourceUrl: string;\n    fileResource?: ondewoNlu016.FileResource.AsObject;\n    lastCrawledDate?: googleProtobuf002.Timestamp.AsObject;\n    contentResult?: RagCrawlerContentResult.AsObject;\n    pageLastUpdatedDate?: googleProtobuf002.Timestamp.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagCrawlerResult\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    crawlerName: string;\n    operationName: string;\n    sourceUrl: string;\n    fileResource: ondewoNlu016.FileResource.AsProtobufJSON | null;\n    lastCrawledDate: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    contentResult: RagCrawlerContentResult.AsProtobufJSON | null;\n    pageLastUpdatedDate: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagStartCrawlerRequest\n */\nexport class RagStartCrawlerRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagStartCrawlerRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagStartCrawlerRequest();\n    RagStartCrawlerRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagStartCrawlerRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawlerName = _instance.crawlerName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagStartCrawlerRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.crawlerName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagStartCrawlerRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagStartCrawlerRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawlerName) {\n      _writer.writeString(3, _instance.crawlerName);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawlerName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagStartCrawlerRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagStartCrawlerRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawlerName = _value.crawlerName;\n    RagStartCrawlerRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawlerName(): string {\n    return this._crawlerName;\n  }\n  set crawlerName(value: string) {\n    this._crawlerName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagStartCrawlerRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagStartCrawlerRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagStartCrawlerRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName\n    };\n  }\n}\nexport module RagStartCrawlerRequest {\n  /**\n   * Standard JavaScript object representation for RagStartCrawlerRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagStartCrawlerRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerRunRequest\n */\nexport class RagGetCrawlerRunRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerRunRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerRunRequest();\n    RagGetCrawlerRunRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerRunRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawlerRunName = _instance.crawlerRunName || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerRunRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.crawlerRunName = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerRunRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerRunRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawlerRunName) {\n      _writer.writeString(3, _instance.crawlerRunName);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawlerRunName: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerRunRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagGetCrawlerRunRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawlerRunName = _value.crawlerRunName;\n    RagGetCrawlerRunRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawlerRunName(): string {\n    return this._crawlerRunName;\n  }\n  set crawlerRunName(value: string) {\n    this._crawlerRunName = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerRunRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerRunRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerRunName: this.crawlerRunName\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerRunRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerRunName: this.crawlerRunName\n    };\n  }\n}\nexport module RagGetCrawlerRunRequest {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerRunRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawlerRunName: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerRunRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawlerRunName: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagListCrawlerRunsRequest\n */\nexport class RagListCrawlerRunsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagListCrawlerRunsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagListCrawlerRunsRequest();\n    RagListCrawlerRunsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagListCrawlerRunsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawlerName = _instance.crawlerName || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.status = _instance.status || 0;\n    _instance.orderby = _instance.orderby || '';\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagListCrawlerRunsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.crawlerName = _reader.readString();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.status = _reader.readEnum();\n          break;\n        case 6:\n          _instance.orderby = _reader.readString();\n          break;\n        case 7:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagListCrawlerRunsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagListCrawlerRunsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawlerName) {\n      _writer.writeString(3, _instance.crawlerName);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(5, _instance.status);\n    }\n    if (_instance.orderby) {\n      _writer.writeString(6, _instance.orderby);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(7, _instance.sortingMode);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawlerName: string;\n  private _pageToken: string;\n  private _status: ondewoNlu007.OperationMetadata.Status;\n  private _orderby: string;\n  private _sortingMode: ondewoNlu008.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagListCrawlerRunsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagListCrawlerRunsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawlerName = _value.crawlerName;\n    this.pageToken = _value.pageToken;\n    this.status = _value.status;\n    this.orderby = _value.orderby;\n    this.sortingMode = _value.sortingMode;\n    RagListCrawlerRunsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawlerName(): string {\n    return this._crawlerName;\n  }\n  set crawlerName(value: string) {\n    this._crawlerName = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get status(): ondewoNlu007.OperationMetadata.Status {\n    return this._status;\n  }\n  set status(value: ondewoNlu007.OperationMetadata.Status) {\n    this._status = value;\n  }\n  get orderby(): string {\n    return this._orderby;\n  }\n  set orderby(value: string) {\n    this._orderby = value;\n  }\n  get sortingMode(): ondewoNlu008.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu008.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagListCrawlerRunsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagListCrawlerRunsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName,\n      pageToken: this.pageToken,\n      status: this.status,\n      orderby: this.orderby,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagListCrawlerRunsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName,\n      pageToken: this.pageToken,\n      status:\n        ondewoNlu007.OperationMetadata.Status[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      orderby: this.orderby,\n      sortingMode:\n        ondewoNlu008.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module RagListCrawlerRunsRequest {\n  /**\n   * Standard JavaScript object representation for RagListCrawlerRunsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n    pageToken: string;\n    status: ondewoNlu007.OperationMetadata.Status;\n    orderby: string;\n    sortingMode: ondewoNlu008.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for RagListCrawlerRunsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n    pageToken: string;\n    status: string;\n    orderby: string;\n    sortingMode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagListCrawlerRunsResponse\n */\nexport class RagListCrawlerRunsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagListCrawlerRunsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagListCrawlerRunsResponse();\n    RagListCrawlerRunsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagListCrawlerRunsResponse) {\n    _instance.crawlerRuns = _instance.crawlerRuns || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagListCrawlerRunsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ondewoNlu015.Operation();\n          _reader.readMessage(\n            messageInitializer1,\n            ondewoNlu015.Operation.deserializeBinaryFromReader\n          );\n          (_instance.crawlerRuns = _instance.crawlerRuns || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagListCrawlerRunsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagListCrawlerRunsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.crawlerRuns && _instance.crawlerRuns.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.crawlerRuns as any,\n        ondewoNlu015.Operation.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _crawlerRuns?: ondewoNlu015.Operation[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagListCrawlerRunsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagListCrawlerRunsResponse.AsObject>) {\n    _value = _value || {};\n    this.crawlerRuns = (_value.crawlerRuns || []).map(\n      m => new ondewoNlu015.Operation(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    RagListCrawlerRunsResponse.refineValues(this);\n  }\n  get crawlerRuns(): ondewoNlu015.Operation[] | undefined {\n    return this._crawlerRuns;\n  }\n  set crawlerRuns(value: ondewoNlu015.Operation[] | undefined) {\n    this._crawlerRuns = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagListCrawlerRunsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagListCrawlerRunsResponse.AsObject {\n    return {\n      crawlerRuns: (this.crawlerRuns || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagListCrawlerRunsResponse.AsProtobufJSON {\n    return {\n      crawlerRuns: (this.crawlerRuns || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module RagListCrawlerRunsResponse {\n  /**\n   * Standard JavaScript object representation for RagListCrawlerRunsResponse\n   */\n  export interface AsObject {\n    crawlerRuns?: ondewoNlu015.Operation.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagListCrawlerRunsResponse\n   */\n  export interface AsProtobufJSON {\n    crawlerRuns: ondewoNlu015.Operation.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteCrawlerRunsRequest\n */\nexport class RagDeleteCrawlerRunsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteCrawlerRunsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteCrawlerRunsRequest();\n    RagDeleteCrawlerRunsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteCrawlerRunsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawlerRunNames = _instance.crawlerRunNames || [];\n    _instance.crawlerNames = _instance.crawlerNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteCrawlerRunsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          (_instance.crawlerRunNames = _instance.crawlerRunNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          (_instance.crawlerNames = _instance.crawlerNames || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteCrawlerRunsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteCrawlerRunsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawlerRunNames && _instance.crawlerRunNames.length) {\n      _writer.writeRepeatedString(3, _instance.crawlerRunNames);\n    }\n    if (_instance.crawlerNames && _instance.crawlerNames.length) {\n      _writer.writeRepeatedString(4, _instance.crawlerNames);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawlerRunNames: string[];\n  private _crawlerNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteCrawlerRunsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagDeleteCrawlerRunsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawlerRunNames = (_value.crawlerRunNames || []).slice();\n    this.crawlerNames = (_value.crawlerNames || []).slice();\n    RagDeleteCrawlerRunsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawlerRunNames(): string[] {\n    return this._crawlerRunNames;\n  }\n  set crawlerRunNames(value: string[]) {\n    this._crawlerRunNames = value;\n  }\n  get crawlerNames(): string[] {\n    return this._crawlerNames;\n  }\n  set crawlerNames(value: string[]) {\n    this._crawlerNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteCrawlerRunsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteCrawlerRunsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerRunNames: (this.crawlerRunNames || []).slice(),\n      crawlerNames: (this.crawlerNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteCrawlerRunsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerRunNames: (this.crawlerRunNames || []).slice(),\n      crawlerNames: (this.crawlerNames || []).slice()\n    };\n  }\n}\nexport module RagDeleteCrawlerRunsRequest {\n  /**\n   * Standard JavaScript object representation for RagDeleteCrawlerRunsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawlerRunNames: string[];\n    crawlerNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteCrawlerRunsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawlerRunNames: string[];\n    crawlerNames: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagDeleteCrawlerRunsResponse\n */\nexport class RagDeleteCrawlerRunsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagDeleteCrawlerRunsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagDeleteCrawlerRunsResponse();\n    RagDeleteCrawlerRunsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagDeleteCrawlerRunsResponse) {\n    _instance.deletedCount = _instance.deletedCount || 0;\n    _instance.deletedRunNames = _instance.deletedRunNames || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagDeleteCrawlerRunsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.deletedCount = _reader.readInt32();\n          break;\n        case 2:\n          (_instance.deletedRunNames = _instance.deletedRunNames || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagDeleteCrawlerRunsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagDeleteCrawlerRunsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.deletedCount) {\n      _writer.writeInt32(1, _instance.deletedCount);\n    }\n    if (_instance.deletedRunNames && _instance.deletedRunNames.length) {\n      _writer.writeRepeatedString(2, _instance.deletedRunNames);\n    }\n  }\n\n  private _deletedCount: number;\n  private _deletedRunNames: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagDeleteCrawlerRunsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RagDeleteCrawlerRunsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.deletedCount = _value.deletedCount;\n    this.deletedRunNames = (_value.deletedRunNames || []).slice();\n    RagDeleteCrawlerRunsResponse.refineValues(this);\n  }\n  get deletedCount(): number {\n    return this._deletedCount;\n  }\n  set deletedCount(value: number) {\n    this._deletedCount = value;\n  }\n  get deletedRunNames(): string[] {\n    return this._deletedRunNames;\n  }\n  set deletedRunNames(value: string[]) {\n    this._deletedRunNames = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagDeleteCrawlerRunsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagDeleteCrawlerRunsResponse.AsObject {\n    return {\n      deletedCount: this.deletedCount,\n      deletedRunNames: (this.deletedRunNames || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagDeleteCrawlerRunsResponse.AsProtobufJSON {\n    return {\n      deletedCount: this.deletedCount,\n      deletedRunNames: (this.deletedRunNames || []).slice()\n    };\n  }\n}\nexport module RagDeleteCrawlerRunsResponse {\n  /**\n   * Standard JavaScript object representation for RagDeleteCrawlerRunsResponse\n   */\n  export interface AsObject {\n    deletedCount: number;\n    deletedRunNames: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagDeleteCrawlerRunsResponse\n   */\n  export interface AsProtobufJSON {\n    deletedCount: number;\n    deletedRunNames: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagStopCrawlerRequest\n */\nexport class RagStopCrawlerRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagStopCrawlerRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagStopCrawlerRequest();\n    RagStopCrawlerRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagStopCrawlerRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagStopCrawlerRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagStopCrawlerRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagStopCrawlerRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.name) {\n      _writer.writeString(3, _instance.name);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagStopCrawlerRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagStopCrawlerRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.name = _value.name;\n    RagStopCrawlerRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagStopCrawlerRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagStopCrawlerRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagStopCrawlerRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      name: this.name\n    };\n  }\n}\nexport module RagStopCrawlerRequest {\n  /**\n   * Standard JavaScript object representation for RagStopCrawlerRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagStopCrawlerRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagStopCrawlerResponse\n */\nexport class RagStopCrawlerResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagStopCrawlerResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagStopCrawlerResponse();\n    RagStopCrawlerResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagStopCrawlerResponse) {\n    _instance.name = _instance.name || '';\n    _instance.errorMessage = _instance.errorMessage || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagStopCrawlerResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.errorMessage = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagStopCrawlerResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagStopCrawlerResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.errorMessage) {\n      _writer.writeString(2, _instance.errorMessage);\n    }\n  }\n\n  private _name: string;\n  private _errorMessage: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagStopCrawlerResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagStopCrawlerResponse.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.errorMessage = _value.errorMessage;\n    RagStopCrawlerResponse.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get errorMessage(): string {\n    return this._errorMessage;\n  }\n  set errorMessage(value: string) {\n    this._errorMessage = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagStopCrawlerResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagStopCrawlerResponse.AsObject {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagStopCrawlerResponse.AsProtobufJSON {\n    return {\n      name: this.name,\n      errorMessage: this.errorMessage\n    };\n  }\n}\nexport module RagStopCrawlerResponse {\n  /**\n   * Standard JavaScript object representation for RagStopCrawlerResponse\n   */\n  export interface AsObject {\n    name: string;\n    errorMessage: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagStopCrawlerResponse\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    errorMessage: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerResultsRequest\n */\nexport class RagGetCrawlerResultsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerResultsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerResultsRequest();\n    RagGetCrawlerResultsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerResultsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.operationName = _instance.operationName || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.urlQuery = _instance.urlQuery || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.orderby = _instance.orderby || '';\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerResultsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.operationName = _reader.readString();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.urlQuery = _reader.readString();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.orderby = _reader.readString();\n          break;\n        case 8:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerResultsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerResultsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.operationName) {\n      _writer.writeString(3, _instance.operationName);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.urlQuery) {\n      _writer.writeString(5, _instance.urlQuery);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.orderby) {\n      _writer.writeString(7, _instance.orderby);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(8, _instance.sortingMode);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _operationName: string;\n  private _pageToken: string;\n  private _urlQuery: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n  private _orderby: string;\n  private _sortingMode: ondewoNlu008.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerResultsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagGetCrawlerResultsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.operationName = _value.operationName;\n    this.pageToken = _value.pageToken;\n    this.urlQuery = _value.urlQuery;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    this.orderby = _value.orderby;\n    this.sortingMode = _value.sortingMode;\n    RagGetCrawlerResultsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get operationName(): string {\n    return this._operationName;\n  }\n  set operationName(value: string) {\n    this._operationName = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get urlQuery(): string {\n    return this._urlQuery;\n  }\n  set urlQuery(value: string) {\n    this._urlQuery = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get orderby(): string {\n    return this._orderby;\n  }\n  set orderby(value: string) {\n    this._orderby = value;\n  }\n  get sortingMode(): ondewoNlu008.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu008.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerResultsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerResultsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      operationName: this.operationName,\n      pageToken: this.pageToken,\n      urlQuery: this.urlQuery,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      orderby: this.orderby,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerResultsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      operationName: this.operationName,\n      pageToken: this.pageToken,\n      urlQuery: this.urlQuery,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      orderby: this.orderby,\n      sortingMode:\n        ondewoNlu008.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module RagGetCrawlerResultsRequest {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerResultsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    operationName: string;\n    pageToken: string;\n    urlQuery: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n    orderby: string;\n    sortingMode: ondewoNlu008.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerResultsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    operationName: string;\n    pageToken: string;\n    urlQuery: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    orderby: string;\n    sortingMode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerResultsResponse\n */\nexport class RagGetCrawlerResultsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerResultsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerResultsResponse();\n    RagGetCrawlerResultsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerResultsResponse) {\n    _instance.crawlerResults = _instance.crawlerResults || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n    _instance.totalSize = _instance.totalSize || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerResultsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RagCrawlerResult();\n          _reader.readMessage(\n            messageInitializer1,\n            RagCrawlerResult.deserializeBinaryFromReader\n          );\n          (_instance.crawlerResults = _instance.crawlerResults || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        case 3:\n          _instance.totalSize = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerResultsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerResultsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.crawlerResults && _instance.crawlerResults.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.crawlerResults as any,\n        RagCrawlerResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n    if (_instance.totalSize) {\n      _writer.writeInt32(3, _instance.totalSize);\n    }\n  }\n\n  private _crawlerResults?: RagCrawlerResult[];\n  private _nextPageToken: string;\n  private _totalSize: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerResultsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RagGetCrawlerResultsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.crawlerResults = (_value.crawlerResults || []).map(\n      m => new RagCrawlerResult(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    this.totalSize = _value.totalSize;\n    RagGetCrawlerResultsResponse.refineValues(this);\n  }\n  get crawlerResults(): RagCrawlerResult[] | undefined {\n    return this._crawlerResults;\n  }\n  set crawlerResults(value: RagCrawlerResult[] | undefined) {\n    this._crawlerResults = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n  get totalSize(): number {\n    return this._totalSize;\n  }\n  set totalSize(value: number) {\n    this._totalSize = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerResultsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerResultsResponse.AsObject {\n    return {\n      crawlerResults: (this.crawlerResults || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken,\n      totalSize: this.totalSize\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerResultsResponse.AsProtobufJSON {\n    return {\n      crawlerResults: (this.crawlerResults || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken,\n      totalSize: this.totalSize\n    };\n  }\n}\nexport module RagGetCrawlerResultsResponse {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerResultsResponse\n   */\n  export interface AsObject {\n    crawlerResults?: RagCrawlerResult.AsObject[];\n    nextPageToken: string;\n    totalSize: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerResultsResponse\n   */\n  export interface AsProtobufJSON {\n    crawlerResults: RagCrawlerResult.AsProtobufJSON[] | null;\n    nextPageToken: string;\n    totalSize: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerResultRequest\n */\nexport class RagGetCrawlerResultRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerResultRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerResultRequest();\n    RagGetCrawlerResultRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerResultRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.operationName = _instance.operationName || '';\n    _instance.url = _instance.url || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerResultRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.operationName = _reader.readString();\n          break;\n        case 4:\n          _instance.url = _reader.readString();\n          break;\n        case 5:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerResultRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerResultRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.operationName) {\n      _writer.writeString(3, _instance.operationName);\n    }\n    if (_instance.url) {\n      _writer.writeString(4, _instance.url);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        5,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _operationName: string;\n  private _url: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerResultRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagGetCrawlerResultRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.operationName = _value.operationName;\n    this.url = _value.url;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagGetCrawlerResultRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get operationName(): string {\n    return this._operationName;\n  }\n  set operationName(value: string) {\n    this._operationName = value;\n  }\n  get url(): string {\n    return this._url;\n  }\n  set url(value: string) {\n    this._url = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerResultRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerResultRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      operationName: this.operationName,\n      url: this.url,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerResultRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      operationName: this.operationName,\n      url: this.url,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagGetCrawlerResultRequest {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerResultRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    operationName: string;\n    url: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerResultRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    operationName: string;\n    url: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagAddCrawlerResultsToDatasetsRequest\n */\nexport class RagAddCrawlerResultsToDatasetsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagAddCrawlerResultsToDatasetsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagAddCrawlerResultsToDatasetsRequest();\n    RagAddCrawlerResultsToDatasetsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagAddCrawlerResultsToDatasetsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawlerNames = _instance.crawlerNames || [];\n    _instance.crawlerResultNames = _instance.crawlerResultNames || [];\n    _instance.datasetIds = _instance.datasetIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagAddCrawlerResultsToDatasetsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          (_instance.crawlerNames = _instance.crawlerNames || []).push(\n            _reader.readString()\n          );\n          break;\n        case 4:\n          (_instance.crawlerResultNames =\n            _instance.crawlerResultNames || []).push(_reader.readString());\n          break;\n        case 5:\n          (_instance.datasetIds = _instance.datasetIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagAddCrawlerResultsToDatasetsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagAddCrawlerResultsToDatasetsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawlerNames && _instance.crawlerNames.length) {\n      _writer.writeRepeatedString(3, _instance.crawlerNames);\n    }\n    if (_instance.crawlerResultNames && _instance.crawlerResultNames.length) {\n      _writer.writeRepeatedString(4, _instance.crawlerResultNames);\n    }\n    if (_instance.datasetIds && _instance.datasetIds.length) {\n      _writer.writeRepeatedString(5, _instance.datasetIds);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawlerNames: string[];\n  private _crawlerResultNames: string[];\n  private _datasetIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagAddCrawlerResultsToDatasetsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RagAddCrawlerResultsToDatasetsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawlerNames = (_value.crawlerNames || []).slice();\n    this.crawlerResultNames = (_value.crawlerResultNames || []).slice();\n    this.datasetIds = (_value.datasetIds || []).slice();\n    RagAddCrawlerResultsToDatasetsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawlerNames(): string[] {\n    return this._crawlerNames;\n  }\n  set crawlerNames(value: string[]) {\n    this._crawlerNames = value;\n  }\n  get crawlerResultNames(): string[] {\n    return this._crawlerResultNames;\n  }\n  set crawlerResultNames(value: string[]) {\n    this._crawlerResultNames = value;\n  }\n  get datasetIds(): string[] {\n    return this._datasetIds;\n  }\n  set datasetIds(value: string[]) {\n    this._datasetIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagAddCrawlerResultsToDatasetsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagAddCrawlerResultsToDatasetsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerNames: (this.crawlerNames || []).slice(),\n      crawlerResultNames: (this.crawlerResultNames || []).slice(),\n      datasetIds: (this.datasetIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagAddCrawlerResultsToDatasetsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerNames: (this.crawlerNames || []).slice(),\n      crawlerResultNames: (this.crawlerResultNames || []).slice(),\n      datasetIds: (this.datasetIds || []).slice()\n    };\n  }\n}\nexport module RagAddCrawlerResultsToDatasetsRequest {\n  /**\n   * Standard JavaScript object representation for RagAddCrawlerResultsToDatasetsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawlerNames: string[];\n    crawlerResultNames: string[];\n    datasetIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagAddCrawlerResultsToDatasetsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawlerNames: string[];\n    crawlerResultNames: string[];\n    datasetIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagRemoveCrawlerResultsFromDatasetsRequest\n */\nexport class RagRemoveCrawlerResultsFromDatasetsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagRemoveCrawlerResultsFromDatasetsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagRemoveCrawlerResultsFromDatasetsRequest();\n    RagRemoveCrawlerResultsFromDatasetsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagRemoveCrawlerResultsFromDatasetsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawlerName = _instance.crawlerName || '';\n    _instance.crawlerResultNames = _instance.crawlerResultNames || [];\n    _instance.datasetIds = _instance.datasetIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagRemoveCrawlerResultsFromDatasetsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.crawlerName = _reader.readString();\n          break;\n        case 4:\n          (_instance.crawlerResultNames =\n            _instance.crawlerResultNames || []).push(_reader.readString());\n          break;\n        case 5:\n          (_instance.datasetIds = _instance.datasetIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagRemoveCrawlerResultsFromDatasetsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagRemoveCrawlerResultsFromDatasetsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawlerName) {\n      _writer.writeString(3, _instance.crawlerName);\n    }\n    if (_instance.crawlerResultNames && _instance.crawlerResultNames.length) {\n      _writer.writeRepeatedString(4, _instance.crawlerResultNames);\n    }\n    if (_instance.datasetIds && _instance.datasetIds.length) {\n      _writer.writeRepeatedString(5, _instance.datasetIds);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawlerName: string;\n  private _crawlerResultNames: string[];\n  private _datasetIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagRemoveCrawlerResultsFromDatasetsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<\n      RagRemoveCrawlerResultsFromDatasetsRequest.AsObject\n    >\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawlerName = _value.crawlerName;\n    this.crawlerResultNames = (_value.crawlerResultNames || []).slice();\n    this.datasetIds = (_value.datasetIds || []).slice();\n    RagRemoveCrawlerResultsFromDatasetsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawlerName(): string {\n    return this._crawlerName;\n  }\n  set crawlerName(value: string) {\n    this._crawlerName = value;\n  }\n  get crawlerResultNames(): string[] {\n    return this._crawlerResultNames;\n  }\n  set crawlerResultNames(value: string[]) {\n    this._crawlerResultNames = value;\n  }\n  get datasetIds(): string[] {\n    return this._datasetIds;\n  }\n  set datasetIds(value: string[]) {\n    this._datasetIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagRemoveCrawlerResultsFromDatasetsRequest.serializeBinaryToWriter(\n      this,\n      writer\n    );\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagRemoveCrawlerResultsFromDatasetsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName,\n      crawlerResultNames: (this.crawlerResultNames || []).slice(),\n      datasetIds: (this.datasetIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagRemoveCrawlerResultsFromDatasetsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName,\n      crawlerResultNames: (this.crawlerResultNames || []).slice(),\n      datasetIds: (this.datasetIds || []).slice()\n    };\n  }\n}\nexport module RagRemoveCrawlerResultsFromDatasetsRequest {\n  /**\n   * Standard JavaScript object representation for RagRemoveCrawlerResultsFromDatasetsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n    crawlerResultNames: string[];\n    datasetIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RagRemoveCrawlerResultsFromDatasetsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n    crawlerResultNames: string[];\n    datasetIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerAttachedDatasetsRequest\n */\nexport class RagGetCrawlerAttachedDatasetsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerAttachedDatasetsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerAttachedDatasetsRequest();\n    RagGetCrawlerAttachedDatasetsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerAttachedDatasetsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.crawlerName = _instance.crawlerName || '';\n    _instance.pageSize = _instance.pageSize || 0;\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.fieldMask = _instance.fieldMask || undefined;\n    _instance.orderby = _instance.orderby || '';\n    _instance.sortingMode = _instance.sortingMode || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerAttachedDatasetsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.crawlerName = _reader.readString();\n          break;\n        case 4:\n          _instance.pageSize = _reader.readInt32();\n          break;\n        case 5:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 6:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.orderby = _reader.readString();\n          break;\n        case 8:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerAttachedDatasetsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerAttachedDatasetsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.crawlerName) {\n      _writer.writeString(3, _instance.crawlerName);\n    }\n    if (_instance.pageSize) {\n      _writer.writeInt32(4, _instance.pageSize);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(5, _instance.pageToken);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        6,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n    if (_instance.orderby) {\n      _writer.writeString(7, _instance.orderby);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(8, _instance.sortingMode);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _crawlerName: string;\n  private _pageSize: number;\n  private _pageToken: string;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n  private _orderby: string;\n  private _sortingMode: ondewoNlu008.SortingMode;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerAttachedDatasetsRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RagGetCrawlerAttachedDatasetsRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.crawlerName = _value.crawlerName;\n    this.pageSize = _value.pageSize;\n    this.pageToken = _value.pageToken;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    this.orderby = _value.orderby;\n    this.sortingMode = _value.sortingMode;\n    RagGetCrawlerAttachedDatasetsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get crawlerName(): string {\n    return this._crawlerName;\n  }\n  set crawlerName(value: string) {\n    this._crawlerName = value;\n  }\n  get pageSize(): number {\n    return this._pageSize;\n  }\n  set pageSize(value: number) {\n    this._pageSize = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n  get orderby(): string {\n    return this._orderby;\n  }\n  set orderby(value: string) {\n    this._orderby = value;\n  }\n  get sortingMode(): ondewoNlu008.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu008.SortingMode) {\n    this._sortingMode = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerAttachedDatasetsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerAttachedDatasetsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName,\n      pageSize: this.pageSize,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined,\n      orderby: this.orderby,\n      sortingMode: this.sortingMode\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerAttachedDatasetsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      crawlerName: this.crawlerName,\n      pageSize: this.pageSize,\n      pageToken: this.pageToken,\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null,\n      orderby: this.orderby,\n      sortingMode:\n        ondewoNlu008.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ]\n    };\n  }\n}\nexport module RagGetCrawlerAttachedDatasetsRequest {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerAttachedDatasetsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n    pageSize: number;\n    pageToken: string;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n    orderby: string;\n    sortingMode: ondewoNlu008.SortingMode;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerAttachedDatasetsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    crawlerName: string;\n    pageSize: number;\n    pageToken: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n    orderby: string;\n    sortingMode: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerAttachedDatasetsResponse\n */\nexport class RagGetCrawlerAttachedDatasetsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerAttachedDatasetsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerAttachedDatasetsResponse();\n    RagGetCrawlerAttachedDatasetsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerAttachedDatasetsResponse) {\n    _instance.datasets = _instance.datasets || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerAttachedDatasetsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RagDataset();\n          _reader.readMessage(\n            messageInitializer1,\n            RagDataset.deserializeBinaryFromReader\n          );\n          (_instance.datasets = _instance.datasets || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerAttachedDatasetsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerAttachedDatasetsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.datasets && _instance.datasets.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.datasets as any,\n        RagDataset.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _datasets?: RagDataset[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerAttachedDatasetsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RagGetCrawlerAttachedDatasetsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.datasets = (_value.datasets || []).map(m => new RagDataset(m));\n    this.nextPageToken = _value.nextPageToken;\n    RagGetCrawlerAttachedDatasetsResponse.refineValues(this);\n  }\n  get datasets(): RagDataset[] | undefined {\n    return this._datasets;\n  }\n  set datasets(value: RagDataset[] | undefined) {\n    this._datasets = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerAttachedDatasetsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerAttachedDatasetsResponse.AsObject {\n    return {\n      datasets: (this.datasets || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerAttachedDatasetsResponse.AsProtobufJSON {\n    return {\n      datasets: (this.datasets || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module RagGetCrawlerAttachedDatasetsResponse {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerAttachedDatasetsResponse\n   */\n  export interface AsObject {\n    datasets?: RagDataset.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerAttachedDatasetsResponse\n   */\n  export interface AsProtobufJSON {\n    datasets: RagDataset.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerRunLogsRequest\n */\nexport class RagGetCrawlerRunLogsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerRunLogsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerRunLogsRequest();\n    RagGetCrawlerRunLogsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerRunLogsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.operationName = _instance.operationName || '';\n    _instance.pageToken = _instance.pageToken || '';\n    _instance.pageSize = _instance.pageSize || 0;\n    _instance.levelFilters = _instance.levelFilters || [];\n    _instance.phaseFilter = _instance.phaseFilter || '';\n    _instance.searchQuery = _instance.searchQuery || '';\n    _instance.startTime = _instance.startTime || undefined;\n    _instance.endTime = _instance.endTime || undefined;\n    _instance.sourceUrlFilter = _instance.sourceUrlFilter || '';\n    _instance.orderby = _instance.orderby || '';\n    _instance.sortingMode = _instance.sortingMode || 0;\n    _instance.fieldMask = _instance.fieldMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerRunLogsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.operationName = _reader.readString();\n          break;\n        case 4:\n          _instance.pageToken = _reader.readString();\n          break;\n        case 5:\n          _instance.pageSize = _reader.readInt32();\n          break;\n        case 6:\n          _reader.readPackableEnumInto(\n            (_instance.levelFilters = _instance.levelFilters || [])\n          );\n          break;\n        case 7:\n          _instance.phaseFilter = _reader.readString();\n          break;\n        case 8:\n          _instance.searchQuery = _reader.readString();\n          break;\n        case 9:\n          _instance.startTime = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.startTime,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          _instance.endTime = new googleProtobuf002.Timestamp();\n          _reader.readMessage(\n            _instance.endTime,\n            googleProtobuf002.Timestamp.deserializeBinaryFromReader\n          );\n          break;\n        case 11:\n          _instance.sourceUrlFilter = _reader.readString();\n          break;\n        case 12:\n          _instance.orderby = _reader.readString();\n          break;\n        case 13:\n          _instance.sortingMode = _reader.readEnum();\n          break;\n        case 14:\n          _instance.fieldMask = new googleProtobuf000.FieldMask();\n          _reader.readMessage(\n            _instance.fieldMask,\n            googleProtobuf000.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerRunLogsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerRunLogsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.operationName) {\n      _writer.writeString(3, _instance.operationName);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(4, _instance.pageToken);\n    }\n    if (_instance.pageSize) {\n      _writer.writeInt32(5, _instance.pageSize);\n    }\n    if (_instance.levelFilters && _instance.levelFilters.length) {\n      _writer.writePackedEnum(6, _instance.levelFilters);\n    }\n    if (_instance.phaseFilter) {\n      _writer.writeString(7, _instance.phaseFilter);\n    }\n    if (_instance.searchQuery) {\n      _writer.writeString(8, _instance.searchQuery);\n    }\n    if (_instance.startTime) {\n      _writer.writeMessage(\n        9,\n        _instance.startTime as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.endTime) {\n      _writer.writeMessage(\n        10,\n        _instance.endTime as any,\n        googleProtobuf002.Timestamp.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sourceUrlFilter) {\n      _writer.writeString(11, _instance.sourceUrlFilter);\n    }\n    if (_instance.orderby) {\n      _writer.writeString(12, _instance.orderby);\n    }\n    if (_instance.sortingMode) {\n      _writer.writeEnum(13, _instance.sortingMode);\n    }\n    if (_instance.fieldMask) {\n      _writer.writeMessage(\n        14,\n        _instance.fieldMask as any,\n        googleProtobuf000.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _operationName: string;\n  private _pageToken: string;\n  private _pageSize: number;\n  private _levelFilters: ondewoNlu008.LogSeverity[];\n  private _phaseFilter: string;\n  private _searchQuery: string;\n  private _startTime?: googleProtobuf002.Timestamp;\n  private _endTime?: googleProtobuf002.Timestamp;\n  private _sourceUrlFilter: string;\n  private _orderby: string;\n  private _sortingMode: ondewoNlu008.SortingMode;\n  private _fieldMask?: googleProtobuf000.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerRunLogsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RagGetCrawlerRunLogsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.operationName = _value.operationName;\n    this.pageToken = _value.pageToken;\n    this.pageSize = _value.pageSize;\n    this.levelFilters = (_value.levelFilters || []).slice();\n    this.phaseFilter = _value.phaseFilter;\n    this.searchQuery = _value.searchQuery;\n    this.startTime = _value.startTime\n      ? new googleProtobuf002.Timestamp(_value.startTime)\n      : undefined;\n    this.endTime = _value.endTime\n      ? new googleProtobuf002.Timestamp(_value.endTime)\n      : undefined;\n    this.sourceUrlFilter = _value.sourceUrlFilter;\n    this.orderby = _value.orderby;\n    this.sortingMode = _value.sortingMode;\n    this.fieldMask = _value.fieldMask\n      ? new googleProtobuf000.FieldMask(_value.fieldMask)\n      : undefined;\n    RagGetCrawlerRunLogsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get operationName(): string {\n    return this._operationName;\n  }\n  set operationName(value: string) {\n    this._operationName = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n  get pageSize(): number {\n    return this._pageSize;\n  }\n  set pageSize(value: number) {\n    this._pageSize = value;\n  }\n  get levelFilters(): ondewoNlu008.LogSeverity[] {\n    return this._levelFilters;\n  }\n  set levelFilters(value: ondewoNlu008.LogSeverity[]) {\n    this._levelFilters = value;\n  }\n  get phaseFilter(): string {\n    return this._phaseFilter;\n  }\n  set phaseFilter(value: string) {\n    this._phaseFilter = value;\n  }\n  get searchQuery(): string {\n    return this._searchQuery;\n  }\n  set searchQuery(value: string) {\n    this._searchQuery = value;\n  }\n  get startTime(): googleProtobuf002.Timestamp | undefined {\n    return this._startTime;\n  }\n  set startTime(value: googleProtobuf002.Timestamp | undefined) {\n    this._startTime = value;\n  }\n  get endTime(): googleProtobuf002.Timestamp | undefined {\n    return this._endTime;\n  }\n  set endTime(value: googleProtobuf002.Timestamp | undefined) {\n    this._endTime = value;\n  }\n  get sourceUrlFilter(): string {\n    return this._sourceUrlFilter;\n  }\n  set sourceUrlFilter(value: string) {\n    this._sourceUrlFilter = value;\n  }\n  get orderby(): string {\n    return this._orderby;\n  }\n  set orderby(value: string) {\n    this._orderby = value;\n  }\n  get sortingMode(): ondewoNlu008.SortingMode {\n    return this._sortingMode;\n  }\n  set sortingMode(value: ondewoNlu008.SortingMode) {\n    this._sortingMode = value;\n  }\n  get fieldMask(): googleProtobuf000.FieldMask | undefined {\n    return this._fieldMask;\n  }\n  set fieldMask(value: googleProtobuf000.FieldMask | undefined) {\n    this._fieldMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerRunLogsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerRunLogsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      operationName: this.operationName,\n      pageToken: this.pageToken,\n      pageSize: this.pageSize,\n      levelFilters: (this.levelFilters || []).slice(),\n      phaseFilter: this.phaseFilter,\n      searchQuery: this.searchQuery,\n      startTime: this.startTime ? this.startTime.toObject() : undefined,\n      endTime: this.endTime ? this.endTime.toObject() : undefined,\n      sourceUrlFilter: this.sourceUrlFilter,\n      orderby: this.orderby,\n      sortingMode: this.sortingMode,\n      fieldMask: this.fieldMask ? this.fieldMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerRunLogsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      operationName: this.operationName,\n      pageToken: this.pageToken,\n      pageSize: this.pageSize,\n      levelFilters: (this.levelFilters || []).map(\n        v => ondewoNlu008.LogSeverity[v]\n      ),\n      phaseFilter: this.phaseFilter,\n      searchQuery: this.searchQuery,\n      startTime: this.startTime ? this.startTime.toProtobufJSON(options) : null,\n      endTime: this.endTime ? this.endTime.toProtobufJSON(options) : null,\n      sourceUrlFilter: this.sourceUrlFilter,\n      orderby: this.orderby,\n      sortingMode:\n        ondewoNlu008.SortingMode[\n          this.sortingMode === null || this.sortingMode === undefined\n            ? 0\n            : this.sortingMode\n        ],\n      fieldMask: this.fieldMask ? this.fieldMask.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module RagGetCrawlerRunLogsRequest {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerRunLogsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    operationName: string;\n    pageToken: string;\n    pageSize: number;\n    levelFilters: ondewoNlu008.LogSeverity[];\n    phaseFilter: string;\n    searchQuery: string;\n    startTime?: googleProtobuf002.Timestamp.AsObject;\n    endTime?: googleProtobuf002.Timestamp.AsObject;\n    sourceUrlFilter: string;\n    orderby: string;\n    sortingMode: ondewoNlu008.SortingMode;\n    fieldMask?: googleProtobuf000.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerRunLogsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    operationName: string;\n    pageToken: string;\n    pageSize: number;\n    levelFilters: string[];\n    phaseFilter: string;\n    searchQuery: string;\n    startTime: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    endTime: googleProtobuf002.Timestamp.AsProtobufJSON | null;\n    sourceUrlFilter: string;\n    orderby: string;\n    sortingMode: string;\n    fieldMask: googleProtobuf000.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.RagGetCrawlerRunLogsResponse\n */\nexport class RagGetCrawlerRunLogsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.RagGetCrawlerRunLogsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RagGetCrawlerRunLogsResponse();\n    RagGetCrawlerRunLogsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RagGetCrawlerRunLogsResponse) {\n    _instance.operationName = _instance.operationName || '';\n    _instance.crawlerName = _instance.crawlerName || '';\n    _instance.status = _instance.status || 0;\n    _instance.entries = _instance.entries || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n    _instance.totalLogEntries = _instance.totalLogEntries || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RagGetCrawlerRunLogsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.operationName = _reader.readString();\n          break;\n        case 2:\n          _instance.crawlerName = _reader.readString();\n          break;\n        case 3:\n          _instance.status = _reader.readEnum();\n          break;\n        case 4:\n          const messageInitializer4 = new ondewoNlu008.LogEntry();\n          _reader.readMessage(\n            messageInitializer4,\n            ondewoNlu008.LogEntry.deserializeBinaryFromReader\n          );\n          (_instance.entries = _instance.entries || []).push(\n            messageInitializer4\n          );\n          break;\n        case 5:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        case 6:\n          _instance.totalLogEntries = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RagGetCrawlerRunLogsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RagGetCrawlerRunLogsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.operationName) {\n      _writer.writeString(1, _instance.operationName);\n    }\n    if (_instance.crawlerName) {\n      _writer.writeString(2, _instance.crawlerName);\n    }\n    if (_instance.status) {\n      _writer.writeEnum(3, _instance.status);\n    }\n    if (_instance.entries && _instance.entries.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.entries as any,\n        ondewoNlu008.LogEntry.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(5, _instance.nextPageToken);\n    }\n    if (_instance.totalLogEntries) {\n      _writer.writeInt32(6, _instance.totalLogEntries);\n    }\n  }\n\n  private _operationName: string;\n  private _crawlerName: string;\n  private _status: ondewoNlu007.OperationMetadata.Status;\n  private _entries?: ondewoNlu008.LogEntry[];\n  private _nextPageToken: string;\n  private _totalLogEntries: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RagGetCrawlerRunLogsResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<RagGetCrawlerRunLogsResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.operationName = _value.operationName;\n    this.crawlerName = _value.crawlerName;\n    this.status = _value.status;\n    this.entries = (_value.entries || []).map(\n      m => new ondewoNlu008.LogEntry(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    this.totalLogEntries = _value.totalLogEntries;\n    RagGetCrawlerRunLogsResponse.refineValues(this);\n  }\n  get operationName(): string {\n    return this._operationName;\n  }\n  set operationName(value: string) {\n    this._operationName = value;\n  }\n  get crawlerName(): string {\n    return this._crawlerName;\n  }\n  set crawlerName(value: string) {\n    this._crawlerName = value;\n  }\n  get status(): ondewoNlu007.OperationMetadata.Status {\n    return this._status;\n  }\n  set status(value: ondewoNlu007.OperationMetadata.Status) {\n    this._status = value;\n  }\n  get entries(): ondewoNlu008.LogEntry[] | undefined {\n    return this._entries;\n  }\n  set entries(value: ondewoNlu008.LogEntry[] | undefined) {\n    this._entries = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n  get totalLogEntries(): number {\n    return this._totalLogEntries;\n  }\n  set totalLogEntries(value: number) {\n    this._totalLogEntries = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RagGetCrawlerRunLogsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RagGetCrawlerRunLogsResponse.AsObject {\n    return {\n      operationName: this.operationName,\n      crawlerName: this.crawlerName,\n      status: this.status,\n      entries: (this.entries || []).map(m => m.toObject()),\n      nextPageToken: this.nextPageToken,\n      totalLogEntries: this.totalLogEntries\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RagGetCrawlerRunLogsResponse.AsProtobufJSON {\n    return {\n      operationName: this.operationName,\n      crawlerName: this.crawlerName,\n      status:\n        ondewoNlu007.OperationMetadata.Status[\n          this.status === null || this.status === undefined ? 0 : this.status\n        ],\n      entries: (this.entries || []).map(m => m.toProtobufJSON(options)),\n      nextPageToken: this.nextPageToken,\n      totalLogEntries: this.totalLogEntries\n    };\n  }\n}\nexport module RagGetCrawlerRunLogsResponse {\n  /**\n   * Standard JavaScript object representation for RagGetCrawlerRunLogsResponse\n   */\n  export interface AsObject {\n    operationName: string;\n    crawlerName: string;\n    status: ondewoNlu007.OperationMetadata.Status;\n    entries?: ondewoNlu008.LogEntry.AsObject[];\n    nextPageToken: string;\n    totalLogEntries: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RagGetCrawlerRunLogsResponse\n   */\n  export interface AsProtobufJSON {\n    operationName: string;\n    crawlerName: string;\n    status: string;\n    entries: ondewoNlu008.LogEntry.AsProtobufJSON[] | null;\n    nextPageToken: string;\n    totalLogEntries: number;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Rags.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_RAGS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_RAGS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './rag.pb';\nimport * as googleProtobuf000 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleApi003 from '../../google/api/annotations.pb';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleRpc006 from '../../google/rpc/status.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/operation-metadata.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/common.pb';\nimport * as googleType009 from '../../google/type/latlng.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/operations.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/session.pb';\nimport { GRPC_RAGS_CLIENT_SETTINGS } from './rag.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Rags\n */\n@Injectable({ providedIn: 'any' })\nexport class RagsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagCreateDataset\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDataset>>\n     */\n    ragCreateDataset: (\n      requestData: thisProto.RagCreateDatasetRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDataset>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagCreateDataset',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagCreateDatasetRequest,\n        responseClass: thisProto.RagDataset\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagUpdateDataset\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDataset>>\n     */\n    ragUpdateDataset: (\n      requestData: thisProto.RagUpdateDatasetRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDataset>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagUpdateDataset',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagUpdateDatasetRequest,\n        responseClass: thisProto.RagDataset\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagDeleteDatasets\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagPartialSuccess>>\n     */\n    ragDeleteDatasets: (\n      requestData: thisProto.RagDeleteRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagPartialSuccess>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagDeleteDatasets',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDeleteRequest,\n        responseClass: thisProto.RagPartialSuccess\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagListDatasets\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDatasetList>>\n     */\n    ragListDatasets: (\n      requestData: thisProto.RagListDatasetsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDatasetList>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagListDatasets',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagListDatasetsRequest,\n        responseClass: thisProto.RagDatasetList\n      });\n    },\n    /**\n     * Client streaming: /ondewo.nlu.Rags/RagUploadDocument\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDocument>>\n     */\n    ragUploadDocument: (\n      requestData: Observable<thisProto.RagUploadDocumentRequest>,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDocument>> => {\n      return this.handler.handle({\n        type: GrpcCallType.clientStream,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagUploadDocument',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagUploadDocumentRequest,\n        responseClass: thisProto.RagDocument\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagUpdateDocument\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDocument>>\n     */\n    ragUpdateDocument: (\n      requestData: thisProto.RagUpdateDocumentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDocument>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagUpdateDocument',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagUpdateDocumentRequest,\n        responseClass: thisProto.RagDocument\n      });\n    },\n    /**\n     * Server streaming: /ondewo.nlu.Rags/RagDownloadDocument\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagFileChunk>>\n     */\n    ragDownloadDocument: (\n      requestData: thisProto.RagDownloadDocumentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagFileChunk>> => {\n      return this.handler.handle({\n        type: GrpcCallType.serverStream,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagDownloadDocument',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDownloadDocumentRequest,\n        responseClass: thisProto.RagFileChunk\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagListDocuments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDocumentList>>\n     */\n    ragListDocuments: (\n      requestData: thisProto.RagListDocumentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDocumentList>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagListDocuments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagListDocumentsRequest,\n        responseClass: thisProto.RagDocumentList\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagDeleteDocuments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagPartialSuccess>>\n     */\n    ragDeleteDocuments: (\n      requestData: thisProto.RagDeleteDocumentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagPartialSuccess>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagDeleteDocuments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDeleteDocumentsRequest,\n        responseClass: thisProto.RagPartialSuccess\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagRetrieval\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagRetrievalResponse>>\n     */\n    ragRetrieval: (\n      requestData: thisProto.RagRetrievalRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagRetrievalResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagRetrieval',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagRetrievalRequest,\n        responseClass: thisProto.RagRetrievalResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagParseDocuments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagPartialSuccess>>\n     */\n    ragParseDocuments: (\n      requestData: thisProto.RagDocumentIdsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagPartialSuccess>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagParseDocuments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDocumentIdsRequest,\n        responseClass: thisProto.RagPartialSuccess\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagStopParsing\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagPartialSuccess>>\n     */\n    ragStopParsing: (\n      requestData: thisProto.RagDocumentIdsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagPartialSuccess>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagStopParsing',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDocumentIdsRequest,\n        responseClass: thisProto.RagPartialSuccess\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagCreateCrawler\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagCrawler>>\n     */\n    ragCreateCrawler: (\n      requestData: thisProto.RagCreateCrawlerRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagCrawler>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagCreateCrawler',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagCreateCrawlerRequest,\n        responseClass: thisProto.RagCrawler\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagGetCrawler\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagCrawler>>\n     */\n    ragGetCrawler: (\n      requestData: thisProto.RagGetCrawlerRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagCrawler>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagGetCrawler',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagGetCrawlerRequest,\n        responseClass: thisProto.RagCrawler\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagListCrawlers\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagListCrawlersResponse>>\n     */\n    ragListCrawlers: (\n      requestData: thisProto.RagListCrawlersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagListCrawlersResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagListCrawlers',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagListCrawlersRequest,\n        responseClass: thisProto.RagListCrawlersResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagUpdateCrawler\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagCrawler>>\n     */\n    ragUpdateCrawler: (\n      requestData: thisProto.RagUpdateCrawlerRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagCrawler>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagUpdateCrawler',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagUpdateCrawlerRequest,\n        responseClass: thisProto.RagCrawler\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagDeleteCrawler\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDeleteCrawlerResponse>>\n     */\n    ragDeleteCrawler: (\n      requestData: thisProto.RagDeleteCrawlerRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDeleteCrawlerResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagDeleteCrawler',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDeleteCrawlerRequest,\n        responseClass: thisProto.RagDeleteCrawlerResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagStartCrawler\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu015.Operation>>\n     */\n    ragStartCrawler: (\n      requestData: thisProto.RagStartCrawlerRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu015.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagStartCrawler',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagStartCrawlerRequest,\n        responseClass: ondewoNlu015.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagStopCrawler\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagStopCrawlerResponse>>\n     */\n    ragStopCrawler: (\n      requestData: thisProto.RagStopCrawlerRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagStopCrawlerResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagStopCrawler',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagStopCrawlerRequest,\n        responseClass: thisProto.RagStopCrawlerResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagGetCrawlerRun\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu015.Operation>>\n     */\n    ragGetCrawlerRun: (\n      requestData: thisProto.RagGetCrawlerRunRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu015.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagGetCrawlerRun',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagGetCrawlerRunRequest,\n        responseClass: ondewoNlu015.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagListCrawlerRuns\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagListCrawlerRunsResponse>>\n     */\n    ragListCrawlerRuns: (\n      requestData: thisProto.RagListCrawlerRunsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagListCrawlerRunsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagListCrawlerRuns',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagListCrawlerRunsRequest,\n        responseClass: thisProto.RagListCrawlerRunsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagDeleteCrawlerRuns\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDeleteCrawlerRunsResponse>>\n     */\n    ragDeleteCrawlerRuns: (\n      requestData: thisProto.RagDeleteCrawlerRunsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDeleteCrawlerRunsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagDeleteCrawlerRuns',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDeleteCrawlerRunsRequest,\n        responseClass: thisProto.RagDeleteCrawlerRunsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagGetCrawlerResult\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagCrawlerResult>>\n     */\n    ragGetCrawlerResult: (\n      requestData: thisProto.RagGetCrawlerResultRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagCrawlerResult>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagGetCrawlerResult',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagGetCrawlerResultRequest,\n        responseClass: thisProto.RagCrawlerResult\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagGetCrawlerResults\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagGetCrawlerResultsResponse>>\n     */\n    ragGetCrawlerResults: (\n      requestData: thisProto.RagGetCrawlerResultsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagGetCrawlerResultsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagGetCrawlerResults',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagGetCrawlerResultsRequest,\n        responseClass: thisProto.RagGetCrawlerResultsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagAddCrawlerResultsToDatasets\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu015.Operation>>\n     */\n    ragAddCrawlerResultsToDatasets: (\n      requestData: thisProto.RagAddCrawlerResultsToDatasetsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu015.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagAddCrawlerResultsToDatasets',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagAddCrawlerResultsToDatasetsRequest,\n        responseClass: ondewoNlu015.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagRemoveCrawlerResultsFromDatasets\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu015.Operation>>\n     */\n    ragRemoveCrawlerResultsFromDatasets: (\n      requestData: thisProto.RagRemoveCrawlerResultsFromDatasetsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu015.Operation>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagRemoveCrawlerResultsFromDatasets',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagRemoveCrawlerResultsFromDatasetsRequest,\n        responseClass: ondewoNlu015.Operation\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagGetCrawlerAttachedDatasets\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagGetCrawlerAttachedDatasetsResponse>>\n     */\n    ragGetCrawlerAttachedDatasets: (\n      requestData: thisProto.RagGetCrawlerAttachedDatasetsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.RagGetCrawlerAttachedDatasetsResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagGetCrawlerAttachedDatasets',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagGetCrawlerAttachedDatasetsRequest,\n        responseClass: thisProto.RagGetCrawlerAttachedDatasetsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagDeleteCrawlers\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagDeleteCrawlersResponse>>\n     */\n    ragDeleteCrawlers: (\n      requestData: thisProto.RagDeleteCrawlersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagDeleteCrawlersResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagDeleteCrawlers',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagDeleteCrawlersRequest,\n        responseClass: thisProto.RagDeleteCrawlersResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Rags/RagGetCrawlerRunLogs\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RagGetCrawlerRunLogsResponse>>\n     */\n    ragGetCrawlerRunLogs: (\n      requestData: thisProto.RagGetCrawlerRunLogsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RagGetCrawlerRunLogsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Rags/RagGetCrawlerRunLogs',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RagGetCrawlerRunLogsRequest,\n        responseClass: thisProto.RagGetCrawlerRunLogsResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_RAGS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Rags', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagCreateDataset\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDataset>\n   */\n  ragCreateDataset(\n    requestData: thisProto.RagCreateDatasetRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDataset> {\n    return this.$raw\n      .ragCreateDataset(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagUpdateDataset\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDataset>\n   */\n  ragUpdateDataset(\n    requestData: thisProto.RagUpdateDatasetRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDataset> {\n    return this.$raw\n      .ragUpdateDataset(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagDeleteDatasets\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagPartialSuccess>\n   */\n  ragDeleteDatasets(\n    requestData: thisProto.RagDeleteRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagPartialSuccess> {\n    return this.$raw\n      .ragDeleteDatasets(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagListDatasets\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDatasetList>\n   */\n  ragListDatasets(\n    requestData: thisProto.RagListDatasetsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDatasetList> {\n    return this.$raw\n      .ragListDatasets(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Client streaming @/ondewo.nlu.Rags/RagUploadDocument\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDocument>\n   */\n  ragUploadDocument(\n    requestData: Observable<thisProto.RagUploadDocumentRequest>,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDocument> {\n    return this.$raw\n      .ragUploadDocument(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagUpdateDocument\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDocument>\n   */\n  ragUpdateDocument(\n    requestData: thisProto.RagUpdateDocumentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDocument> {\n    return this.$raw\n      .ragUpdateDocument(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Server streaming @/ondewo.nlu.Rags/RagDownloadDocument\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagFileChunk>\n   */\n  ragDownloadDocument(\n    requestData: thisProto.RagDownloadDocumentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagFileChunk> {\n    return this.$raw\n      .ragDownloadDocument(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagListDocuments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDocumentList>\n   */\n  ragListDocuments(\n    requestData: thisProto.RagListDocumentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDocumentList> {\n    return this.$raw\n      .ragListDocuments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagDeleteDocuments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagPartialSuccess>\n   */\n  ragDeleteDocuments(\n    requestData: thisProto.RagDeleteDocumentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagPartialSuccess> {\n    return this.$raw\n      .ragDeleteDocuments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagRetrieval\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagRetrievalResponse>\n   */\n  ragRetrieval(\n    requestData: thisProto.RagRetrievalRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagRetrievalResponse> {\n    return this.$raw\n      .ragRetrieval(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagParseDocuments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagPartialSuccess>\n   */\n  ragParseDocuments(\n    requestData: thisProto.RagDocumentIdsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagPartialSuccess> {\n    return this.$raw\n      .ragParseDocuments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagStopParsing\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagPartialSuccess>\n   */\n  ragStopParsing(\n    requestData: thisProto.RagDocumentIdsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagPartialSuccess> {\n    return this.$raw\n      .ragStopParsing(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagCreateCrawler\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagCrawler>\n   */\n  ragCreateCrawler(\n    requestData: thisProto.RagCreateCrawlerRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagCrawler> {\n    return this.$raw\n      .ragCreateCrawler(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagGetCrawler\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagCrawler>\n   */\n  ragGetCrawler(\n    requestData: thisProto.RagGetCrawlerRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagCrawler> {\n    return this.$raw\n      .ragGetCrawler(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagListCrawlers\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagListCrawlersResponse>\n   */\n  ragListCrawlers(\n    requestData: thisProto.RagListCrawlersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagListCrawlersResponse> {\n    return this.$raw\n      .ragListCrawlers(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagUpdateCrawler\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagCrawler>\n   */\n  ragUpdateCrawler(\n    requestData: thisProto.RagUpdateCrawlerRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagCrawler> {\n    return this.$raw\n      .ragUpdateCrawler(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagDeleteCrawler\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDeleteCrawlerResponse>\n   */\n  ragDeleteCrawler(\n    requestData: thisProto.RagDeleteCrawlerRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDeleteCrawlerResponse> {\n    return this.$raw\n      .ragDeleteCrawler(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagStartCrawler\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu015.Operation>\n   */\n  ragStartCrawler(\n    requestData: thisProto.RagStartCrawlerRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu015.Operation> {\n    return this.$raw\n      .ragStartCrawler(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagStopCrawler\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagStopCrawlerResponse>\n   */\n  ragStopCrawler(\n    requestData: thisProto.RagStopCrawlerRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagStopCrawlerResponse> {\n    return this.$raw\n      .ragStopCrawler(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagGetCrawlerRun\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu015.Operation>\n   */\n  ragGetCrawlerRun(\n    requestData: thisProto.RagGetCrawlerRunRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu015.Operation> {\n    return this.$raw\n      .ragGetCrawlerRun(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagListCrawlerRuns\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagListCrawlerRunsResponse>\n   */\n  ragListCrawlerRuns(\n    requestData: thisProto.RagListCrawlerRunsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagListCrawlerRunsResponse> {\n    return this.$raw\n      .ragListCrawlerRuns(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagDeleteCrawlerRuns\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDeleteCrawlerRunsResponse>\n   */\n  ragDeleteCrawlerRuns(\n    requestData: thisProto.RagDeleteCrawlerRunsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDeleteCrawlerRunsResponse> {\n    return this.$raw\n      .ragDeleteCrawlerRuns(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagGetCrawlerResult\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagCrawlerResult>\n   */\n  ragGetCrawlerResult(\n    requestData: thisProto.RagGetCrawlerResultRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagCrawlerResult> {\n    return this.$raw\n      .ragGetCrawlerResult(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagGetCrawlerResults\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagGetCrawlerResultsResponse>\n   */\n  ragGetCrawlerResults(\n    requestData: thisProto.RagGetCrawlerResultsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagGetCrawlerResultsResponse> {\n    return this.$raw\n      .ragGetCrawlerResults(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagAddCrawlerResultsToDatasets\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu015.Operation>\n   */\n  ragAddCrawlerResultsToDatasets(\n    requestData: thisProto.RagAddCrawlerResultsToDatasetsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu015.Operation> {\n    return this.$raw\n      .ragAddCrawlerResultsToDatasets(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagRemoveCrawlerResultsFromDatasets\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu015.Operation>\n   */\n  ragRemoveCrawlerResultsFromDatasets(\n    requestData: thisProto.RagRemoveCrawlerResultsFromDatasetsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu015.Operation> {\n    return this.$raw\n      .ragRemoveCrawlerResultsFromDatasets(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagGetCrawlerAttachedDatasets\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagGetCrawlerAttachedDatasetsResponse>\n   */\n  ragGetCrawlerAttachedDatasets(\n    requestData: thisProto.RagGetCrawlerAttachedDatasetsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagGetCrawlerAttachedDatasetsResponse> {\n    return this.$raw\n      .ragGetCrawlerAttachedDatasets(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagDeleteCrawlers\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagDeleteCrawlersResponse>\n   */\n  ragDeleteCrawlers(\n    requestData: thisProto.RagDeleteCrawlersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagDeleteCrawlersResponse> {\n    return this.$raw\n      .ragDeleteCrawlers(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Rags/RagGetCrawlerRunLogs\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RagGetCrawlerRunLogsResponse>\n   */\n  ragGetCrawlerRunLogs(\n    requestData: thisProto.RagGetCrawlerRunLogsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RagGetCrawlerRunLogsResponse> {\n    return this.$raw\n      .ragGetCrawlerRunLogs(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleApi005 from '../../google/api/annotations.pb';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu007 from '../../ondewo/nlu/common.pb';\n/**\n * Message implementation for ondewo.nlu.GetUserProjectCountRequest\n */\nexport class GetUserProjectCountRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetUserProjectCountRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetUserProjectCountRequest();\n    GetUserProjectCountRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetUserProjectCountRequest) {\n    _instance.userId = _instance.userId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetUserProjectCountRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.userId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetUserProjectCountRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetUserProjectCountRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.userId) {\n      _writer.writeString(1, _instance.userId);\n    }\n  }\n\n  private _userId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetUserProjectCountRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetUserProjectCountRequest.AsObject>) {\n    _value = _value || {};\n    this.userId = _value.userId;\n    GetUserProjectCountRequest.refineValues(this);\n  }\n  get userId(): string {\n    return this._userId;\n  }\n  set userId(value: string) {\n    this._userId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetUserProjectCountRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetUserProjectCountRequest.AsObject {\n    return {\n      userId: this.userId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetUserProjectCountRequest.AsProtobufJSON {\n    return {\n      userId: this.userId\n    };\n  }\n}\nexport module GetUserProjectCountRequest {\n  /**\n   * Standard JavaScript object representation for GetUserProjectCountRequest\n   */\n  export interface AsObject {\n    userId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetUserProjectCountRequest\n   */\n  export interface AsProtobufJSON {\n    userId: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for ServerStatistics.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_SERVER_STATISTICS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_SERVER_STATISTICS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './server-statistics.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleApi005 from '../../google/api/annotations.pb';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu007 from '../../ondewo/nlu/common.pb';\nimport { GRPC_SERVER_STATISTICS_CLIENT_SETTINGS } from './server-statistics.pbconf';\n/**\n * Service client implementation for ondewo.nlu.ServerStatistics\n */\n@Injectable({ providedIn: 'any' })\nexport class ServerStatisticsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.ServerStatistics/GetProjectCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu007.StatResponse>>\n     */\n    getProjectCount: (\n      requestData: googleProtobuf006.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu007.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ServerStatistics/GetProjectCount',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf006.Empty,\n        responseClass: ondewoNlu007.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ServerStatistics/GetUserProjectCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu007.StatResponse>>\n     */\n    getUserProjectCount: (\n      requestData: thisProto.GetUserProjectCountRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu007.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ServerStatistics/GetUserProjectCount',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetUserProjectCountRequest,\n        responseClass: ondewoNlu007.StatResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.ServerStatistics/GetUserCount\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu007.StatResponse>>\n     */\n    getUserCount: (\n      requestData: googleProtobuf006.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu007.StatResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.ServerStatistics/GetUserCount',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf006.Empty,\n        responseClass: ondewoNlu007.StatResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_SERVER_STATISTICS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient(\n      'ondewo.nlu.ServerStatistics',\n      settings\n    );\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ServerStatistics/GetProjectCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu007.StatResponse>\n   */\n  getProjectCount(\n    requestData: googleProtobuf006.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu007.StatResponse> {\n    return this.$raw\n      .getProjectCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ServerStatistics/GetUserProjectCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu007.StatResponse>\n   */\n  getUserProjectCount(\n    requestData: thisProto.GetUserProjectCountRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu007.StatResponse> {\n    return this.$raw\n      .getUserProjectCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.ServerStatistics/GetUserCount\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu007.StatResponse>\n   */\n  getUserCount(\n    requestData: googleProtobuf006.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu007.StatResponse> {\n    return this.$raw\n      .getUserCount(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Sessions.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_SESSIONS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_SESSIONS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './session.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf002 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu006 from '../../ondewo/nlu/common.pb';\nimport * as googleApi007 from '../../google/api/annotations.pb';\nimport * as googleProtobuf008 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu009 from '../../ondewo/nlu/operations.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/context.pb';\nimport * as googleRpc011 from '../../google/rpc/status.pb';\nimport * as googleType012 from '../../google/type/latlng.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/llm-evaluation.pb';\nimport { GRPC_SESSIONS_CLIENT_SETTINGS } from './session.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Sessions\n */\n@Injectable({ providedIn: 'any' })\nexport class SessionsClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Sessions/DetectIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.DetectIntentResponse>>\n     */\n    detectIntent: (\n      requestData: thisProto.DetectIntentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.DetectIntentResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/DetectIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DetectIntentRequest,\n        responseClass: thisProto.DetectIntentResponse\n      });\n    },\n    /**\n     * Bidirectional streaming: /ondewo.nlu.Sessions/StreamingDetectIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.StreamingDetectIntentResponse>>\n     */\n    streamingDetectIntent: (\n      requestData: Observable<thisProto.StreamingDetectIntentRequest>,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.StreamingDetectIntentResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.bidiStream,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/StreamingDetectIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.StreamingDetectIntentRequest,\n        responseClass: thisProto.StreamingDetectIntentResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionsResponse>>\n     */\n    listSessions: (\n      requestData: thisProto.ListSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionsRequest,\n        responseClass: thisProto.ListSessionsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetSession\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Session>>\n     */\n    getSession: (\n      requestData: thisProto.GetSessionRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Session>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetSession',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetSessionRequest,\n        responseClass: thisProto.Session\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/CreateSession\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Session>>\n     */\n    createSession: (\n      requestData: thisProto.CreateSessionRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Session>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/CreateSession',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateSessionRequest,\n        responseClass: thisProto.Session\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/CreateSessionStep\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionStep>>\n     */\n    createSessionStep: (\n      requestData: thisProto.CreateSessionStepRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionStep>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/CreateSessionStep',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateSessionStepRequest,\n        responseClass: thisProto.SessionStep\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetSessionStep\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionStep>>\n     */\n    getSessionStep: (\n      requestData: thisProto.GetSessionStepRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionStep>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetSessionStep',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetSessionStepRequest,\n        responseClass: thisProto.SessionStep\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/UpdateSessionStep\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionStep>>\n     */\n    updateSessionStep: (\n      requestData: thisProto.UpdateSessionStepRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionStep>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/UpdateSessionStep',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateSessionStepRequest,\n        responseClass: thisProto.SessionStep\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/DeleteSessionStep\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf008.Empty>>\n     */\n    deleteSessionStep: (\n      requestData: thisProto.DeleteSessionStepRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf008.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/DeleteSessionStep',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteSessionStepRequest,\n        responseClass: googleProtobuf008.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/DeleteSession\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf008.Empty>>\n     */\n    deleteSession: (\n      requestData: thisProto.DeleteSessionRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf008.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/DeleteSession',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteSessionRequest,\n        responseClass: googleProtobuf008.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessionLabels\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionLabelsResponse>>\n     */\n    listSessionLabels: (\n      requestData: thisProto.ListSessionLabelsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionLabelsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessionLabels',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionLabelsRequest,\n        responseClass: thisProto.ListSessionLabelsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessionLabelsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionLabelsResponse>>\n     */\n    listSessionLabelsOfAllSessions: (\n      requestData: thisProto.ListSessionLabelsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionLabelsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessionLabelsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionLabelsOfAllSessionsRequest,\n        responseClass: thisProto.ListSessionLabelsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListLanguageCodesOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListLanguageCodesResponse>>\n     */\n    listLanguageCodesOfAllSessions: (\n      requestData: thisProto.ListLanguageCodesOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListLanguageCodesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListLanguageCodesOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListLanguageCodesOfAllSessionsRequest,\n        responseClass: thisProto.ListLanguageCodesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListMatchedIntentsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListMatchedIntentsResponse>>\n     */\n    listMatchedIntentsOfAllSessions: (\n      requestData: thisProto.ListMatchedIntentsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListMatchedIntentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListMatchedIntentsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListMatchedIntentsOfAllSessionsRequest,\n        responseClass: thisProto.ListMatchedIntentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListMatchedEntityTypesOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListMatchedEntityTypesResponse>>\n     */\n    listMatchedEntityTypesOfAllSessions: (\n      requestData: thisProto.ListMatchedEntityTypesOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListMatchedEntityTypesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListMatchedEntityTypesOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListMatchedEntityTypesOfAllSessionsRequest,\n        responseClass: thisProto.ListMatchedEntityTypesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListUserIdsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListUserIdsResponse>>\n     */\n    listUserIdsOfAllSessions: (\n      requestData: thisProto.ListUserIdsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListUserIdsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListUserIdsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListUserIdsOfAllSessionsRequest,\n        responseClass: thisProto.ListUserIdsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListIdentifiedUserIdsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListIdentifiedUserIdsResponse>>\n     */\n    listIdentifiedUserIdsOfAllSessions: (\n      requestData: thisProto.ListIdentifiedUserIdsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListIdentifiedUserIdsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListIdentifiedUserIdsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListIdentifiedUserIdsOfAllSessionsRequest,\n        responseClass: thisProto.ListIdentifiedUserIdsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListTagsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListTagsResponse>>\n     */\n    listTagsOfAllSessions: (\n      requestData: thisProto.ListTagsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListTagsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListTagsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListTagsOfAllSessionsRequest,\n        responseClass: thisProto.ListTagsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListInputContextsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListInputContextsResponse>>\n     */\n    listInputContextsOfAllSessions: (\n      requestData: thisProto.ListInputContextsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListInputContextsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListInputContextsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListInputContextsOfAllSessionsRequest,\n        responseClass: thisProto.ListInputContextsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListOutputContextsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListOutputContextsResponse>>\n     */\n    listOutputContextsOfAllSessions: (\n      requestData: thisProto.ListOutputContextsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListOutputContextsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListOutputContextsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListOutputContextsOfAllSessionsRequest,\n        responseClass: thisProto.ListOutputContextsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListPlatformsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListPlatformsResponse>>\n     */\n    listPlatformsOfAllSessions: (\n      requestData: thisProto.ListPlatformsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListPlatformsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListPlatformsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListPlatformsOfAllSessionsRequest,\n        responseClass: thisProto.ListPlatformsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListAccountIdsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListAccountIdsResponse>>\n     */\n    listAccountIdsOfAllSessions: (\n      requestData: thisProto.ListAccountIdsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListAccountIdsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListAccountIdsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListAccountIdsOfAllSessionsRequest,\n        responseClass: thisProto.ListAccountIdsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListPropertyIdsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListPropertyIdsResponse>>\n     */\n    listPropertyIdsOfAllSessions: (\n      requestData: thisProto.ListPropertyIdsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListPropertyIdsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListPropertyIdsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListPropertyIdsOfAllSessionsRequest,\n        responseClass: thisProto.ListPropertyIdsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListDatastreamIdsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListDatastreamIdsResponse>>\n     */\n    listDatastreamIdsOfAllSessions: (\n      requestData: thisProto.ListDatastreamIdsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListDatastreamIdsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListDatastreamIdsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListDatastreamIdsOfAllSessionsRequest,\n        responseClass: thisProto.ListDatastreamIdsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListOriginIdsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListOriginIdsResponse>>\n     */\n    listOriginIdsOfAllSessions: (\n      requestData: thisProto.ListOriginIdsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListOriginIdsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListOriginIdsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListOriginIdsOfAllSessionsRequest,\n        responseClass: thisProto.ListOriginIdsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/AddSessionLabels\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Session>>\n     */\n    addSessionLabels: (\n      requestData: thisProto.AddSessionLabelsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Session>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/AddSessionLabels',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddSessionLabelsRequest,\n        responseClass: thisProto.Session\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/DeleteSessionLabels\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Session>>\n     */\n    deleteSessionLabels: (\n      requestData: thisProto.DeleteSessionLabelsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Session>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/DeleteSessionLabels',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteSessionLabelsRequest,\n        responseClass: thisProto.Session\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/AddSessionComment\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu006.Comment>>\n     */\n    addSessionComment: (\n      requestData: thisProto.AddSessionCommentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu006.Comment>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/AddSessionComment',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddSessionCommentRequest,\n        responseClass: ondewoNlu006.Comment\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/DeleteSessionComments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Session>>\n     */\n    deleteSessionComments: (\n      requestData: thisProto.DeleteSessionCommentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Session>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/DeleteSessionComments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteSessionCommentsRequest,\n        responseClass: thisProto.Session\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/UpdateSessionComments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.Session>>\n     */\n    updateSessionComments: (\n      requestData: thisProto.UpdateSessionCommentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.Session>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/UpdateSessionComments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateSessionCommentsRequest,\n        responseClass: thisProto.Session\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessionComments\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionCommentsResponse>>\n     */\n    listSessionComments: (\n      requestData: thisProto.ListSessionCommentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionCommentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessionComments',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionCommentsRequest,\n        responseClass: thisProto.ListSessionCommentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessionCommentsOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionCommentsResponse>>\n     */\n    listSessionCommentsOfAllSessions: (\n      requestData: thisProto.ListSessionCommentsOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionCommentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessionCommentsOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionCommentsOfAllSessionsRequest,\n        responseClass: thisProto.ListSessionCommentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/AddSessionFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionFeedback>>\n     */\n    addSessionFeedback: (\n      requestData: thisProto.AddSessionFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionFeedback>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/AddSessionFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddSessionFeedbackRequest,\n        responseClass: thisProto.SessionFeedback\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/AddSessionStepFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionFeedback>>\n     */\n    addSessionStepFeedback: (\n      requestData: thisProto.AddSessionStepFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionFeedback>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/AddSessionStepFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddSessionStepFeedbackRequest,\n        responseClass: thisProto.SessionFeedback\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetSessionFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionFeedback>>\n     */\n    getSessionFeedback: (\n      requestData: thisProto.GetSessionFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionFeedback>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetSessionFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetSessionFeedbackRequest,\n        responseClass: thisProto.SessionFeedback\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/UpdateSessionFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionFeedback>>\n     */\n    updateSessionFeedback: (\n      requestData: thisProto.UpdateSessionFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionFeedback>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/UpdateSessionFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateSessionFeedbackRequest,\n        responseClass: thisProto.SessionFeedback\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/DeleteSessionFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf008.Empty>>\n     */\n    deleteSessionFeedback: (\n      requestData: thisProto.DeleteSessionFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf008.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/DeleteSessionFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteSessionFeedbackRequest,\n        responseClass: googleProtobuf008.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessionFeedback\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionFeedbackResponse>>\n     */\n    listSessionFeedback: (\n      requestData: thisProto.ListSessionFeedbackRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionFeedbackResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessionFeedback',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionFeedbackRequest,\n        responseClass: thisProto.ListSessionFeedbackResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessionFeedbackOfAllSessions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionFeedbackResponse>>\n     */\n    listSessionFeedbackOfAllSessions: (\n      requestData: thisProto.ListSessionFeedbackOfAllSessionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionFeedbackResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessionFeedbackOfAllSessions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionFeedbackOfAllSessionsRequest,\n        responseClass: thisProto.ListSessionFeedbackResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetFeedbackStatistics\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetFeedbackStatisticsResponse>>\n     */\n    getFeedbackStatistics: (\n      requestData: thisProto.GetFeedbackStatisticsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetFeedbackStatisticsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetFeedbackStatistics',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetFeedbackStatisticsRequest,\n        responseClass: thisProto.GetFeedbackStatisticsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetFeedbackStatisticsTimeSeries\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetFeedbackStatisticsTimeSeriesResponse>>\n     */\n    getFeedbackStatisticsTimeSeries: (\n      requestData: thisProto.GetFeedbackStatisticsTimeSeriesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<\n      GrpcEvent<thisProto.GetFeedbackStatisticsTimeSeriesResponse>\n    > => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetFeedbackStatisticsTimeSeries',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetFeedbackStatisticsTimeSeriesRequest,\n        responseClass: thisProto.GetFeedbackStatisticsTimeSeriesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListSessionReviews\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListSessionReviewsResponse>>\n     */\n    listSessionReviews: (\n      requestData: thisProto.ListSessionReviewsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListSessionReviewsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListSessionReviews',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListSessionReviewsRequest,\n        responseClass: thisProto.ListSessionReviewsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetSessionReview\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionReview>>\n     */\n    getSessionReview: (\n      requestData: thisProto.GetSessionReviewRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionReview>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetSessionReview',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetSessionReviewRequest,\n        responseClass: thisProto.SessionReview\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetLatestSessionReview\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionReview>>\n     */\n    getLatestSessionReview: (\n      requestData: thisProto.GetLatestSessionReviewRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionReview>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetLatestSessionReview',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetLatestSessionReviewRequest,\n        responseClass: thisProto.SessionReview\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/CreateSessionReview\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionReview>>\n     */\n    createSessionReview: (\n      requestData: thisProto.CreateSessionReviewRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionReview>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/CreateSessionReview',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateSessionReviewRequest,\n        responseClass: thisProto.SessionReview\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetAudioFiles\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetAudioFilesResponse>>\n     */\n    getAudioFiles: (\n      requestData: thisProto.GetAudioFilesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetAudioFilesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetAudioFiles',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAudioFilesRequest,\n        responseClass: thisProto.GetAudioFilesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/AddAudioFiles\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.AddAudioFilesResponse>>\n     */\n    addAudioFiles: (\n      requestData: thisProto.AddAudioFilesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.AddAudioFilesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/AddAudioFiles',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddAudioFilesRequest,\n        responseClass: thisProto.AddAudioFilesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/DeleteAudioFiles\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.DeleteAudioFilesResponse>>\n     */\n    deleteAudioFiles: (\n      requestData: thisProto.DeleteAudioFilesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.DeleteAudioFilesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/DeleteAudioFiles',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteAudioFilesRequest,\n        responseClass: thisProto.DeleteAudioFilesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/GetAudioFileOfSession\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.AudioFileResource>>\n     */\n    getAudioFileOfSession: (\n      requestData: thisProto.GetAudioFileOfSessionRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.AudioFileResource>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/GetAudioFileOfSession',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAudioFileOfSessionRequest,\n        responseClass: thisProto.AudioFileResource\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Sessions/ListAudioFiles\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListAudioFilesResponse>>\n     */\n    listAudioFiles: (\n      requestData: thisProto.ListAudioFilesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListAudioFilesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Sessions/ListAudioFiles',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListAudioFilesRequest,\n        responseClass: thisProto.ListAudioFilesResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_SESSIONS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Sessions', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/DetectIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.DetectIntentResponse>\n   */\n  detectIntent(\n    requestData: thisProto.DetectIntentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.DetectIntentResponse> {\n    return this.$raw\n      .detectIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Bidirectional streaming @/ondewo.nlu.Sessions/StreamingDetectIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.StreamingDetectIntentResponse>\n   */\n  streamingDetectIntent(\n    requestData: Observable<thisProto.StreamingDetectIntentRequest>,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.StreamingDetectIntentResponse> {\n    return this.$raw\n      .streamingDetectIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionsResponse>\n   */\n  listSessions(\n    requestData: thisProto.ListSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionsResponse> {\n    return this.$raw\n      .listSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetSession\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Session>\n   */\n  getSession(\n    requestData: thisProto.GetSessionRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Session> {\n    return this.$raw\n      .getSession(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/CreateSession\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Session>\n   */\n  createSession(\n    requestData: thisProto.CreateSessionRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Session> {\n    return this.$raw\n      .createSession(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/CreateSessionStep\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionStep>\n   */\n  createSessionStep(\n    requestData: thisProto.CreateSessionStepRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionStep> {\n    return this.$raw\n      .createSessionStep(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetSessionStep\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionStep>\n   */\n  getSessionStep(\n    requestData: thisProto.GetSessionStepRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionStep> {\n    return this.$raw\n      .getSessionStep(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/UpdateSessionStep\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionStep>\n   */\n  updateSessionStep(\n    requestData: thisProto.UpdateSessionStepRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionStep> {\n    return this.$raw\n      .updateSessionStep(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/DeleteSessionStep\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf008.Empty>\n   */\n  deleteSessionStep(\n    requestData: thisProto.DeleteSessionStepRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf008.Empty> {\n    return this.$raw\n      .deleteSessionStep(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/DeleteSession\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf008.Empty>\n   */\n  deleteSession(\n    requestData: thisProto.DeleteSessionRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf008.Empty> {\n    return this.$raw\n      .deleteSession(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessionLabels\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionLabelsResponse>\n   */\n  listSessionLabels(\n    requestData: thisProto.ListSessionLabelsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionLabelsResponse> {\n    return this.$raw\n      .listSessionLabels(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessionLabelsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionLabelsResponse>\n   */\n  listSessionLabelsOfAllSessions(\n    requestData: thisProto.ListSessionLabelsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionLabelsResponse> {\n    return this.$raw\n      .listSessionLabelsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListLanguageCodesOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListLanguageCodesResponse>\n   */\n  listLanguageCodesOfAllSessions(\n    requestData: thisProto.ListLanguageCodesOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListLanguageCodesResponse> {\n    return this.$raw\n      .listLanguageCodesOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListMatchedIntentsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListMatchedIntentsResponse>\n   */\n  listMatchedIntentsOfAllSessions(\n    requestData: thisProto.ListMatchedIntentsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListMatchedIntentsResponse> {\n    return this.$raw\n      .listMatchedIntentsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListMatchedEntityTypesOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListMatchedEntityTypesResponse>\n   */\n  listMatchedEntityTypesOfAllSessions(\n    requestData: thisProto.ListMatchedEntityTypesOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListMatchedEntityTypesResponse> {\n    return this.$raw\n      .listMatchedEntityTypesOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListUserIdsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListUserIdsResponse>\n   */\n  listUserIdsOfAllSessions(\n    requestData: thisProto.ListUserIdsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListUserIdsResponse> {\n    return this.$raw\n      .listUserIdsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListIdentifiedUserIdsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListIdentifiedUserIdsResponse>\n   */\n  listIdentifiedUserIdsOfAllSessions(\n    requestData: thisProto.ListIdentifiedUserIdsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListIdentifiedUserIdsResponse> {\n    return this.$raw\n      .listIdentifiedUserIdsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListTagsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListTagsResponse>\n   */\n  listTagsOfAllSessions(\n    requestData: thisProto.ListTagsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListTagsResponse> {\n    return this.$raw\n      .listTagsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListInputContextsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListInputContextsResponse>\n   */\n  listInputContextsOfAllSessions(\n    requestData: thisProto.ListInputContextsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListInputContextsResponse> {\n    return this.$raw\n      .listInputContextsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListOutputContextsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListOutputContextsResponse>\n   */\n  listOutputContextsOfAllSessions(\n    requestData: thisProto.ListOutputContextsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListOutputContextsResponse> {\n    return this.$raw\n      .listOutputContextsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListPlatformsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListPlatformsResponse>\n   */\n  listPlatformsOfAllSessions(\n    requestData: thisProto.ListPlatformsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListPlatformsResponse> {\n    return this.$raw\n      .listPlatformsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListAccountIdsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListAccountIdsResponse>\n   */\n  listAccountIdsOfAllSessions(\n    requestData: thisProto.ListAccountIdsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListAccountIdsResponse> {\n    return this.$raw\n      .listAccountIdsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListPropertyIdsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListPropertyIdsResponse>\n   */\n  listPropertyIdsOfAllSessions(\n    requestData: thisProto.ListPropertyIdsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListPropertyIdsResponse> {\n    return this.$raw\n      .listPropertyIdsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListDatastreamIdsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListDatastreamIdsResponse>\n   */\n  listDatastreamIdsOfAllSessions(\n    requestData: thisProto.ListDatastreamIdsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListDatastreamIdsResponse> {\n    return this.$raw\n      .listDatastreamIdsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListOriginIdsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListOriginIdsResponse>\n   */\n  listOriginIdsOfAllSessions(\n    requestData: thisProto.ListOriginIdsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListOriginIdsResponse> {\n    return this.$raw\n      .listOriginIdsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/AddSessionLabels\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Session>\n   */\n  addSessionLabels(\n    requestData: thisProto.AddSessionLabelsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Session> {\n    return this.$raw\n      .addSessionLabels(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/DeleteSessionLabels\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Session>\n   */\n  deleteSessionLabels(\n    requestData: thisProto.DeleteSessionLabelsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Session> {\n    return this.$raw\n      .deleteSessionLabels(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/AddSessionComment\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu006.Comment>\n   */\n  addSessionComment(\n    requestData: thisProto.AddSessionCommentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu006.Comment> {\n    return this.$raw\n      .addSessionComment(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/DeleteSessionComments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Session>\n   */\n  deleteSessionComments(\n    requestData: thisProto.DeleteSessionCommentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Session> {\n    return this.$raw\n      .deleteSessionComments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/UpdateSessionComments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.Session>\n   */\n  updateSessionComments(\n    requestData: thisProto.UpdateSessionCommentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.Session> {\n    return this.$raw\n      .updateSessionComments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessionComments\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionCommentsResponse>\n   */\n  listSessionComments(\n    requestData: thisProto.ListSessionCommentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionCommentsResponse> {\n    return this.$raw\n      .listSessionComments(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessionCommentsOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionCommentsResponse>\n   */\n  listSessionCommentsOfAllSessions(\n    requestData: thisProto.ListSessionCommentsOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionCommentsResponse> {\n    return this.$raw\n      .listSessionCommentsOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/AddSessionFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionFeedback>\n   */\n  addSessionFeedback(\n    requestData: thisProto.AddSessionFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionFeedback> {\n    return this.$raw\n      .addSessionFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/AddSessionStepFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionFeedback>\n   */\n  addSessionStepFeedback(\n    requestData: thisProto.AddSessionStepFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionFeedback> {\n    return this.$raw\n      .addSessionStepFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetSessionFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionFeedback>\n   */\n  getSessionFeedback(\n    requestData: thisProto.GetSessionFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionFeedback> {\n    return this.$raw\n      .getSessionFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/UpdateSessionFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionFeedback>\n   */\n  updateSessionFeedback(\n    requestData: thisProto.UpdateSessionFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionFeedback> {\n    return this.$raw\n      .updateSessionFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/DeleteSessionFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf008.Empty>\n   */\n  deleteSessionFeedback(\n    requestData: thisProto.DeleteSessionFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf008.Empty> {\n    return this.$raw\n      .deleteSessionFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessionFeedback\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionFeedbackResponse>\n   */\n  listSessionFeedback(\n    requestData: thisProto.ListSessionFeedbackRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionFeedbackResponse> {\n    return this.$raw\n      .listSessionFeedback(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessionFeedbackOfAllSessions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionFeedbackResponse>\n   */\n  listSessionFeedbackOfAllSessions(\n    requestData: thisProto.ListSessionFeedbackOfAllSessionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionFeedbackResponse> {\n    return this.$raw\n      .listSessionFeedbackOfAllSessions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetFeedbackStatistics\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetFeedbackStatisticsResponse>\n   */\n  getFeedbackStatistics(\n    requestData: thisProto.GetFeedbackStatisticsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetFeedbackStatisticsResponse> {\n    return this.$raw\n      .getFeedbackStatistics(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetFeedbackStatisticsTimeSeries\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetFeedbackStatisticsTimeSeriesResponse>\n   */\n  getFeedbackStatisticsTimeSeries(\n    requestData: thisProto.GetFeedbackStatisticsTimeSeriesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetFeedbackStatisticsTimeSeriesResponse> {\n    return this.$raw\n      .getFeedbackStatisticsTimeSeries(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListSessionReviews\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListSessionReviewsResponse>\n   */\n  listSessionReviews(\n    requestData: thisProto.ListSessionReviewsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListSessionReviewsResponse> {\n    return this.$raw\n      .listSessionReviews(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetSessionReview\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionReview>\n   */\n  getSessionReview(\n    requestData: thisProto.GetSessionReviewRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionReview> {\n    return this.$raw\n      .getSessionReview(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetLatestSessionReview\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionReview>\n   */\n  getLatestSessionReview(\n    requestData: thisProto.GetLatestSessionReviewRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionReview> {\n    return this.$raw\n      .getLatestSessionReview(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/CreateSessionReview\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionReview>\n   */\n  createSessionReview(\n    requestData: thisProto.CreateSessionReviewRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionReview> {\n    return this.$raw\n      .createSessionReview(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetAudioFiles\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetAudioFilesResponse>\n   */\n  getAudioFiles(\n    requestData: thisProto.GetAudioFilesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetAudioFilesResponse> {\n    return this.$raw\n      .getAudioFiles(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/AddAudioFiles\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.AddAudioFilesResponse>\n   */\n  addAudioFiles(\n    requestData: thisProto.AddAudioFilesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.AddAudioFilesResponse> {\n    return this.$raw\n      .addAudioFiles(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/DeleteAudioFiles\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.DeleteAudioFilesResponse>\n   */\n  deleteAudioFiles(\n    requestData: thisProto.DeleteAudioFilesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.DeleteAudioFilesResponse> {\n    return this.$raw\n      .deleteAudioFiles(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/GetAudioFileOfSession\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.AudioFileResource>\n   */\n  getAudioFileOfSession(\n    requestData: thisProto.GetAudioFileOfSessionRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.AudioFileResource> {\n    return this.$raw\n      .getAudioFileOfSession(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Sessions/ListAudioFiles\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListAudioFilesResponse>\n   */\n  listAudioFiles(\n    requestData: thisProto.ListAudioFilesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListAudioFilesResponse> {\n    return this.$raw\n      .listAudioFiles(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Users.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_USERS_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_USERS_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './user.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu007 from '../../ondewo/nlu/project-role.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/common.pb';\nimport { GRPC_USERS_CLIENT_SETTINGS } from './user.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Users\n */\n@Injectable({ providedIn: 'any' })\nexport class UsersClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Users/CreateUser\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.User>>\n     */\n    createUser: (\n      requestData: thisProto.CreateUserRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.User>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/CreateUser',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateUserRequest,\n        responseClass: thisProto.User\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/GetUser\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.User>>\n     */\n    getUser: (\n      requestData: thisProto.GetUserRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.User>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/GetUser',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetUserRequest,\n        responseClass: thisProto.User\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/GetUserInfo\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.UserInfo>>\n     */\n    getUserInfo: (\n      requestData: thisProto.GetUserRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.UserInfo>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/GetUserInfo',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetUserRequest,\n        responseClass: thisProto.UserInfo\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/DeleteUser\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteUser: (\n      requestData: thisProto.GetUserRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/DeleteUser',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetUserRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/UpdateUser\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.User>>\n     */\n    updateUser: (\n      requestData: thisProto.UpdateUserRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.User>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/UpdateUser',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateUserRequest,\n        responseClass: thisProto.User\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/ListUsers\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListUsersResponse>>\n     */\n    listUsers: (\n      requestData: thisProto.ListUsersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListUsersResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/ListUsers',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListUsersRequest,\n        responseClass: thisProto.ListUsersResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/ListUserInfos\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListUserInfosResponse>>\n     */\n    listUserInfos: (\n      requestData: thisProto.ListUsersRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListUserInfosResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/ListUserInfos',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListUsersRequest,\n        responseClass: thisProto.ListUserInfosResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/CreateServerRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ServerRole>>\n     */\n    createServerRole: (\n      requestData: thisProto.CreateServerRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ServerRole>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/CreateServerRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateServerRoleRequest,\n        responseClass: thisProto.ServerRole\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/GetServerRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ServerRole>>\n     */\n    getServerRole: (\n      requestData: thisProto.GetServerRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ServerRole>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/GetServerRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetServerRoleRequest,\n        responseClass: thisProto.ServerRole\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/DeleteServerRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteServerRole: (\n      requestData: thisProto.DeleteServerRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/DeleteServerRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteServerRoleRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/UpdateServerRole\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ServerRole>>\n     */\n    updateServerRole: (\n      requestData: thisProto.UpdateServerRoleRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ServerRole>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/UpdateServerRole',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateServerRoleRequest,\n        responseClass: thisProto.ServerRole\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/ListServerRoles\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListServerRolesResponse>>\n     */\n    listServerRoles: (\n      requestData: thisProto.ListServerRolesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListServerRolesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/ListServerRoles',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListServerRolesRequest,\n        responseClass: thisProto.ListServerRolesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/ListServerPermissions\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListServerPermissionsResponse>>\n     */\n    listServerPermissions: (\n      requestData: thisProto.ListServerPermissionsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListServerPermissionsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/ListServerPermissions',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ListServerPermissionsRequest,\n        responseClass: thisProto.ListServerPermissionsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/CheckLogin\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    checkLogin: (\n      requestData: googleProtobuf003.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/CheckLogin',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf003.Empty,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/ListNotifications\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.ListNotificationsResponse>>\n     */\n    listNotifications: (\n      requestData: ondewoNlu008.ListNotificationsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.ListNotificationsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/ListNotifications',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.ListNotificationsRequest,\n        responseClass: ondewoNlu008.ListNotificationsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/SetNotificationsFlaggedStatus\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.ListNotificationsResponse>>\n     */\n    setNotificationsFlaggedStatus: (\n      requestData: ondewoNlu008.SetNotificationsFlaggedStatusRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.ListNotificationsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/SetNotificationsFlaggedStatus',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.SetNotificationsFlaggedStatusRequest,\n        responseClass: ondewoNlu008.ListNotificationsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/SetNotificationsReadStatus\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.ListNotificationsResponse>>\n     */\n    setNotificationsReadStatus: (\n      requestData: ondewoNlu008.SetNotificationsReadStatusRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.ListNotificationsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/SetNotificationsReadStatus',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.SetNotificationsReadStatusRequest,\n        responseClass: ondewoNlu008.ListNotificationsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/AddNotifications\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.AddNotificationsResponse>>\n     */\n    addNotifications: (\n      requestData: ondewoNlu008.AddNotificationsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.AddNotificationsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/AddNotifications',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.AddNotificationsRequest,\n        responseClass: ondewoNlu008.AddNotificationsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/GetNotification\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Notification>>\n     */\n    getNotification: (\n      requestData: ondewoNlu008.GetNotificationRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Notification>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/GetNotification',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.GetNotificationRequest,\n        responseClass: ondewoNlu008.Notification\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/UpdateNotification\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Notification>>\n     */\n    updateNotification: (\n      requestData: ondewoNlu008.UpdateNotificationRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Notification>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/UpdateNotification',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.UpdateNotificationRequest,\n        responseClass: ondewoNlu008.Notification\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/DeleteNotifications\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteNotifications: (\n      requestData: ondewoNlu008.DeleteNotificationsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/DeleteNotifications',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.DeleteNotificationsRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    },\n    /**\n     * Server streaming: /ondewo.nlu.Users/StreamNotifications\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<ondewoNlu008.Notification>>\n     */\n    streamNotifications: (\n      requestData: ondewoNlu008.StreamNotificationsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<ondewoNlu008.Notification>> => {\n      return this.handler.handle({\n        type: GrpcCallType.serverStream,\n        client: this.client,\n        path: '/ondewo.nlu.Users/StreamNotifications',\n        requestData,\n        requestMetadata,\n        requestClass: ondewoNlu008.StreamNotificationsRequest,\n        responseClass: ondewoNlu008.Notification\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/GetUserPreferences\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetUserPreferencesResponse>>\n     */\n    getUserPreferences: (\n      requestData: thisProto.GetUserPreferencesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetUserPreferencesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/GetUserPreferences',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetUserPreferencesRequest,\n        responseClass: thisProto.GetUserPreferencesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/SetUserPreferences\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SetUserPreferencesResponse>>\n     */\n    setUserPreferences: (\n      requestData: thisProto.SetUserPreferencesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SetUserPreferencesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/SetUserPreferences',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.SetUserPreferencesRequest,\n        responseClass: thisProto.SetUserPreferencesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/DeleteUserPreferences\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.DeleteUserPreferencesResponse>>\n     */\n    deleteUserPreferences: (\n      requestData: thisProto.DeleteUserPreferencesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.DeleteUserPreferencesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/DeleteUserPreferences',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteUserPreferencesRequest,\n        responseClass: thisProto.DeleteUserPreferencesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Users/DeleteAllUserPreferences\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.DeleteUserPreferencesResponse>>\n     */\n    deleteAllUserPreferences: (\n      requestData: thisProto.DeleteAllUserPreferencesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.DeleteUserPreferencesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Users/DeleteAllUserPreferences',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteAllUserPreferencesRequest,\n        responseClass: thisProto.DeleteUserPreferencesResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_USERS_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Users', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/CreateUser\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.User>\n   */\n  createUser(\n    requestData: thisProto.CreateUserRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.User> {\n    return this.$raw\n      .createUser(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/GetUser\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.User>\n   */\n  getUser(\n    requestData: thisProto.GetUserRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.User> {\n    return this.$raw\n      .getUser(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/GetUserInfo\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.UserInfo>\n   */\n  getUserInfo(\n    requestData: thisProto.GetUserRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.UserInfo> {\n    return this.$raw\n      .getUserInfo(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/DeleteUser\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteUser(\n    requestData: thisProto.GetUserRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteUser(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/UpdateUser\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.User>\n   */\n  updateUser(\n    requestData: thisProto.UpdateUserRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.User> {\n    return this.$raw\n      .updateUser(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/ListUsers\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListUsersResponse>\n   */\n  listUsers(\n    requestData: thisProto.ListUsersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListUsersResponse> {\n    return this.$raw\n      .listUsers(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/ListUserInfos\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListUserInfosResponse>\n   */\n  listUserInfos(\n    requestData: thisProto.ListUsersRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListUserInfosResponse> {\n    return this.$raw\n      .listUserInfos(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/CreateServerRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ServerRole>\n   */\n  createServerRole(\n    requestData: thisProto.CreateServerRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ServerRole> {\n    return this.$raw\n      .createServerRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/GetServerRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ServerRole>\n   */\n  getServerRole(\n    requestData: thisProto.GetServerRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ServerRole> {\n    return this.$raw\n      .getServerRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/DeleteServerRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteServerRole(\n    requestData: thisProto.DeleteServerRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteServerRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/UpdateServerRole\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ServerRole>\n   */\n  updateServerRole(\n    requestData: thisProto.UpdateServerRoleRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ServerRole> {\n    return this.$raw\n      .updateServerRole(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/ListServerRoles\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListServerRolesResponse>\n   */\n  listServerRoles(\n    requestData: thisProto.ListServerRolesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListServerRolesResponse> {\n    return this.$raw\n      .listServerRoles(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/ListServerPermissions\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListServerPermissionsResponse>\n   */\n  listServerPermissions(\n    requestData: thisProto.ListServerPermissionsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListServerPermissionsResponse> {\n    return this.$raw\n      .listServerPermissions(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/CheckLogin\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  checkLogin(\n    requestData: googleProtobuf003.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .checkLogin(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/ListNotifications\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.ListNotificationsResponse>\n   */\n  listNotifications(\n    requestData: ondewoNlu008.ListNotificationsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.ListNotificationsResponse> {\n    return this.$raw\n      .listNotifications(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/SetNotificationsFlaggedStatus\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.ListNotificationsResponse>\n   */\n  setNotificationsFlaggedStatus(\n    requestData: ondewoNlu008.SetNotificationsFlaggedStatusRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.ListNotificationsResponse> {\n    return this.$raw\n      .setNotificationsFlaggedStatus(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/SetNotificationsReadStatus\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.ListNotificationsResponse>\n   */\n  setNotificationsReadStatus(\n    requestData: ondewoNlu008.SetNotificationsReadStatusRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.ListNotificationsResponse> {\n    return this.$raw\n      .setNotificationsReadStatus(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/AddNotifications\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.AddNotificationsResponse>\n   */\n  addNotifications(\n    requestData: ondewoNlu008.AddNotificationsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.AddNotificationsResponse> {\n    return this.$raw\n      .addNotifications(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/GetNotification\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Notification>\n   */\n  getNotification(\n    requestData: ondewoNlu008.GetNotificationRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Notification> {\n    return this.$raw\n      .getNotification(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/UpdateNotification\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Notification>\n   */\n  updateNotification(\n    requestData: ondewoNlu008.UpdateNotificationRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Notification> {\n    return this.$raw\n      .updateNotification(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/DeleteNotifications\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteNotifications(\n    requestData: ondewoNlu008.DeleteNotificationsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteNotifications(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Server streaming @/ondewo.nlu.Users/StreamNotifications\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<ondewoNlu008.Notification>\n   */\n  streamNotifications(\n    requestData: ondewoNlu008.StreamNotificationsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<ondewoNlu008.Notification> {\n    return this.$raw\n      .streamNotifications(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/GetUserPreferences\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetUserPreferencesResponse>\n   */\n  getUserPreferences(\n    requestData: thisProto.GetUserPreferencesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetUserPreferencesResponse> {\n    return this.$raw\n      .getUserPreferences(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/SetUserPreferences\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SetUserPreferencesResponse>\n   */\n  setUserPreferences(\n    requestData: thisProto.SetUserPreferencesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SetUserPreferencesResponse> {\n    return this.$raw\n      .setUserPreferences(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/DeleteUserPreferences\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.DeleteUserPreferencesResponse>\n   */\n  deleteUserPreferences(\n    requestData: thisProto.DeleteUserPreferencesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.DeleteUserPreferencesResponse> {\n    return this.$raw\n      .deleteUserPreferences(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Users/DeleteAllUserPreferences\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.DeleteUserPreferencesResponse>\n   */\n  deleteAllUserPreferences(\n    requestData: thisProto.DeleteAllUserPreferencesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.DeleteUserPreferencesResponse> {\n    return this.$raw\n      .deleteAllUserPreferences(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions,\n  uint8ArrayToBase64\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/annotations.pb';\nimport * as ondewoNlu001 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu002 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu003 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu008 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/entity-type.pb';\nexport enum ReannotateEntitiesOptions {\n  REANNOTATE_NEVER = 0,\n  REANNOTATE_ALWAYS = 1,\n  REANNOTATE_IF_EMPTY = 2,\n  REANNOTATE_AFTER_DELETION = 3,\n  REANNOTATE_IF_EMPTY_OR_AFTER_DELETION = 4\n}\n/**\n * Message implementation for ondewo.nlu.ValidateRegexRequest\n */\nexport class ValidateRegexRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ValidateRegexRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ValidateRegexRequest();\n    ValidateRegexRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ValidateRegexRequest) {\n    _instance.regex = _instance.regex || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ValidateRegexRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.regex = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ValidateRegexRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ValidateRegexRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.regex) {\n      _writer.writeString(1, _instance.regex);\n    }\n  }\n\n  private _regex: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ValidateRegexRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ValidateRegexRequest.AsObject>) {\n    _value = _value || {};\n    this.regex = _value.regex;\n    ValidateRegexRequest.refineValues(this);\n  }\n  get regex(): string {\n    return this._regex;\n  }\n  set regex(value: string) {\n    this._regex = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ValidateRegexRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ValidateRegexRequest.AsObject {\n    return {\n      regex: this.regex\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ValidateRegexRequest.AsProtobufJSON {\n    return {\n      regex: this.regex\n    };\n  }\n}\nexport module ValidateRegexRequest {\n  /**\n   * Standard JavaScript object representation for ValidateRegexRequest\n   */\n  export interface AsObject {\n    regex: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ValidateRegexRequest\n   */\n  export interface AsProtobufJSON {\n    regex: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ValidateRegexResponse\n */\nexport class ValidateRegexResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ValidateRegexResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ValidateRegexResponse();\n    ValidateRegexResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ValidateRegexResponse) {\n    _instance.errorMessages = _instance.errorMessages || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ValidateRegexResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.errorMessages = _instance.errorMessages || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ValidateRegexResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ValidateRegexResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.errorMessages && _instance.errorMessages.length) {\n      _writer.writeRepeatedString(1, _instance.errorMessages);\n    }\n  }\n\n  private _errorMessages: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ValidateRegexResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ValidateRegexResponse.AsObject>) {\n    _value = _value || {};\n    this.errorMessages = (_value.errorMessages || []).slice();\n    ValidateRegexResponse.refineValues(this);\n  }\n  get errorMessages(): string[] {\n    return this._errorMessages;\n  }\n  set errorMessages(value: string[]) {\n    this._errorMessages = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ValidateRegexResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ValidateRegexResponse.AsObject {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ValidateRegexResponse.AsProtobufJSON {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n}\nexport module ValidateRegexResponse {\n  /**\n   * Standard JavaScript object representation for ValidateRegexResponse\n   */\n  export interface AsObject {\n    errorMessages: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ValidateRegexResponse\n   */\n  export interface AsProtobufJSON {\n    errorMessages: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ValidateEmbeddedRegexRequest\n */\nexport class ValidateEmbeddedRegexRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ValidateEmbeddedRegexRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ValidateEmbeddedRegexRequest();\n    ValidateEmbeddedRegexRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ValidateEmbeddedRegexRequest) {\n    _instance.entityType = _instance.entityType || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ValidateEmbeddedRegexRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entityType = new ondewoNlu009.EntityType.Entity();\n          _reader.readMessage(\n            _instance.entityType,\n            ondewoNlu009.EntityType.Entity.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ValidateEmbeddedRegexRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ValidateEmbeddedRegexRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityType) {\n      _writer.writeMessage(\n        1,\n        _instance.entityType as any,\n        ondewoNlu009.EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entityType?: ondewoNlu009.EntityType.Entity;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ValidateEmbeddedRegexRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ValidateEmbeddedRegexRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.entityType = _value.entityType\n      ? new ondewoNlu009.EntityType.Entity(_value.entityType)\n      : undefined;\n    ValidateEmbeddedRegexRequest.refineValues(this);\n  }\n  get entityType(): ondewoNlu009.EntityType.Entity | undefined {\n    return this._entityType;\n  }\n  set entityType(value: ondewoNlu009.EntityType.Entity | undefined) {\n    this._entityType = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ValidateEmbeddedRegexRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ValidateEmbeddedRegexRequest.AsObject {\n    return {\n      entityType: this.entityType ? this.entityType.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ValidateEmbeddedRegexRequest.AsProtobufJSON {\n    return {\n      entityType: this.entityType\n        ? this.entityType.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module ValidateEmbeddedRegexRequest {\n  /**\n   * Standard JavaScript object representation for ValidateEmbeddedRegexRequest\n   */\n  export interface AsObject {\n    entityType?: ondewoNlu009.EntityType.Entity.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for ValidateEmbeddedRegexRequest\n   */\n  export interface AsProtobufJSON {\n    entityType: ondewoNlu009.EntityType.Entity.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ValidateEmbeddedRegexResponse\n */\nexport class ValidateEmbeddedRegexResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ValidateEmbeddedRegexResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ValidateEmbeddedRegexResponse();\n    ValidateEmbeddedRegexResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ValidateEmbeddedRegexResponse) {\n    _instance.errorMessages = _instance.errorMessages || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ValidateEmbeddedRegexResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.errorMessages = _instance.errorMessages || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ValidateEmbeddedRegexResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ValidateEmbeddedRegexResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.errorMessages && _instance.errorMessages.length) {\n      _writer.writeRepeatedString(1, _instance.errorMessages);\n    }\n  }\n\n  private _errorMessages: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ValidateEmbeddedRegexResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ValidateEmbeddedRegexResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.errorMessages = (_value.errorMessages || []).slice();\n    ValidateEmbeddedRegexResponse.refineValues(this);\n  }\n  get errorMessages(): string[] {\n    return this._errorMessages;\n  }\n  set errorMessages(value: string[]) {\n    this._errorMessages = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ValidateEmbeddedRegexResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ValidateEmbeddedRegexResponse.AsObject {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ValidateEmbeddedRegexResponse.AsProtobufJSON {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n}\nexport module ValidateEmbeddedRegexResponse {\n  /**\n   * Standard JavaScript object representation for ValidateEmbeddedRegexResponse\n   */\n  export interface AsObject {\n    errorMessages: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ValidateEmbeddedRegexResponse\n   */\n  export interface AsProtobufJSON {\n    errorMessages: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanAllIntentsRequest\n */\nexport class CleanAllIntentsRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanAllIntentsRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanAllIntentsRequest();\n    CleanAllIntentsRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanAllIntentsRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.specialCharacters = _instance.specialCharacters || '';\n    _instance.substringWhiteList = _instance.substringWhiteList || [];\n    _instance.dryRun = _instance.dryRun || false;\n    _instance.trainingPhraseCleanerOptions =\n      _instance.trainingPhraseCleanerOptions || undefined;\n    _instance.reannotateEntitiesOptions =\n      _instance.reannotateEntitiesOptions || 0;\n    _instance.numberOfWorkers = _instance.numberOfWorkers || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanAllIntentsRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.specialCharacters = _reader.readString();\n          break;\n        case 4:\n          (_instance.substringWhiteList =\n            _instance.substringWhiteList || []).push(_reader.readString());\n          break;\n        case 5:\n          _instance.dryRun = _reader.readBool();\n          break;\n        case 6:\n          _instance.trainingPhraseCleanerOptions = new TrainingPhraseCleanerOptions();\n          _reader.readMessage(\n            _instance.trainingPhraseCleanerOptions,\n            TrainingPhraseCleanerOptions.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.reannotateEntitiesOptions = _reader.readEnum();\n          break;\n        case 8:\n          _instance.numberOfWorkers = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanAllIntentsRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanAllIntentsRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.specialCharacters) {\n      _writer.writeString(3, _instance.specialCharacters);\n    }\n    if (_instance.substringWhiteList && _instance.substringWhiteList.length) {\n      _writer.writeRepeatedString(4, _instance.substringWhiteList);\n    }\n    if (_instance.dryRun) {\n      _writer.writeBool(5, _instance.dryRun);\n    }\n    if (_instance.trainingPhraseCleanerOptions) {\n      _writer.writeMessage(\n        6,\n        _instance.trainingPhraseCleanerOptions as any,\n        TrainingPhraseCleanerOptions.serializeBinaryToWriter\n      );\n    }\n    if (_instance.reannotateEntitiesOptions) {\n      _writer.writeEnum(7, _instance.reannotateEntitiesOptions);\n    }\n    if (_instance.numberOfWorkers) {\n      _writer.writeInt32(8, _instance.numberOfWorkers);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _specialCharacters: string;\n  private _substringWhiteList: string[];\n  private _dryRun: boolean;\n  private _trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions;\n  private _reannotateEntitiesOptions: ReannotateEntitiesOptions;\n  private _numberOfWorkers: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanAllIntentsRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanAllIntentsRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.specialCharacters = _value.specialCharacters;\n    this.substringWhiteList = (_value.substringWhiteList || []).slice();\n    this.dryRun = _value.dryRun;\n    this.trainingPhraseCleanerOptions = _value.trainingPhraseCleanerOptions\n      ? new TrainingPhraseCleanerOptions(_value.trainingPhraseCleanerOptions)\n      : undefined;\n    this.reannotateEntitiesOptions = _value.reannotateEntitiesOptions;\n    this.numberOfWorkers = _value.numberOfWorkers;\n    CleanAllIntentsRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get specialCharacters(): string {\n    return this._specialCharacters;\n  }\n  set specialCharacters(value: string) {\n    this._specialCharacters = value;\n  }\n  get substringWhiteList(): string[] {\n    return this._substringWhiteList;\n  }\n  set substringWhiteList(value: string[]) {\n    this._substringWhiteList = value;\n  }\n  get dryRun(): boolean {\n    return this._dryRun;\n  }\n  set dryRun(value: boolean) {\n    this._dryRun = value;\n  }\n  get trainingPhraseCleanerOptions(): TrainingPhraseCleanerOptions | undefined {\n    return this._trainingPhraseCleanerOptions;\n  }\n  set trainingPhraseCleanerOptions(\n    value: TrainingPhraseCleanerOptions | undefined\n  ) {\n    this._trainingPhraseCleanerOptions = value;\n  }\n  get reannotateEntitiesOptions(): ReannotateEntitiesOptions {\n    return this._reannotateEntitiesOptions;\n  }\n  set reannotateEntitiesOptions(value: ReannotateEntitiesOptions) {\n    this._reannotateEntitiesOptions = value;\n  }\n  get numberOfWorkers(): number {\n    return this._numberOfWorkers;\n  }\n  set numberOfWorkers(value: number) {\n    this._numberOfWorkers = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanAllIntentsRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanAllIntentsRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      dryRun: this.dryRun,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toObject()\n        : undefined,\n      reannotateEntitiesOptions: this.reannotateEntitiesOptions,\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanAllIntentsRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      dryRun: this.dryRun,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toProtobufJSON(options)\n        : null,\n      reannotateEntitiesOptions:\n        ReannotateEntitiesOptions[\n          this.reannotateEntitiesOptions === null ||\n          this.reannotateEntitiesOptions === undefined\n            ? 0\n            : this.reannotateEntitiesOptions\n        ],\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n}\nexport module CleanAllIntentsRequest {\n  /**\n   * Standard JavaScript object representation for CleanAllIntentsRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    dryRun: boolean;\n    trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions.AsObject;\n    reannotateEntitiesOptions: ReannotateEntitiesOptions;\n    numberOfWorkers: number;\n  }\n\n  /**\n   * Protobuf JSON representation for CleanAllIntentsRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    dryRun: boolean;\n    trainingPhraseCleanerOptions: TrainingPhraseCleanerOptions.AsProtobufJSON | null;\n    reannotateEntitiesOptions: string;\n    numberOfWorkers: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanAllIntentsResponse\n */\nexport class CleanAllIntentsResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanAllIntentsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanAllIntentsResponse();\n    CleanAllIntentsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanAllIntentsResponse) {\n    _instance.cleanedIntents = _instance.cleanedIntents || [];\n    _instance.intentUpdateList = _instance.intentUpdateList || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanAllIntentsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ondewoNlu008.Intent();\n          _reader.readMessage(\n            messageInitializer1,\n            ondewoNlu008.Intent.deserializeBinaryFromReader\n          );\n          (_instance.cleanedIntents = _instance.cleanedIntents || []).push(\n            messageInitializer1\n          );\n          break;\n        case 2:\n          const messageInitializer2 = new IntentUpdate();\n          _reader.readMessage(\n            messageInitializer2,\n            IntentUpdate.deserializeBinaryFromReader\n          );\n          (_instance.intentUpdateList = _instance.intentUpdateList || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanAllIntentsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanAllIntentsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.cleanedIntents && _instance.cleanedIntents.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.cleanedIntents as any,\n        ondewoNlu008.Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.intentUpdateList && _instance.intentUpdateList.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.intentUpdateList as any,\n        IntentUpdate.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _cleanedIntents?: ondewoNlu008.Intent[];\n  private _intentUpdateList?: IntentUpdate[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanAllIntentsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanAllIntentsResponse.AsObject>) {\n    _value = _value || {};\n    this.cleanedIntents = (_value.cleanedIntents || []).map(\n      m => new ondewoNlu008.Intent(m)\n    );\n    this.intentUpdateList = (_value.intentUpdateList || []).map(\n      m => new IntentUpdate(m)\n    );\n    CleanAllIntentsResponse.refineValues(this);\n  }\n  get cleanedIntents(): ondewoNlu008.Intent[] | undefined {\n    return this._cleanedIntents;\n  }\n  set cleanedIntents(value: ondewoNlu008.Intent[] | undefined) {\n    this._cleanedIntents = value;\n  }\n  get intentUpdateList(): IntentUpdate[] | undefined {\n    return this._intentUpdateList;\n  }\n  set intentUpdateList(value: IntentUpdate[] | undefined) {\n    this._intentUpdateList = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanAllIntentsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanAllIntentsResponse.AsObject {\n    return {\n      cleanedIntents: (this.cleanedIntents || []).map(m => m.toObject()),\n      intentUpdateList: (this.intentUpdateList || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanAllIntentsResponse.AsProtobufJSON {\n    return {\n      cleanedIntents: (this.cleanedIntents || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      intentUpdateList: (this.intentUpdateList || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module CleanAllIntentsResponse {\n  /**\n   * Standard JavaScript object representation for CleanAllIntentsResponse\n   */\n  export interface AsObject {\n    cleanedIntents?: ondewoNlu008.Intent.AsObject[];\n    intentUpdateList?: IntentUpdate.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for CleanAllIntentsResponse\n   */\n  export interface AsProtobufJSON {\n    cleanedIntents: ondewoNlu008.Intent.AsProtobufJSON[] | null;\n    intentUpdateList: IntentUpdate.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanIntentRequest\n */\nexport class CleanIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanIntentRequest();\n    CleanIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanIntentRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.intentName = _instance.intentName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.specialCharacters = _instance.specialCharacters || '';\n    _instance.substringWhiteList = _instance.substringWhiteList || [];\n    _instance.dryRun = _instance.dryRun || false;\n    _instance.trainingPhraseCleanerOptions =\n      _instance.trainingPhraseCleanerOptions || undefined;\n    _instance.reannotateEntitiesOptions =\n      _instance.reannotateEntitiesOptions || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.intentName = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.specialCharacters = _reader.readString();\n          break;\n        case 5:\n          (_instance.substringWhiteList =\n            _instance.substringWhiteList || []).push(_reader.readString());\n          break;\n        case 6:\n          _instance.dryRun = _reader.readBool();\n          break;\n        case 7:\n          _instance.trainingPhraseCleanerOptions = new TrainingPhraseCleanerOptions();\n          _reader.readMessage(\n            _instance.trainingPhraseCleanerOptions,\n            TrainingPhraseCleanerOptions.deserializeBinaryFromReader\n          );\n          break;\n        case 8:\n          _instance.reannotateEntitiesOptions = _reader.readEnum();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.intentName) {\n      _writer.writeString(2, _instance.intentName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.specialCharacters) {\n      _writer.writeString(4, _instance.specialCharacters);\n    }\n    if (_instance.substringWhiteList && _instance.substringWhiteList.length) {\n      _writer.writeRepeatedString(5, _instance.substringWhiteList);\n    }\n    if (_instance.dryRun) {\n      _writer.writeBool(6, _instance.dryRun);\n    }\n    if (_instance.trainingPhraseCleanerOptions) {\n      _writer.writeMessage(\n        7,\n        _instance.trainingPhraseCleanerOptions as any,\n        TrainingPhraseCleanerOptions.serializeBinaryToWriter\n      );\n    }\n    if (_instance.reannotateEntitiesOptions) {\n      _writer.writeEnum(8, _instance.reannotateEntitiesOptions);\n    }\n  }\n\n  private _parent: string;\n  private _intentName: string;\n  private _languageCode: string;\n  private _specialCharacters: string;\n  private _substringWhiteList: string[];\n  private _dryRun: boolean;\n  private _trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions;\n  private _reannotateEntitiesOptions: ReannotateEntitiesOptions;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanIntentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanIntentRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.intentName = _value.intentName;\n    this.languageCode = _value.languageCode;\n    this.specialCharacters = _value.specialCharacters;\n    this.substringWhiteList = (_value.substringWhiteList || []).slice();\n    this.dryRun = _value.dryRun;\n    this.trainingPhraseCleanerOptions = _value.trainingPhraseCleanerOptions\n      ? new TrainingPhraseCleanerOptions(_value.trainingPhraseCleanerOptions)\n      : undefined;\n    this.reannotateEntitiesOptions = _value.reannotateEntitiesOptions;\n    CleanIntentRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get intentName(): string {\n    return this._intentName;\n  }\n  set intentName(value: string) {\n    this._intentName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get specialCharacters(): string {\n    return this._specialCharacters;\n  }\n  set specialCharacters(value: string) {\n    this._specialCharacters = value;\n  }\n  get substringWhiteList(): string[] {\n    return this._substringWhiteList;\n  }\n  set substringWhiteList(value: string[]) {\n    this._substringWhiteList = value;\n  }\n  get dryRun(): boolean {\n    return this._dryRun;\n  }\n  set dryRun(value: boolean) {\n    this._dryRun = value;\n  }\n  get trainingPhraseCleanerOptions(): TrainingPhraseCleanerOptions | undefined {\n    return this._trainingPhraseCleanerOptions;\n  }\n  set trainingPhraseCleanerOptions(\n    value: TrainingPhraseCleanerOptions | undefined\n  ) {\n    this._trainingPhraseCleanerOptions = value;\n  }\n  get reannotateEntitiesOptions(): ReannotateEntitiesOptions {\n    return this._reannotateEntitiesOptions;\n  }\n  set reannotateEntitiesOptions(value: ReannotateEntitiesOptions) {\n    this._reannotateEntitiesOptions = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanIntentRequest.AsObject {\n    return {\n      parent: this.parent,\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      dryRun: this.dryRun,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toObject()\n        : undefined,\n      reannotateEntitiesOptions: this.reannotateEntitiesOptions\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanIntentRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      intentName: this.intentName,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      dryRun: this.dryRun,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toProtobufJSON(options)\n        : null,\n      reannotateEntitiesOptions:\n        ReannotateEntitiesOptions[\n          this.reannotateEntitiesOptions === null ||\n          this.reannotateEntitiesOptions === undefined\n            ? 0\n            : this.reannotateEntitiesOptions\n        ]\n    };\n  }\n}\nexport module CleanIntentRequest {\n  /**\n   * Standard JavaScript object representation for CleanIntentRequest\n   */\n  export interface AsObject {\n    parent: string;\n    intentName: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    dryRun: boolean;\n    trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions.AsObject;\n    reannotateEntitiesOptions: ReannotateEntitiesOptions;\n  }\n\n  /**\n   * Protobuf JSON representation for CleanIntentRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    intentName: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    dryRun: boolean;\n    trainingPhraseCleanerOptions: TrainingPhraseCleanerOptions.AsProtobufJSON | null;\n    reannotateEntitiesOptions: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanIntentResponse\n */\nexport class CleanIntentResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanIntentResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanIntentResponse();\n    CleanIntentResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanIntentResponse) {\n    _instance.cleanedIntent = _instance.cleanedIntent || undefined;\n    _instance.intentUpdate = _instance.intentUpdate || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanIntentResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.cleanedIntent = new ondewoNlu008.Intent();\n          _reader.readMessage(\n            _instance.cleanedIntent,\n            ondewoNlu008.Intent.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.intentUpdate = new IntentUpdate();\n          _reader.readMessage(\n            _instance.intentUpdate,\n            IntentUpdate.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanIntentResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanIntentResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.cleanedIntent) {\n      _writer.writeMessage(\n        1,\n        _instance.cleanedIntent as any,\n        ondewoNlu008.Intent.serializeBinaryToWriter\n      );\n    }\n    if (_instance.intentUpdate) {\n      _writer.writeMessage(\n        2,\n        _instance.intentUpdate as any,\n        IntentUpdate.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _cleanedIntent?: ondewoNlu008.Intent;\n  private _intentUpdate?: IntentUpdate;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanIntentResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanIntentResponse.AsObject>) {\n    _value = _value || {};\n    this.cleanedIntent = _value.cleanedIntent\n      ? new ondewoNlu008.Intent(_value.cleanedIntent)\n      : undefined;\n    this.intentUpdate = _value.intentUpdate\n      ? new IntentUpdate(_value.intentUpdate)\n      : undefined;\n    CleanIntentResponse.refineValues(this);\n  }\n  get cleanedIntent(): ondewoNlu008.Intent | undefined {\n    return this._cleanedIntent;\n  }\n  set cleanedIntent(value: ondewoNlu008.Intent | undefined) {\n    this._cleanedIntent = value;\n  }\n  get intentUpdate(): IntentUpdate | undefined {\n    return this._intentUpdate;\n  }\n  set intentUpdate(value: IntentUpdate | undefined) {\n    this._intentUpdate = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanIntentResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanIntentResponse.AsObject {\n    return {\n      cleanedIntent: this.cleanedIntent\n        ? this.cleanedIntent.toObject()\n        : undefined,\n      intentUpdate: this.intentUpdate ? this.intentUpdate.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanIntentResponse.AsProtobufJSON {\n    return {\n      cleanedIntent: this.cleanedIntent\n        ? this.cleanedIntent.toProtobufJSON(options)\n        : null,\n      intentUpdate: this.intentUpdate\n        ? this.intentUpdate.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module CleanIntentResponse {\n  /**\n   * Standard JavaScript object representation for CleanIntentResponse\n   */\n  export interface AsObject {\n    cleanedIntent?: ondewoNlu008.Intent.AsObject;\n    intentUpdate?: IntentUpdate.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for CleanIntentResponse\n   */\n  export interface AsProtobufJSON {\n    cleanedIntent: ondewoNlu008.Intent.AsProtobufJSON | null;\n    intentUpdate: IntentUpdate.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.TrainingPhraseCleanerOptions\n */\nexport class TrainingPhraseCleanerOptions implements GrpcMessage {\n  static id = 'ondewo.nlu.TrainingPhraseCleanerOptions';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new TrainingPhraseCleanerOptions();\n    TrainingPhraseCleanerOptions.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: TrainingPhraseCleanerOptions) {\n    _instance.deleteRepeatedWhitespaces =\n      _instance.deleteRepeatedWhitespaces || false;\n    _instance.deleteLeadingSpecialCharacters =\n      _instance.deleteLeadingSpecialCharacters || false;\n    _instance.deleteTrailingSpecialCharacters =\n      _instance.deleteTrailingSpecialCharacters || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: TrainingPhraseCleanerOptions,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.deleteRepeatedWhitespaces = _reader.readBool();\n          break;\n        case 2:\n          _instance.deleteLeadingSpecialCharacters = _reader.readBool();\n          break;\n        case 3:\n          _instance.deleteTrailingSpecialCharacters = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    TrainingPhraseCleanerOptions.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: TrainingPhraseCleanerOptions,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.deleteRepeatedWhitespaces) {\n      _writer.writeBool(1, _instance.deleteRepeatedWhitespaces);\n    }\n    if (_instance.deleteLeadingSpecialCharacters) {\n      _writer.writeBool(2, _instance.deleteLeadingSpecialCharacters);\n    }\n    if (_instance.deleteTrailingSpecialCharacters) {\n      _writer.writeBool(3, _instance.deleteTrailingSpecialCharacters);\n    }\n  }\n\n  private _deleteRepeatedWhitespaces: boolean;\n  private _deleteLeadingSpecialCharacters: boolean;\n  private _deleteTrailingSpecialCharacters: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of TrainingPhraseCleanerOptions to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<TrainingPhraseCleanerOptions.AsObject>\n  ) {\n    _value = _value || {};\n    this.deleteRepeatedWhitespaces = _value.deleteRepeatedWhitespaces;\n    this.deleteLeadingSpecialCharacters = _value.deleteLeadingSpecialCharacters;\n    this.deleteTrailingSpecialCharacters =\n      _value.deleteTrailingSpecialCharacters;\n    TrainingPhraseCleanerOptions.refineValues(this);\n  }\n  get deleteRepeatedWhitespaces(): boolean {\n    return this._deleteRepeatedWhitespaces;\n  }\n  set deleteRepeatedWhitespaces(value: boolean) {\n    this._deleteRepeatedWhitespaces = value;\n  }\n  get deleteLeadingSpecialCharacters(): boolean {\n    return this._deleteLeadingSpecialCharacters;\n  }\n  set deleteLeadingSpecialCharacters(value: boolean) {\n    this._deleteLeadingSpecialCharacters = value;\n  }\n  get deleteTrailingSpecialCharacters(): boolean {\n    return this._deleteTrailingSpecialCharacters;\n  }\n  set deleteTrailingSpecialCharacters(value: boolean) {\n    this._deleteTrailingSpecialCharacters = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    TrainingPhraseCleanerOptions.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): TrainingPhraseCleanerOptions.AsObject {\n    return {\n      deleteRepeatedWhitespaces: this.deleteRepeatedWhitespaces,\n      deleteLeadingSpecialCharacters: this.deleteLeadingSpecialCharacters,\n      deleteTrailingSpecialCharacters: this.deleteTrailingSpecialCharacters\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): TrainingPhraseCleanerOptions.AsProtobufJSON {\n    return {\n      deleteRepeatedWhitespaces: this.deleteRepeatedWhitespaces,\n      deleteLeadingSpecialCharacters: this.deleteLeadingSpecialCharacters,\n      deleteTrailingSpecialCharacters: this.deleteTrailingSpecialCharacters\n    };\n  }\n}\nexport module TrainingPhraseCleanerOptions {\n  /**\n   * Standard JavaScript object representation for TrainingPhraseCleanerOptions\n   */\n  export interface AsObject {\n    deleteRepeatedWhitespaces: boolean;\n    deleteLeadingSpecialCharacters: boolean;\n    deleteTrailingSpecialCharacters: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for TrainingPhraseCleanerOptions\n   */\n  export interface AsProtobufJSON {\n    deleteRepeatedWhitespaces: boolean;\n    deleteLeadingSpecialCharacters: boolean;\n    deleteTrailingSpecialCharacters: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.StringUpdate\n */\nexport class StringUpdate implements GrpcMessage {\n  static id = 'ondewo.nlu.StringUpdate';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new StringUpdate();\n    StringUpdate.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: StringUpdate) {\n    _instance.new = _instance.new || '';\n    _instance.old = _instance.old || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: StringUpdate,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.new = _reader.readString();\n          break;\n        case 2:\n          _instance.old = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    StringUpdate.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: StringUpdate,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.new) {\n      _writer.writeString(1, _instance.new);\n    }\n    if (_instance.old) {\n      _writer.writeString(2, _instance.old);\n    }\n  }\n\n  private _new: string;\n  private _old: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of StringUpdate to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<StringUpdate.AsObject>) {\n    _value = _value || {};\n    this.new = _value.new;\n    this.old = _value.old;\n    StringUpdate.refineValues(this);\n  }\n  get new(): string {\n    return this._new;\n  }\n  set new(value: string) {\n    this._new = value;\n  }\n  get old(): string {\n    return this._old;\n  }\n  set old(value: string) {\n    this._old = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    StringUpdate.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): StringUpdate.AsObject {\n    return {\n      new: this.new,\n      old: this.old\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): StringUpdate.AsProtobufJSON {\n    return {\n      new: this.new,\n      old: this.old\n    };\n  }\n}\nexport module StringUpdate {\n  /**\n   * Standard JavaScript object representation for StringUpdate\n   */\n  export interface AsObject {\n    new: string;\n    old: string;\n  }\n\n  /**\n   * Protobuf JSON representation for StringUpdate\n   */\n  export interface AsProtobufJSON {\n    new: string;\n    old: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.IntentUpdate\n */\nexport class IntentUpdate implements GrpcMessage {\n  static id = 'ondewo.nlu.IntentUpdate';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new IntentUpdate();\n    IntentUpdate.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: IntentUpdate) {\n    _instance.intentDisplayName = _instance.intentDisplayName || '';\n    _instance.trainingPhraseUpdateList =\n      _instance.trainingPhraseUpdateList || [];\n    _instance.deletedParameters = _instance.deletedParameters || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: IntentUpdate,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.intentDisplayName = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new IntentUpdate.TrainingPhraseUpdate();\n          _reader.readMessage(\n            messageInitializer2,\n            IntentUpdate.TrainingPhraseUpdate.deserializeBinaryFromReader\n          );\n          (_instance.trainingPhraseUpdateList =\n            _instance.trainingPhraseUpdateList || []).push(messageInitializer2);\n          break;\n        case 3:\n          (_instance.deletedParameters =\n            _instance.deletedParameters || []).push(_reader.readString());\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    IntentUpdate.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: IntentUpdate,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.intentDisplayName) {\n      _writer.writeString(1, _instance.intentDisplayName);\n    }\n    if (\n      _instance.trainingPhraseUpdateList &&\n      _instance.trainingPhraseUpdateList.length\n    ) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.trainingPhraseUpdateList as any,\n        IntentUpdate.TrainingPhraseUpdate.serializeBinaryToWriter\n      );\n    }\n    if (_instance.deletedParameters && _instance.deletedParameters.length) {\n      _writer.writeRepeatedString(3, _instance.deletedParameters);\n    }\n  }\n\n  private _intentDisplayName: string;\n  private _trainingPhraseUpdateList?: IntentUpdate.TrainingPhraseUpdate[];\n  private _deletedParameters: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of IntentUpdate to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<IntentUpdate.AsObject>) {\n    _value = _value || {};\n    this.intentDisplayName = _value.intentDisplayName;\n    this.trainingPhraseUpdateList = (_value.trainingPhraseUpdateList || []).map(\n      m => new IntentUpdate.TrainingPhraseUpdate(m)\n    );\n    this.deletedParameters = (_value.deletedParameters || []).slice();\n    IntentUpdate.refineValues(this);\n  }\n  get intentDisplayName(): string {\n    return this._intentDisplayName;\n  }\n  set intentDisplayName(value: string) {\n    this._intentDisplayName = value;\n  }\n  get trainingPhraseUpdateList():\n    | IntentUpdate.TrainingPhraseUpdate[]\n    | undefined {\n    return this._trainingPhraseUpdateList;\n  }\n  set trainingPhraseUpdateList(\n    value: IntentUpdate.TrainingPhraseUpdate[] | undefined\n  ) {\n    this._trainingPhraseUpdateList = value;\n  }\n  get deletedParameters(): string[] {\n    return this._deletedParameters;\n  }\n  set deletedParameters(value: string[]) {\n    this._deletedParameters = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    IntentUpdate.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): IntentUpdate.AsObject {\n    return {\n      intentDisplayName: this.intentDisplayName,\n      trainingPhraseUpdateList: (this.trainingPhraseUpdateList || []).map(m =>\n        m.toObject()\n      ),\n      deletedParameters: (this.deletedParameters || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): IntentUpdate.AsProtobufJSON {\n    return {\n      intentDisplayName: this.intentDisplayName,\n      trainingPhraseUpdateList: (this.trainingPhraseUpdateList || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      deletedParameters: (this.deletedParameters || []).slice()\n    };\n  }\n}\nexport module IntentUpdate {\n  /**\n   * Standard JavaScript object representation for IntentUpdate\n   */\n  export interface AsObject {\n    intentDisplayName: string;\n    trainingPhraseUpdateList?: IntentUpdate.TrainingPhraseUpdate.AsObject[];\n    deletedParameters: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for IntentUpdate\n   */\n  export interface AsProtobufJSON {\n    intentDisplayName: string;\n    trainingPhraseUpdateList:\n      | IntentUpdate.TrainingPhraseUpdate.AsProtobufJSON[]\n      | null;\n    deletedParameters: string[];\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.IntentUpdate.TrainingPhraseUpdate\n   */\n  export class TrainingPhraseUpdate implements GrpcMessage {\n    static id = 'ondewo.nlu.IntentUpdate.TrainingPhraseUpdate';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new TrainingPhraseUpdate();\n      TrainingPhraseUpdate.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: TrainingPhraseUpdate) {\n      _instance.trainingPhraseUpdate =\n        _instance.trainingPhraseUpdate || undefined;\n      _instance.entityUpdates = _instance.entityUpdates || [];\n      _instance.entitiesReannotated = _instance.entitiesReannotated || [];\n      _instance.containsUpdateVariable =\n        _instance.containsUpdateVariable || false;\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: TrainingPhraseUpdate,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.trainingPhraseUpdate = new StringUpdate();\n            _reader.readMessage(\n              _instance.trainingPhraseUpdate,\n              StringUpdate.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            const messageInitializer2 = new StringUpdate();\n            _reader.readMessage(\n              messageInitializer2,\n              StringUpdate.deserializeBinaryFromReader\n            );\n            (_instance.entityUpdates = _instance.entityUpdates || []).push(\n              messageInitializer2\n            );\n            break;\n          case 3:\n            (_instance.entitiesReannotated =\n              _instance.entitiesReannotated || []).push(_reader.readString());\n            break;\n          case 4:\n            _instance.containsUpdateVariable = _reader.readBool();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      TrainingPhraseUpdate.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: TrainingPhraseUpdate,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.trainingPhraseUpdate) {\n        _writer.writeMessage(\n          1,\n          _instance.trainingPhraseUpdate as any,\n          StringUpdate.serializeBinaryToWriter\n        );\n      }\n      if (_instance.entityUpdates && _instance.entityUpdates.length) {\n        _writer.writeRepeatedMessage(\n          2,\n          _instance.entityUpdates as any,\n          StringUpdate.serializeBinaryToWriter\n        );\n      }\n      if (\n        _instance.entitiesReannotated &&\n        _instance.entitiesReannotated.length\n      ) {\n        _writer.writeRepeatedString(3, _instance.entitiesReannotated);\n      }\n      if (_instance.containsUpdateVariable) {\n        _writer.writeBool(4, _instance.containsUpdateVariable);\n      }\n    }\n\n    private _trainingPhraseUpdate?: StringUpdate;\n    private _entityUpdates?: StringUpdate[];\n    private _entitiesReannotated: string[];\n    private _containsUpdateVariable: boolean;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of TrainingPhraseUpdate to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<TrainingPhraseUpdate.AsObject>) {\n      _value = _value || {};\n      this.trainingPhraseUpdate = _value.trainingPhraseUpdate\n        ? new StringUpdate(_value.trainingPhraseUpdate)\n        : undefined;\n      this.entityUpdates = (_value.entityUpdates || []).map(\n        m => new StringUpdate(m)\n      );\n      this.entitiesReannotated = (_value.entitiesReannotated || []).slice();\n      this.containsUpdateVariable = _value.containsUpdateVariable;\n      TrainingPhraseUpdate.refineValues(this);\n    }\n    get trainingPhraseUpdate(): StringUpdate | undefined {\n      return this._trainingPhraseUpdate;\n    }\n    set trainingPhraseUpdate(value: StringUpdate | undefined) {\n      this._trainingPhraseUpdate = value;\n    }\n    get entityUpdates(): StringUpdate[] | undefined {\n      return this._entityUpdates;\n    }\n    set entityUpdates(value: StringUpdate[] | undefined) {\n      this._entityUpdates = value;\n    }\n    get entitiesReannotated(): string[] {\n      return this._entitiesReannotated;\n    }\n    set entitiesReannotated(value: string[]) {\n      this._entitiesReannotated = value;\n    }\n    get containsUpdateVariable(): boolean {\n      return this._containsUpdateVariable;\n    }\n    set containsUpdateVariable(value: boolean) {\n      this._containsUpdateVariable = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      TrainingPhraseUpdate.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): TrainingPhraseUpdate.AsObject {\n      return {\n        trainingPhraseUpdate: this.trainingPhraseUpdate\n          ? this.trainingPhraseUpdate.toObject()\n          : undefined,\n        entityUpdates: (this.entityUpdates || []).map(m => m.toObject()),\n        entitiesReannotated: (this.entitiesReannotated || []).slice(),\n        containsUpdateVariable: this.containsUpdateVariable\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): TrainingPhraseUpdate.AsProtobufJSON {\n      return {\n        trainingPhraseUpdate: this.trainingPhraseUpdate\n          ? this.trainingPhraseUpdate.toProtobufJSON(options)\n          : null,\n        entityUpdates: (this.entityUpdates || []).map(m =>\n          m.toProtobufJSON(options)\n        ),\n        entitiesReannotated: (this.entitiesReannotated || []).slice(),\n        containsUpdateVariable: this.containsUpdateVariable\n      };\n    }\n  }\n  export module TrainingPhraseUpdate {\n    /**\n     * Standard JavaScript object representation for TrainingPhraseUpdate\n     */\n    export interface AsObject {\n      trainingPhraseUpdate?: StringUpdate.AsObject;\n      entityUpdates?: StringUpdate.AsObject[];\n      entitiesReannotated: string[];\n      containsUpdateVariable: boolean;\n    }\n\n    /**\n     * Protobuf JSON representation for TrainingPhraseUpdate\n     */\n    export interface AsProtobufJSON {\n      trainingPhraseUpdate: StringUpdate.AsProtobufJSON | null;\n      entityUpdates: StringUpdate.AsProtobufJSON[] | null;\n      entitiesReannotated: string[];\n      containsUpdateVariable: boolean;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.EntityTypeUpdate\n */\nexport class EntityTypeUpdate implements GrpcMessage {\n  static id = 'ondewo.nlu.EntityTypeUpdate';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new EntityTypeUpdate();\n    EntityTypeUpdate.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: EntityTypeUpdate) {\n    _instance.entityTypeName = _instance.entityTypeName || '';\n    _instance.valuesUpdateList = _instance.valuesUpdateList || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: EntityTypeUpdate,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.entityTypeName = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new EntityTypeUpdate.EntityUpdate();\n          _reader.readMessage(\n            messageInitializer2,\n            EntityTypeUpdate.EntityUpdate.deserializeBinaryFromReader\n          );\n          (_instance.valuesUpdateList = _instance.valuesUpdateList || []).push(\n            messageInitializer2\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    EntityTypeUpdate.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: EntityTypeUpdate,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.entityTypeName) {\n      _writer.writeString(1, _instance.entityTypeName);\n    }\n    if (_instance.valuesUpdateList && _instance.valuesUpdateList.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.valuesUpdateList as any,\n        EntityTypeUpdate.EntityUpdate.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _entityTypeName: string;\n  private _valuesUpdateList?: EntityTypeUpdate.EntityUpdate[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of EntityTypeUpdate to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<EntityTypeUpdate.AsObject>) {\n    _value = _value || {};\n    this.entityTypeName = _value.entityTypeName;\n    this.valuesUpdateList = (_value.valuesUpdateList || []).map(\n      m => new EntityTypeUpdate.EntityUpdate(m)\n    );\n    EntityTypeUpdate.refineValues(this);\n  }\n  get entityTypeName(): string {\n    return this._entityTypeName;\n  }\n  set entityTypeName(value: string) {\n    this._entityTypeName = value;\n  }\n  get valuesUpdateList(): EntityTypeUpdate.EntityUpdate[] | undefined {\n    return this._valuesUpdateList;\n  }\n  set valuesUpdateList(value: EntityTypeUpdate.EntityUpdate[] | undefined) {\n    this._valuesUpdateList = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    EntityTypeUpdate.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): EntityTypeUpdate.AsObject {\n    return {\n      entityTypeName: this.entityTypeName,\n      valuesUpdateList: (this.valuesUpdateList || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): EntityTypeUpdate.AsProtobufJSON {\n    return {\n      entityTypeName: this.entityTypeName,\n      valuesUpdateList: (this.valuesUpdateList || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module EntityTypeUpdate {\n  /**\n   * Standard JavaScript object representation for EntityTypeUpdate\n   */\n  export interface AsObject {\n    entityTypeName: string;\n    valuesUpdateList?: EntityTypeUpdate.EntityUpdate.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for EntityTypeUpdate\n   */\n  export interface AsProtobufJSON {\n    entityTypeName: string;\n    valuesUpdateList: EntityTypeUpdate.EntityUpdate.AsProtobufJSON[] | null;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.EntityTypeUpdate.EntityUpdate\n   */\n  export class EntityUpdate implements GrpcMessage {\n    static id = 'ondewo.nlu.EntityTypeUpdate.EntityUpdate';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new EntityUpdate();\n      EntityUpdate.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: EntityUpdate) {\n      _instance.entityValueUpdate = _instance.entityValueUpdate || undefined;\n      _instance.entitySynonymUpdates = _instance.entitySynonymUpdates || [];\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: EntityUpdate,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.entityValueUpdate = new StringUpdate();\n            _reader.readMessage(\n              _instance.entityValueUpdate,\n              StringUpdate.deserializeBinaryFromReader\n            );\n            break;\n          case 2:\n            const messageInitializer2 = new StringUpdate();\n            _reader.readMessage(\n              messageInitializer2,\n              StringUpdate.deserializeBinaryFromReader\n            );\n            (_instance.entitySynonymUpdates =\n              _instance.entitySynonymUpdates || []).push(messageInitializer2);\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      EntityUpdate.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: EntityUpdate,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.entityValueUpdate) {\n        _writer.writeMessage(\n          1,\n          _instance.entityValueUpdate as any,\n          StringUpdate.serializeBinaryToWriter\n        );\n      }\n      if (\n        _instance.entitySynonymUpdates &&\n        _instance.entitySynonymUpdates.length\n      ) {\n        _writer.writeRepeatedMessage(\n          2,\n          _instance.entitySynonymUpdates as any,\n          StringUpdate.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _entityValueUpdate?: StringUpdate;\n    private _entitySynonymUpdates?: StringUpdate[];\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of EntityUpdate to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<EntityUpdate.AsObject>) {\n      _value = _value || {};\n      this.entityValueUpdate = _value.entityValueUpdate\n        ? new StringUpdate(_value.entityValueUpdate)\n        : undefined;\n      this.entitySynonymUpdates = (_value.entitySynonymUpdates || []).map(\n        m => new StringUpdate(m)\n      );\n      EntityUpdate.refineValues(this);\n    }\n    get entityValueUpdate(): StringUpdate | undefined {\n      return this._entityValueUpdate;\n    }\n    set entityValueUpdate(value: StringUpdate | undefined) {\n      this._entityValueUpdate = value;\n    }\n    get entitySynonymUpdates(): StringUpdate[] | undefined {\n      return this._entitySynonymUpdates;\n    }\n    set entitySynonymUpdates(value: StringUpdate[] | undefined) {\n      this._entitySynonymUpdates = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      EntityUpdate.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): EntityUpdate.AsObject {\n      return {\n        entityValueUpdate: this.entityValueUpdate\n          ? this.entityValueUpdate.toObject()\n          : undefined,\n        entitySynonymUpdates: (this.entitySynonymUpdates || []).map(m =>\n          m.toObject()\n        )\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): EntityUpdate.AsProtobufJSON {\n      return {\n        entityValueUpdate: this.entityValueUpdate\n          ? this.entityValueUpdate.toProtobufJSON(options)\n          : null,\n        entitySynonymUpdates: (this.entitySynonymUpdates || []).map(m =>\n          m.toProtobufJSON(options)\n        )\n      };\n    }\n  }\n  export module EntityUpdate {\n    /**\n     * Standard JavaScript object representation for EntityUpdate\n     */\n    export interface AsObject {\n      entityValueUpdate?: StringUpdate.AsObject;\n      entitySynonymUpdates?: StringUpdate.AsObject[];\n    }\n\n    /**\n     * Protobuf JSON representation for EntityUpdate\n     */\n    export interface AsProtobufJSON {\n      entityValueUpdate: StringUpdate.AsProtobufJSON | null;\n      entitySynonymUpdates: StringUpdate.AsProtobufJSON[] | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanAllEntityTypesRequest\n */\nexport class CleanAllEntityTypesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanAllEntityTypesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanAllEntityTypesRequest();\n    CleanAllEntityTypesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanAllEntityTypesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.specialCharacters = _instance.specialCharacters || '';\n    _instance.substringWhiteList = _instance.substringWhiteList || [];\n    _instance.maxEntityCountUpdate = _instance.maxEntityCountUpdate || 0;\n    _instance.forbiddenEntityTypePatterns =\n      _instance.forbiddenEntityTypePatterns || [];\n    _instance.dryRun = _instance.dryRun || false;\n    _instance.numberOfWorkers = _instance.numberOfWorkers || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanAllEntityTypesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.specialCharacters = _reader.readString();\n          break;\n        case 4:\n          (_instance.substringWhiteList =\n            _instance.substringWhiteList || []).push(_reader.readString());\n          break;\n        case 5:\n          _instance.maxEntityCountUpdate = _reader.readInt32();\n          break;\n        case 6:\n          (_instance.forbiddenEntityTypePatterns =\n            _instance.forbiddenEntityTypePatterns || []).push(\n            _reader.readString()\n          );\n          break;\n        case 7:\n          _instance.dryRun = _reader.readBool();\n          break;\n        case 8:\n          _instance.numberOfWorkers = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanAllEntityTypesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanAllEntityTypesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.specialCharacters) {\n      _writer.writeString(3, _instance.specialCharacters);\n    }\n    if (_instance.substringWhiteList && _instance.substringWhiteList.length) {\n      _writer.writeRepeatedString(4, _instance.substringWhiteList);\n    }\n    if (_instance.maxEntityCountUpdate) {\n      _writer.writeInt32(5, _instance.maxEntityCountUpdate);\n    }\n    if (\n      _instance.forbiddenEntityTypePatterns &&\n      _instance.forbiddenEntityTypePatterns.length\n    ) {\n      _writer.writeRepeatedString(6, _instance.forbiddenEntityTypePatterns);\n    }\n    if (_instance.dryRun) {\n      _writer.writeBool(7, _instance.dryRun);\n    }\n    if (_instance.numberOfWorkers) {\n      _writer.writeInt32(8, _instance.numberOfWorkers);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _specialCharacters: string;\n  private _substringWhiteList: string[];\n  private _maxEntityCountUpdate: number;\n  private _forbiddenEntityTypePatterns: string[];\n  private _dryRun: boolean;\n  private _numberOfWorkers: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanAllEntityTypesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanAllEntityTypesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.specialCharacters = _value.specialCharacters;\n    this.substringWhiteList = (_value.substringWhiteList || []).slice();\n    this.maxEntityCountUpdate = _value.maxEntityCountUpdate;\n    this.forbiddenEntityTypePatterns = (\n      _value.forbiddenEntityTypePatterns || []\n    ).slice();\n    this.dryRun = _value.dryRun;\n    this.numberOfWorkers = _value.numberOfWorkers;\n    CleanAllEntityTypesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get specialCharacters(): string {\n    return this._specialCharacters;\n  }\n  set specialCharacters(value: string) {\n    this._specialCharacters = value;\n  }\n  get substringWhiteList(): string[] {\n    return this._substringWhiteList;\n  }\n  set substringWhiteList(value: string[]) {\n    this._substringWhiteList = value;\n  }\n  get maxEntityCountUpdate(): number {\n    return this._maxEntityCountUpdate;\n  }\n  set maxEntityCountUpdate(value: number) {\n    this._maxEntityCountUpdate = value;\n  }\n  get forbiddenEntityTypePatterns(): string[] {\n    return this._forbiddenEntityTypePatterns;\n  }\n  set forbiddenEntityTypePatterns(value: string[]) {\n    this._forbiddenEntityTypePatterns = value;\n  }\n  get dryRun(): boolean {\n    return this._dryRun;\n  }\n  set dryRun(value: boolean) {\n    this._dryRun = value;\n  }\n  get numberOfWorkers(): number {\n    return this._numberOfWorkers;\n  }\n  set numberOfWorkers(value: number) {\n    this._numberOfWorkers = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanAllEntityTypesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanAllEntityTypesRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      maxEntityCountUpdate: this.maxEntityCountUpdate,\n      forbiddenEntityTypePatterns: (\n        this.forbiddenEntityTypePatterns || []\n      ).slice(),\n      dryRun: this.dryRun,\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanAllEntityTypesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      maxEntityCountUpdate: this.maxEntityCountUpdate,\n      forbiddenEntityTypePatterns: (\n        this.forbiddenEntityTypePatterns || []\n      ).slice(),\n      dryRun: this.dryRun,\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n}\nexport module CleanAllEntityTypesRequest {\n  /**\n   * Standard JavaScript object representation for CleanAllEntityTypesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    maxEntityCountUpdate: number;\n    forbiddenEntityTypePatterns: string[];\n    dryRun: boolean;\n    numberOfWorkers: number;\n  }\n\n  /**\n   * Protobuf JSON representation for CleanAllEntityTypesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    maxEntityCountUpdate: number;\n    forbiddenEntityTypePatterns: string[];\n    dryRun: boolean;\n    numberOfWorkers: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanAllEntityTypesResponse\n */\nexport class CleanAllEntityTypesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanAllEntityTypesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanAllEntityTypesResponse();\n    CleanAllEntityTypesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanAllEntityTypesResponse) {\n    _instance.cleanedEntityTypes = _instance.cleanedEntityTypes || [];\n    _instance.deletedEntityTypes = _instance.deletedEntityTypes || [];\n    _instance.entityTypeUpdates = _instance.entityTypeUpdates || [];\n    _instance.entityTypeDeletions = _instance.entityTypeDeletions || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanAllEntityTypesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new ondewoNlu009.EntityType();\n          _reader.readMessage(\n            messageInitializer1,\n            ondewoNlu009.EntityType.deserializeBinaryFromReader\n          );\n          (_instance.cleanedEntityTypes =\n            _instance.cleanedEntityTypes || []).push(messageInitializer1);\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu009.EntityType();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu009.EntityType.deserializeBinaryFromReader\n          );\n          (_instance.deletedEntityTypes =\n            _instance.deletedEntityTypes || []).push(messageInitializer2);\n          break;\n        case 3:\n          const messageInitializer3 = new EntityTypeUpdate();\n          _reader.readMessage(\n            messageInitializer3,\n            EntityTypeUpdate.deserializeBinaryFromReader\n          );\n          (_instance.entityTypeUpdates =\n            _instance.entityTypeUpdates || []).push(messageInitializer3);\n          break;\n        case 4:\n          const messageInitializer4 = new EntityTypeUpdate();\n          _reader.readMessage(\n            messageInitializer4,\n            EntityTypeUpdate.deserializeBinaryFromReader\n          );\n          (_instance.entityTypeDeletions =\n            _instance.entityTypeDeletions || []).push(messageInitializer4);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanAllEntityTypesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanAllEntityTypesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.cleanedEntityTypes && _instance.cleanedEntityTypes.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.cleanedEntityTypes as any,\n        ondewoNlu009.EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.deletedEntityTypes && _instance.deletedEntityTypes.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.deletedEntityTypes as any,\n        ondewoNlu009.EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.entityTypeUpdates && _instance.entityTypeUpdates.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.entityTypeUpdates as any,\n        EntityTypeUpdate.serializeBinaryToWriter\n      );\n    }\n    if (_instance.entityTypeDeletions && _instance.entityTypeDeletions.length) {\n      _writer.writeRepeatedMessage(\n        4,\n        _instance.entityTypeDeletions as any,\n        EntityTypeUpdate.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _cleanedEntityTypes?: ondewoNlu009.EntityType[];\n  private _deletedEntityTypes?: ondewoNlu009.EntityType[];\n  private _entityTypeUpdates?: EntityTypeUpdate[];\n  private _entityTypeDeletions?: EntityTypeUpdate[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanAllEntityTypesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanAllEntityTypesResponse.AsObject>) {\n    _value = _value || {};\n    this.cleanedEntityTypes = (_value.cleanedEntityTypes || []).map(\n      m => new ondewoNlu009.EntityType(m)\n    );\n    this.deletedEntityTypes = (_value.deletedEntityTypes || []).map(\n      m => new ondewoNlu009.EntityType(m)\n    );\n    this.entityTypeUpdates = (_value.entityTypeUpdates || []).map(\n      m => new EntityTypeUpdate(m)\n    );\n    this.entityTypeDeletions = (_value.entityTypeDeletions || []).map(\n      m => new EntityTypeUpdate(m)\n    );\n    CleanAllEntityTypesResponse.refineValues(this);\n  }\n  get cleanedEntityTypes(): ondewoNlu009.EntityType[] | undefined {\n    return this._cleanedEntityTypes;\n  }\n  set cleanedEntityTypes(value: ondewoNlu009.EntityType[] | undefined) {\n    this._cleanedEntityTypes = value;\n  }\n  get deletedEntityTypes(): ondewoNlu009.EntityType[] | undefined {\n    return this._deletedEntityTypes;\n  }\n  set deletedEntityTypes(value: ondewoNlu009.EntityType[] | undefined) {\n    this._deletedEntityTypes = value;\n  }\n  get entityTypeUpdates(): EntityTypeUpdate[] | undefined {\n    return this._entityTypeUpdates;\n  }\n  set entityTypeUpdates(value: EntityTypeUpdate[] | undefined) {\n    this._entityTypeUpdates = value;\n  }\n  get entityTypeDeletions(): EntityTypeUpdate[] | undefined {\n    return this._entityTypeDeletions;\n  }\n  set entityTypeDeletions(value: EntityTypeUpdate[] | undefined) {\n    this._entityTypeDeletions = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanAllEntityTypesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanAllEntityTypesResponse.AsObject {\n    return {\n      cleanedEntityTypes: (this.cleanedEntityTypes || []).map(m =>\n        m.toObject()\n      ),\n      deletedEntityTypes: (this.deletedEntityTypes || []).map(m =>\n        m.toObject()\n      ),\n      entityTypeUpdates: (this.entityTypeUpdates || []).map(m => m.toObject()),\n      entityTypeDeletions: (this.entityTypeDeletions || []).map(m =>\n        m.toObject()\n      )\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanAllEntityTypesResponse.AsProtobufJSON {\n    return {\n      cleanedEntityTypes: (this.cleanedEntityTypes || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      deletedEntityTypes: (this.deletedEntityTypes || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      entityTypeUpdates: (this.entityTypeUpdates || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      entityTypeDeletions: (this.entityTypeDeletions || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module CleanAllEntityTypesResponse {\n  /**\n   * Standard JavaScript object representation for CleanAllEntityTypesResponse\n   */\n  export interface AsObject {\n    cleanedEntityTypes?: ondewoNlu009.EntityType.AsObject[];\n    deletedEntityTypes?: ondewoNlu009.EntityType.AsObject[];\n    entityTypeUpdates?: EntityTypeUpdate.AsObject[];\n    entityTypeDeletions?: EntityTypeUpdate.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for CleanAllEntityTypesResponse\n   */\n  export interface AsProtobufJSON {\n    cleanedEntityTypes: ondewoNlu009.EntityType.AsProtobufJSON[] | null;\n    deletedEntityTypes: ondewoNlu009.EntityType.AsProtobufJSON[] | null;\n    entityTypeUpdates: EntityTypeUpdate.AsProtobufJSON[] | null;\n    entityTypeDeletions: EntityTypeUpdate.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanEntityTypeRequest\n */\nexport class CleanEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanEntityTypeRequest();\n    CleanEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanEntityTypeRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.entityTypeName = _instance.entityTypeName || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.specialCharacters = _instance.specialCharacters || '';\n    _instance.substringWhiteList = _instance.substringWhiteList || [];\n    _instance.maxEntityCountUpdate = _instance.maxEntityCountUpdate || 0;\n    _instance.dryRun = _instance.dryRun || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.entityTypeName = _reader.readString();\n          break;\n        case 3:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 4:\n          _instance.specialCharacters = _reader.readString();\n          break;\n        case 5:\n          (_instance.substringWhiteList =\n            _instance.substringWhiteList || []).push(_reader.readString());\n          break;\n        case 6:\n          _instance.maxEntityCountUpdate = _reader.readInt32();\n          break;\n        case 7:\n          _instance.dryRun = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.entityTypeName) {\n      _writer.writeString(2, _instance.entityTypeName);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(3, _instance.languageCode);\n    }\n    if (_instance.specialCharacters) {\n      _writer.writeString(4, _instance.specialCharacters);\n    }\n    if (_instance.substringWhiteList && _instance.substringWhiteList.length) {\n      _writer.writeRepeatedString(5, _instance.substringWhiteList);\n    }\n    if (_instance.maxEntityCountUpdate) {\n      _writer.writeInt32(6, _instance.maxEntityCountUpdate);\n    }\n    if (_instance.dryRun) {\n      _writer.writeBool(7, _instance.dryRun);\n    }\n  }\n\n  private _parent: string;\n  private _entityTypeName: string;\n  private _languageCode: string;\n  private _specialCharacters: string;\n  private _substringWhiteList: string[];\n  private _maxEntityCountUpdate: number;\n  private _dryRun: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanEntityTypeRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanEntityTypeRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.entityTypeName = _value.entityTypeName;\n    this.languageCode = _value.languageCode;\n    this.specialCharacters = _value.specialCharacters;\n    this.substringWhiteList = (_value.substringWhiteList || []).slice();\n    this.maxEntityCountUpdate = _value.maxEntityCountUpdate;\n    this.dryRun = _value.dryRun;\n    CleanEntityTypeRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get entityTypeName(): string {\n    return this._entityTypeName;\n  }\n  set entityTypeName(value: string) {\n    this._entityTypeName = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get specialCharacters(): string {\n    return this._specialCharacters;\n  }\n  set specialCharacters(value: string) {\n    this._specialCharacters = value;\n  }\n  get substringWhiteList(): string[] {\n    return this._substringWhiteList;\n  }\n  set substringWhiteList(value: string[]) {\n    this._substringWhiteList = value;\n  }\n  get maxEntityCountUpdate(): number {\n    return this._maxEntityCountUpdate;\n  }\n  set maxEntityCountUpdate(value: number) {\n    this._maxEntityCountUpdate = value;\n  }\n  get dryRun(): boolean {\n    return this._dryRun;\n  }\n  set dryRun(value: boolean) {\n    this._dryRun = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanEntityTypeRequest.AsObject {\n    return {\n      parent: this.parent,\n      entityTypeName: this.entityTypeName,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      maxEntityCountUpdate: this.maxEntityCountUpdate,\n      dryRun: this.dryRun\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanEntityTypeRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      entityTypeName: this.entityTypeName,\n      languageCode: this.languageCode,\n      specialCharacters: this.specialCharacters,\n      substringWhiteList: (this.substringWhiteList || []).slice(),\n      maxEntityCountUpdate: this.maxEntityCountUpdate,\n      dryRun: this.dryRun\n    };\n  }\n}\nexport module CleanEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for CleanEntityTypeRequest\n   */\n  export interface AsObject {\n    parent: string;\n    entityTypeName: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    maxEntityCountUpdate: number;\n    dryRun: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for CleanEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    entityTypeName: string;\n    languageCode: string;\n    specialCharacters: string;\n    substringWhiteList: string[];\n    maxEntityCountUpdate: number;\n    dryRun: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CleanEntityTypeResponse\n */\nexport class CleanEntityTypeResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.CleanEntityTypeResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CleanEntityTypeResponse();\n    CleanEntityTypeResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CleanEntityTypeResponse) {\n    _instance.cleanedEntityType = _instance.cleanedEntityType || undefined;\n    _instance.entityTypeUpdate = _instance.entityTypeUpdate || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CleanEntityTypeResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.cleanedEntityType = new ondewoNlu009.EntityType();\n          _reader.readMessage(\n            _instance.cleanedEntityType,\n            ondewoNlu009.EntityType.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.entityTypeUpdate = new EntityTypeUpdate();\n          _reader.readMessage(\n            _instance.entityTypeUpdate,\n            EntityTypeUpdate.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CleanEntityTypeResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CleanEntityTypeResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.cleanedEntityType) {\n      _writer.writeMessage(\n        1,\n        _instance.cleanedEntityType as any,\n        ondewoNlu009.EntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.entityTypeUpdate) {\n      _writer.writeMessage(\n        2,\n        _instance.entityTypeUpdate as any,\n        EntityTypeUpdate.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _cleanedEntityType?: ondewoNlu009.EntityType;\n  private _entityTypeUpdate?: EntityTypeUpdate;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CleanEntityTypeResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<CleanEntityTypeResponse.AsObject>) {\n    _value = _value || {};\n    this.cleanedEntityType = _value.cleanedEntityType\n      ? new ondewoNlu009.EntityType(_value.cleanedEntityType)\n      : undefined;\n    this.entityTypeUpdate = _value.entityTypeUpdate\n      ? new EntityTypeUpdate(_value.entityTypeUpdate)\n      : undefined;\n    CleanEntityTypeResponse.refineValues(this);\n  }\n  get cleanedEntityType(): ondewoNlu009.EntityType | undefined {\n    return this._cleanedEntityType;\n  }\n  set cleanedEntityType(value: ondewoNlu009.EntityType | undefined) {\n    this._cleanedEntityType = value;\n  }\n  get entityTypeUpdate(): EntityTypeUpdate | undefined {\n    return this._entityTypeUpdate;\n  }\n  set entityTypeUpdate(value: EntityTypeUpdate | undefined) {\n    this._entityTypeUpdate = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CleanEntityTypeResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CleanEntityTypeResponse.AsObject {\n    return {\n      cleanedEntityType: this.cleanedEntityType\n        ? this.cleanedEntityType.toObject()\n        : undefined,\n      entityTypeUpdate: this.entityTypeUpdate\n        ? this.entityTypeUpdate.toObject()\n        : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CleanEntityTypeResponse.AsProtobufJSON {\n    return {\n      cleanedEntityType: this.cleanedEntityType\n        ? this.cleanedEntityType.toProtobufJSON(options)\n        : null,\n      entityTypeUpdate: this.entityTypeUpdate\n        ? this.entityTypeUpdate.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module CleanEntityTypeResponse {\n  /**\n   * Standard JavaScript object representation for CleanEntityTypeResponse\n   */\n  export interface AsObject {\n    cleanedEntityType?: ondewoNlu009.EntityType.AsObject;\n    entityTypeUpdate?: EntityTypeUpdate.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for CleanEntityTypeResponse\n   */\n  export interface AsProtobufJSON {\n    cleanedEntityType: ondewoNlu009.EntityType.AsProtobufJSON | null;\n    entityTypeUpdate: EntityTypeUpdate.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddTrainingPhrasesRequest\n */\nexport class AddTrainingPhrasesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddTrainingPhrasesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddTrainingPhrasesRequest();\n    AddTrainingPhrasesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddTrainingPhrasesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.trainingPhraseList = _instance.trainingPhraseList || [];\n    _instance.extractEntities = _instance.extractEntities || false;\n    _instance.specialCharacters = _instance.specialCharacters || '';\n    _instance.trainingPhraseCleanerOptions =\n      _instance.trainingPhraseCleanerOptions || undefined;\n    _instance.numberOfWorkers = _instance.numberOfWorkers || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddTrainingPhrasesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          const messageInitializer3 = new AddTrainingPhrasesRequest.TrainingPhraseForIntent();\n          _reader.readMessage(\n            messageInitializer3,\n            AddTrainingPhrasesRequest.TrainingPhraseForIntent\n              .deserializeBinaryFromReader\n          );\n          (_instance.trainingPhraseList =\n            _instance.trainingPhraseList || []).push(messageInitializer3);\n          break;\n        case 4:\n          _instance.extractEntities = _reader.readBool();\n          break;\n        case 5:\n          _instance.specialCharacters = _reader.readString();\n          break;\n        case 6:\n          _instance.trainingPhraseCleanerOptions = new TrainingPhraseCleanerOptions();\n          _reader.readMessage(\n            _instance.trainingPhraseCleanerOptions,\n            TrainingPhraseCleanerOptions.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.numberOfWorkers = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddTrainingPhrasesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddTrainingPhrasesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.trainingPhraseList && _instance.trainingPhraseList.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.trainingPhraseList as any,\n        AddTrainingPhrasesRequest.TrainingPhraseForIntent\n          .serializeBinaryToWriter\n      );\n    }\n    if (_instance.extractEntities) {\n      _writer.writeBool(4, _instance.extractEntities);\n    }\n    if (_instance.specialCharacters) {\n      _writer.writeString(5, _instance.specialCharacters);\n    }\n    if (_instance.trainingPhraseCleanerOptions) {\n      _writer.writeMessage(\n        6,\n        _instance.trainingPhraseCleanerOptions as any,\n        TrainingPhraseCleanerOptions.serializeBinaryToWriter\n      );\n    }\n    if (_instance.numberOfWorkers) {\n      _writer.writeInt32(7, _instance.numberOfWorkers);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _trainingPhraseList?: AddTrainingPhrasesRequest.TrainingPhraseForIntent[];\n  private _extractEntities: boolean;\n  private _specialCharacters: string;\n  private _trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions;\n  private _numberOfWorkers: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddTrainingPhrasesRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddTrainingPhrasesRequest.AsObject>) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.trainingPhraseList = (_value.trainingPhraseList || []).map(\n      m => new AddTrainingPhrasesRequest.TrainingPhraseForIntent(m)\n    );\n    this.extractEntities = _value.extractEntities;\n    this.specialCharacters = _value.specialCharacters;\n    this.trainingPhraseCleanerOptions = _value.trainingPhraseCleanerOptions\n      ? new TrainingPhraseCleanerOptions(_value.trainingPhraseCleanerOptions)\n      : undefined;\n    this.numberOfWorkers = _value.numberOfWorkers;\n    AddTrainingPhrasesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get trainingPhraseList():\n    | AddTrainingPhrasesRequest.TrainingPhraseForIntent[]\n    | undefined {\n    return this._trainingPhraseList;\n  }\n  set trainingPhraseList(\n    value: AddTrainingPhrasesRequest.TrainingPhraseForIntent[] | undefined\n  ) {\n    this._trainingPhraseList = value;\n  }\n  get extractEntities(): boolean {\n    return this._extractEntities;\n  }\n  set extractEntities(value: boolean) {\n    this._extractEntities = value;\n  }\n  get specialCharacters(): string {\n    return this._specialCharacters;\n  }\n  set specialCharacters(value: string) {\n    this._specialCharacters = value;\n  }\n  get trainingPhraseCleanerOptions(): TrainingPhraseCleanerOptions | undefined {\n    return this._trainingPhraseCleanerOptions;\n  }\n  set trainingPhraseCleanerOptions(\n    value: TrainingPhraseCleanerOptions | undefined\n  ) {\n    this._trainingPhraseCleanerOptions = value;\n  }\n  get numberOfWorkers(): number {\n    return this._numberOfWorkers;\n  }\n  set numberOfWorkers(value: number) {\n    this._numberOfWorkers = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddTrainingPhrasesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddTrainingPhrasesRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      trainingPhraseList: (this.trainingPhraseList || []).map(m =>\n        m.toObject()\n      ),\n      extractEntities: this.extractEntities,\n      specialCharacters: this.specialCharacters,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toObject()\n        : undefined,\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddTrainingPhrasesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      trainingPhraseList: (this.trainingPhraseList || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      extractEntities: this.extractEntities,\n      specialCharacters: this.specialCharacters,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toProtobufJSON(options)\n        : null,\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n}\nexport module AddTrainingPhrasesRequest {\n  /**\n   * Standard JavaScript object representation for AddTrainingPhrasesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    trainingPhraseList?: AddTrainingPhrasesRequest.TrainingPhraseForIntent.AsObject[];\n    extractEntities: boolean;\n    specialCharacters: string;\n    trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions.AsObject;\n    numberOfWorkers: number;\n  }\n\n  /**\n   * Protobuf JSON representation for AddTrainingPhrasesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    trainingPhraseList:\n      | AddTrainingPhrasesRequest.TrainingPhraseForIntent.AsProtobufJSON[]\n      | null;\n    extractEntities: boolean;\n    specialCharacters: string;\n    trainingPhraseCleanerOptions: TrainingPhraseCleanerOptions.AsProtobufJSON | null;\n    numberOfWorkers: number;\n  }\n\n  /**\n   * Message implementation for ondewo.nlu.AddTrainingPhrasesRequest.TrainingPhraseForIntent\n   */\n  export class TrainingPhraseForIntent implements GrpcMessage {\n    static id = 'ondewo.nlu.AddTrainingPhrasesRequest.TrainingPhraseForIntent';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new TrainingPhraseForIntent();\n      TrainingPhraseForIntent.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: TrainingPhraseForIntent) {\n      _instance.trainingPhrase = _instance.trainingPhrase || '';\n      _instance.intentDisplayName = _instance.intentDisplayName || '';\n      _instance.entities = _instance.entities || [];\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: TrainingPhraseForIntent,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.trainingPhrase = _reader.readString();\n            break;\n          case 2:\n            _instance.intentDisplayName = _reader.readString();\n            break;\n          case 3:\n            const messageInitializer3 = new ondewoNlu008.Intent.TrainingPhrase.Entity();\n            _reader.readMessage(\n              messageInitializer3,\n              ondewoNlu008.Intent.TrainingPhrase.Entity\n                .deserializeBinaryFromReader\n            );\n            (_instance.entities = _instance.entities || []).push(\n              messageInitializer3\n            );\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      TrainingPhraseForIntent.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: TrainingPhraseForIntent,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.trainingPhrase) {\n        _writer.writeString(1, _instance.trainingPhrase);\n      }\n      if (_instance.intentDisplayName) {\n        _writer.writeString(2, _instance.intentDisplayName);\n      }\n      if (_instance.entities && _instance.entities.length) {\n        _writer.writeRepeatedMessage(\n          3,\n          _instance.entities as any,\n          ondewoNlu008.Intent.TrainingPhrase.Entity.serializeBinaryToWriter\n        );\n      }\n    }\n\n    private _trainingPhrase: string;\n    private _intentDisplayName: string;\n    private _entities?: ondewoNlu008.Intent.TrainingPhrase.Entity[];\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of TrainingPhraseForIntent to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<TrainingPhraseForIntent.AsObject>) {\n      _value = _value || {};\n      this.trainingPhrase = _value.trainingPhrase;\n      this.intentDisplayName = _value.intentDisplayName;\n      this.entities = (_value.entities || []).map(\n        m => new ondewoNlu008.Intent.TrainingPhrase.Entity(m)\n      );\n      TrainingPhraseForIntent.refineValues(this);\n    }\n    get trainingPhrase(): string {\n      return this._trainingPhrase;\n    }\n    set trainingPhrase(value: string) {\n      this._trainingPhrase = value;\n    }\n    get intentDisplayName(): string {\n      return this._intentDisplayName;\n    }\n    set intentDisplayName(value: string) {\n      this._intentDisplayName = value;\n    }\n    get entities(): ondewoNlu008.Intent.TrainingPhrase.Entity[] | undefined {\n      return this._entities;\n    }\n    set entities(\n      value: ondewoNlu008.Intent.TrainingPhrase.Entity[] | undefined\n    ) {\n      this._entities = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      TrainingPhraseForIntent.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): TrainingPhraseForIntent.AsObject {\n      return {\n        trainingPhrase: this.trainingPhrase,\n        intentDisplayName: this.intentDisplayName,\n        entities: (this.entities || []).map(m => m.toObject())\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): TrainingPhraseForIntent.AsProtobufJSON {\n      return {\n        trainingPhrase: this.trainingPhrase,\n        intentDisplayName: this.intentDisplayName,\n        entities: (this.entities || []).map(m => m.toProtobufJSON(options))\n      };\n    }\n  }\n  export module TrainingPhraseForIntent {\n    /**\n     * Standard JavaScript object representation for TrainingPhraseForIntent\n     */\n    export interface AsObject {\n      trainingPhrase: string;\n      intentDisplayName: string;\n      entities?: ondewoNlu008.Intent.TrainingPhrase.Entity.AsObject[];\n    }\n\n    /**\n     * Protobuf JSON representation for TrainingPhraseForIntent\n     */\n    export interface AsProtobufJSON {\n      trainingPhrase: string;\n      intentDisplayName: string;\n      entities:\n        | ondewoNlu008.Intent.TrainingPhrase.Entity.AsProtobufJSON[]\n        | null;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddTrainingPhrasesResponse\n */\nexport class AddTrainingPhrasesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.AddTrainingPhrasesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddTrainingPhrasesResponse();\n    AddTrainingPhrasesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddTrainingPhrasesResponse) {\n    _instance.errorMessages = _instance.errorMessages || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddTrainingPhrasesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.errorMessages = _instance.errorMessages || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddTrainingPhrasesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddTrainingPhrasesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.errorMessages && _instance.errorMessages.length) {\n      _writer.writeRepeatedString(1, _instance.errorMessages);\n    }\n  }\n\n  private _errorMessages: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddTrainingPhrasesResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<AddTrainingPhrasesResponse.AsObject>) {\n    _value = _value || {};\n    this.errorMessages = (_value.errorMessages || []).slice();\n    AddTrainingPhrasesResponse.refineValues(this);\n  }\n  get errorMessages(): string[] {\n    return this._errorMessages;\n  }\n  set errorMessages(value: string[]) {\n    this._errorMessages = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddTrainingPhrasesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddTrainingPhrasesResponse.AsObject {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddTrainingPhrasesResponse.AsProtobufJSON {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n}\nexport module AddTrainingPhrasesResponse {\n  /**\n   * Standard JavaScript object representation for AddTrainingPhrasesResponse\n   */\n  export interface AsObject {\n    errorMessages: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for AddTrainingPhrasesResponse\n   */\n  export interface AsProtobufJSON {\n    errorMessages: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.AddTrainingPhrasesFromCSVRequest\n */\nexport class AddTrainingPhrasesFromCSVRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.AddTrainingPhrasesFromCSVRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new AddTrainingPhrasesFromCSVRequest();\n    AddTrainingPhrasesFromCSVRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: AddTrainingPhrasesFromCSVRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.languageCode = _instance.languageCode || '';\n    _instance.csvContents = _instance.csvContents || new Uint8Array();\n    _instance.extractEntities = _instance.extractEntities || false;\n    _instance.specialCharacters = _instance.specialCharacters || '';\n    _instance.trainingPhraseCleanerOptions =\n      _instance.trainingPhraseCleanerOptions || undefined;\n    _instance.numberOfWorkers = _instance.numberOfWorkers || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: AddTrainingPhrasesFromCSVRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.languageCode = _reader.readString();\n          break;\n        case 3:\n          _instance.csvContents = _reader.readBytes();\n          break;\n        case 4:\n          _instance.extractEntities = _reader.readBool();\n          break;\n        case 5:\n          _instance.specialCharacters = _reader.readString();\n          break;\n        case 6:\n          _instance.trainingPhraseCleanerOptions = new TrainingPhraseCleanerOptions();\n          _reader.readMessage(\n            _instance.trainingPhraseCleanerOptions,\n            TrainingPhraseCleanerOptions.deserializeBinaryFromReader\n          );\n          break;\n        case 7:\n          _instance.numberOfWorkers = _reader.readInt32();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    AddTrainingPhrasesFromCSVRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: AddTrainingPhrasesFromCSVRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.languageCode) {\n      _writer.writeString(2, _instance.languageCode);\n    }\n    if (_instance.csvContents && _instance.csvContents.length) {\n      _writer.writeBytes(3, _instance.csvContents);\n    }\n    if (_instance.extractEntities) {\n      _writer.writeBool(4, _instance.extractEntities);\n    }\n    if (_instance.specialCharacters) {\n      _writer.writeString(5, _instance.specialCharacters);\n    }\n    if (_instance.trainingPhraseCleanerOptions) {\n      _writer.writeMessage(\n        6,\n        _instance.trainingPhraseCleanerOptions as any,\n        TrainingPhraseCleanerOptions.serializeBinaryToWriter\n      );\n    }\n    if (_instance.numberOfWorkers) {\n      _writer.writeInt32(7, _instance.numberOfWorkers);\n    }\n  }\n\n  private _parent: string;\n  private _languageCode: string;\n  private _csvContents: Uint8Array;\n  private _extractEntities: boolean;\n  private _specialCharacters: string;\n  private _trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions;\n  private _numberOfWorkers: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of AddTrainingPhrasesFromCSVRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<AddTrainingPhrasesFromCSVRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.languageCode = _value.languageCode;\n    this.csvContents = _value.csvContents;\n    this.extractEntities = _value.extractEntities;\n    this.specialCharacters = _value.specialCharacters;\n    this.trainingPhraseCleanerOptions = _value.trainingPhraseCleanerOptions\n      ? new TrainingPhraseCleanerOptions(_value.trainingPhraseCleanerOptions)\n      : undefined;\n    this.numberOfWorkers = _value.numberOfWorkers;\n    AddTrainingPhrasesFromCSVRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get languageCode(): string {\n    return this._languageCode;\n  }\n  set languageCode(value: string) {\n    this._languageCode = value;\n  }\n  get csvContents(): Uint8Array {\n    return this._csvContents;\n  }\n  set csvContents(value: Uint8Array) {\n    this._csvContents = value;\n  }\n  get extractEntities(): boolean {\n    return this._extractEntities;\n  }\n  set extractEntities(value: boolean) {\n    this._extractEntities = value;\n  }\n  get specialCharacters(): string {\n    return this._specialCharacters;\n  }\n  set specialCharacters(value: string) {\n    this._specialCharacters = value;\n  }\n  get trainingPhraseCleanerOptions(): TrainingPhraseCleanerOptions | undefined {\n    return this._trainingPhraseCleanerOptions;\n  }\n  set trainingPhraseCleanerOptions(\n    value: TrainingPhraseCleanerOptions | undefined\n  ) {\n    this._trainingPhraseCleanerOptions = value;\n  }\n  get numberOfWorkers(): number {\n    return this._numberOfWorkers;\n  }\n  set numberOfWorkers(value: number) {\n    this._numberOfWorkers = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    AddTrainingPhrasesFromCSVRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): AddTrainingPhrasesFromCSVRequest.AsObject {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      csvContents: this.csvContents\n        ? this.csvContents.subarray(0)\n        : new Uint8Array(),\n      extractEntities: this.extractEntities,\n      specialCharacters: this.specialCharacters,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toObject()\n        : undefined,\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): AddTrainingPhrasesFromCSVRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      languageCode: this.languageCode,\n      csvContents: this.csvContents ? uint8ArrayToBase64(this.csvContents) : '',\n      extractEntities: this.extractEntities,\n      specialCharacters: this.specialCharacters,\n      trainingPhraseCleanerOptions: this.trainingPhraseCleanerOptions\n        ? this.trainingPhraseCleanerOptions.toProtobufJSON(options)\n        : null,\n      numberOfWorkers: this.numberOfWorkers\n    };\n  }\n}\nexport module AddTrainingPhrasesFromCSVRequest {\n  /**\n   * Standard JavaScript object representation for AddTrainingPhrasesFromCSVRequest\n   */\n  export interface AsObject {\n    parent: string;\n    languageCode: string;\n    csvContents: Uint8Array;\n    extractEntities: boolean;\n    specialCharacters: string;\n    trainingPhraseCleanerOptions?: TrainingPhraseCleanerOptions.AsObject;\n    numberOfWorkers: number;\n  }\n\n  /**\n   * Protobuf JSON representation for AddTrainingPhrasesFromCSVRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    languageCode: string;\n    csvContents: string;\n    extractEntities: boolean;\n    specialCharacters: string;\n    trainingPhraseCleanerOptions: TrainingPhraseCleanerOptions.AsProtobufJSON | null;\n    numberOfWorkers: number;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Utilities.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_UTILITIES_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_UTILITIES_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './utility.pb';\nimport * as googleApi000 from '../../google/api/annotations.pb';\nimport * as ondewoNlu001 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu002 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu003 from '../../ondewo/nlu/operations.pb';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf007 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu008 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/entity-type.pb';\nimport { GRPC_UTILITIES_CLIENT_SETTINGS } from './utility.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Utilities\n */\n@Injectable({ providedIn: 'any' })\nexport class UtilitiesClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Utilities/ValidateRegex\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ValidateRegexResponse>>\n     */\n    validateRegex: (\n      requestData: thisProto.ValidateRegexRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ValidateRegexResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/ValidateRegex',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ValidateRegexRequest,\n        responseClass: thisProto.ValidateRegexResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Utilities/ValidateEmbeddedRegex\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ValidateEmbeddedRegexResponse>>\n     */\n    validateEmbeddedRegex: (\n      requestData: thisProto.ValidateEmbeddedRegexRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ValidateEmbeddedRegexResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/ValidateEmbeddedRegex',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.ValidateEmbeddedRegexRequest,\n        responseClass: thisProto.ValidateEmbeddedRegexResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Utilities/CleanAllIntents\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CleanAllIntentsResponse>>\n     */\n    cleanAllIntents: (\n      requestData: thisProto.CleanAllIntentsRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CleanAllIntentsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/CleanAllIntents',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CleanAllIntentsRequest,\n        responseClass: thisProto.CleanAllIntentsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Utilities/CleanIntent\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CleanIntentResponse>>\n     */\n    cleanIntent: (\n      requestData: thisProto.CleanIntentRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CleanIntentResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/CleanIntent',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CleanIntentRequest,\n        responseClass: thisProto.CleanIntentResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Utilities/CleanAllEntityTypes\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CleanAllEntityTypesResponse>>\n     */\n    cleanAllEntityTypes: (\n      requestData: thisProto.CleanAllEntityTypesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CleanAllEntityTypesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/CleanAllEntityTypes',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CleanAllEntityTypesRequest,\n        responseClass: thisProto.CleanAllEntityTypesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Utilities/CleanEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.CleanEntityTypeResponse>>\n     */\n    cleanEntityType: (\n      requestData: thisProto.CleanEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.CleanEntityTypeResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/CleanEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CleanEntityTypeRequest,\n        responseClass: thisProto.CleanEntityTypeResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Utilities/AddTrainingPhrases\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.AddTrainingPhrasesResponse>>\n     */\n    addTrainingPhrases: (\n      requestData: thisProto.AddTrainingPhrasesRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.AddTrainingPhrasesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/AddTrainingPhrases',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddTrainingPhrasesRequest,\n        responseClass: thisProto.AddTrainingPhrasesResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Utilities/AddTrainingPhrasesFromCSV\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.AddTrainingPhrasesResponse>>\n     */\n    addTrainingPhrasesFromCSV: (\n      requestData: thisProto.AddTrainingPhrasesFromCSVRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.AddTrainingPhrasesResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Utilities/AddTrainingPhrasesFromCSV',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.AddTrainingPhrasesFromCSVRequest,\n        responseClass: thisProto.AddTrainingPhrasesResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_UTILITIES_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Utilities', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/ValidateRegex\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ValidateRegexResponse>\n   */\n  validateRegex(\n    requestData: thisProto.ValidateRegexRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ValidateRegexResponse> {\n    return this.$raw\n      .validateRegex(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/ValidateEmbeddedRegex\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ValidateEmbeddedRegexResponse>\n   */\n  validateEmbeddedRegex(\n    requestData: thisProto.ValidateEmbeddedRegexRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ValidateEmbeddedRegexResponse> {\n    return this.$raw\n      .validateEmbeddedRegex(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/CleanAllIntents\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CleanAllIntentsResponse>\n   */\n  cleanAllIntents(\n    requestData: thisProto.CleanAllIntentsRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CleanAllIntentsResponse> {\n    return this.$raw\n      .cleanAllIntents(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/CleanIntent\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CleanIntentResponse>\n   */\n  cleanIntent(\n    requestData: thisProto.CleanIntentRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CleanIntentResponse> {\n    return this.$raw\n      .cleanIntent(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/CleanAllEntityTypes\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CleanAllEntityTypesResponse>\n   */\n  cleanAllEntityTypes(\n    requestData: thisProto.CleanAllEntityTypesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CleanAllEntityTypesResponse> {\n    return this.$raw\n      .cleanAllEntityTypes(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/CleanEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.CleanEntityTypeResponse>\n   */\n  cleanEntityType(\n    requestData: thisProto.CleanEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.CleanEntityTypeResponse> {\n    return this.$raw\n      .cleanEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/AddTrainingPhrases\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.AddTrainingPhrasesResponse>\n   */\n  addTrainingPhrases(\n    requestData: thisProto.AddTrainingPhrasesRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.AddTrainingPhrasesResponse> {\n    return this.$raw\n      .addTrainingPhrases(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Utilities/AddTrainingPhrasesFromCSV\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.AddTrainingPhrasesResponse>\n   */\n  addTrainingPhrasesFromCSV(\n    requestData: thisProto.AddTrainingPhrasesFromCSVRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.AddTrainingPhrasesResponse> {\n    return this.$raw\n      .addTrainingPhrasesFromCSV(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu006 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/operations.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/context.pb';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as googleRpc010 from '../../google/rpc/status.pb';\nimport * as googleType011 from '../../google/type/latlng.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/session.pb';\n/**\n * Message implementation for ondewo.nlu.PingRequest\n */\nexport class PingRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.PingRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new PingRequest();\n    PingRequest.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: PingRequest) {\n    _instance.session = _instance.session || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: PingRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.session = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    PingRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: PingRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.session) {\n      _writer.writeString(1, _instance.session);\n    }\n  }\n\n  private _session: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of PingRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<PingRequest.AsObject>) {\n    _value = _value || {};\n    this.session = _value.session;\n    PingRequest.refineValues(this);\n  }\n  get session(): string {\n    return this._session;\n  }\n  set session(value: string) {\n    this._session = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    PingRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): PingRequest.AsObject {\n    return {\n      session: this.session\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): PingRequest.AsProtobufJSON {\n    return {\n      session: this.session\n    };\n  }\n}\nexport module PingRequest {\n  /**\n   * Standard JavaScript object representation for PingRequest\n   */\n  export interface AsObject {\n    session: string;\n  }\n\n  /**\n   * Protobuf JSON representation for PingRequest\n   */\n  export interface AsProtobufJSON {\n    session: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.WebhookRequest\n */\nexport class WebhookRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.WebhookRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new WebhookRequest();\n    WebhookRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: WebhookRequest) {\n    _instance.responseId = _instance.responseId || '';\n    _instance.queryResult = _instance.queryResult || undefined;\n    _instance.originalDetectIntentRequest =\n      _instance.originalDetectIntentRequest || undefined;\n    _instance.session = _instance.session || '';\n    _instance.headers = _instance.headers || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: WebhookRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.responseId = _reader.readString();\n          break;\n        case 2:\n          _instance.queryResult = new ondewoNlu016.QueryResult();\n          _reader.readMessage(\n            _instance.queryResult,\n            ondewoNlu016.QueryResult.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.originalDetectIntentRequest = new OriginalDetectIntentRequest();\n          _reader.readMessage(\n            _instance.originalDetectIntentRequest,\n            OriginalDetectIntentRequest.deserializeBinaryFromReader\n          );\n          break;\n        case 4:\n          _instance.session = _reader.readString();\n          break;\n        case 5:\n          _instance.headers = new googleProtobuf009.Struct();\n          _reader.readMessage(\n            _instance.headers,\n            googleProtobuf009.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    WebhookRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: WebhookRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.responseId) {\n      _writer.writeString(1, _instance.responseId);\n    }\n    if (_instance.queryResult) {\n      _writer.writeMessage(\n        2,\n        _instance.queryResult as any,\n        ondewoNlu016.QueryResult.serializeBinaryToWriter\n      );\n    }\n    if (_instance.originalDetectIntentRequest) {\n      _writer.writeMessage(\n        3,\n        _instance.originalDetectIntentRequest as any,\n        OriginalDetectIntentRequest.serializeBinaryToWriter\n      );\n    }\n    if (_instance.session) {\n      _writer.writeString(4, _instance.session);\n    }\n    if (_instance.headers) {\n      _writer.writeMessage(\n        5,\n        _instance.headers as any,\n        googleProtobuf009.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _responseId: string;\n  private _queryResult?: ondewoNlu016.QueryResult;\n  private _originalDetectIntentRequest?: OriginalDetectIntentRequest;\n  private _session: string;\n  private _headers?: googleProtobuf009.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of WebhookRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<WebhookRequest.AsObject>) {\n    _value = _value || {};\n    this.responseId = _value.responseId;\n    this.queryResult = _value.queryResult\n      ? new ondewoNlu016.QueryResult(_value.queryResult)\n      : undefined;\n    this.originalDetectIntentRequest = _value.originalDetectIntentRequest\n      ? new OriginalDetectIntentRequest(_value.originalDetectIntentRequest)\n      : undefined;\n    this.session = _value.session;\n    this.headers = _value.headers\n      ? new googleProtobuf009.Struct(_value.headers)\n      : undefined;\n    WebhookRequest.refineValues(this);\n  }\n  get responseId(): string {\n    return this._responseId;\n  }\n  set responseId(value: string) {\n    this._responseId = value;\n  }\n  get queryResult(): ondewoNlu016.QueryResult | undefined {\n    return this._queryResult;\n  }\n  set queryResult(value: ondewoNlu016.QueryResult | undefined) {\n    this._queryResult = value;\n  }\n  get originalDetectIntentRequest(): OriginalDetectIntentRequest | undefined {\n    return this._originalDetectIntentRequest;\n  }\n  set originalDetectIntentRequest(\n    value: OriginalDetectIntentRequest | undefined\n  ) {\n    this._originalDetectIntentRequest = value;\n  }\n  get session(): string {\n    return this._session;\n  }\n  set session(value: string) {\n    this._session = value;\n  }\n  get headers(): googleProtobuf009.Struct | undefined {\n    return this._headers;\n  }\n  set headers(value: googleProtobuf009.Struct | undefined) {\n    this._headers = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    WebhookRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): WebhookRequest.AsObject {\n    return {\n      responseId: this.responseId,\n      queryResult: this.queryResult ? this.queryResult.toObject() : undefined,\n      originalDetectIntentRequest: this.originalDetectIntentRequest\n        ? this.originalDetectIntentRequest.toObject()\n        : undefined,\n      session: this.session,\n      headers: this.headers ? this.headers.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): WebhookRequest.AsProtobufJSON {\n    return {\n      responseId: this.responseId,\n      queryResult: this.queryResult\n        ? this.queryResult.toProtobufJSON(options)\n        : null,\n      originalDetectIntentRequest: this.originalDetectIntentRequest\n        ? this.originalDetectIntentRequest.toProtobufJSON(options)\n        : null,\n      session: this.session,\n      headers: this.headers ? this.headers.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module WebhookRequest {\n  /**\n   * Standard JavaScript object representation for WebhookRequest\n   */\n  export interface AsObject {\n    responseId: string;\n    queryResult?: ondewoNlu016.QueryResult.AsObject;\n    originalDetectIntentRequest?: OriginalDetectIntentRequest.AsObject;\n    session: string;\n    headers?: googleProtobuf009.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for WebhookRequest\n   */\n  export interface AsProtobufJSON {\n    responseId: string;\n    queryResult: ondewoNlu016.QueryResult.AsProtobufJSON | null;\n    originalDetectIntentRequest: OriginalDetectIntentRequest.AsProtobufJSON | null;\n    session: string;\n    headers: googleProtobuf009.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.WebhookResponse\n */\nexport class WebhookResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.WebhookResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new WebhookResponse();\n    WebhookResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: WebhookResponse) {\n    _instance.fulfillmentText = _instance.fulfillmentText || '';\n    _instance.fulfillmentMessages = _instance.fulfillmentMessages || [];\n    _instance.source = _instance.source || '';\n    _instance.payload = _instance.payload || undefined;\n    _instance.outputContexts = _instance.outputContexts || [];\n    _instance.followupEventInput = _instance.followupEventInput || undefined;\n    _instance.sessionEntityTypes = _instance.sessionEntityTypes || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: WebhookResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.fulfillmentText = _reader.readString();\n          break;\n        case 2:\n          const messageInitializer2 = new ondewoNlu014.Intent.Message();\n          _reader.readMessage(\n            messageInitializer2,\n            ondewoNlu014.Intent.Message.deserializeBinaryFromReader\n          );\n          (_instance.fulfillmentMessages =\n            _instance.fulfillmentMessages || []).push(messageInitializer2);\n          break;\n        case 3:\n          _instance.source = _reader.readString();\n          break;\n        case 4:\n          _instance.payload = new googleProtobuf009.Struct();\n          _reader.readMessage(\n            _instance.payload,\n            googleProtobuf009.Struct.deserializeBinaryFromReader\n          );\n          break;\n        case 5:\n          const messageInitializer5 = new ondewoNlu008.Context();\n          _reader.readMessage(\n            messageInitializer5,\n            ondewoNlu008.Context.deserializeBinaryFromReader\n          );\n          (_instance.outputContexts = _instance.outputContexts || []).push(\n            messageInitializer5\n          );\n          break;\n        case 6:\n          _instance.followupEventInput = new ondewoNlu016.EventInput();\n          _reader.readMessage(\n            _instance.followupEventInput,\n            ondewoNlu016.EventInput.deserializeBinaryFromReader\n          );\n          break;\n        case 10:\n          const messageInitializer10 = new SessionEntityType();\n          _reader.readMessage(\n            messageInitializer10,\n            SessionEntityType.deserializeBinaryFromReader\n          );\n          (_instance.sessionEntityTypes =\n            _instance.sessionEntityTypes || []).push(messageInitializer10);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    WebhookResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: WebhookResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.fulfillmentText) {\n      _writer.writeString(1, _instance.fulfillmentText);\n    }\n    if (_instance.fulfillmentMessages && _instance.fulfillmentMessages.length) {\n      _writer.writeRepeatedMessage(\n        2,\n        _instance.fulfillmentMessages as any,\n        ondewoNlu014.Intent.Message.serializeBinaryToWriter\n      );\n    }\n    if (_instance.source) {\n      _writer.writeString(3, _instance.source);\n    }\n    if (_instance.payload) {\n      _writer.writeMessage(\n        4,\n        _instance.payload as any,\n        googleProtobuf009.Struct.serializeBinaryToWriter\n      );\n    }\n    if (_instance.outputContexts && _instance.outputContexts.length) {\n      _writer.writeRepeatedMessage(\n        5,\n        _instance.outputContexts as any,\n        ondewoNlu008.Context.serializeBinaryToWriter\n      );\n    }\n    if (_instance.followupEventInput) {\n      _writer.writeMessage(\n        6,\n        _instance.followupEventInput as any,\n        ondewoNlu016.EventInput.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sessionEntityTypes && _instance.sessionEntityTypes.length) {\n      _writer.writeRepeatedMessage(\n        10,\n        _instance.sessionEntityTypes as any,\n        SessionEntityType.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _fulfillmentText: string;\n  private _fulfillmentMessages?: ondewoNlu014.Intent.Message[];\n  private _source: string;\n  private _payload?: googleProtobuf009.Struct;\n  private _outputContexts?: ondewoNlu008.Context[];\n  private _followupEventInput?: ondewoNlu016.EventInput;\n  private _sessionEntityTypes?: SessionEntityType[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of WebhookResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<WebhookResponse.AsObject>) {\n    _value = _value || {};\n    this.fulfillmentText = _value.fulfillmentText;\n    this.fulfillmentMessages = (_value.fulfillmentMessages || []).map(\n      m => new ondewoNlu014.Intent.Message(m)\n    );\n    this.source = _value.source;\n    this.payload = _value.payload\n      ? new googleProtobuf009.Struct(_value.payload)\n      : undefined;\n    this.outputContexts = (_value.outputContexts || []).map(\n      m => new ondewoNlu008.Context(m)\n    );\n    this.followupEventInput = _value.followupEventInput\n      ? new ondewoNlu016.EventInput(_value.followupEventInput)\n      : undefined;\n    this.sessionEntityTypes = (_value.sessionEntityTypes || []).map(\n      m => new SessionEntityType(m)\n    );\n    WebhookResponse.refineValues(this);\n  }\n  get fulfillmentText(): string {\n    return this._fulfillmentText;\n  }\n  set fulfillmentText(value: string) {\n    this._fulfillmentText = value;\n  }\n  get fulfillmentMessages(): ondewoNlu014.Intent.Message[] | undefined {\n    return this._fulfillmentMessages;\n  }\n  set fulfillmentMessages(value: ondewoNlu014.Intent.Message[] | undefined) {\n    this._fulfillmentMessages = value;\n  }\n  get source(): string {\n    return this._source;\n  }\n  set source(value: string) {\n    this._source = value;\n  }\n  get payload(): googleProtobuf009.Struct | undefined {\n    return this._payload;\n  }\n  set payload(value: googleProtobuf009.Struct | undefined) {\n    this._payload = value;\n  }\n  get outputContexts(): ondewoNlu008.Context[] | undefined {\n    return this._outputContexts;\n  }\n  set outputContexts(value: ondewoNlu008.Context[] | undefined) {\n    this._outputContexts = value;\n  }\n  get followupEventInput(): ondewoNlu016.EventInput | undefined {\n    return this._followupEventInput;\n  }\n  set followupEventInput(value: ondewoNlu016.EventInput | undefined) {\n    this._followupEventInput = value;\n  }\n  get sessionEntityTypes(): SessionEntityType[] | undefined {\n    return this._sessionEntityTypes;\n  }\n  set sessionEntityTypes(value: SessionEntityType[] | undefined) {\n    this._sessionEntityTypes = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    WebhookResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): WebhookResponse.AsObject {\n    return {\n      fulfillmentText: this.fulfillmentText,\n      fulfillmentMessages: (this.fulfillmentMessages || []).map(m =>\n        m.toObject()\n      ),\n      source: this.source,\n      payload: this.payload ? this.payload.toObject() : undefined,\n      outputContexts: (this.outputContexts || []).map(m => m.toObject()),\n      followupEventInput: this.followupEventInput\n        ? this.followupEventInput.toObject()\n        : undefined,\n      sessionEntityTypes: (this.sessionEntityTypes || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): WebhookResponse.AsProtobufJSON {\n    return {\n      fulfillmentText: this.fulfillmentText,\n      fulfillmentMessages: (this.fulfillmentMessages || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      source: this.source,\n      payload: this.payload ? this.payload.toProtobufJSON(options) : null,\n      outputContexts: (this.outputContexts || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      followupEventInput: this.followupEventInput\n        ? this.followupEventInput.toProtobufJSON(options)\n        : null,\n      sessionEntityTypes: (this.sessionEntityTypes || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module WebhookResponse {\n  /**\n   * Standard JavaScript object representation for WebhookResponse\n   */\n  export interface AsObject {\n    fulfillmentText: string;\n    fulfillmentMessages?: ondewoNlu014.Intent.Message.AsObject[];\n    source: string;\n    payload?: googleProtobuf009.Struct.AsObject;\n    outputContexts?: ondewoNlu008.Context.AsObject[];\n    followupEventInput?: ondewoNlu016.EventInput.AsObject;\n    sessionEntityTypes?: SessionEntityType.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for WebhookResponse\n   */\n  export interface AsProtobufJSON {\n    fulfillmentText: string;\n    fulfillmentMessages: ondewoNlu014.Intent.Message.AsProtobufJSON[] | null;\n    source: string;\n    payload: googleProtobuf009.Struct.AsProtobufJSON | null;\n    outputContexts: ondewoNlu008.Context.AsProtobufJSON[] | null;\n    followupEventInput: ondewoNlu016.EventInput.AsProtobufJSON | null;\n    sessionEntityTypes: SessionEntityType.AsProtobufJSON[] | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.OriginalDetectIntentRequest\n */\nexport class OriginalDetectIntentRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.OriginalDetectIntentRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new OriginalDetectIntentRequest();\n    OriginalDetectIntentRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: OriginalDetectIntentRequest) {\n    _instance.source = _instance.source || '';\n    _instance.payload = _instance.payload || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: OriginalDetectIntentRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.source = _reader.readString();\n          break;\n        case 3:\n          _instance.payload = new googleProtobuf009.Struct();\n          _reader.readMessage(\n            _instance.payload,\n            googleProtobuf009.Struct.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    OriginalDetectIntentRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: OriginalDetectIntentRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.source) {\n      _writer.writeString(1, _instance.source);\n    }\n    if (_instance.payload) {\n      _writer.writeMessage(\n        3,\n        _instance.payload as any,\n        googleProtobuf009.Struct.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _source: string;\n  private _payload?: googleProtobuf009.Struct;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of OriginalDetectIntentRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<OriginalDetectIntentRequest.AsObject>) {\n    _value = _value || {};\n    this.source = _value.source;\n    this.payload = _value.payload\n      ? new googleProtobuf009.Struct(_value.payload)\n      : undefined;\n    OriginalDetectIntentRequest.refineValues(this);\n  }\n  get source(): string {\n    return this._source;\n  }\n  set source(value: string) {\n    this._source = value;\n  }\n  get payload(): googleProtobuf009.Struct | undefined {\n    return this._payload;\n  }\n  set payload(value: googleProtobuf009.Struct | undefined) {\n    this._payload = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    OriginalDetectIntentRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): OriginalDetectIntentRequest.AsObject {\n    return {\n      source: this.source,\n      payload: this.payload ? this.payload.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): OriginalDetectIntentRequest.AsProtobufJSON {\n    return {\n      source: this.source,\n      payload: this.payload ? this.payload.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module OriginalDetectIntentRequest {\n  /**\n   * Standard JavaScript object representation for OriginalDetectIntentRequest\n   */\n  export interface AsObject {\n    source: string;\n    payload?: googleProtobuf009.Struct.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for OriginalDetectIntentRequest\n   */\n  export interface AsProtobufJSON {\n    source: string;\n    payload: googleProtobuf009.Struct.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.PingResponse\n */\nexport class PingResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.PingResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new PingResponse();\n    PingResponse.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: PingResponse) {\n    _instance.isReachable = _instance.isReachable || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: PingResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.isReachable = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    PingResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: PingResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.isReachable) {\n      _writer.writeBool(1, _instance.isReachable);\n    }\n  }\n\n  private _isReachable: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of PingResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<PingResponse.AsObject>) {\n    _value = _value || {};\n    this.isReachable = _value.isReachable;\n    PingResponse.refineValues(this);\n  }\n  get isReachable(): boolean {\n    return this._isReachable;\n  }\n  set isReachable(value: boolean) {\n    this._isReachable = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    PingResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): PingResponse.AsObject {\n    return {\n      isReachable: this.isReachable\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): PingResponse.AsProtobufJSON {\n    return {\n      isReachable: this.isReachable\n    };\n  }\n}\nexport module PingResponse {\n  /**\n   * Standard JavaScript object representation for PingResponse\n   */\n  export interface AsObject {\n    isReachable: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for PingResponse\n   */\n  export interface AsProtobufJSON {\n    isReachable: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.SessionEntityType\n */\nexport class SessionEntityType implements GrpcMessage {\n  static id = 'ondewo.nlu.SessionEntityType';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new SessionEntityType();\n    SessionEntityType.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: SessionEntityType) {\n    _instance.name = _instance.name || '';\n    _instance.entityOverrideMode = _instance.entityOverrideMode || 0;\n    _instance.entities = _instance.entities || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: SessionEntityType,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        case 2:\n          _instance.entityOverrideMode = _reader.readEnum();\n          break;\n        case 3:\n          const messageInitializer3 = new ondewoNlu013.EntityType.Entity();\n          _reader.readMessage(\n            messageInitializer3,\n            ondewoNlu013.EntityType.Entity.deserializeBinaryFromReader\n          );\n          (_instance.entities = _instance.entities || []).push(\n            messageInitializer3\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    SessionEntityType.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: SessionEntityType,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n    if (_instance.entityOverrideMode) {\n      _writer.writeEnum(2, _instance.entityOverrideMode);\n    }\n    if (_instance.entities && _instance.entities.length) {\n      _writer.writeRepeatedMessage(\n        3,\n        _instance.entities as any,\n        ondewoNlu013.EntityType.Entity.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _name: string;\n  private _entityOverrideMode: SessionEntityType.EntityOverrideMode;\n  private _entities?: ondewoNlu013.EntityType.Entity[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of SessionEntityType to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<SessionEntityType.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    this.entityOverrideMode = _value.entityOverrideMode;\n    this.entities = (_value.entities || []).map(\n      m => new ondewoNlu013.EntityType.Entity(m)\n    );\n    SessionEntityType.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n  get entityOverrideMode(): SessionEntityType.EntityOverrideMode {\n    return this._entityOverrideMode;\n  }\n  set entityOverrideMode(value: SessionEntityType.EntityOverrideMode) {\n    this._entityOverrideMode = value;\n  }\n  get entities(): ondewoNlu013.EntityType.Entity[] | undefined {\n    return this._entities;\n  }\n  set entities(value: ondewoNlu013.EntityType.Entity[] | undefined) {\n    this._entities = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    SessionEntityType.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): SessionEntityType.AsObject {\n    return {\n      name: this.name,\n      entityOverrideMode: this.entityOverrideMode,\n      entities: (this.entities || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): SessionEntityType.AsProtobufJSON {\n    return {\n      name: this.name,\n      entityOverrideMode:\n        SessionEntityType.EntityOverrideMode[\n          this.entityOverrideMode === null ||\n          this.entityOverrideMode === undefined\n            ? 0\n            : this.entityOverrideMode\n        ],\n      entities: (this.entities || []).map(m => m.toProtobufJSON(options))\n    };\n  }\n}\nexport module SessionEntityType {\n  /**\n   * Standard JavaScript object representation for SessionEntityType\n   */\n  export interface AsObject {\n    name: string;\n    entityOverrideMode: SessionEntityType.EntityOverrideMode;\n    entities?: ondewoNlu013.EntityType.Entity.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for SessionEntityType\n   */\n  export interface AsProtobufJSON {\n    name: string;\n    entityOverrideMode: string;\n    entities: ondewoNlu013.EntityType.Entity.AsProtobufJSON[] | null;\n  }\n  export enum EntityOverrideMode {\n    ENTITY_OVERRIDE_MODE_UNSPECIFIED = 0,\n    ENTITY_OVERRIDE_MODE_OVERRIDE = 1,\n    ENTITY_OVERRIDE_MODE_SUPPLEMENT = 2\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionEntityTypesRequest\n */\nexport class ListSessionEntityTypesRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionEntityTypesRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionEntityTypesRequest();\n    ListSessionEntityTypesRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionEntityTypesRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.pageSize = _instance.pageSize || 0;\n    _instance.pageToken = _instance.pageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionEntityTypesRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.pageSize = _reader.readInt32();\n          break;\n        case 3:\n          _instance.pageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionEntityTypesRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionEntityTypesRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.pageSize) {\n      _writer.writeInt32(2, _instance.pageSize);\n    }\n    if (_instance.pageToken) {\n      _writer.writeString(3, _instance.pageToken);\n    }\n  }\n\n  private _parent: string;\n  private _pageSize: number;\n  private _pageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionEntityTypesRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListSessionEntityTypesRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.pageSize = _value.pageSize;\n    this.pageToken = _value.pageToken;\n    ListSessionEntityTypesRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get pageSize(): number {\n    return this._pageSize;\n  }\n  set pageSize(value: number) {\n    this._pageSize = value;\n  }\n  get pageToken(): string {\n    return this._pageToken;\n  }\n  set pageToken(value: string) {\n    this._pageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionEntityTypesRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionEntityTypesRequest.AsObject {\n    return {\n      parent: this.parent,\n      pageSize: this.pageSize,\n      pageToken: this.pageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionEntityTypesRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      pageSize: this.pageSize,\n      pageToken: this.pageToken\n    };\n  }\n}\nexport module ListSessionEntityTypesRequest {\n  /**\n   * Standard JavaScript object representation for ListSessionEntityTypesRequest\n   */\n  export interface AsObject {\n    parent: string;\n    pageSize: number;\n    pageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionEntityTypesRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    pageSize: number;\n    pageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.ListSessionEntityTypesResponse\n */\nexport class ListSessionEntityTypesResponse implements GrpcMessage {\n  static id = 'ondewo.nlu.ListSessionEntityTypesResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListSessionEntityTypesResponse();\n    ListSessionEntityTypesResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListSessionEntityTypesResponse) {\n    _instance.sessionEntityTypes = _instance.sessionEntityTypes || [];\n    _instance.nextPageToken = _instance.nextPageToken || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListSessionEntityTypesResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new SessionEntityType();\n          _reader.readMessage(\n            messageInitializer1,\n            SessionEntityType.deserializeBinaryFromReader\n          );\n          (_instance.sessionEntityTypes =\n            _instance.sessionEntityTypes || []).push(messageInitializer1);\n          break;\n        case 2:\n          _instance.nextPageToken = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListSessionEntityTypesResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListSessionEntityTypesResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionEntityTypes && _instance.sessionEntityTypes.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.sessionEntityTypes as any,\n        SessionEntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.nextPageToken) {\n      _writer.writeString(2, _instance.nextPageToken);\n    }\n  }\n\n  private _sessionEntityTypes?: SessionEntityType[];\n  private _nextPageToken: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListSessionEntityTypesResponse to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<ListSessionEntityTypesResponse.AsObject>\n  ) {\n    _value = _value || {};\n    this.sessionEntityTypes = (_value.sessionEntityTypes || []).map(\n      m => new SessionEntityType(m)\n    );\n    this.nextPageToken = _value.nextPageToken;\n    ListSessionEntityTypesResponse.refineValues(this);\n  }\n  get sessionEntityTypes(): SessionEntityType[] | undefined {\n    return this._sessionEntityTypes;\n  }\n  set sessionEntityTypes(value: SessionEntityType[] | undefined) {\n    this._sessionEntityTypes = value;\n  }\n  get nextPageToken(): string {\n    return this._nextPageToken;\n  }\n  set nextPageToken(value: string) {\n    this._nextPageToken = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListSessionEntityTypesResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListSessionEntityTypesResponse.AsObject {\n    return {\n      sessionEntityTypes: (this.sessionEntityTypes || []).map(m =>\n        m.toObject()\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListSessionEntityTypesResponse.AsProtobufJSON {\n    return {\n      sessionEntityTypes: (this.sessionEntityTypes || []).map(m =>\n        m.toProtobufJSON(options)\n      ),\n      nextPageToken: this.nextPageToken\n    };\n  }\n}\nexport module ListSessionEntityTypesResponse {\n  /**\n   * Standard JavaScript object representation for ListSessionEntityTypesResponse\n   */\n  export interface AsObject {\n    sessionEntityTypes?: SessionEntityType.AsObject[];\n    nextPageToken: string;\n  }\n\n  /**\n   * Protobuf JSON representation for ListSessionEntityTypesResponse\n   */\n  export interface AsProtobufJSON {\n    sessionEntityTypes: SessionEntityType.AsProtobufJSON[] | null;\n    nextPageToken: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.GetSessionEntityTypeRequest\n */\nexport class GetSessionEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.GetSessionEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetSessionEntityTypeRequest();\n    GetSessionEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetSessionEntityTypeRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetSessionEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetSessionEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetSessionEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetSessionEntityTypeRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetSessionEntityTypeRequest.AsObject>) {\n    _value = _value || {};\n    this.name = _value.name;\n    GetSessionEntityTypeRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetSessionEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetSessionEntityTypeRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetSessionEntityTypeRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module GetSessionEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for GetSessionEntityTypeRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetSessionEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.CreateSessionEntityTypeRequest\n */\nexport class CreateSessionEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.CreateSessionEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new CreateSessionEntityTypeRequest();\n    CreateSessionEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: CreateSessionEntityTypeRequest) {\n    _instance.parent = _instance.parent || '';\n    _instance.sessionEntityType = _instance.sessionEntityType || undefined;\n    _instance.sessionId = _instance.sessionId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: CreateSessionEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.parent = _reader.readString();\n          break;\n        case 2:\n          _instance.sessionEntityType = new SessionEntityType();\n          _reader.readMessage(\n            _instance.sessionEntityType,\n            SessionEntityType.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.sessionId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    CreateSessionEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: CreateSessionEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.parent) {\n      _writer.writeString(1, _instance.parent);\n    }\n    if (_instance.sessionEntityType) {\n      _writer.writeMessage(\n        2,\n        _instance.sessionEntityType as any,\n        SessionEntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.sessionId) {\n      _writer.writeString(3, _instance.sessionId);\n    }\n  }\n\n  private _parent: string;\n  private _sessionEntityType?: SessionEntityType;\n  private _sessionId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of CreateSessionEntityTypeRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<CreateSessionEntityTypeRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.parent = _value.parent;\n    this.sessionEntityType = _value.sessionEntityType\n      ? new SessionEntityType(_value.sessionEntityType)\n      : undefined;\n    this.sessionId = _value.sessionId;\n    CreateSessionEntityTypeRequest.refineValues(this);\n  }\n  get parent(): string {\n    return this._parent;\n  }\n  set parent(value: string) {\n    this._parent = value;\n  }\n  get sessionEntityType(): SessionEntityType | undefined {\n    return this._sessionEntityType;\n  }\n  set sessionEntityType(value: SessionEntityType | undefined) {\n    this._sessionEntityType = value;\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    CreateSessionEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): CreateSessionEntityTypeRequest.AsObject {\n    return {\n      parent: this.parent,\n      sessionEntityType: this.sessionEntityType\n        ? this.sessionEntityType.toObject()\n        : undefined,\n      sessionId: this.sessionId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): CreateSessionEntityTypeRequest.AsProtobufJSON {\n    return {\n      parent: this.parent,\n      sessionEntityType: this.sessionEntityType\n        ? this.sessionEntityType.toProtobufJSON(options)\n        : null,\n      sessionId: this.sessionId\n    };\n  }\n}\nexport module CreateSessionEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for CreateSessionEntityTypeRequest\n   */\n  export interface AsObject {\n    parent: string;\n    sessionEntityType?: SessionEntityType.AsObject;\n    sessionId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for CreateSessionEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    parent: string;\n    sessionEntityType: SessionEntityType.AsProtobufJSON | null;\n    sessionId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.UpdateSessionEntityTypeRequest\n */\nexport class UpdateSessionEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.UpdateSessionEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateSessionEntityTypeRequest();\n    UpdateSessionEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateSessionEntityTypeRequest) {\n    _instance.sessionEntityType = _instance.sessionEntityType || undefined;\n    _instance.updateMask = _instance.updateMask || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateSessionEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionEntityType = new SessionEntityType();\n          _reader.readMessage(\n            _instance.sessionEntityType,\n            SessionEntityType.deserializeBinaryFromReader\n          );\n          break;\n        case 2:\n          _instance.updateMask = new googleProtobuf004.FieldMask();\n          _reader.readMessage(\n            _instance.updateMask,\n            googleProtobuf004.FieldMask.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateSessionEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateSessionEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionEntityType) {\n      _writer.writeMessage(\n        1,\n        _instance.sessionEntityType as any,\n        SessionEntityType.serializeBinaryToWriter\n      );\n    }\n    if (_instance.updateMask) {\n      _writer.writeMessage(\n        2,\n        _instance.updateMask as any,\n        googleProtobuf004.FieldMask.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionEntityType?: SessionEntityType;\n  private _updateMask?: googleProtobuf004.FieldMask;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateSessionEntityTypeRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<UpdateSessionEntityTypeRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.sessionEntityType = _value.sessionEntityType\n      ? new SessionEntityType(_value.sessionEntityType)\n      : undefined;\n    this.updateMask = _value.updateMask\n      ? new googleProtobuf004.FieldMask(_value.updateMask)\n      : undefined;\n    UpdateSessionEntityTypeRequest.refineValues(this);\n  }\n  get sessionEntityType(): SessionEntityType | undefined {\n    return this._sessionEntityType;\n  }\n  set sessionEntityType(value: SessionEntityType | undefined) {\n    this._sessionEntityType = value;\n  }\n  get updateMask(): googleProtobuf004.FieldMask | undefined {\n    return this._updateMask;\n  }\n  set updateMask(value: googleProtobuf004.FieldMask | undefined) {\n    this._updateMask = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateSessionEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateSessionEntityTypeRequest.AsObject {\n    return {\n      sessionEntityType: this.sessionEntityType\n        ? this.sessionEntityType.toObject()\n        : undefined,\n      updateMask: this.updateMask ? this.updateMask.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateSessionEntityTypeRequest.AsProtobufJSON {\n    return {\n      sessionEntityType: this.sessionEntityType\n        ? this.sessionEntityType.toProtobufJSON(options)\n        : null,\n      updateMask: this.updateMask\n        ? this.updateMask.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module UpdateSessionEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for UpdateSessionEntityTypeRequest\n   */\n  export interface AsObject {\n    sessionEntityType?: SessionEntityType.AsObject;\n    updateMask?: googleProtobuf004.FieldMask.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateSessionEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    sessionEntityType: SessionEntityType.AsProtobufJSON | null;\n    updateMask: googleProtobuf004.FieldMask.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.nlu.DeleteSessionEntityTypeRequest\n */\nexport class DeleteSessionEntityTypeRequest implements GrpcMessage {\n  static id = 'ondewo.nlu.DeleteSessionEntityTypeRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new DeleteSessionEntityTypeRequest();\n    DeleteSessionEntityTypeRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: DeleteSessionEntityTypeRequest) {\n    _instance.name = _instance.name || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: DeleteSessionEntityTypeRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.name = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    DeleteSessionEntityTypeRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: DeleteSessionEntityTypeRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.name) {\n      _writer.writeString(1, _instance.name);\n    }\n  }\n\n  private _name: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of DeleteSessionEntityTypeRequest to deeply clone from\n   */\n  constructor(\n    _value?: RecursivePartial<DeleteSessionEntityTypeRequest.AsObject>\n  ) {\n    _value = _value || {};\n    this.name = _value.name;\n    DeleteSessionEntityTypeRequest.refineValues(this);\n  }\n  get name(): string {\n    return this._name;\n  }\n  set name(value: string) {\n    this._name = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    DeleteSessionEntityTypeRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): DeleteSessionEntityTypeRequest.AsObject {\n    return {\n      name: this.name\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): DeleteSessionEntityTypeRequest.AsProtobufJSON {\n    return {\n      name: this.name\n    };\n  }\n}\nexport module DeleteSessionEntityTypeRequest {\n  /**\n   * Standard JavaScript object representation for DeleteSessionEntityTypeRequest\n   */\n  export interface AsObject {\n    name: string;\n  }\n\n  /**\n   * Protobuf JSON representation for DeleteSessionEntityTypeRequest\n   */\n  export interface AsProtobufJSON {\n    name: string;\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Webhook.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_WEBHOOK_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_WEBHOOK_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './webhook.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as ondewoNlu006 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu007 from '../../ondewo/nlu/operations.pb';\nimport * as ondewoNlu008 from '../../ondewo/nlu/context.pb';\nimport * as googleProtobuf009 from '@ngx-grpc/well-known-types';\nimport * as googleRpc010 from '../../google/rpc/status.pb';\nimport * as googleType011 from '../../google/type/latlng.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu016 from '../../ondewo/nlu/session.pb';\nimport { GRPC_WEBHOOK_CLIENT_SETTINGS } from './webhook.pbconf';\n/**\n * Service client implementation for ondewo.nlu.Webhook\n */\n@Injectable({ providedIn: 'any' })\nexport class WebhookClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.nlu.Webhook/ResponseRefinement\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.WebhookResponse>>\n     */\n    responseRefinement: (\n      requestData: thisProto.WebhookRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.WebhookResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Webhook/ResponseRefinement',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.WebhookRequest,\n        responseClass: thisProto.WebhookResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Webhook/SlotFilling\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.WebhookResponse>>\n     */\n    slotFilling: (\n      requestData: thisProto.WebhookRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.WebhookResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Webhook/SlotFilling',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.WebhookRequest,\n        responseClass: thisProto.WebhookResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Webhook/Ping\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.PingResponse>>\n     */\n    ping: (\n      requestData: thisProto.PingRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.PingResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Webhook/Ping',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.PingRequest,\n        responseClass: thisProto.PingResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Webhook/CreateSessionEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionEntityType>>\n     */\n    createSessionEntityType: (\n      requestData: thisProto.CreateSessionEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionEntityType>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Webhook/CreateSessionEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.CreateSessionEntityTypeRequest,\n        responseClass: thisProto.SessionEntityType\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Webhook/UpdateSessionEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.SessionEntityType>>\n     */\n    updateSessionEntityType: (\n      requestData: thisProto.UpdateSessionEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.SessionEntityType>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Webhook/UpdateSessionEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateSessionEntityTypeRequest,\n        responseClass: thisProto.SessionEntityType\n      });\n    },\n    /**\n     * Unary call: /ondewo.nlu.Webhook/DeleteSessionEntityType\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<googleProtobuf003.Empty>>\n     */\n    deleteSessionEntityType: (\n      requestData: thisProto.DeleteSessionEntityTypeRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<googleProtobuf003.Empty>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.nlu.Webhook/DeleteSessionEntityType',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.DeleteSessionEntityTypeRequest,\n        responseClass: googleProtobuf003.Empty\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_WEBHOOK_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.nlu.Webhook', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Webhook/ResponseRefinement\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.WebhookResponse>\n   */\n  responseRefinement(\n    requestData: thisProto.WebhookRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.WebhookResponse> {\n    return this.$raw\n      .responseRefinement(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Webhook/SlotFilling\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.WebhookResponse>\n   */\n  slotFilling(\n    requestData: thisProto.WebhookRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.WebhookResponse> {\n    return this.$raw\n      .slotFilling(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Webhook/Ping\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.PingResponse>\n   */\n  ping(\n    requestData: thisProto.PingRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.PingResponse> {\n    return this.$raw\n      .ping(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Webhook/CreateSessionEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionEntityType>\n   */\n  createSessionEntityType(\n    requestData: thisProto.CreateSessionEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionEntityType> {\n    return this.$raw\n      .createSessionEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Webhook/UpdateSessionEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.SessionEntityType>\n   */\n  updateSessionEntityType(\n    requestData: thisProto.UpdateSessionEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.SessionEntityType> {\n    return this.$raw\n      .updateSessionEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.nlu.Webhook/DeleteSessionEntityType\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<googleProtobuf003.Empty>\n   */\n  deleteSessionEntityType(\n    requestData: thisProto.DeleteSessionEntityTypeRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<googleProtobuf003.Empty> {\n    return this.$raw\n      .deleteSessionEntityType(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport {\n  GrpcMessage,\n  RecursivePartial,\n  ToProtobufJSONOptions\n} from '@ngx-grpc/common';\nimport { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleRpc007 from '../../google/rpc/status.pb';\nimport * as googleType008 from '../../google/type/latlng.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/session.pb';\n/**\n * Message implementation for ondewo.qa.GetAnswerRequest\n */\nexport class GetAnswerRequest implements GrpcMessage {\n  static id = 'ondewo.qa.GetAnswerRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAnswerRequest();\n    GetAnswerRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAnswerRequest) {\n    _instance.sessionId = _instance.sessionId || '';\n    _instance.text = _instance.text || undefined;\n    _instance.maxNumAnswers = _instance.maxNumAnswers || 0;\n    _instance.thresholdReader = _instance.thresholdReader || 0;\n    _instance.thresholdRetriever = _instance.thresholdRetriever || 0;\n    _instance.thresholdOverall = _instance.thresholdOverall || 0;\n    _instance.readerModelName = _instance.readerModelName || '';\n    _instance.urlFilter = _instance.urlFilter || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAnswerRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.sessionId = _reader.readString();\n          break;\n        case 2:\n          _instance.text = new ondewoNlu015.TextInput();\n          _reader.readMessage(\n            _instance.text,\n            ondewoNlu015.TextInput.deserializeBinaryFromReader\n          );\n          break;\n        case 3:\n          _instance.maxNumAnswers = _reader.readInt32();\n          break;\n        case 4:\n          _instance.thresholdReader = _reader.readFloat();\n          break;\n        case 5:\n          _instance.thresholdRetriever = _reader.readFloat();\n          break;\n        case 6:\n          _instance.thresholdOverall = _reader.readFloat();\n          break;\n        case 7:\n          _instance.readerModelName = _reader.readString();\n          break;\n        case 8:\n          _instance.urlFilter = new UrlFilter();\n          _reader.readMessage(\n            _instance.urlFilter,\n            UrlFilter.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAnswerRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAnswerRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.sessionId) {\n      _writer.writeString(1, _instance.sessionId);\n    }\n    if (_instance.text) {\n      _writer.writeMessage(\n        2,\n        _instance.text as any,\n        ondewoNlu015.TextInput.serializeBinaryToWriter\n      );\n    }\n    if (_instance.maxNumAnswers) {\n      _writer.writeInt32(3, _instance.maxNumAnswers);\n    }\n    if (_instance.thresholdReader) {\n      _writer.writeFloat(4, _instance.thresholdReader);\n    }\n    if (_instance.thresholdRetriever) {\n      _writer.writeFloat(5, _instance.thresholdRetriever);\n    }\n    if (_instance.thresholdOverall) {\n      _writer.writeFloat(6, _instance.thresholdOverall);\n    }\n    if (_instance.readerModelName) {\n      _writer.writeString(7, _instance.readerModelName);\n    }\n    if (_instance.urlFilter) {\n      _writer.writeMessage(\n        8,\n        _instance.urlFilter as any,\n        UrlFilter.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _sessionId: string;\n  private _text?: ondewoNlu015.TextInput;\n  private _maxNumAnswers: number;\n  private _thresholdReader: number;\n  private _thresholdRetriever: number;\n  private _thresholdOverall: number;\n  private _readerModelName: string;\n  private _urlFilter?: UrlFilter;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAnswerRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAnswerRequest.AsObject>) {\n    _value = _value || {};\n    this.sessionId = _value.sessionId;\n    this.text = _value.text\n      ? new ondewoNlu015.TextInput(_value.text)\n      : undefined;\n    this.maxNumAnswers = _value.maxNumAnswers;\n    this.thresholdReader = _value.thresholdReader;\n    this.thresholdRetriever = _value.thresholdRetriever;\n    this.thresholdOverall = _value.thresholdOverall;\n    this.readerModelName = _value.readerModelName;\n    this.urlFilter = _value.urlFilter\n      ? new UrlFilter(_value.urlFilter)\n      : undefined;\n    GetAnswerRequest.refineValues(this);\n  }\n  get sessionId(): string {\n    return this._sessionId;\n  }\n  set sessionId(value: string) {\n    this._sessionId = value;\n  }\n  get text(): ondewoNlu015.TextInput | undefined {\n    return this._text;\n  }\n  set text(value: ondewoNlu015.TextInput | undefined) {\n    this._text = value;\n  }\n  get maxNumAnswers(): number {\n    return this._maxNumAnswers;\n  }\n  set maxNumAnswers(value: number) {\n    this._maxNumAnswers = value;\n  }\n  get thresholdReader(): number {\n    return this._thresholdReader;\n  }\n  set thresholdReader(value: number) {\n    this._thresholdReader = value;\n  }\n  get thresholdRetriever(): number {\n    return this._thresholdRetriever;\n  }\n  set thresholdRetriever(value: number) {\n    this._thresholdRetriever = value;\n  }\n  get thresholdOverall(): number {\n    return this._thresholdOverall;\n  }\n  set thresholdOverall(value: number) {\n    this._thresholdOverall = value;\n  }\n  get readerModelName(): string {\n    return this._readerModelName;\n  }\n  set readerModelName(value: string) {\n    this._readerModelName = value;\n  }\n  get urlFilter(): UrlFilter | undefined {\n    return this._urlFilter;\n  }\n  set urlFilter(value: UrlFilter | undefined) {\n    this._urlFilter = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAnswerRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAnswerRequest.AsObject {\n    return {\n      sessionId: this.sessionId,\n      text: this.text ? this.text.toObject() : undefined,\n      maxNumAnswers: this.maxNumAnswers,\n      thresholdReader: this.thresholdReader,\n      thresholdRetriever: this.thresholdRetriever,\n      thresholdOverall: this.thresholdOverall,\n      readerModelName: this.readerModelName,\n      urlFilter: this.urlFilter ? this.urlFilter.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAnswerRequest.AsProtobufJSON {\n    return {\n      sessionId: this.sessionId,\n      text: this.text ? this.text.toProtobufJSON(options) : null,\n      maxNumAnswers: this.maxNumAnswers,\n      thresholdReader: this.thresholdReader,\n      thresholdRetriever: this.thresholdRetriever,\n      thresholdOverall: this.thresholdOverall,\n      readerModelName: this.readerModelName,\n      urlFilter: this.urlFilter ? this.urlFilter.toProtobufJSON(options) : null\n    };\n  }\n}\nexport module GetAnswerRequest {\n  /**\n   * Standard JavaScript object representation for GetAnswerRequest\n   */\n  export interface AsObject {\n    sessionId: string;\n    text?: ondewoNlu015.TextInput.AsObject;\n    maxNumAnswers: number;\n    thresholdReader: number;\n    thresholdRetriever: number;\n    thresholdOverall: number;\n    readerModelName: string;\n    urlFilter?: UrlFilter.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAnswerRequest\n   */\n  export interface AsProtobufJSON {\n    sessionId: string;\n    text: ondewoNlu015.TextInput.AsProtobufJSON | null;\n    maxNumAnswers: number;\n    thresholdReader: number;\n    thresholdRetriever: number;\n    thresholdOverall: number;\n    readerModelName: string;\n    urlFilter: UrlFilter.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.GetAnswerResponse\n */\nexport class GetAnswerResponse implements GrpcMessage {\n  static id = 'ondewo.qa.GetAnswerResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetAnswerResponse();\n    GetAnswerResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetAnswerResponse) {\n    _instance.queryResult = _instance.queryResult || undefined;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetAnswerResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 2:\n          _instance.queryResult = new ondewoNlu015.DetectIntentResponse();\n          _reader.readMessage(\n            _instance.queryResult,\n            ondewoNlu015.DetectIntentResponse.deserializeBinaryFromReader\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetAnswerResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetAnswerResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.queryResult) {\n      _writer.writeMessage(\n        2,\n        _instance.queryResult as any,\n        ondewoNlu015.DetectIntentResponse.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _queryResult?: ondewoNlu015.DetectIntentResponse;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetAnswerResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetAnswerResponse.AsObject>) {\n    _value = _value || {};\n    this.queryResult = _value.queryResult\n      ? new ondewoNlu015.DetectIntentResponse(_value.queryResult)\n      : undefined;\n    GetAnswerResponse.refineValues(this);\n  }\n  get queryResult(): ondewoNlu015.DetectIntentResponse | undefined {\n    return this._queryResult;\n  }\n  set queryResult(value: ondewoNlu015.DetectIntentResponse | undefined) {\n    this._queryResult = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetAnswerResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetAnswerResponse.AsObject {\n    return {\n      queryResult: this.queryResult ? this.queryResult.toObject() : undefined\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetAnswerResponse.AsProtobufJSON {\n    return {\n      queryResult: this.queryResult\n        ? this.queryResult.toProtobufJSON(options)\n        : null\n    };\n  }\n}\nexport module GetAnswerResponse {\n  /**\n   * Standard JavaScript object representation for GetAnswerResponse\n   */\n  export interface AsObject {\n    queryResult?: ondewoNlu015.DetectIntentResponse.AsObject;\n  }\n\n  /**\n   * Protobuf JSON representation for GetAnswerResponse\n   */\n  export interface AsProtobufJSON {\n    queryResult: ondewoNlu015.DetectIntentResponse.AsProtobufJSON | null;\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.RunScraperRequest\n */\nexport class RunScraperRequest implements GrpcMessage {\n  static id = 'ondewo.qa.RunScraperRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RunScraperRequest();\n    RunScraperRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RunScraperRequest) {\n    _instance.projectIds = _instance.projectIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RunScraperRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.projectIds = _instance.projectIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RunScraperRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RunScraperRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.projectIds && _instance.projectIds.length) {\n      _writer.writeRepeatedString(1, _instance.projectIds);\n    }\n  }\n\n  private _projectIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RunScraperRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RunScraperRequest.AsObject>) {\n    _value = _value || {};\n    this.projectIds = (_value.projectIds || []).slice();\n    RunScraperRequest.refineValues(this);\n  }\n  get projectIds(): string[] {\n    return this._projectIds;\n  }\n  set projectIds(value: string[]) {\n    this._projectIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RunScraperRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RunScraperRequest.AsObject {\n    return {\n      projectIds: (this.projectIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RunScraperRequest.AsProtobufJSON {\n    return {\n      projectIds: (this.projectIds || []).slice()\n    };\n  }\n}\nexport module RunScraperRequest {\n  /**\n   * Standard JavaScript object representation for RunScraperRequest\n   */\n  export interface AsObject {\n    projectIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for RunScraperRequest\n   */\n  export interface AsProtobufJSON {\n    projectIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.RunScraperResponse\n */\nexport class RunScraperResponse implements GrpcMessage {\n  static id = 'ondewo.qa.RunScraperResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RunScraperResponse();\n    RunScraperResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RunScraperResponse) {\n    _instance.scraperContainers = _instance.scraperContainers || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RunScraperResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          const messageInitializer1 = new RunScraperResponse.ScraperContainer();\n          _reader.readMessage(\n            messageInitializer1,\n            RunScraperResponse.ScraperContainer.deserializeBinaryFromReader\n          );\n          (_instance.scraperContainers =\n            _instance.scraperContainers || []).push(messageInitializer1);\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RunScraperResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RunScraperResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.scraperContainers && _instance.scraperContainers.length) {\n      _writer.writeRepeatedMessage(\n        1,\n        _instance.scraperContainers as any,\n        RunScraperResponse.ScraperContainer.serializeBinaryToWriter\n      );\n    }\n  }\n\n  private _scraperContainers?: RunScraperResponse.ScraperContainer[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RunScraperResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RunScraperResponse.AsObject>) {\n    _value = _value || {};\n    this.scraperContainers = (_value.scraperContainers || []).map(\n      m => new RunScraperResponse.ScraperContainer(m)\n    );\n    RunScraperResponse.refineValues(this);\n  }\n  get scraperContainers(): RunScraperResponse.ScraperContainer[] | undefined {\n    return this._scraperContainers;\n  }\n  set scraperContainers(\n    value: RunScraperResponse.ScraperContainer[] | undefined\n  ) {\n    this._scraperContainers = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RunScraperResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RunScraperResponse.AsObject {\n    return {\n      scraperContainers: (this.scraperContainers || []).map(m => m.toObject())\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RunScraperResponse.AsProtobufJSON {\n    return {\n      scraperContainers: (this.scraperContainers || []).map(m =>\n        m.toProtobufJSON(options)\n      )\n    };\n  }\n}\nexport module RunScraperResponse {\n  /**\n   * Standard JavaScript object representation for RunScraperResponse\n   */\n  export interface AsObject {\n    scraperContainers?: RunScraperResponse.ScraperContainer.AsObject[];\n  }\n\n  /**\n   * Protobuf JSON representation for RunScraperResponse\n   */\n  export interface AsProtobufJSON {\n    scraperContainers:\n      | RunScraperResponse.ScraperContainer.AsProtobufJSON[]\n      | null;\n  }\n\n  /**\n   * Message implementation for ondewo.qa.RunScraperResponse.ScraperContainer\n   */\n  export class ScraperContainer implements GrpcMessage {\n    static id = 'ondewo.qa.RunScraperResponse.ScraperContainer';\n\n    /**\n     * Deserialize binary data to message\n     * @param instance message instance\n     */\n    static deserializeBinary(bytes: ByteSource) {\n      const instance = new ScraperContainer();\n      ScraperContainer.deserializeBinaryFromReader(\n        instance,\n        new BinaryReader(bytes)\n      );\n      return instance;\n    }\n\n    /**\n     * Check all the properties and set default protobuf values if necessary\n     * @param _instance message instance\n     */\n    static refineValues(_instance: ScraperContainer) {\n      _instance.containerName = _instance.containerName || '';\n      _instance.containerId = _instance.containerId || '';\n    }\n\n    /**\n     * Deserializes / reads binary message into message instance using provided binary reader\n     * @param _instance message instance\n     * @param _reader binary reader instance\n     */\n    static deserializeBinaryFromReader(\n      _instance: ScraperContainer,\n      _reader: BinaryReader\n    ) {\n      while (_reader.nextField()) {\n        if (_reader.isEndGroup()) break;\n\n        switch (_reader.getFieldNumber()) {\n          case 1:\n            _instance.containerName = _reader.readString();\n            break;\n          case 2:\n            _instance.containerId = _reader.readString();\n            break;\n          default:\n            _reader.skipField();\n        }\n      }\n\n      ScraperContainer.refineValues(_instance);\n    }\n\n    /**\n     * Serializes a message to binary format using provided binary reader\n     * @param _instance message instance\n     * @param _writer binary writer instance\n     */\n    static serializeBinaryToWriter(\n      _instance: ScraperContainer,\n      _writer: BinaryWriter\n    ) {\n      if (_instance.containerName) {\n        _writer.writeString(1, _instance.containerName);\n      }\n      if (_instance.containerId) {\n        _writer.writeString(2, _instance.containerId);\n      }\n    }\n\n    private _containerName: string;\n    private _containerId: string;\n\n    /**\n     * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n     * @param _value initial values object or instance of ScraperContainer to deeply clone from\n     */\n    constructor(_value?: RecursivePartial<ScraperContainer.AsObject>) {\n      _value = _value || {};\n      this.containerName = _value.containerName;\n      this.containerId = _value.containerId;\n      ScraperContainer.refineValues(this);\n    }\n    get containerName(): string {\n      return this._containerName;\n    }\n    set containerName(value: string) {\n      this._containerName = value;\n    }\n    get containerId(): string {\n      return this._containerId;\n    }\n    set containerId(value: string) {\n      this._containerId = value;\n    }\n\n    /**\n     * Serialize message to binary data\n     * @param instance message instance\n     */\n    serializeBinary() {\n      const writer = new BinaryWriter();\n      ScraperContainer.serializeBinaryToWriter(this, writer);\n      return writer.getResultBuffer();\n    }\n\n    /**\n     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n     */\n    toObject(): ScraperContainer.AsObject {\n      return {\n        containerName: this.containerName,\n        containerId: this.containerId\n      };\n    }\n\n    /**\n     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n     */\n    toJSON() {\n      return this.toObject();\n    }\n\n    /**\n     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n     */\n    toProtobufJSON(\n      // @ts-ignore\n      options?: ToProtobufJSONOptions\n    ): ScraperContainer.AsProtobufJSON {\n      return {\n        containerName: this.containerName,\n        containerId: this.containerId\n      };\n    }\n  }\n  export module ScraperContainer {\n    /**\n     * Standard JavaScript object representation for ScraperContainer\n     */\n    export interface AsObject {\n      containerName: string;\n      containerId: string;\n    }\n\n    /**\n     * Protobuf JSON representation for ScraperContainer\n     */\n    export interface AsProtobufJSON {\n      containerName: string;\n      containerId: string;\n    }\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.RunTrainingResponse\n */\nexport class RunTrainingResponse implements GrpcMessage {\n  static id = 'ondewo.qa.RunTrainingResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new RunTrainingResponse();\n    RunTrainingResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: RunTrainingResponse) {\n    _instance.f1 = _instance.f1 || 0;\n    _instance.accuracy = _instance.accuracy || 0;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: RunTrainingResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.f1 = _reader.readFloat();\n          break;\n        case 2:\n          _instance.accuracy = _reader.readFloat();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    RunTrainingResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: RunTrainingResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.f1) {\n      _writer.writeFloat(1, _instance.f1);\n    }\n    if (_instance.accuracy) {\n      _writer.writeFloat(2, _instance.accuracy);\n    }\n  }\n\n  private _f1: number;\n  private _accuracy: number;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of RunTrainingResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<RunTrainingResponse.AsObject>) {\n    _value = _value || {};\n    this.f1 = _value.f1;\n    this.accuracy = _value.accuracy;\n    RunTrainingResponse.refineValues(this);\n  }\n  get f1(): number {\n    return this._f1;\n  }\n  set f1(value: number) {\n    this._f1 = value;\n  }\n  get accuracy(): number {\n    return this._accuracy;\n  }\n  set accuracy(value: number) {\n    this._accuracy = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    RunTrainingResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): RunTrainingResponse.AsObject {\n    return {\n      f1: this.f1,\n      accuracy: this.accuracy\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): RunTrainingResponse.AsProtobufJSON {\n    return {\n      f1: this.f1,\n      accuracy: this.accuracy\n    };\n  }\n}\nexport module RunTrainingResponse {\n  /**\n   * Standard JavaScript object representation for RunTrainingResponse\n   */\n  export interface AsObject {\n    f1: number;\n    accuracy: number;\n  }\n\n  /**\n   * Protobuf JSON representation for RunTrainingResponse\n   */\n  export interface AsProtobufJSON {\n    f1: number;\n    accuracy: number;\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.UrlFilter\n */\nexport class UrlFilter implements GrpcMessage {\n  static id = 'ondewo.qa.UrlFilter';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UrlFilter();\n    UrlFilter.deserializeBinaryFromReader(instance, new BinaryReader(bytes));\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UrlFilter) {\n    _instance.allowedValues = _instance.allowedValues || [];\n    _instance.regexFilterInclude = _instance.regexFilterInclude || '';\n    _instance.regexFilterExclude = _instance.regexFilterExclude || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UrlFilter,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.allowedValues = _instance.allowedValues || []).push(\n            _reader.readString()\n          );\n          break;\n        case 2:\n          _instance.regexFilterInclude = _reader.readString();\n          break;\n        case 3:\n          _instance.regexFilterExclude = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UrlFilter.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(_instance: UrlFilter, _writer: BinaryWriter) {\n    if (_instance.allowedValues && _instance.allowedValues.length) {\n      _writer.writeRepeatedString(1, _instance.allowedValues);\n    }\n    if (_instance.regexFilterInclude) {\n      _writer.writeString(2, _instance.regexFilterInclude);\n    }\n    if (_instance.regexFilterExclude) {\n      _writer.writeString(3, _instance.regexFilterExclude);\n    }\n  }\n\n  private _allowedValues: string[];\n  private _regexFilterInclude: string;\n  private _regexFilterExclude: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UrlFilter to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UrlFilter.AsObject>) {\n    _value = _value || {};\n    this.allowedValues = (_value.allowedValues || []).slice();\n    this.regexFilterInclude = _value.regexFilterInclude;\n    this.regexFilterExclude = _value.regexFilterExclude;\n    UrlFilter.refineValues(this);\n  }\n  get allowedValues(): string[] {\n    return this._allowedValues;\n  }\n  set allowedValues(value: string[]) {\n    this._allowedValues = value;\n  }\n  get regexFilterInclude(): string {\n    return this._regexFilterInclude;\n  }\n  set regexFilterInclude(value: string) {\n    this._regexFilterInclude = value;\n  }\n  get regexFilterExclude(): string {\n    return this._regexFilterExclude;\n  }\n  set regexFilterExclude(value: string) {\n    this._regexFilterExclude = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UrlFilter.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UrlFilter.AsObject {\n    return {\n      allowedValues: (this.allowedValues || []).slice(),\n      regexFilterInclude: this.regexFilterInclude,\n      regexFilterExclude: this.regexFilterExclude\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UrlFilter.AsProtobufJSON {\n    return {\n      allowedValues: (this.allowedValues || []).slice(),\n      regexFilterInclude: this.regexFilterInclude,\n      regexFilterExclude: this.regexFilterExclude\n    };\n  }\n}\nexport module UrlFilter {\n  /**\n   * Standard JavaScript object representation for UrlFilter\n   */\n  export interface AsObject {\n    allowedValues: string[];\n    regexFilterInclude: string;\n    regexFilterExclude: string;\n  }\n\n  /**\n   * Protobuf JSON representation for UrlFilter\n   */\n  export interface AsProtobufJSON {\n    allowedValues: string[];\n    regexFilterInclude: string;\n    regexFilterExclude: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.GetServerStateResponse\n */\nexport class GetServerStateResponse implements GrpcMessage {\n  static id = 'ondewo.qa.GetServerStateResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetServerStateResponse();\n    GetServerStateResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetServerStateResponse) {\n    _instance.serverIsReady = _instance.serverIsReady || false;\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetServerStateResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.serverIsReady = _reader.readBool();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetServerStateResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetServerStateResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.serverIsReady) {\n      _writer.writeBool(1, _instance.serverIsReady);\n    }\n  }\n\n  private _serverIsReady: boolean;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetServerStateResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetServerStateResponse.AsObject>) {\n    _value = _value || {};\n    this.serverIsReady = _value.serverIsReady;\n    GetServerStateResponse.refineValues(this);\n  }\n  get serverIsReady(): boolean {\n    return this._serverIsReady;\n  }\n  set serverIsReady(value: boolean) {\n    this._serverIsReady = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetServerStateResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetServerStateResponse.AsObject {\n    return {\n      serverIsReady: this.serverIsReady\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetServerStateResponse.AsProtobufJSON {\n    return {\n      serverIsReady: this.serverIsReady\n    };\n  }\n}\nexport module GetServerStateResponse {\n  /**\n   * Standard JavaScript object representation for GetServerStateResponse\n   */\n  export interface AsObject {\n    serverIsReady: boolean;\n  }\n\n  /**\n   * Protobuf JSON representation for GetServerStateResponse\n   */\n  export interface AsProtobufJSON {\n    serverIsReady: boolean;\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.ListProjectIdsResponse\n */\nexport class ListProjectIdsResponse implements GrpcMessage {\n  static id = 'ondewo.qa.ListProjectIdsResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new ListProjectIdsResponse();\n    ListProjectIdsResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: ListProjectIdsResponse) {\n    _instance.projectIds = _instance.projectIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: ListProjectIdsResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.projectIds = _instance.projectIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    ListProjectIdsResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: ListProjectIdsResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.projectIds && _instance.projectIds.length) {\n      _writer.writeRepeatedString(1, _instance.projectIds);\n    }\n  }\n\n  private _projectIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of ListProjectIdsResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<ListProjectIdsResponse.AsObject>) {\n    _value = _value || {};\n    this.projectIds = (_value.projectIds || []).slice();\n    ListProjectIdsResponse.refineValues(this);\n  }\n  get projectIds(): string[] {\n    return this._projectIds;\n  }\n  set projectIds(value: string[]) {\n    this._projectIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    ListProjectIdsResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): ListProjectIdsResponse.AsObject {\n    return {\n      projectIds: (this.projectIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): ListProjectIdsResponse.AsProtobufJSON {\n    return {\n      projectIds: (this.projectIds || []).slice()\n    };\n  }\n}\nexport module ListProjectIdsResponse {\n  /**\n   * Standard JavaScript object representation for ListProjectIdsResponse\n   */\n  export interface AsObject {\n    projectIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for ListProjectIdsResponse\n   */\n  export interface AsProtobufJSON {\n    projectIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.GetProjectConfigRequest\n */\nexport class GetProjectConfigRequest implements GrpcMessage {\n  static id = 'ondewo.qa.GetProjectConfigRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetProjectConfigRequest();\n    GetProjectConfigRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetProjectConfigRequest) {\n    _instance.projectId = _instance.projectId || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetProjectConfigRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.projectId = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetProjectConfigRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetProjectConfigRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.projectId) {\n      _writer.writeString(1, _instance.projectId);\n    }\n  }\n\n  private _projectId: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetProjectConfigRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetProjectConfigRequest.AsObject>) {\n    _value = _value || {};\n    this.projectId = _value.projectId;\n    GetProjectConfigRequest.refineValues(this);\n  }\n  get projectId(): string {\n    return this._projectId;\n  }\n  set projectId(value: string) {\n    this._projectId = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetProjectConfigRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetProjectConfigRequest.AsObject {\n    return {\n      projectId: this.projectId\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetProjectConfigRequest.AsProtobufJSON {\n    return {\n      projectId: this.projectId\n    };\n  }\n}\nexport module GetProjectConfigRequest {\n  /**\n   * Standard JavaScript object representation for GetProjectConfigRequest\n   */\n  export interface AsObject {\n    projectId: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetProjectConfigRequest\n   */\n  export interface AsProtobufJSON {\n    projectId: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.GetProjectConfigResponse\n */\nexport class GetProjectConfigResponse implements GrpcMessage {\n  static id = 'ondewo.qa.GetProjectConfigResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new GetProjectConfigResponse();\n    GetProjectConfigResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: GetProjectConfigResponse) {\n    _instance.configSerialized = _instance.configSerialized || '';\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: GetProjectConfigResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          _instance.configSerialized = _reader.readString();\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    GetProjectConfigResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: GetProjectConfigResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.configSerialized) {\n      _writer.writeString(1, _instance.configSerialized);\n    }\n  }\n\n  private _configSerialized: string;\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of GetProjectConfigResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<GetProjectConfigResponse.AsObject>) {\n    _value = _value || {};\n    this.configSerialized = _value.configSerialized;\n    GetProjectConfigResponse.refineValues(this);\n  }\n  get configSerialized(): string {\n    return this._configSerialized;\n  }\n  set configSerialized(value: string) {\n    this._configSerialized = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    GetProjectConfigResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): GetProjectConfigResponse.AsObject {\n    return {\n      configSerialized: this.configSerialized\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): GetProjectConfigResponse.AsProtobufJSON {\n    return {\n      configSerialized: this.configSerialized\n    };\n  }\n}\nexport module GetProjectConfigResponse {\n  /**\n   * Standard JavaScript object representation for GetProjectConfigResponse\n   */\n  export interface AsObject {\n    configSerialized: string;\n  }\n\n  /**\n   * Protobuf JSON representation for GetProjectConfigResponse\n   */\n  export interface AsProtobufJSON {\n    configSerialized: string;\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.UpdateDatabaseRequest\n */\nexport class UpdateDatabaseRequest implements GrpcMessage {\n  static id = 'ondewo.qa.UpdateDatabaseRequest';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateDatabaseRequest();\n    UpdateDatabaseRequest.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateDatabaseRequest) {\n    _instance.projectIds = _instance.projectIds || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateDatabaseRequest,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.projectIds = _instance.projectIds || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateDatabaseRequest.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateDatabaseRequest,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.projectIds && _instance.projectIds.length) {\n      _writer.writeRepeatedString(1, _instance.projectIds);\n    }\n  }\n\n  private _projectIds: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateDatabaseRequest to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateDatabaseRequest.AsObject>) {\n    _value = _value || {};\n    this.projectIds = (_value.projectIds || []).slice();\n    UpdateDatabaseRequest.refineValues(this);\n  }\n  get projectIds(): string[] {\n    return this._projectIds;\n  }\n  set projectIds(value: string[]) {\n    this._projectIds = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateDatabaseRequest.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateDatabaseRequest.AsObject {\n    return {\n      projectIds: (this.projectIds || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateDatabaseRequest.AsProtobufJSON {\n    return {\n      projectIds: (this.projectIds || []).slice()\n    };\n  }\n}\nexport module UpdateDatabaseRequest {\n  /**\n   * Standard JavaScript object representation for UpdateDatabaseRequest\n   */\n  export interface AsObject {\n    projectIds: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateDatabaseRequest\n   */\n  export interface AsProtobufJSON {\n    projectIds: string[];\n  }\n}\n\n/**\n * Message implementation for ondewo.qa.UpdateDatabaseResponse\n */\nexport class UpdateDatabaseResponse implements GrpcMessage {\n  static id = 'ondewo.qa.UpdateDatabaseResponse';\n\n  /**\n   * Deserialize binary data to message\n   * @param instance message instance\n   */\n  static deserializeBinary(bytes: ByteSource) {\n    const instance = new UpdateDatabaseResponse();\n    UpdateDatabaseResponse.deserializeBinaryFromReader(\n      instance,\n      new BinaryReader(bytes)\n    );\n    return instance;\n  }\n\n  /**\n   * Check all the properties and set default protobuf values if necessary\n   * @param _instance message instance\n   */\n  static refineValues(_instance: UpdateDatabaseResponse) {\n    _instance.errorMessages = _instance.errorMessages || [];\n  }\n\n  /**\n   * Deserializes / reads binary message into message instance using provided binary reader\n   * @param _instance message instance\n   * @param _reader binary reader instance\n   */\n  static deserializeBinaryFromReader(\n    _instance: UpdateDatabaseResponse,\n    _reader: BinaryReader\n  ) {\n    while (_reader.nextField()) {\n      if (_reader.isEndGroup()) break;\n\n      switch (_reader.getFieldNumber()) {\n        case 1:\n          (_instance.errorMessages = _instance.errorMessages || []).push(\n            _reader.readString()\n          );\n          break;\n        default:\n          _reader.skipField();\n      }\n    }\n\n    UpdateDatabaseResponse.refineValues(_instance);\n  }\n\n  /**\n   * Serializes a message to binary format using provided binary reader\n   * @param _instance message instance\n   * @param _writer binary writer instance\n   */\n  static serializeBinaryToWriter(\n    _instance: UpdateDatabaseResponse,\n    _writer: BinaryWriter\n  ) {\n    if (_instance.errorMessages && _instance.errorMessages.length) {\n      _writer.writeRepeatedString(1, _instance.errorMessages);\n    }\n  }\n\n  private _errorMessages: string[];\n\n  /**\n   * Message constructor. Initializes the properties and applies default Protobuf values if necessary\n   * @param _value initial values object or instance of UpdateDatabaseResponse to deeply clone from\n   */\n  constructor(_value?: RecursivePartial<UpdateDatabaseResponse.AsObject>) {\n    _value = _value || {};\n    this.errorMessages = (_value.errorMessages || []).slice();\n    UpdateDatabaseResponse.refineValues(this);\n  }\n  get errorMessages(): string[] {\n    return this._errorMessages;\n  }\n  set errorMessages(value: string[]) {\n    this._errorMessages = value;\n  }\n\n  /**\n   * Serialize message to binary data\n   * @param instance message instance\n   */\n  serializeBinary() {\n    const writer = new BinaryWriter();\n    UpdateDatabaseResponse.serializeBinaryToWriter(this, writer);\n    return writer.getResultBuffer();\n  }\n\n  /**\n   * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)\n   */\n  toObject(): UpdateDatabaseResponse.AsObject {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n\n  /**\n   * Convenience method to support JSON.stringify(message), replicates the structure of toObject()\n   */\n  toJSON() {\n    return this.toObject();\n  }\n\n  /**\n   * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json\n   * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.\n   * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required\n   */\n  toProtobufJSON(\n    // @ts-ignore\n    options?: ToProtobufJSONOptions\n  ): UpdateDatabaseResponse.AsProtobufJSON {\n    return {\n      errorMessages: (this.errorMessages || []).slice()\n    };\n  }\n}\nexport module UpdateDatabaseResponse {\n  /**\n   * Standard JavaScript object representation for UpdateDatabaseResponse\n   */\n  export interface AsObject {\n    errorMessages: string[];\n  }\n\n  /**\n   * Protobuf JSON representation for UpdateDatabaseResponse\n   */\n  export interface AsProtobufJSON {\n    errorMessages: string[];\n  }\n}\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { InjectionToken } from '@angular/core';\n\n/**\n * Specific GrpcClientSettings for Qa.\n * Use it only if your default settings are not set or the service requires other settings.\n */\nexport const GRPC_QA_CLIENT_SETTINGS = new InjectionToken<any>(\n  'GRPC_QA_CLIENT_SETTINGS'\n);\n","/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n//\n// THIS IS A GENERATED FILE\n// DO NOT MODIFY IT! YOUR CHANGES WILL BE LOST\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport {\n  GrpcCallType,\n  GrpcClient,\n  GrpcClientFactory,\n  GrpcEvent,\n  GrpcMetadata\n} from '@ngx-grpc/common';\nimport {\n  GRPC_CLIENT_FACTORY,\n  GrpcHandler,\n  takeMessages,\n  throwStatusErrors\n} from '@ngx-grpc/core';\nimport { Observable } from 'rxjs';\nimport * as thisProto from './qa.pb';\nimport * as googleApi000 from '../../google/api/http.pb';\nimport * as googleProtobuf001 from '@ngx-grpc/well-known-types';\nimport * as googleApi002 from '../../google/api/annotations.pb';\nimport * as googleProtobuf003 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf004 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf005 from '@ngx-grpc/well-known-types';\nimport * as googleProtobuf006 from '@ngx-grpc/well-known-types';\nimport * as googleRpc007 from '../../google/rpc/status.pb';\nimport * as googleType008 from '../../google/type/latlng.pb';\nimport * as ondewoNlu009 from '../../ondewo/nlu/ccai-project.pb';\nimport * as ondewoNlu010 from '../../ondewo/nlu/common.pb';\nimport * as ondewoNlu011 from '../../ondewo/nlu/context.pb';\nimport * as ondewoNlu012 from '../../ondewo/nlu/entity-type.pb';\nimport * as ondewoNlu013 from '../../ondewo/nlu/intent.pb';\nimport * as ondewoNlu014 from '../../ondewo/nlu/llm-evaluation.pb';\nimport * as ondewoNlu015 from '../../ondewo/nlu/session.pb';\nimport { GRPC_QA_CLIENT_SETTINGS } from './qa.pbconf';\n/**\n * Service client implementation for ondewo.qa.QA\n */\n@Injectable({ providedIn: 'any' })\nexport class QAClient {\n  private client: GrpcClient<any>;\n\n  /**\n   * Raw RPC implementation for each service client method.\n   * The raw methods provide more control on the incoming data and events. E.g. they can be useful to read status `OK` metadata.\n   * Attention: these methods do not throw errors when non-zero status codes are received.\n   */\n  $raw = {\n    /**\n     * Unary call: /ondewo.qa.QA/GetAnswer\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetAnswerResponse>>\n     */\n    getAnswer: (\n      requestData: thisProto.GetAnswerRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetAnswerResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.qa.QA/GetAnswer',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetAnswerRequest,\n        responseClass: thisProto.GetAnswerResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.qa.QA/RunScraper\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RunScraperResponse>>\n     */\n    runScraper: (\n      requestData: thisProto.RunScraperRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RunScraperResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.qa.QA/RunScraper',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.RunScraperRequest,\n        responseClass: thisProto.RunScraperResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.qa.QA/UpdateDatabase\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.UpdateDatabaseResponse>>\n     */\n    updateDatabase: (\n      requestData: thisProto.UpdateDatabaseRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.UpdateDatabaseResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.qa.QA/UpdateDatabase',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.UpdateDatabaseRequest,\n        responseClass: thisProto.UpdateDatabaseResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.qa.QA/RunTraining\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.RunTrainingResponse>>\n     */\n    runTraining: (\n      requestData: googleProtobuf003.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.RunTrainingResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.qa.QA/RunTraining',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf003.Empty,\n        responseClass: thisProto.RunTrainingResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.qa.QA/GetServerState\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetServerStateResponse>>\n     */\n    getServerState: (\n      requestData: googleProtobuf003.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetServerStateResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.qa.QA/GetServerState',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf003.Empty,\n        responseClass: thisProto.GetServerStateResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.qa.QA/ListProjectIds\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.ListProjectIdsResponse>>\n     */\n    listProjectIds: (\n      requestData: googleProtobuf003.Empty,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.ListProjectIdsResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.qa.QA/ListProjectIds',\n        requestData,\n        requestMetadata,\n        requestClass: googleProtobuf003.Empty,\n        responseClass: thisProto.ListProjectIdsResponse\n      });\n    },\n    /**\n     * Unary call: /ondewo.qa.QA/GetProjectConfig\n     *\n     * @param requestMessage Request message\n     * @param requestMetadata Request metadata\n     * @returns Observable<GrpcEvent<thisProto.GetProjectConfigResponse>>\n     */\n    getProjectConfig: (\n      requestData: thisProto.GetProjectConfigRequest,\n      requestMetadata = new GrpcMetadata()\n    ): Observable<GrpcEvent<thisProto.GetProjectConfigResponse>> => {\n      return this.handler.handle({\n        type: GrpcCallType.unary,\n        client: this.client,\n        path: '/ondewo.qa.QA/GetProjectConfig',\n        requestData,\n        requestMetadata,\n        requestClass: thisProto.GetProjectConfigRequest,\n        responseClass: thisProto.GetProjectConfigResponse\n      });\n    }\n  };\n\n  constructor(\n    @Optional() @Inject(GRPC_QA_CLIENT_SETTINGS) settings: any,\n    @Inject(GRPC_CLIENT_FACTORY) clientFactory: GrpcClientFactory<any>,\n    private handler: GrpcHandler\n  ) {\n    this.client = clientFactory.createClient('ondewo.qa.QA', settings);\n  }\n\n  /**\n   * Unary call @/ondewo.qa.QA/GetAnswer\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetAnswerResponse>\n   */\n  getAnswer(\n    requestData: thisProto.GetAnswerRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetAnswerResponse> {\n    return this.$raw\n      .getAnswer(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.qa.QA/RunScraper\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RunScraperResponse>\n   */\n  runScraper(\n    requestData: thisProto.RunScraperRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RunScraperResponse> {\n    return this.$raw\n      .runScraper(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.qa.QA/UpdateDatabase\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.UpdateDatabaseResponse>\n   */\n  updateDatabase(\n    requestData: thisProto.UpdateDatabaseRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.UpdateDatabaseResponse> {\n    return this.$raw\n      .updateDatabase(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.qa.QA/RunTraining\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.RunTrainingResponse>\n   */\n  runTraining(\n    requestData: googleProtobuf003.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.RunTrainingResponse> {\n    return this.$raw\n      .runTraining(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.qa.QA/GetServerState\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetServerStateResponse>\n   */\n  getServerState(\n    requestData: googleProtobuf003.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetServerStateResponse> {\n    return this.$raw\n      .getServerState(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.qa.QA/ListProjectIds\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.ListProjectIdsResponse>\n   */\n  listProjectIds(\n    requestData: googleProtobuf003.Empty,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.ListProjectIdsResponse> {\n    return this.$raw\n      .listProjectIds(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n\n  /**\n   * Unary call @/ondewo.qa.QA/GetProjectConfig\n   *\n   * @param requestMessage Request message\n   * @param requestMetadata Request metadata\n   * @returns Observable<thisProto.GetProjectConfigResponse>\n   */\n  getProjectConfig(\n    requestData: thisProto.GetProjectConfigRequest,\n    requestMetadata = new GrpcMetadata()\n  ): Observable<thisProto.GetProjectConfigResponse> {\n    return this.$raw\n      .getProjectConfig(requestData, requestMetadata)\n      .pipe(throwStatusErrors(), takeMessages());\n  }\n}\n","import { InjectionToken } from \"@angular/core\";\nimport { Observable } from \"rxjs\";\n\n/**\n * The set of shapes a {@link TokenProvider} is allowed to return for the current\n * access token.\n *\n * - `string` — a ready, synchronous token.\n * - `null` — there is no token right now (the user is unauthenticated). The\n *   request must be sent unchanged, never with an empty `Bearer` header.\n * - `Promise<...>` / `Observable<...>` — an asynchronous source (e.g.\n *   `keycloak.updateToken()` from `keycloak-js`, or `KeycloakService` from\n *   `keycloak-angular`) that resolves to a token or `null`.\n */\nexport type TokenResult = string | null | Promise<string | null> | Observable<string | null>;\n\n/**\n * Contract the consuming application implements to feed the current Keycloak\n * access token into this library's auth interceptors.\n *\n * Two kinds of implementation are expected:\n *\n * - **Interactive users** — the host application owns the OIDC flow (an\n *   authorization-code login through `keycloak-js` / `keycloak-angular`, the\n *   only browser-safe option once 2FA is enforced) and implements this interface\n *   to hand the current token over. Nothing is acquired or stored here.\n * - **Technical users** — the built-in `KeycloakTokenProvider` performs the\n *   Resource Owner Password Credentials grant itself and keeps the token fresh\n *   in the background, so consumers do not re-implement token refresh. It is\n *   meant ONLY for service accounts that have 2FA disabled; never point it at a\n *   human user's credentials.\n *\n * No client secret is ever used: both paths rely on a public Keycloak client.\n *\n * Implementations should return the freshest token they have. Returning a\n * `Promise`/`Observable` lets the implementation refresh a soon-to-expire token\n * before the request is sent (e.g. `keycloak.updateToken(30)`).\n */\nexport interface TokenProvider {\n  /**\n   * Return the current access token, or `null` when the user is not\n   * authenticated. May be synchronous or asynchronous.\n   *\n   * @returns the current token as a `string`, `null`, or a `Promise` /\n   *   `Observable` resolving to either.\n   */\n  getToken(): TokenResult;\n}\n\n/**\n * DI token under which the consuming application registers its\n * {@link TokenProvider} implementation.\n *\n * Example:\n *\n * ```ts\n * providers: [\n *   { provide: TOKEN_PROVIDER, useExisting: KeycloakTokenProvider },\n * ]\n * ```\n */\nexport const TOKEN_PROVIDER: InjectionToken<TokenProvider> = new InjectionToken<TokenProvider>(\"ONDEWO_NLU_TOKEN_PROVIDER\");\n","import { HttpClient, HttpErrorResponse, HttpHeaders } from \"@angular/common/http\";\nimport { inject, Injectable, InjectionToken, OnDestroy } from \"@angular/core\";\nimport { catchError, firstValueFrom, Observable, throwError } from \"rxjs\";\nimport { TokenProvider, TokenResult } from \"./token-provider\";\n\n/**\n * Seconds of head-room subtracted from a token's `expires_in` so the background\n * refresh fires *before* the access token actually lapses (covers clock skew and\n * the round-trip to Keycloak). Mirrors the node SDK's `REFRESH_SKEW_IN_S` and the\n * python SDK's `_EXPIRY_LEEWAY_S`.\n */\nexport const REFRESH_SKEW_IN_S: number = 30;\n\n/**\n * Lower bound (in seconds) for the scheduled refresh delay so a tiny / zero\n * `expires_in` cannot spin a hot loop. Mirrors the node SDK's\n * `MIN_REFRESH_DELAY_IN_S`.\n */\nexport const MIN_REFRESH_DELAY_IN_S: number = 1;\n\n/** Options accepted by {@link KeycloakTokenProvider.ensureFreshToken}. */\nexport interface EnsureFreshTokenOptions {\n  /**\n   * Renew unconditionally, even when the cached access token still looks valid.\n   *\n   * Set this after the server has rejected a request with `UNAUTHENTICATED`: the\n   * token may have been revoked, or the local clock may be ahead of Keycloak's,\n   * in which case the cached expiry cannot be trusted.\n   */\n  force?: boolean;\n}\n\n/**\n * Runtime configuration for {@link KeycloakTokenProvider}.\n *\n * Authentication is performed against the *public* SDK Keycloak client (no\n * `client_secret` is ever sent). Supply **either** a long-lived offline /\n * refresh token (`offlineToken`) **or** a username + password pair for a\n * one-time Resource-Owner-Password-Credentials (ROPC) login — the technical\n * user must be 2FA-exempt for the ROPC grant to succeed.\n */\nexport interface KeycloakTokenProviderConfig {\n  /** Base Keycloak URL, e.g. `https://auth.example.com/auth` (trailing slash tolerated). */\n  keycloakUrl: string;\n  /** Realm name, e.g. `ondewo-ccai-platform`. */\n  realm: string;\n  /** Public SDK client id, e.g. `ondewo-nlu-cai-sdk-public` (no `client_secret`). */\n  clientId: string;\n  /**\n   * A long-lived offline / refresh token. When set, the provider skips the\n   * password login and bootstraps directly from this token. Takes precedence\n   * over `username` / `password`.\n   */\n  offlineToken?: string;\n  /** Technical-user email / username for the ROPC grant (ignored when `offlineToken` is set). */\n  username?: string;\n  /** Technical-user password for the ROPC grant (ignored when `offlineToken` is set). */\n  password?: string;\n  /**\n   * Optional cap (seconds) on how long the background auto-refresh runs after the\n   * first login. Once it elapses the loop stops and the access token is allowed\n   * to lapse (a re-login is then required). Omit to keep refreshing until the\n   * offline session itself expires.\n   */\n  tokenExpirationInS?: number;\n  /**\n   * Whether to verify the Keycloak server's TLS certificate on the\n   * token-endpoint call. Defaults to `true` (secure).\n   *\n   * NO-OP IN THIS ANGULAR/BROWSER CLIENT. The token request is made with\n   * Angular's `HttpClient` (an XHR/fetch call), and in a browser the TLS\n   * handshake is owned by the user agent — there is no `https.Agent`, undici\n   * dispatcher, or `rejectUnauthorized` hook that app code can reach, and\n   * `HttpClient`'s request options expose no certificate-verification slot. The\n   * value is therefore stored on the provider for cross-SDK config parity with\n   * the Python/Node.js clients (where it does disable TLS verification) but has\n   * no effect on the outgoing request here. For a self-signed Keycloak/Envoy\n   * endpoint, the certificate must be trusted at the browser/OS level instead.\n   */\n  keycloakVerifySsl?: boolean;\n}\n\n/**\n * DI token under which the consuming application supplies the\n * {@link KeycloakTokenProviderConfig} for {@link KeycloakTokenProvider}.\n *\n * Example:\n *\n * ```ts\n * providers: [\n *   {\n *     provide: KEYCLOAK_TOKEN_PROVIDER_CONFIG,\n *     useValue: {\n *       keycloakUrl: \"https://auth.example.com/auth\",\n *       realm: \"ondewo-ccai-platform\",\n *       clientId: \"ondewo-nlu-cai-sdk-public\",\n *       username: \"technical-user@example.com\",\n *       password: \"…\",\n *     } satisfies KeycloakTokenProviderConfig,\n *   },\n *   provideOndewoNluAuth(KeycloakTokenProvider),\n * ]\n * ```\n */\nexport const KEYCLOAK_TOKEN_PROVIDER_CONFIG: InjectionToken<KeycloakTokenProviderConfig> =\n  new InjectionToken<KeycloakTokenProviderConfig>(\"ONDEWO_NLU_KEYCLOAK_TOKEN_PROVIDER_CONFIG\");\n\n/** Raised on any token-endpoint failure or unusable token-endpoint response. */\nexport class KeycloakAuthenticationError extends Error {\n  /**\n   * @param message a human-readable description of the authentication failure.\n   */\n  public constructor(message: string) {\n    super(message);\n    this.name = \"KeycloakAuthenticationError\";\n  }\n}\n\n/** The subset of a Keycloak token-endpoint response this provider consumes. */\ninterface KeycloakTokenResponse {\n  /** The short-lived bearer access token. */\n  access_token?: string;\n  /** The (optionally rotated) offline / refresh token. */\n  refresh_token?: string;\n  /** The access-token lifetime in seconds, as reported by Keycloak. */\n  expires_in?: number;\n}\n\n/**\n * Concrete, ready-to-use {@link TokenProvider} that logs in once against the\n * public Keycloak SDK client and keeps the access token fresh in the background.\n *\n * Flow (modelled on the node `OfflineTokenProvider` and python\n * `KeycloakTokenProvider`):\n *\n * 1. **Login once** — either an offline / refresh-token grant (when\n *    `offlineToken` is configured) or a `grant_type=password` ROPC login with\n *    `scope=offline_access`. Both yield a short-lived `access_token` and a\n *    long-lived `refresh_token`.\n * 2. **Refresh ahead of expiry** — a single background timer is armed for\n *    `expires_in − {@link REFRESH_SKEW_IN_S}` seconds (floored at\n *    {@link MIN_REFRESH_DELAY_IN_S}, clamped to the optional\n *    `tokenExpirationInS` deadline) and exchanges the refresh token for a new\n *    access token, then re-arms itself.\n * 3. **Serve the current token** — {@link getToken} returns the freshest access\n *    token synchronously (`null` before the first login completes / after the\n *    bounded loop has lapsed), so the auth interceptors never block on the\n *    network.\n *\n * Register it through `provideOndewoNluAuth` after supplying a\n * {@link KEYCLOAK_TOKEN_PROVIDER_CONFIG}. The first login is kicked off lazily on\n * construction; call {@link whenReady} to await it explicitly (e.g. in an\n * `APP_INITIALIZER`).\n */\n@Injectable({ providedIn: \"root\" })\nexport class KeycloakTokenProvider implements TokenProvider, OnDestroy {\n  /** Angular HTTP client used for the token-endpoint calls. */\n  private readonly http: HttpClient = inject(HttpClient);\n  /**\n   * The resolved runtime configuration, or `null` until {@link configure} supplies\n   * one. Injected optionally so an application that only learns its credentials at\n   * runtime (e.g. an embedded widget reading them from its URL) can register the\n   * provider at bootstrap and configure it later.\n   */\n  private config: KeycloakTokenProviderConfig | null = inject(KEYCLOAK_TOKEN_PROVIDER_CONFIG, {\n    optional: true\n  });\n  /** Pre-computed OIDC token-endpoint URL for the configured realm, or `null` while unconfigured. */\n  private tokenEndpoint: string | null = null;\n\n  /**\n   * Whether TLS-certificate verification is requested for the token-endpoint\n   * call. Defaults to `true`. Stored for cross-SDK config parity only — it is a\n   * NO-OP in this browser client (the browser owns the TLS handshake), so the\n   * outgoing {@link postTokenRequest} call is unaffected by its value. See\n   * {@link KeycloakTokenProviderConfig.keycloakVerifySsl}.\n   */\n  private verifySsl: boolean = true;\n\n  /** The current access token, or `null` before login / after the bounded loop lapses. */\n  private accessToken: string | null = null;\n  /** The current offline / refresh token, or `null` before login. */\n  private refreshToken: string | null = null;\n  /** Handle of the armed refresh timer, or `null` when no refresh is scheduled. */\n  private timer: ReturnType<typeof setTimeout> | null = null;\n  /** Whether {@link ngOnDestroy} has run; suppresses any further (re-)scheduling. */\n  private stopped: boolean = false;\n  /** Absolute epoch-ms deadline for the bounded loop, or `null` when unbounded. */\n  private deadlineInMs: number | null = null;\n  /** Epoch-ms at which the current access token lapses, or `null` when unknown. */\n  private accessTokenExpiresAtInMs: number | null = null;\n  /** In-flight {@link ensureFreshToken} renewal, shared so concurrent callers issue one grant. */\n  private inFlightRenewal: Promise<void> | null = null;\n  /**\n   * Promise settled by the *first* login attempt — the one started by the constructor when a\n   * config was injected, otherwise the one started by the first {@link configure} call. It\n   * resolves when that login succeeds and rejects when it fails; later attempts leave it as-is\n   * (a settled promise cannot be re-settled), so callers tracking a re-{@link configure} must\n   * await the promise `configure()` returns rather than {@link whenReady}.\n   */\n  private readonly ready: Promise<void>;\n  /** Settles {@link ready} on the first successful login. */\n  private resolveReady!: () => void;\n  /** Settles {@link ready} when the first login fails. */\n  private rejectReady!: (reason: unknown) => void;\n\n  /**\n   * Build the provider and kick off the first login in the background.\n   *\n   * No network call is awaited here; {@link getToken} returns `null` until the\n   * login resolves. Await {@link whenReady} to block until the first token is\n   * available.\n   */\n  public constructor() {\n    this.ready = new Promise<void>((resolve: () => void, reject: (reason: unknown) => void): void => {\n      this.resolveReady = resolve;\n      this.rejectReady = reject;\n    });\n    // Nothing is obliged to call whenReady(), so mark `ready` as observed here: a rejected login\n    // that no one awaits would otherwise surface as an unhandled promise rejection (a console\n    // error in the browser, a process warning under node). whenReady() callers still see it.\n    void this.ready.catch((): void => undefined);\n    if (this.config === null) {\n      // No config at construction: stay idle until configure() supplies credentials.\n      return;\n    }\n    this.applyConfig(this.config);\n    void this.bootstrap().then(\n      (): void => this.resolveReady(),\n      (error: unknown): void => this.rejectReady(error)\n    );\n  }\n\n  /**\n   * Supply (or replace) the runtime configuration and log in with it.\n   *\n   * This is the entry point for credentials that are only known after the\n   * application has bootstrapped — an embedded widget that reads a technical\n   * user and secret from its own URL, for example. Any previously scheduled\n   * refresh is cancelled and the cached tokens are discarded before the new\n   * login runs, so a provider can be re-pointed at a different technical user\n   * without being re-created.\n   *\n   * When this is the provider's first login attempt it also settles {@link whenReady}; a later\n   * re-configure does not, so track those through the promise returned here.\n   *\n   * @param config the configuration to adopt, replacing any earlier one.\n   * @returns a promise that resolves once the login with `config` has completed.\n   * @throws KeycloakAuthenticationError when the login fails (the provider is\n   *   left unauthenticated; {@link getToken} returns `null`).\n   */\n  public async configure(config: KeycloakTokenProviderConfig): Promise<void> {\n    this.clearTimer();\n    this.stopped = false;\n    this.accessToken = null;\n    this.refreshToken = null;\n    this.accessTokenExpiresAtInMs = null;\n    this.deadlineInMs = null;\n    this.inFlightRenewal = null;\n    this.applyConfig(config);\n    try {\n      await this.bootstrap();\n    } catch (error: unknown) {\n      // A provider constructed without a config has its first login here, so `ready` is still\n      // pending; reject it rather than leaving every whenReady() awaiter hanging forever.\n      this.rejectReady(error);\n      throw error;\n    }\n    this.resolveReady();\n  }\n\n  /**\n   * Return an access token that is safe to send right now, renewing first when\n   * the cached one has lapsed (or is within {@link REFRESH_SKEW_IN_S} of doing so).\n   *\n   * Concurrent calls share a single renewal, so a burst of requests arriving on\n   * an expired token issues one grant rather than one per request.\n   *\n   * Two call sites are intended:\n   *\n   * - **pre-flight**, before attaching the bearer to an outgoing request, so a\n   *   token that is already dead is never sent;\n   * - **recovery**, with `{ force: true }`, after the server answered\n   *   `UNAUTHENTICATED`, so a revoked token (or one the local clock still\n   *   believes in) is replaced and the request can be replayed once.\n   *\n   * @param options renewal options; `force` renews even when the cached token\n   *   still looks valid.\n   * @returns the usable access token, or `null` when the provider has no config\n   *   yet (nothing to renew with).\n   * @throws KeycloakAuthenticationError when the renewal — and the full re-login\n   *   it falls back to — both fail.\n   */\n  public async ensureFreshToken(options: EnsureFreshTokenOptions = {}): Promise<string | null> {\n    const force: boolean = options.force ?? false;\n    if (this.config === null) {\n      return null;\n    }\n    if (!force && this.hasUsableAccessToken()) {\n      return this.accessToken;\n    }\n    if (this.inFlightRenewal === null) {\n      this.inFlightRenewal = this.renew().finally((): void => {\n        this.inFlightRenewal = null;\n      });\n    }\n    await this.inFlightRenewal;\n    return this.accessToken;\n  }\n\n  /**\n   * Return the current access token for the auth interceptors.\n   *\n   * @returns the freshest access token, or `null` before the first login\n   *   completes / after the bounded refresh window has elapsed.\n   */\n  public getToken(): TokenResult {\n    return this.accessToken;\n  }\n\n  /**\n   * The resolved TLS-verification setting from\n   * {@link KeycloakTokenProviderConfig.keycloakVerifySsl} (defaults to `true`).\n   *\n   * Exposed for cross-SDK config parity and introspection only. It is a NO-OP in\n   * this browser client — the browser owns the TLS handshake, so the value never\n   * reaches {@link postTokenRequest} and does not change the outgoing request.\n   *\n   * @returns `true` when TLS verification is requested (the default), `false`\n   *   when the config explicitly opted out (still inert here).\n   */\n  public get keycloakVerifySsl(): boolean {\n    return this.verifySsl;\n  }\n\n  /**\n   * Await the first login so callers can guarantee a token is present before\n   * issuing requests (e.g. from an `APP_INITIALIZER`).\n   *\n   * The first login is the constructor's when a config was injected, otherwise the\n   * first {@link configure} call's. Subsequent re-configures do not re-arm this\n   * promise — await the one `configure()` returns for those.\n   *\n   * @returns a promise that resolves once the first access token is stored, or\n   *   rejects with the {@link KeycloakAuthenticationError} from a failed login.\n   */\n  public whenReady(): Promise<void> {\n    return this.ready;\n  }\n\n  /** Stop the background refresh loop. Invoked automatically when the root injector is destroyed. */\n  public ngOnDestroy(): void {\n    this.stopped = true;\n    this.clearTimer();\n  }\n\n  /** Cancel any armed refresh timer, leaving {@link stopped} untouched. */\n  private clearTimer(): void {\n    if (this.timer !== null) {\n      clearTimeout(this.timer);\n      this.timer = null;\n    }\n  }\n\n  /**\n   * Adopt `config` as the active configuration and recompute everything derived\n   * from it.\n   *\n   * @param config the configuration to adopt.\n   */\n  private applyConfig(config: KeycloakTokenProviderConfig): void {\n    this.config = config;\n    // Stored for cross-SDK config parity; a no-op on the browser transport (see field doc).\n    this.verifySsl = config.keycloakVerifySsl ?? true;\n    const base: string = config.keycloakUrl.replace(/\\/+$/, \"\");\n    this.tokenEndpoint = `${base}/realms/${encodeURIComponent(config.realm)}/protocol/openid-connect/token`;\n  }\n\n  /**\n   * Whether the cached access token exists and is not within\n   * {@link REFRESH_SKEW_IN_S} of lapsing.\n   *\n   * @returns `true` when the cached token can still be sent as-is.\n   */\n  private hasUsableAccessToken(): boolean {\n    if (this.accessToken === null) {\n      return false;\n    }\n    if (this.accessTokenExpiresAtInMs === null) {\n      return true;\n    }\n    return Date.now() < this.accessTokenExpiresAtInMs - (REFRESH_SKEW_IN_S * 1000);\n  }\n\n  /**\n   * Renew the access token on demand: refresh-token grant when one is held,\n   * falling back to a full re-login when no refresh token is available or the\n   * refresh itself is rejected (a revoked or expired offline session).\n   *\n   * @returns a promise that resolves once a new token is stored, or rejects with\n   *   the {@link KeycloakAuthenticationError} from the failed re-login.\n   */\n  private async renew(): Promise<void> {\n    if (this.refreshToken !== null) {\n      try {\n        await this.refresh();\n        return;\n      } catch {\n        // The refresh token is unusable (revoked / expired); fall through to a\n        // full re-login with the configured credentials.\n        this.refreshToken = null;\n      }\n    }\n    await this.bootstrap();\n  }\n\n  /**\n   * Perform the one-time login (offline-token or ROPC password grant), store the\n   * tokens and arm the first refresh.\n   *\n   * @returns a promise that resolves once the first token is stored.\n   * @throws KeycloakAuthenticationError when neither an offline token nor a\n   *   username + password pair is configured, the token endpoint fails, or the\n   *   response carries no `access_token` / `refresh_token`.\n   */\n  private async bootstrap(): Promise<void> {\n    // Every call site (the constructor, configure(), and renew() via ensureFreshToken())\n    // establishes a config before reaching here, so this is safe.\n    // The assertion is REQUIRED by the strict jest/ts-jest config; the release eslint runs\n    // under a non-strict tsconfig (no strictNullChecks) where it looks redundant.\n    // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n    const config: KeycloakTokenProviderConfig = this.config as KeycloakTokenProviderConfig;\n    let params: Record<string, string>;\n    if (config.offlineToken !== undefined && config.offlineToken.length > 0) {\n      params = {\n        grant_type: \"refresh_token\",\n        client_id: config.clientId,\n        refresh_token: config.offlineToken\n      };\n    } else if (\n      config.username !== undefined &&\n      config.username.length > 0 &&\n      config.password !== undefined &&\n      config.password.length > 0\n    ) {\n      params = {\n        grant_type: \"password\",\n        client_id: config.clientId,\n        username: config.username,\n        password: config.password,\n        scope: \"offline_access\"\n      };\n    } else {\n      throw new KeycloakAuthenticationError(\n        \"KeycloakTokenProvider requires either an offlineToken or a username + password pair\"\n      );\n    }\n\n    const response: KeycloakTokenResponse = await this.postTokenRequest(params, \"login\");\n    this.storeTokens(response);\n    if (this.refreshToken === null) {\n      throw new KeycloakAuthenticationError(\n        \"Keycloak token response did not contain a refresh_token; the SDK client must have \" +\n          \"directAccessGrants + the offline_access scope (ondewo-nlu-cai-sdk-public)\"\n      );\n    }\n\n    if (config.tokenExpirationInS !== undefined) {\n      this.deadlineInMs = Date.now() + (config.tokenExpirationInS * 1000);\n    }\n    this.scheduleRefresh(response.expires_in);\n  }\n\n  /**\n   * Exchange the current refresh token for a fresh access token and re-arm the\n   * next refresh. No-ops once the bounded deadline has elapsed (in which case it\n   * stops the loop).\n   *\n   * @returns a promise that resolves once the token is refreshed and the next\n   *   refresh is armed (or once the loop has been stopped).\n   */\n  private async refresh(): Promise<void> {\n    // Re-check the bounded deadline at fire time: once elapsed the loop stops with\n    // no further renewal -> the access token lapses -> a re-login is required.\n    if (this.deadlineInMs !== null && Date.now() >= this.deadlineInMs) {\n      this.ngOnDestroy();\n      return;\n    }\n\n    const response: KeycloakTokenResponse = await this.postTokenRequest(\n      {\n        grant_type: \"refresh_token\",\n        // configure()/bootstrap() always set config before any refresh can be armed or requested.\n        // Assertion required by the strict jest tsconfig; redundant under the release one.\n        // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n        client_id: (this.config as KeycloakTokenProviderConfig).clientId,\n        // The refresh timer is only armed after bootstrap() proves refreshToken non-null\n        // (storeTokens preserves it), so this is safe. The assertion is REQUIRED by the\n        // strict jest/ts-jest config (refreshToken is `string | null`); the release eslint\n        // runs under a non-strict tsconfig (no strictNullChecks) where it looks redundant.\n        // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n        refresh_token: this.refreshToken as string\n      },\n      \"refresh\"\n    );\n    this.storeTokens(response);\n    this.scheduleRefresh(response.expires_in);\n  }\n\n  /**\n   * Arm a single timer for the next refresh, clamped to the optional bounded\n   * deadline. The delay is `expiresInRaw − {@link REFRESH_SKEW_IN_S}`, floored at\n   * {@link MIN_REFRESH_DELAY_IN_S}, then clamped to the time remaining before the\n   * deadline. Stops silently once the deadline has elapsed.\n   *\n   * @param expiresInRaw the `expires_in` (seconds) from the latest token\n   *   response; a missing or non-positive value falls back to\n   *   {@link MIN_REFRESH_DELAY_IN_S}.\n   */\n  private scheduleRefresh(expiresInRaw: number | undefined): void {\n    // An on-demand ensureFreshToken() renewal can land while the previous timer is\n    // still armed; drop it so only one refresh is ever scheduled.\n    this.clearTimer();\n    if (this.stopped) {\n      return;\n    }\n    let expiresInS: number = MIN_REFRESH_DELAY_IN_S;\n    if (expiresInRaw !== undefined && expiresInRaw > 0) {\n      expiresInS = expiresInRaw;\n    }\n    let delayInS: number = Math.max(expiresInS - REFRESH_SKEW_IN_S, MIN_REFRESH_DELAY_IN_S);\n\n    if (this.deadlineInMs !== null) {\n      const remainingInMs: number = this.deadlineInMs - Date.now();\n      if (remainingInMs <= 0) {\n        this.ngOnDestroy();\n        return;\n      }\n      delayInS = Math.min(delayInS, remainingInMs / 1000);\n    }\n\n    this.timer = setTimeout((): void => {\n      void this.refresh().catch((): void => {\n        // Swallow a transient background-refresh failure: the next interceptor read\n        // gets the stale (possibly expired) token and the server replies\n        // UNAUTHENTICATED, prompting the consumer to re-login.\n      });\n    }, delayInS * 1000);\n  }\n\n  /**\n   * POST an `application/x-www-form-urlencoded` body to the token endpoint and\n   * return the parsed JSON.\n   *\n   * @param params form fields to URL-encode into the request body.\n   * @param action human-readable action name (`\"login\"` / `\"refresh\"`) for error messages.\n   * @returns the parsed {@link KeycloakTokenResponse}.\n   * @throws KeycloakAuthenticationError on a non-2xx response.\n   */\n  private async postTokenRequest(\n    params: Record<string, string>,\n    action: string\n  ): Promise<KeycloakTokenResponse> {\n    const body: string = new URLSearchParams(params).toString();\n    const headers: HttpHeaders = new HttpHeaders({\n      \"Content-Type\": \"application/x-www-form-urlencoded\",\n      Accept: \"application/json\"\n    });\n\n    const request$: Observable<KeycloakTokenResponse> = this.http\n      // tokenEndpoint is set by applyConfig() before any token request can be issued.\n      // Assertion required by the strict jest tsconfig; redundant under the release one.\n      // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n      .post<KeycloakTokenResponse>(this.tokenEndpoint as string, body, { headers })\n      .pipe(\n        catchError((error: HttpErrorResponse): Observable<never> => {\n          return throwError(\n            (): KeycloakAuthenticationError =>\n              new KeycloakAuthenticationError(\n                `Keycloak token ${action} failed with status ${error.status}: ${error.message}`\n              )\n          );\n        })\n      );\n    return firstValueFrom(request$);\n  }\n\n  /**\n   * Store the access token, refresh token and computed expiry from a token\n   * response.\n   *\n   * @param response the parsed token-endpoint response.\n   * @throws KeycloakAuthenticationError if the response carries no `access_token`.\n   */\n  private storeTokens(response: KeycloakTokenResponse): void {\n    if (response.access_token === undefined || response.access_token.length === 0) {\n      throw new KeycloakAuthenticationError(\"Keycloak token response did not contain an access_token\");\n    }\n    this.accessToken = response.access_token;\n    // Track the lapse point so ensureFreshToken() can answer without a network call.\n    // Keycloak omits expires_in only in degenerate responses; treat that as unknown.\n    if (response.expires_in !== undefined && response.expires_in > 0) {\n      this.accessTokenExpiresAtInMs = Date.now() + (response.expires_in * 1000);\n    } else {\n      this.accessTokenExpiresAtInMs = null;\n    }\n    // Keycloak may rotate the refresh token; keep the previous one when the\n    // response omits it so a same-token refresh does not blank out the offline token.\n    if (response.refresh_token !== undefined && response.refresh_token.length > 0) {\n      this.refreshToken = response.refresh_token;\n    }\n  }\n}\n","import { from, isObservable, Observable, Subscriber, Subscription } from \"rxjs\";\nimport { TokenResult } from \"./token-provider\";\n\n/**\n * The HTTP / gRPC header under which the bearer credential is attached.\n *\n * Spelled in the canonical `Authorization` form: HTTP header and gRPC-web\n * metadata keys are case-insensitive, and the HTTP/2 transport lower-cases\n * header names on the wire regardless, so the canonical capitalization is the\n * safe, portable choice to carry in source.\n */\nexport const AUTHORIZATION_HEADER: string = \"Authorization\";\n\n/** The credential scheme prefix prepended to the raw access token. */\nexport const BEARER_PREFIX: string = \"Bearer \";\n\n/**\n * Normalize the value returned by a `TokenProvider.getToken()` call — which may\n * be a `string`, `null`, a `Promise` or an `Observable` — into an\n * `Observable<string | null>` that mirrors the source, normalizing every value\n * it emits.\n *\n * A `string`, `null` or `Promise` source is wrapped with `from` and therefore\n * emits exactly once before completing. An `Observable` source is subscribed\n * as-is: *every* `next` is forwarded (normalized), and its `error` / `complete`\n * pass through unchanged — a provider that re-emits on each token refresh\n * therefore yields a multi-emission observable here too. Both auth interceptors\n * `switchMap` over it (through {@link resolveBearerValue}), so a later emission\n * supersedes the request issued for the previous one.\n *\n * A non-empty token is returned trimmed; `null`, `undefined`, an empty string\n * and a whitespace-only string are all collapsed to `null` so callers have a\n * single \"no usable token\" signal and never build an empty `Bearer` header.\n *\n * @param result the raw value returned by `TokenProvider.getToken()`.\n * @returns an observable mirroring the source's emissions, each one a usable\n *   token or `null` when absent.\n */\nexport function resolveToken(result: TokenResult): Observable<string | null> {\n  let source: Observable<string | null>;\n  if (isObservable(result)) {\n    source = result;\n  } else {\n    source = from(Promise.resolve(result));\n  }\n\n  return new Observable<string | null>((subscriber: Subscriber<string | null>): (() => void) => {\n    const subscription: Subscription = source.subscribe({\n      next: (token: string | null): void => subscriber.next(normalizeToken(token)),\n      error: (caughtError: unknown): void => subscriber.error(caughtError),\n      complete: (): void => subscriber.complete()\n    });\n    return (): void => subscription.unsubscribe();\n  });\n}\n\n/**\n * Build the `Authorization` header value for a resolved token, or `null` when\n * the token is absent.\n *\n * @param token a usable token, or `null`.\n * @returns the `\"Bearer <token>\"` string, or `null` when there is no token.\n */\nexport function buildBearerValue(token: string | null): string | null {\n  if (token === null) {\n    return null;\n  }\n  return `${BEARER_PREFIX}${token}`;\n}\n\n/**\n * Convenience wrapper: emit the ready-to-use `Authorization` header value, or\n * `null` when no token is available.\n *\n * @param result the raw value returned by `TokenProvider.getToken()`.\n * @returns an observable emitting the bearer header value, or `null`.\n */\nexport function resolveBearerValue(result: TokenResult): Observable<string | null> {\n  return new Observable<string | null>((subscriber: Subscriber<string | null>): (() => void) => {\n    const subscription: Subscription = resolveToken(result).subscribe({\n      next: (token: string | null): void => subscriber.next(buildBearerValue(token)),\n      error: (caughtError: unknown): void => subscriber.error(caughtError),\n      complete: (): void => subscriber.complete()\n    });\n    return (): void => subscription.unsubscribe();\n  });\n}\n\n/**\n * Collapse every \"no usable token\" value to `null` and trim a real token.\n *\n * @param token the raw token emitted by the source.\n * @returns the trimmed token, or `null` when empty / whitespace-only / absent.\n */\nfunction normalizeToken(token: string | null | undefined): string | null {\n  if (token === null || token === undefined) {\n    return null;\n  }\n  const trimmed: string = token.trim();\n  if (trimmed.length === 0) {\n    return null;\n  }\n  return trimmed;\n}\n","import { HttpEvent, HttpHandlerFn, HttpRequest } from \"@angular/common/http\";\nimport { inject } from \"@angular/core\";\nimport { Observable, switchMap } from \"rxjs\";\nimport { AUTHORIZATION_HEADER, resolveBearerValue } from \"./resolve-token\";\nimport { TOKEN_PROVIDER, TokenProvider } from \"./token-provider\";\n\n/**\n * Functional Angular `HttpInterceptor` that attaches the current Keycloak access\n * token as an `Authorization: Bearer <token>` header to outgoing HTTP requests.\n *\n * Behaviour:\n * - token present  → a cloned request carrying the bearer header is forwarded.\n * - token absent / empty → the original request is forwarded untouched (no empty\n *   `Bearer` header is ever sent).\n * - token source is async (Promise/Observable) → resolved before the request is\n *   sent.\n * - an existing `Authorization` header on the request is left untouched, so a\n *   caller that already set credentials explicitly wins.\n *\n * Register it in the application's HTTP pipeline:\n *\n * ```ts\n * provideHttpClient(withInterceptors([authHttpInterceptor]))\n * ```\n *\n * Errors raised by the `TokenProvider` propagate to the caller (the request is\n * not sent) so an authentication failure surfaces rather than silently issuing\n * an unauthenticated request.\n *\n * @param req the outgoing HTTP request.\n * @param next the next handler in the interceptor chain.\n * @returns the stream of HTTP events for the (possibly authorized) request.\n */\nexport function authHttpInterceptor(\n  req: HttpRequest<unknown>,\n  next: HttpHandlerFn\n): Observable<HttpEvent<unknown>> {\n  if (req.headers.has(AUTHORIZATION_HEADER)) {\n    return next(req);\n  }\n\n  const tokenProvider: TokenProvider = inject(TOKEN_PROVIDER);\n\n  return resolveBearerValue(tokenProvider.getToken()).pipe(\n    switchMap((bearerValue: string | null): Observable<HttpEvent<unknown>> => {\n      if (bearerValue === null) {\n        return next(req);\n      }\n      const authorizedRequest: HttpRequest<unknown> = req.clone({\n        setHeaders: { [AUTHORIZATION_HEADER]: bearerValue }\n      });\n      return next(authorizedRequest);\n    })\n  );\n}\n","import { GrpcEvent, GrpcMessage, GrpcRequest } from \"@ngx-grpc/common\";\nimport { GrpcHandler, GrpcInterceptor } from \"@ngx-grpc/core\";\nimport { Inject, Injectable } from \"@angular/core\";\nimport { Observable, switchMap } from \"rxjs\";\nimport { AUTHORIZATION_HEADER, resolveBearerValue } from \"./resolve-token\";\nimport { TOKEN_PROVIDER, TokenProvider } from \"./token-provider\";\n\n/**\n * `@ngx-grpc` interceptor that attaches the current Keycloak access token as an\n * `authorization: Bearer <token>` entry on the gRPC-web request metadata. This\n * is the gRPC-web counterpart of `authHttpInterceptor` and matches the\n * `@ngx-grpc` client style used by every generated `*.pbsc.ts` service client in\n * this library.\n *\n * Behaviour mirrors the HTTP interceptor:\n * - token present → the bearer credential is set on `requestMetadata`.\n * - token absent / empty → the request metadata is left untouched (no empty\n *   `Bearer` value is ever attached).\n * - token source is async (Promise/Observable) → resolved before the request is\n *   handed to the next handler.\n * - an `authorization` entry already present on the request metadata is left\n *   untouched, so an explicitly-set credential wins.\n *\n * Register it via the standard `@ngx-grpc` multi-provider:\n *\n * ```ts\n * providers: [\n *   { provide: GRPC_INTERCEPTORS, useClass: AuthGrpcInterceptor, multi: true },\n * ]\n * ```\n */\n@Injectable()\nexport class AuthGrpcInterceptor implements GrpcInterceptor {\n  /**\n   * @param tokenProvider the application's token provider, injected under\n   *   {@link TOKEN_PROVIDER}.\n   */\n  public constructor(@Inject(TOKEN_PROVIDER) private readonly tokenProvider: TokenProvider) {}\n\n  /**\n   * Attach the bearer credential (when available) to the request metadata, then\n   * delegate to the next handler in the chain.\n   *\n   * @param request the intercepted gRPC request.\n   * @param next the next handler to pass the request through.\n   * @returns the stream of gRPC events for the (possibly authorized) request.\n   */\n  public intercept<Q extends GrpcMessage, S extends GrpcMessage>(\n    request: GrpcRequest<Q, S>,\n    next: GrpcHandler\n  ): Observable<GrpcEvent<S>> {\n    if (request.requestMetadata.has(AUTHORIZATION_HEADER)) {\n      return next.handle(request);\n    }\n\n    return resolveBearerValue(this.tokenProvider.getToken()).pipe(\n      switchMap((bearerValue: string | null): Observable<GrpcEvent<S>> => {\n        if (bearerValue !== null) {\n          request.requestMetadata.set(AUTHORIZATION_HEADER, bearerValue);\n        }\n        return next.handle(request);\n      })\n    );\n  }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders, Provider, Type } from \"@angular/core\";\nimport { GRPC_INTERCEPTORS } from \"@ngx-grpc/core\";\nimport { AuthGrpcInterceptor } from \"./auth-grpc.interceptor\";\nimport { TOKEN_PROVIDER, TokenProvider } from \"./token-provider\";\n\n/**\n * Wire a consuming application's {@link TokenProvider} implementation into this\n * library and register the `@ngx-grpc` {@link AuthGrpcInterceptor} that uses it.\n *\n * This covers the gRPC-web side. For HTTP requests, additionally register the\n * functional `authHttpInterceptor`:\n *\n * ```ts\n * provideHttpClient(withInterceptors([authHttpInterceptor]))\n * ```\n *\n * Usage in an application's `providers` (standalone bootstrap or `AppModule`):\n *\n * ```ts\n * import { provideOndewoNluAuth } from \"@ondewo/nlu-client-angular\";\n *\n * bootstrapApplication(AppComponent, {\n *   providers: [\n *     provideOndewoNluAuth(KeycloakTokenProvider),\n *     provideHttpClient(withInterceptors([authHttpInterceptor])),\n *   ],\n * });\n * ```\n *\n * @param tokenProvider the application's `TokenProvider` class (e.g. one that\n *   wraps `keycloak-js` / `keycloak-angular`).\n * @returns environment providers binding the token provider and the gRPC\n *   interceptor.\n */\nexport function provideOndewoNluAuth(tokenProvider: Type<TokenProvider>): EnvironmentProviders {\n  const providers: Provider[] = [\n    tokenProvider,\n    { provide: TOKEN_PROVIDER, useExisting: tokenProvider },\n    { provide: GRPC_INTERCEPTORS, useClass: AuthGrpcInterceptor, multi: true }\n  ];\n  return makeEnvironmentProviders(providers);\n}\n","/**\n * Public auth surface for `@ondewo/nlu-client-angular`.\n *\n * The current Keycloak access token is served by a {@link TokenProvider} and\n * attached as an `Authorization: Bearer <token>` credential to outgoing gRPC-web\n * and HTTP requests. For a technical user the built-in\n * {@link KeycloakTokenProvider} logs in and refreshes the token itself; for an\n * interactive (2FA) user the consuming application implements\n * {@link TokenProvider} on top of `keycloak-js` / `keycloak-angular`.\n */\nexport { TOKEN_PROVIDER, TokenProvider, TokenResult } from \"./token-provider\";\nexport {\n  EnsureFreshTokenOptions,\n  KEYCLOAK_TOKEN_PROVIDER_CONFIG,\n  KeycloakAuthenticationError,\n  KeycloakTokenProvider,\n  KeycloakTokenProviderConfig,\n  MIN_REFRESH_DELAY_IN_S,\n  REFRESH_SKEW_IN_S\n} from \"./keycloak-token-provider\";\nexport {\n  AUTHORIZATION_HEADER,\n  BEARER_PREFIX,\n  buildBearerValue,\n  resolveBearerValue,\n  resolveToken\n} from \"./resolve-token\";\nexport { authHttpInterceptor } from \"./auth-http.interceptor\";\nexport { AuthGrpcInterceptor } from \"./auth-grpc.interceptor\";\nexport { provideOndewoNluAuth } from \"./auth.providers\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["googleProtobuf000","googleProtobuf002","googleProtobuf001","googleProtobuf004","ondewoNlu003.SortingMode","ondewoNlu011.Context","googleProtobuf006","ondewoNlu010.SortingMode","googleProtobuf003","ondewoNlu007.ProjectRole","ondewoNlu008.KeyValuePair","googleProtobuf007","googleProtobuf008","googleRpc011.Status","googleType012.LatLng","ondewoNlu010.Context","ondewoNlu015.Intent","ondewoNlu016.LlmEvaluationFeedback","ondewoNlu013.CcaiServiceProvider","ondewoNlu014.EntityType","ondewoNlu006.Comment","ondewoNlu006.SortingMode","ondewoNlu019.User","ondewoNlu010.ProjectRole","ondewoNlu017.ListTrainingPhrasesResponse","ondewoNlu015.CcaiServiceProvider","ondewoNlu020.LlmTelemetryReport","ondewoNlu020.SessionFilter","ondewoNlu020.ContextFilter","ondewoNlu007.SortingMode","ondewoNlu017.Intent","ondewoNlu009.OperationMetadata","googleRpc008.Status","ondewoNlu010.LogSeverity","thisProto.CreateAgentRequest","thisProto.Agent","thisProto.UpdateAgentRequest","thisProto.GetAgentRequest","thisProto.DeleteAgentRequest","googleProtobuf009","thisProto.ListAgentsRequest","thisProto.ListAgentsResponse","thisProto.ListAgentsOfUserResponse","thisProto.AddUserToProjectRequest","thisProto.RemoveUserFromProjectRequest","thisProto.ListUsersInProjectRequest","thisProto.ListUsersInProjectResponse","thisProto.GetPlatformInfoResponse","thisProto.ListProjectPermissionsRequest","thisProto.ListProjectPermissionsResponse","thisProto.TrainAgentRequest","ondewoNlu008.Operation","thisProto.BuildCacheRequest","thisProto.ExportAgentRequest","thisProto.ExportBenchmarkAgentRequest","thisProto.ImportAgentRequest","thisProto.MigrateAgentRequest","thisProto.OptimizeRankingMatchRequest","thisProto.RestoreAgentRequest","thisProto.GetAgentStatisticsRequest","thisProto.GetAgentStatisticsResponse","thisProto.GetSessionsStatisticsRequest","thisProto.GetSessionsStatisticsResponse","thisProto.GetSessionsStatisticsTimeSeriesRequest","thisProto.GetSessionsStatisticsTimeSeriesResponse","thisProto.SetAgentStatusRequest","thisProto.SetResourcesRequest","thisProto.DeleteResourcesRequest","thisProto.ExportResourcesRequest","thisProto.ExportResourcesResponse","thisProto.GetModelStatusesRequest","thisProto.GetModelStatusesResponse","thisProto.GetPlatformMappingRequest","thisProto.PlatformMapping","thisProto.FullTextSearchRequest","thisProto.FullTextSearchResponseEntityType","thisProto.FullTextSearchResponseEntity","thisProto.FullTextSearchResponseEntitySynonym","thisProto.FullTextSearchResponseIntent","thisProto.FullTextSearchResponseIntentContextIn","thisProto.FullTextSearchResponseIntentContextOut","thisProto.FullTextSearchResponseIntentUsersays","thisProto.FullTextSearchResponseIntentTags","thisProto.FullTextSearchResponseIntentResponse","thisProto.FullTextSearchResponseIntentParameters","thisProto.ReindexAgentRequest","thisProto.CreateProjectTechnicalUserRequest","thisProto.CreateProjectTechnicalUserResponse","thisProto.ListProjectTechnicalUsersRequest","thisProto.ListProjectTechnicalUsersResponse","thisProto.DeleteProjectTechnicalUserRequest","thisProto.RotateProjectTechnicalUserPasswordRequest","thisProto.RotateProjectTechnicalUserPasswordResponse","ondewoNlu012.CcaiServiceProvider","ondewoNlu016.FileResource","ondewoNlu013.EntityType","ondewoNlu014.Intent","thisProto.ExtractEntitiesRequest","thisProto.ExtractEntitiesResponse","thisProto.GenerateUserSaysRequest","thisProto.GenerateUserSaysResponse","thisProto.GenerateResponsesRequest","thisProto.GenerateResponsesResponse","thisProto.GetAlternativeSentencesRequest","thisProto.GetAlternativeSentencesResponse","thisProto.GetAlternativeTrainingPhrasesRequest","thisProto.GetAlternativeTrainingPhrasesResponse","thisProto.GetSynonymsRequest","thisProto.GetSynonymsResponse","thisProto.ClassifyIntentsRequest","thisProto.ClassifyIntentsResponse","thisProto.ExtractEntitiesFuzzyRequest","thisProto.LlmGenerateRequest","thisProto.LlmGenerateResponse","thisProto.StreamingLlmGenerateResponse","thisProto.ListLlmModelsRequest","thisProto.ListLlmModelsResponse","thisProto.GetCcaiProjectRequest","thisProto.CcaiProject","thisProto.CreateCcaiProjectRequest","thisProto.CreateCcaiProjectResponse","thisProto.DeleteCcaiProjectRequest","thisProto.DeleteCcaiProjectResponse","thisProto.ListCcaiProjectsRequest","thisProto.ListCcaiProjectsResponse","thisProto.UpdateCcaiProjectRequest","thisProto.UpdateCcaiProjectResponse","thisProto.GetCcaiServiceRequest","thisProto.CcaiService","thisProto.ListContextsRequest","thisProto.ListContextsResponse","thisProto.GetContextRequest","thisProto.Context","thisProto.CreateContextRequest","thisProto.UpdateContextRequest","thisProto.DeleteContextRequest","thisProto.DeleteAllContextsRequest","thisProto.ListEntityTypesRequest","thisProto.ListEntityTypesResponse","thisProto.GetEntityTypeRequest","thisProto.EntityType","thisProto.CreateEntityTypeRequest","thisProto.UpdateEntityTypeRequest","thisProto.DeleteEntityTypeRequest","thisProto.BatchUpdateEntityTypesRequest","ondewoNlu011.Operation","thisProto.BatchDeleteEntityTypesRequest","thisProto.GetEntityRequest","thisProto.CreateEntityRequest","thisProto.UpdateEntityRequest","thisProto.DeleteEntityRequest","thisProto.DeleteEntityStatus","thisProto.BatchCreateEntitiesRequest","thisProto.BatchEntitiesResponse","thisProto.BatchUpdateEntitiesRequest","thisProto.BatchGetEntitiesRequest","thisProto.BatchDeleteEntitiesRequest","thisProto.BatchDeleteEntitiesResponse","thisProto.ListEntitiesRequest","thisProto.ListEntitiesResponse","thisProto.ListIntentsRequest","thisProto.ListIntentsResponse","thisProto.GetIntentRequest","thisProto.Intent","thisProto.CreateIntentRequest","thisProto.UpdateIntentRequest","thisProto.DeleteIntentRequest","thisProto.BatchUpdateIntentsRequest","thisProto.BatchUpdateIntentsResponse","thisProto.BatchDeleteIntentsRequest","ondewoNlu012.Operation","thisProto.IntentTagRequest","thisProto.GetIntentTagsRequest","thisProto.GetIntentTagsResponse","thisProto.GetAllIntentTagsRequest","thisProto.BatchCreateTrainingPhrasesRequest","thisProto.BatchTrainingPhrasesStatusResponse","thisProto.BatchGetTrainingPhrasesRequest","thisProto.BatchUpdateTrainingPhrasesRequest","thisProto.BatchDeleteTrainingPhrasesRequest","thisProto.BatchDeleteTrainingPhrasesResponse","thisProto.ListTrainingPhrasesRequest","thisProto.ListTrainingPhrasesResponse","thisProto.BatchCreateResponseMessagesRequest","thisProto.BatchResponseMessagesStatusResponse","thisProto.BatchGetResponseMessagesRequest","thisProto.BatchUpdateResponseMessagesRequest","thisProto.BatchDeleteResponseMessagesRequest","thisProto.BatchDeleteResponseMessagesResponse","thisProto.ListResponseMessagesRequest","thisProto.ListResponseMessagesResponse","thisProto.BatchCreateParametersRequest","thisProto.BatchParametersStatusResponse","thisProto.BatchGetParametersRequest","thisProto.BatchUpdateParametersRequest","thisProto.BatchDeleteParametersRequest","thisProto.BatchDeleteParametersResponse","thisProto.ListParametersRequest","thisProto.ListParametersResponse","thisProto.ListTrainingPhrasesofIntentsWithEnrichmentRequest","thisProto.ListTrainingPhrasesofIntentsWithEnrichmentResponse","thisProto.CreateLlmEvaluationDatasetRequest","thisProto.LlmEvaluationDataset","thisProto.GetLlmEvaluationDatasetRequest","thisProto.ListLlmEvaluationDatasetsRequest","thisProto.ListLlmEvaluationDatasetsResponse","thisProto.UpdateLlmEvaluationDatasetRequest","thisProto.DeleteLlmEvaluationDatasetRequest","thisProto.AddLlmEvaluationExampleRequest","thisProto.LlmEvaluationExample","thisProto.AddLlmEvaluationExamplesRequest","thisProto.AddLlmEvaluationExamplesResponse","thisProto.GetLlmEvaluationExampleRequest","thisProto.ListLlmEvaluationExamplesRequest","thisProto.ListLlmEvaluationExamplesResponse","thisProto.UpdateLlmEvaluationExampleRequest","thisProto.DeleteLlmEvaluationExampleRequest","thisProto.RunLlmEvaluationExperimentRequest","ondewoNlu009.Operation","thisProto.GetLlmEvaluationExperimentRequest","thisProto.LlmEvaluationExperiment","thisProto.ListLlmEvaluationExperimentsRequest","thisProto.ListLlmEvaluationExperimentsResponse","thisProto.UpdateLlmEvaluationExperimentRequest","thisProto.DeleteLlmEvaluationExperimentRequest","thisProto.CancelLlmEvaluationExperimentRequest","thisProto.CompareLlmEvaluationExperimentsRequest","thisProto.LlmEvaluationComparison","thisProto.SubmitLlmEvaluationFeedbackRequest","thisProto.LlmEvaluationFeedback","thisProto.ListLlmEvaluationFeedbackRequest","thisProto.ListLlmEvaluationFeedbackResponse","thisProto.DeleteLlmEvaluationFeedbackRequest","thisProto.UpdateLlmEvaluationFeedbackRequest","thisProto.CreateLlmEvaluationReleaseGateRequest","thisProto.LlmEvaluationReleaseGate","thisProto.GetLlmEvaluationReleaseGateRequest","thisProto.ListLlmEvaluationReleaseGatesRequest","thisProto.ListLlmEvaluationReleaseGatesResponse","thisProto.UpdateLlmEvaluationReleaseGateRequest","thisProto.DeleteLlmEvaluationReleaseGateRequest","thisProto.RunLlmEvaluationReleaseGateRequest","thisProto.GetLlmEvaluationReleaseGateRunRequest","thisProto.LlmEvaluationReleaseGateRun","thisProto.ListLlmEvaluationReleaseGateRunsRequest","thisProto.ListLlmEvaluationReleaseGateRunsResponse","thisProto.CreateLlmEvaluationScorecardRequest","thisProto.LlmEvaluationScorecard","thisProto.GetLlmEvaluationScorecardRequest","thisProto.ListLlmEvaluationScorecardsRequest","thisProto.ListLlmEvaluationScorecardsResponse","thisProto.UpdateLlmEvaluationScorecardRequest","thisProto.DeleteLlmEvaluationScorecardRequest","thisProto.GetLlmEvaluationProjectSettingsRequest","thisProto.LlmEvaluationProjectSettings","thisProto.UpdateLlmEvaluationProjectSettingsRequest","thisProto.ListLlmEvaluationEvaluatorsRequest","thisProto.ListLlmEvaluationEvaluatorsResponse","thisProto.CreateLlmEvaluationExamplesFromSessionRequest","thisProto.CreateLlmEvaluationExamplesFromSessionResponse","thisProto.SimulateLlmEvaluationConversationsRequest","thisProto.CreateLlmEvaluationScheduleRequest","thisProto.LlmEvaluationSchedule","thisProto.GetLlmEvaluationScheduleRequest","thisProto.ListLlmEvaluationSchedulesRequest","thisProto.ListLlmEvaluationSchedulesResponse","thisProto.UpdateLlmEvaluationScheduleRequest","thisProto.DeleteLlmEvaluationScheduleRequest","thisProto.CreateLlmEvaluationReportRequest","thisProto.LlmEvaluationReport","thisProto.GetLlmEvaluationReportRequest","thisProto.ListLlmEvaluationReportsRequest","thisProto.ListLlmEvaluationReportsResponse","thisProto.DeleteLlmEvaluationReportRequest","thisProto.CreateLlmEvaluationAbExperimentRequest","thisProto.LlmEvaluationAbExperiment","thisProto.GetLlmEvaluationAbExperimentRequest","thisProto.ListLlmEvaluationAbExperimentsRequest","thisProto.ListLlmEvaluationAbExperimentsResponse","thisProto.UpdateLlmEvaluationAbExperimentRequest","thisProto.DeleteLlmEvaluationAbExperimentRequest","thisProto.StartLlmEvaluationAbExperimentRequest","thisProto.StopLlmEvaluationAbExperimentRequest","thisProto.GetLlmEvaluationAbExperimentResultsRequest","thisProto.GetLlmEvaluationAbExperimentResultsResponse","thisProto.GetLlmEvaluationAbRolloutRecommendationRequest","thisProto.LlmEvaluationAbRolloutRecommendation","thisProto.ApplyLlmEvaluationAbRolloutRequest","thisProto.LlmEvaluationAbRolloutDecision","thisProto.GetLlmEvaluationAbRolloutDecisionRequest","thisProto.ListLlmEvaluationAbRolloutDecisionsRequest","thisProto.ListLlmEvaluationAbRolloutDecisionsResponse","thisProto.CreateLlmEvaluationOnlineConfigRequest","thisProto.LlmEvaluationOnlineConfig","thisProto.GetLlmEvaluationOnlineConfigRequest","thisProto.ListLlmEvaluationOnlineConfigsRequest","thisProto.ListLlmEvaluationOnlineConfigsResponse","thisProto.UpdateLlmEvaluationOnlineConfigRequest","thisProto.DeleteLlmEvaluationOnlineConfigRequest","thisProto.GetLlmEvaluationOnlineResultRequest","thisProto.LlmEvaluationOnlineResult","thisProto.ListLlmEvaluationOnlineResultsRequest","thisProto.ListLlmEvaluationOnlineResultsResponse","thisProto.GetLlmEvaluationAnnotationQueueItemRequest","thisProto.LlmEvaluationAnnotationQueueItem","thisProto.ListLlmEvaluationAnnotationQueueItemsRequest","thisProto.ListLlmEvaluationAnnotationQueueItemsResponse","thisProto.UpdateLlmEvaluationAnnotationQueueItemRequest","thisProto.PromoteLlmEvaluationAnnotationQueueItemRequest","thisProto.PromoteLlmEvaluationAnnotationQueueItemResponse","thisProto.ListOperationsRequest","thisProto.ListOperationsResponse","thisProto.GetOperationRequest","thisProto.Operation","thisProto.DeleteOperationRequest","thisProto.CancelOperationRequest","thisProto.StreamRemoteOperationContainerLogsRequest","thisProto.RemoteOperationContainerLogLine","thisProto.GetRemoteOperationContainerLogsRequest","thisProto.GetRemoteOperationContainerLogsResponse","thisProto.GetRemoteOperationContainerStatusRequest","thisProto.RemoteOperationContainerStatus","thisProto.ListRemoteOperationContainersRequest","thisProto.ListRemoteOperationContainersResponse","thisProto.CreateProjectRoleRequest","thisProto.ProjectRole","thisProto.GetProjectRoleRequest","thisProto.DeleteProjectRoleRequest","thisProto.UpdateProjectRoleRequest","thisProto.ListProjectRolesRequest","thisProto.ListProjectRolesResponse","ondewoNlu010.IntentCategory","ondewoNlu011.EntityTypeCategory","thisProto.GetIntentCountRequest","ondewoNlu004.StatResponse","thisProto.GetEntityTypeCountRequest","thisProto.GetProjectStatRequest","thisProto.GetProjectElementStatRequest","ondewoNlu008.SortingMode","ondewoNlu007.OperationMetadata","ondewoNlu015.Operation","ondewoNlu008.LogSeverity","ondewoNlu008.LogEntry","thisProto.RagCreateDatasetRequest","thisProto.RagDataset","thisProto.RagUpdateDatasetRequest","thisProto.RagDeleteRequest","thisProto.RagPartialSuccess","thisProto.RagListDatasetsRequest","thisProto.RagDatasetList","thisProto.RagUploadDocumentRequest","thisProto.RagDocument","thisProto.RagUpdateDocumentRequest","thisProto.RagDownloadDocumentRequest","thisProto.RagFileChunk","thisProto.RagListDocumentsRequest","thisProto.RagDocumentList","thisProto.RagDeleteDocumentsRequest","thisProto.RagRetrievalRequest","thisProto.RagRetrievalResponse","thisProto.RagDocumentIdsRequest","thisProto.RagCreateCrawlerRequest","thisProto.RagCrawler","thisProto.RagGetCrawlerRequest","thisProto.RagListCrawlersRequest","thisProto.RagListCrawlersResponse","thisProto.RagUpdateCrawlerRequest","thisProto.RagDeleteCrawlerRequest","thisProto.RagDeleteCrawlerResponse","thisProto.RagStartCrawlerRequest","thisProto.RagStopCrawlerRequest","thisProto.RagStopCrawlerResponse","thisProto.RagGetCrawlerRunRequest","thisProto.RagListCrawlerRunsRequest","thisProto.RagListCrawlerRunsResponse","thisProto.RagDeleteCrawlerRunsRequest","thisProto.RagDeleteCrawlerRunsResponse","thisProto.RagGetCrawlerResultRequest","thisProto.RagCrawlerResult","thisProto.RagGetCrawlerResultsRequest","thisProto.RagGetCrawlerResultsResponse","thisProto.RagAddCrawlerResultsToDatasetsRequest","thisProto.RagRemoveCrawlerResultsFromDatasetsRequest","thisProto.RagGetCrawlerAttachedDatasetsRequest","thisProto.RagGetCrawlerAttachedDatasetsResponse","thisProto.RagDeleteCrawlersRequest","thisProto.RagDeleteCrawlersResponse","thisProto.RagGetCrawlerRunLogsRequest","thisProto.RagGetCrawlerRunLogsResponse","ondewoNlu007.StatResponse","thisProto.GetUserProjectCountRequest","thisProto.DetectIntentRequest","thisProto.DetectIntentResponse","thisProto.StreamingDetectIntentRequest","thisProto.StreamingDetectIntentResponse","thisProto.ListSessionsRequest","thisProto.ListSessionsResponse","thisProto.GetSessionRequest","thisProto.Session","thisProto.CreateSessionRequest","thisProto.CreateSessionStepRequest","thisProto.SessionStep","thisProto.GetSessionStepRequest","thisProto.UpdateSessionStepRequest","thisProto.DeleteSessionStepRequest","thisProto.DeleteSessionRequest","thisProto.ListSessionLabelsRequest","thisProto.ListSessionLabelsResponse","thisProto.ListSessionLabelsOfAllSessionsRequest","thisProto.ListLanguageCodesOfAllSessionsRequest","thisProto.ListLanguageCodesResponse","thisProto.ListMatchedIntentsOfAllSessionsRequest","thisProto.ListMatchedIntentsResponse","thisProto.ListMatchedEntityTypesOfAllSessionsRequest","thisProto.ListMatchedEntityTypesResponse","thisProto.ListUserIdsOfAllSessionsRequest","thisProto.ListUserIdsResponse","thisProto.ListIdentifiedUserIdsOfAllSessionsRequest","thisProto.ListIdentifiedUserIdsResponse","thisProto.ListTagsOfAllSessionsRequest","thisProto.ListTagsResponse","thisProto.ListInputContextsOfAllSessionsRequest","thisProto.ListInputContextsResponse","thisProto.ListOutputContextsOfAllSessionsRequest","thisProto.ListOutputContextsResponse","thisProto.ListPlatformsOfAllSessionsRequest","thisProto.ListPlatformsResponse","thisProto.ListAccountIdsOfAllSessionsRequest","thisProto.ListAccountIdsResponse","thisProto.ListPropertyIdsOfAllSessionsRequest","thisProto.ListPropertyIdsResponse","thisProto.ListDatastreamIdsOfAllSessionsRequest","thisProto.ListDatastreamIdsResponse","thisProto.ListOriginIdsOfAllSessionsRequest","thisProto.ListOriginIdsResponse","thisProto.AddSessionLabelsRequest","thisProto.DeleteSessionLabelsRequest","thisProto.AddSessionCommentRequest","thisProto.DeleteSessionCommentsRequest","thisProto.UpdateSessionCommentsRequest","thisProto.ListSessionCommentsRequest","thisProto.ListSessionCommentsResponse","thisProto.ListSessionCommentsOfAllSessionsRequest","thisProto.AddSessionFeedbackRequest","thisProto.SessionFeedback","thisProto.AddSessionStepFeedbackRequest","thisProto.GetSessionFeedbackRequest","thisProto.UpdateSessionFeedbackRequest","thisProto.DeleteSessionFeedbackRequest","thisProto.ListSessionFeedbackRequest","thisProto.ListSessionFeedbackResponse","thisProto.ListSessionFeedbackOfAllSessionsRequest","thisProto.GetFeedbackStatisticsRequest","thisProto.GetFeedbackStatisticsResponse","thisProto.GetFeedbackStatisticsTimeSeriesRequest","thisProto.GetFeedbackStatisticsTimeSeriesResponse","thisProto.ListSessionReviewsRequest","thisProto.ListSessionReviewsResponse","thisProto.GetSessionReviewRequest","thisProto.SessionReview","thisProto.GetLatestSessionReviewRequest","thisProto.CreateSessionReviewRequest","thisProto.GetAudioFilesRequest","thisProto.GetAudioFilesResponse","thisProto.AddAudioFilesRequest","thisProto.AddAudioFilesResponse","thisProto.DeleteAudioFilesRequest","thisProto.DeleteAudioFilesResponse","thisProto.GetAudioFileOfSessionRequest","thisProto.AudioFileResource","thisProto.ListAudioFilesRequest","thisProto.ListAudioFilesResponse","thisProto.CreateUserRequest","thisProto.User","thisProto.GetUserRequest","thisProto.UserInfo","thisProto.UpdateUserRequest","thisProto.ListUsersRequest","thisProto.ListUsersResponse","thisProto.ListUserInfosResponse","thisProto.CreateServerRoleRequest","thisProto.ServerRole","thisProto.GetServerRoleRequest","thisProto.DeleteServerRoleRequest","thisProto.UpdateServerRoleRequest","thisProto.ListServerRolesRequest","thisProto.ListServerRolesResponse","thisProto.ListServerPermissionsRequest","thisProto.ListServerPermissionsResponse","ondewoNlu008.ListNotificationsRequest","ondewoNlu008.ListNotificationsResponse","ondewoNlu008.SetNotificationsFlaggedStatusRequest","ondewoNlu008.SetNotificationsReadStatusRequest","ondewoNlu008.AddNotificationsRequest","ondewoNlu008.AddNotificationsResponse","ondewoNlu008.GetNotificationRequest","ondewoNlu008.Notification","ondewoNlu008.UpdateNotificationRequest","ondewoNlu008.DeleteNotificationsRequest","ondewoNlu008.StreamNotificationsRequest","thisProto.GetUserPreferencesRequest","thisProto.GetUserPreferencesResponse","thisProto.SetUserPreferencesRequest","thisProto.SetUserPreferencesResponse","thisProto.DeleteUserPreferencesRequest","thisProto.DeleteUserPreferencesResponse","thisProto.DeleteAllUserPreferencesRequest","ondewoNlu009.EntityType","ondewoNlu008.Intent","thisProto.ValidateRegexRequest","thisProto.ValidateRegexResponse","thisProto.ValidateEmbeddedRegexRequest","thisProto.ValidateEmbeddedRegexResponse","thisProto.CleanAllIntentsRequest","thisProto.CleanAllIntentsResponse","thisProto.CleanIntentRequest","thisProto.CleanIntentResponse","thisProto.CleanAllEntityTypesRequest","thisProto.CleanAllEntityTypesResponse","thisProto.CleanEntityTypeRequest","thisProto.CleanEntityTypeResponse","thisProto.AddTrainingPhrasesRequest","thisProto.AddTrainingPhrasesResponse","thisProto.AddTrainingPhrasesFromCSVRequest","ondewoNlu016.QueryResult","ondewoNlu008.Context","ondewoNlu016.EventInput","thisProto.WebhookRequest","thisProto.WebhookResponse","thisProto.PingRequest","thisProto.PingResponse","thisProto.CreateSessionEntityTypeRequest","thisProto.SessionEntityType","thisProto.UpdateSessionEntityTypeRequest","thisProto.DeleteSessionEntityTypeRequest","ondewoNlu015.TextInput","ondewoNlu015.DetectIntentResponse","thisProto.GetAnswerRequest","thisProto.GetAnswerResponse","thisProto.RunScraperRequest","thisProto.RunScraperResponse","thisProto.UpdateDatabaseRequest","thisProto.UpdateDatabaseResponse","thisProto.RunTrainingResponse","thisProto.GetServerStateResponse","thisProto.ListProjectIdsResponse","thisProto.GetProjectConfigRequest","thisProto.GetProjectConfigResponse"],"mappings":"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"}