/**
 * @fileoverview gRPC-Web generated client stub for org.couchers.moderation
 * @enhanceable
 * @public
 */

// Code generated by protoc-gen-grpc-web. DO NOT EDIT.
// versions:
// 	protoc-gen-grpc-web v1.5.0
// 	protoc              v5.26.1
// source: moderation.proto


/* eslint-disable */
// @ts-nocheck



const grpc = {};
grpc.web = require('grpc-web');


var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js')

var admin_pb = require('./admin_pb.js')

var annotations_pb = require('./annotations_pb.js')
const proto = {};
proto.org = {};
proto.org.couchers = {};
proto.org.couchers.moderation = require('./moderation_pb.js');

/**
 * @param {string} hostname
 * @param {?Object} credentials
 * @param {?grpc.web.ClientOptions} options
 * @constructor
 * @struct
 * @final
 */
proto.org.couchers.moderation.ModerationClient =
    function(hostname, credentials, options) {
  if (!options) options = {};
  options.format = 'binary';

  /**
   * @private @const {!grpc.web.GrpcWebClientBase} The client
   */
  this.client_ = new grpc.web.GrpcWebClientBase(options);

  /**
   * @private @const {string} The hostname
   */
  this.hostname_ = hostname.replace(/\/+$/, '');

};


/**
 * @param {string} hostname
 * @param {?Object} credentials
 * @param {?grpc.web.ClientOptions} options
 * @constructor
 * @struct
 * @final
 */
proto.org.couchers.moderation.ModerationPromiseClient =
    function(hostname, credentials, options) {
  if (!options) options = {};
  options.format = 'binary';

  /**
   * @private @const {!grpc.web.GrpcWebClientBase} The client
   */
  this.client_ = new grpc.web.GrpcWebClientBase(options);

  /**
   * @private @const {string} The hostname
   */
  this.hostname_ = hostname.replace(/\/+$/, '');

};


/**
 * @const
 * @type {!grpc.web.MethodDescriptor<
 *   !proto.org.couchers.moderation.GetModerationQueueReq,
 *   !proto.org.couchers.moderation.GetModerationQueueRes>}
 */
const methodDescriptor_Moderation_GetModerationQueue = new grpc.web.MethodDescriptor(
  '/org.couchers.moderation.Moderation/GetModerationQueue',
  grpc.web.MethodType.UNARY,
  proto.org.couchers.moderation.GetModerationQueueReq,
  proto.org.couchers.moderation.GetModerationQueueRes,
  /**
   * @param {!proto.org.couchers.moderation.GetModerationQueueReq} request
   * @return {!Uint8Array}
   */
  function(request) {
    return request.serializeBinary();
  },
  proto.org.couchers.moderation.GetModerationQueueRes.deserializeBinary
);


/**
 * @param {!proto.org.couchers.moderation.GetModerationQueueReq} request The
 *     request proto
 * @param {?Object<string, string>} metadata User defined
 *     call metadata
 * @param {function(?grpc.web.RpcError, ?proto.org.couchers.moderation.GetModerationQueueRes)}
 *     callback The callback function(error, response)
 * @return {!grpc.web.ClientReadableStream<!proto.org.couchers.moderation.GetModerationQueueRes>|undefined}
 *     The XHR Node Readable Stream
 */
proto.org.couchers.moderation.ModerationClient.prototype.getModerationQueue =
    function(request, metadata, callback) {
  return this.client_.rpcCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/GetModerationQueue',
      request,
      metadata || {},
      methodDescriptor_Moderation_GetModerationQueue,
      callback);
};


/**
 * @param {!proto.org.couchers.moderation.GetModerationQueueReq} request The
 *     request proto
 * @param {?Object<string, string>=} metadata User defined
 *     call metadata
 * @return {!Promise<!proto.org.couchers.moderation.GetModerationQueueRes>}
 *     Promise that resolves to the response
 */
proto.org.couchers.moderation.ModerationPromiseClient.prototype.getModerationQueue =
    function(request, metadata) {
  return this.client_.unaryCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/GetModerationQueue',
      request,
      metadata || {},
      methodDescriptor_Moderation_GetModerationQueue);
};


/**
 * @const
 * @type {!grpc.web.MethodDescriptor<
 *   !proto.org.couchers.moderation.GetModerationStateReq,
 *   !proto.org.couchers.moderation.GetModerationStateRes>}
 */
const methodDescriptor_Moderation_GetModerationState = new grpc.web.MethodDescriptor(
  '/org.couchers.moderation.Moderation/GetModerationState',
  grpc.web.MethodType.UNARY,
  proto.org.couchers.moderation.GetModerationStateReq,
  proto.org.couchers.moderation.GetModerationStateRes,
  /**
   * @param {!proto.org.couchers.moderation.GetModerationStateReq} request
   * @return {!Uint8Array}
   */
  function(request) {
    return request.serializeBinary();
  },
  proto.org.couchers.moderation.GetModerationStateRes.deserializeBinary
);


