constructor(
      name, methodType, requestType, responseType, requestSerializeFn,
      responseDeserializeFn) {
    /** @const */
    this.name = name;
    /** @const */
    this.methodType = methodType;
    /** @const */
    this.requestType = requestType;
    /** @const */
    this.responseType = responseType;
    /** @const */
    this.requestSerializeFn = requestSerializeFn;
    /** @const */
    this.responseDeserializeFn = responseDeserializeFn;
  }
@param {string} name
@param {?MethodType} methodType
@param {function(new: REQUEST, ...)} requestType
@param {function(new: RESPONSE, ...)} responseType
@param {function(REQUEST): ?} requestSerializeFn
@param {function(?): RESPONSE} responseDeserializeFn