//
//  Generated code. Do not modify.
//  source: user-groups.proto
//
// @dart = 3.3

// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import

import 'dart:async' as $async;
import 'dart:core' as $core;

import 'package:grpc/service_api.dart' as $grpc;
import 'package:protobuf/protobuf.dart' as $pb;

import 'user-groups.pb.dart' as $4;

export 'user-groups.pb.dart';

@$pb.GrpcServiceName('api.UserGroupsService')
class UserGroupsServiceClient extends $grpc.Client {
  static final _$get = $grpc.ClientMethod<$4.GetUserGroupsRequest, $4.GetUserGroupsResult>(
      '/api.UserGroupsService/Get',
      ($4.GetUserGroupsRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $4.GetUserGroupsResult.fromBuffer(value));
  static final _$put = $grpc.ClientMethod<$4.PutUserGroupsRequest, $4.PutUserGroupsResult>(
      '/api.UserGroupsService/Put',
      ($4.PutUserGroupsRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $4.PutUserGroupsResult.fromBuffer(value));
  static final _$delete = $grpc.ClientMethod<$4.DeleteUserGroupsRequest, $4.DeleteUserGroupsResult>(
      '/api.UserGroupsService/Delete',
      ($4.DeleteUserGroupsRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $4.DeleteUserGroupsResult.fromBuffer(value));
  static final _$list = $grpc.ClientMethod<$4.ListUserGroupsRequest, $4.ListUserGroupsResult>(
      '/api.UserGroupsService/List',
      ($4.ListUserGroupsRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $4.ListUserGroupsResult.fromBuffer(value));

  UserGroupsServiceClient($grpc.ClientChannel channel,
      {$grpc.CallOptions? options,
      $core.Iterable<$grpc.ClientInterceptor>? interceptors})
      : super(channel, options: options,
        interceptors: interceptors);

  $grpc.ResponseFuture<$4.GetUserGroupsResult> get($4.GetUserGroupsRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$get, request, options: options);
  }

  $grpc.ResponseFuture<$4.PutUserGroupsResult> put($4.PutUserGroupsRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$put, request, options: options);
  }

  $grpc.ResponseFuture<$4.DeleteUserGroupsResult> delete($4.DeleteUserGroupsRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$delete, request, options: options);
  }

  $grpc.ResponseFuture<$4.ListUserGroupsResult> list($4.ListUserGroupsRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$list, request, options: options);
  }
}

@$pb.GrpcServiceName('api.UserGroupsService')
abstract class UserGroupsServiceBase extends $grpc.Service {
  $core.String get $name => 'api.UserGroupsService';

  UserGroupsServiceBase() {
    $addMethod($grpc.ServiceMethod<$4.GetUserGroupsRequest, $4.GetUserGroupsResult>(
        'Get',
        get_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $4.GetUserGroupsRequest.fromBuffer(value),
        ($4.GetUserGroupsResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$4.PutUserGroupsRequest, $4.PutUserGroupsResult>(
        'Put',
        put_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $4.PutUserGroupsRequest.fromBuffer(value),
        ($4.PutUserGroupsResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$4.DeleteUserGroupsRequest, $4.DeleteUserGroupsResult>(
        'Delete',
        delete_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $4.DeleteUserGroupsRequest.fromBuffer(value),
        ($4.DeleteUserGroupsResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$4.ListUserGroupsRequest, $4.ListUserGroupsResult>(
        'List',
        list_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $4.ListUserGroupsRequest.fromBuffer(value),
        ($4.ListUserGroupsResult value) => value.writeToBuffer()));
  }

  $async.Future<$4.GetUserGroupsResult> get_Pre($grpc.ServiceCall $call, $async.Future<$4.GetUserGroupsRequest> $request) async {
    return get($call, await $request);
  }

  $async.Future<$4.PutUserGroupsResult> put_Pre($grpc.ServiceCall $call, $async.Future<$4.PutUserGroupsRequest> $request) async {
    return put($call, await $request);
  }

  $async.Future<$4.DeleteUserGroupsResult> delete_Pre($grpc.ServiceCall $call, $async.Future<$4.DeleteUserGroupsRequest> $request) async {
    return delete($call, await $request);
  }

  $async.Future<$4.ListUserGroupsResult> list_Pre($grpc.ServiceCall $call, $async.Future<$4.ListUserGroupsRequest> $request) async {
    return list($call, await $request);
  }

  $async.Future<$4.GetUserGroupsResult> get($grpc.ServiceCall call, $4.GetUserGroupsRequest request);
  $async.Future<$4.PutUserGroupsResult> put($grpc.ServiceCall call, $4.PutUserGroupsRequest request);
  $async.Future<$4.DeleteUserGroupsResult> delete($grpc.ServiceCall call, $4.DeleteUserGroupsRequest request);
  $async.Future<$4.ListUserGroupsResult> list($grpc.ServiceCall call, $4.ListUserGroupsRequest request);
}