/**
 * @param {!proto.org.couchers.moderation.GetModerationStateReq} request The
 *     request proto
 * @param {?Object<string, string>} metadata User defined
 *     call metadata
 * @param {function(?grpc.web.RpcError, ?proto.org.couchers.moderation.GetModerationStateRes)}
 *     callback The callback function(error, response)
 * @return {!grpc.web.ClientReadableStream<!proto.org.couchers.moderation.GetModerationStateRes>|undefined}
 *     The XHR Node Readable Stream
 */
proto.org.couchers.moderation.ModerationClient.prototype.getModerationState =
    function(request, metadata, callback) {
  return this.client_.rpcCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/GetModerationState',
      request,
      metadata || {},
      methodDescriptor_Moderation_GetModerationState,
      callback);
};


/**
 * @param {!proto.org.couchers.moderation.GetModerationStateReq} request The
 *     request proto
 * @param {?Object<string, string>=} metadata User defined
 *     call metadata
 * @return {!Promise<!proto.org.couchers.moderation.GetModerationStateRes>}
 *     Promise that resolves to the response
 */
proto.org.couchers.moderation.ModerationPromiseClient.prototype.getModerationState =
    function(request, metadata) {
  return this.client_.unaryCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/GetModerationState',
      request,
      metadata || {},
      methodDescriptor_Moderation_GetModerationState);
};


/**
 * @const
 * @type {!grpc.web.MethodDescriptor<
 *   !proto.org.couchers.moderation.GetModerationLogReq,
 *   !proto.org.couchers.moderation.GetModerationLogRes>}
 */
const methodDescriptor_Moderation_GetModerationLog = new grpc.web.MethodDescriptor(
  '/org.couchers.moderation.Moderation/GetModerationLog',
  grpc.web.MethodType.UNARY,
  proto.org.couchers.moderation.GetModerationLogReq,
  proto.org.couchers.moderation.GetModerationLogRes,
  /**
   * @param {!proto.org.couchers.moderation.GetModerationLogReq} request
   * @return {!Uint8Array}
   */
  function(request) {
    return request.serializeBinary();
  },
  proto.org.couchers.moderation.GetModerationLogRes.deserializeBinary
);


/**
 * @param {!proto.org.couchers.moderation.GetModerationLogReq} request The
 *     request proto
 * @param {?Object<string, string>} metadata User defined
 *     call metadata
 * @param {function(?grpc.web.RpcError, ?proto.org.couchers.moderation.GetModerationLogRes)}
 *     callback The callback function(error, response)
 * @return {!grpc.web.ClientReadableStream<!proto.org.couchers.moderation.GetModerationLogRes>|undefined}
 *     The XHR Node Readable Stream
 */
proto.org.couchers.moderation.ModerationClient.prototype.getModerationLog =
    function(request, metadata, callback) {
  return this.client_.rpcCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/GetModerationLog',
      request,
      metadata || {},
      methodDescriptor_Moderation_GetModerationLog,
      callback);
};


/**
 * @param {!proto.org.couchers.moderation.GetModerationLogReq} request The
 *     request proto
 * @param {?Object<string, string>=} metadata User defined
 *     call metadata
 * @return {!Promise<!proto.org.couchers.moderation.GetModerationLogRes>}
 *     Promise that resolves to the response
 */
proto.org.couchers.moderation.ModerationPromiseClient.prototype.getModerationLog =
    function(request, metadata) {
  return this.client_.unaryCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/GetModerationLog',
      request,
      metadata || {},
      methodDescriptor_Moderation_GetModerationLog);
};


/**
 * @const
 * @type {!grpc.web.MethodDescriptor<
 *   !proto.org.couchers.moderation.ModerateContentReq,
 *   !proto.org.couchers.moderation.ModerateContentRes>}
 */
const methodDescriptor_Moderation_ModerateContent = new grpc.web.MethodDescriptor(
  '/org.couchers.moderation.Moderation/ModerateContent',
  grpc.web.MethodType.UNARY,
  proto.org.couchers.moderation.ModerateContentReq,
  proto.org.couchers.moderation.ModerateContentRes,
  /**
   * @param {!proto.org.couchers.moderation.ModerateContentReq} request
   * @return {!Uint8Array}
   */
  function(request) {
    return request.serializeBinary();
  },
  proto.org.couchers.moderation.ModerateContentRes.deserializeBinary
);


/**
 * @param {!proto.org.couchers.moderation.ModerateContentReq} request The
 *     request proto
 * @param {?Object<string, string>} metadata User defined
 *     call metadata
 * @param {function(?grpc.web.RpcError, ?proto.org.couchers.moderation.ModerateContentRes)}
 *     callback The callback function(error, response)
 * @return {!grpc.web.ClientReadableStream<!proto.org.couchers.moderation.ModerateContentRes>|undefined}
 *     The XHR Node Readable Stream
 */
proto.org.couchers.moderation.ModerationClient.prototype.moderateContent =
    function(request, metadata, callback) {
  return this.client_.rpcCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/ModerateContent',
      request,
      metadata || {},
      methodDescriptor_Moderation_ModerateContent,
      callback);
};


/**
 * @param {!proto.org.couchers.moderation.ModerateContentReq} request The
 *     request proto
 * @param {?Object<string, string>=} metadata User defined
 *     call metadata
 * @return {!Promise<!proto.org.couchers.moderation.ModerateContentRes>}
 *     Promise that resolves to the response
 */
proto.org.couchers.moderation.ModerationPromiseClient.prototype.moderateContent =
    function(request, metadata) {
  return this.client_.unaryCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/ModerateContent',
      request,
      metadata || {},
      methodDescriptor_Moderation_ModerateContent);
};


/**
 * @const
 * @type {!grpc.web.MethodDescriptor<
 *   !proto.org.couchers.moderation.SetUserContentVisibilityReq,
 *   !proto.org.couchers.moderation.SetUserContentVisibilityRes>}
 */
const methodDescriptor_Moderation_SetUserContentVisibility = new grpc.web.MethodDescriptor(
  '/org.couchers.moderation.Moderation/SetUserContentVisibility',
  grpc.web.MethodType.UNARY,
  proto.org.couchers.moderation.SetUserContentVisibilityReq,
  proto.org.couchers.moderation.SetUserContentVisibilityRes,
  /**
   * @param {!proto.org.couchers.moderation.SetUserContentVisibilityReq} request
   * @return {!Uint8Array}
   */
  function(request) {
    return request.serializeBinary();
  },
  proto.org.couchers.moderation.SetUserContentVisibilityRes.deserializeBinary
);


/**
 * @param {!proto.org.couchers.moderation.SetUserContentVisibilityReq} request The
 *     request proto
 * @param {?Object<string, string>} metadata User defined
 *     call metadata
 * @param {function(?grpc.web.RpcError, ?proto.org.couchers.moderation.SetUserContentVisibilityRes)}
 *     callback The callback function(error, response)
 * @return {!grpc.web.ClientReadableStream<!proto.org.couchers.moderation.SetUserContentVisibilityRes>|undefined}
 *     The XHR Node Readable Stream
 */
proto.org.couchers.moderation.ModerationClient.prototype.setUserContentVisibility =
    function(request, metadata, callback) {
  return this.client_.rpcCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/SetUserContentVisibility',
      request,
      metadata || {},
      methodDescriptor_Moderation_SetUserContentVisibility,
      callback);
};


/**
 * @param {!proto.org.couchers.moderation.SetUserContentVisibilityReq} request The
 *     request proto
 * @param {?Object<string, string>=} metadata User defined
 *     call metadata
 * @return {!Promise<!proto.org.couchers.moderation.SetUserContentVisibilityRes>}
 *     Promise that resolves to the response
 */
proto.org.couchers.moderation.ModerationPromiseClient.prototype.setUserContentVisibility =
    function(request, metadata) {
  return this.client_.unaryCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/SetUserContentVisibility',
      request,
      metadata || {},
      methodDescriptor_Moderation_SetUserContentVisibility);
};


/**
 * @const
 * @type {!grpc.web.MethodDescriptor<
 *   !proto.org.couchers.moderation.ListModerationStatesReq,
 *   !proto.org.couchers.moderation.ListModerationStatesRes>}
 */
const methodDescriptor_Moderation_ListModerationStates = new grpc.web.MethodDescriptor(
  '/org.couchers.moderation.Moderation/ListModerationStates',
  grpc.web.MethodType.UNARY,
  proto.org.couchers.moderation.ListModerationStatesReq,
  proto.org.couchers.moderation.ListModerationStatesRes,
  /**
   * @param {!proto.org.couchers.moderation.ListModerationStatesReq} request
   * @return {!Uint8Array}
   */
  function(request) {
    return request.serializeBinary();
  },
  proto.org.couchers.moderation.ListModerationStatesRes.deserializeBinary
);


/**
 * @param {!proto.org.couchers.moderation.ListModerationStatesReq} request The
 *     request proto
 * @param {?Object<string, string>} metadata User defined
 *     call metadata
 * @param {function(?grpc.web.RpcError, ?proto.org.couchers.moderation.ListModerationStatesRes)}
 *     callback The callback function(error, response)
 * @return {!grpc.web.ClientReadableStream<!proto.org.couchers.moderation.ListModerationStatesRes>|undefined}
 *     The XHR Node Readable Stream
 */
proto.org.couchers.moderation.ModerationClient.prototype.listModerationStates =
    function(request, metadata, callback) {
  return this.client_.rpcCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/ListModerationStates',
      request,
      metadata || {},
      methodDescriptor_Moderation_ListModerationStates,
      callback);
};


/**
 * @param {!proto.org.couchers.moderation.ListModerationStatesReq} request The
 *     request proto
 * @param {?Object<string, string>=} metadata User defined
 *     call metadata
 * @return {!Promise<!proto.org.couchers.moderation.ListModerationStatesRes>}
 *     Promise that resolves to the response
 */
proto.org.couchers.moderation.ModerationPromiseClient.prototype.listModerationStates =
    function(request, metadata) {
  return this.client_.unaryCall(this.hostname_ +
      '/org.couchers.moderation.Moderation/ListModerationStates',
      request,
      metadata || {},
      methodDescriptor_Moderation_ListModerationStates);
};


module.exports = proto.org.couchers.moderation;

