// This is a generated file - do not edit.
//
// Generated from module.proto.

// @dart = 3.3

// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names
// ignore_for_file: curly_braces_in_flow_control_structures
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
// ignore_for_file: non_constant_identifier_names

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 'module.pb.dart' as $0;

export 'module.pb.dart';

@$pb.GrpcServiceName('api.ModuleService')
class ModuleServiceClient extends $grpc.Client {
  /// The hostname for this service.
  static const $core.String defaultHost = '';

  /// OAuth scopes needed for the client.
  static const $core.List<$core.String> oauthScopes = [
    '',
  ];

  ModuleServiceClient(super.channel, {super.options, super.interceptors});

  $grpc.ResponseFuture<$0.ListModulesResponse> list($0.ListModulesRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$list, request, options: options);
  }

  $grpc.ResponseFuture<$0.CreateModuleResponse> create($0.CreateModuleRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$create, request, options: options);
  }

  $grpc.ResponseFuture<$0.DeleteModuleResponse> delete($0.DeleteModuleRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$delete, request, options: options);
  }

  $grpc.ResponseFuture<$0.SetOrganisationModulesResponse> setOrganisationModules($0.SetOrganisationModulesRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$setOrganisationModules, request, options: options);
  }

  $grpc.ResponseFuture<$0.SetProjectModulesResponse> setProjectModules($0.SetProjectModulesRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$setProjectModules, request, options: options);
  }

  $grpc.ResponseFuture<$0.SetResourceModulesResponse> setResourceModules($0.SetResourceModulesRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$setResourceModules, request, options: options);
  }

  $grpc.ResponseFuture<$0.ListResourceModulesResponse> listResourceModules($0.ListResourceModulesRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$listResourceModules, request, options: options);
  }

  $grpc.ResponseFuture<$0.IsAPIActivatedResponse> isAPIActivated($0.IsAPIActivatedRequest request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$isAPIActivated, request, options: options);
  }

    // method descriptors

  static final _$list = $grpc.ClientMethod<$0.ListModulesRequest, $0.ListModulesResponse>(
      '/api.ModuleService/List',
      ($0.ListModulesRequest value) => value.writeToBuffer(),
      $0.ListModulesResponse.fromBuffer);
  static final _$create = $grpc.ClientMethod<$0.CreateModuleRequest, $0.CreateModuleResponse>(
      '/api.ModuleService/Create',
      ($0.CreateModuleRequest value) => value.writeToBuffer(),
      $0.CreateModuleResponse.fromBuffer);
  static final _$delete = $grpc.ClientMethod<$0.DeleteModuleRequest, $0.DeleteModuleResponse>(
      '/api.ModuleService/Delete',
      ($0.DeleteModuleRequest value) => value.writeToBuffer(),
      $0.DeleteModuleResponse.fromBuffer);
  static final _$setOrganisationModules = $grpc.ClientMethod<$0.SetOrganisationModulesRequest, $0.SetOrganisationModulesResponse>(
      '/api.ModuleService/SetOrganisationModules',
      ($0.SetOrganisationModulesRequest value) => value.writeToBuffer(),
      $0.SetOrganisationModulesResponse.fromBuffer);
  static final _$setProjectModules = $grpc.ClientMethod<$0.SetProjectModulesRequest, $0.SetProjectModulesResponse>(
      '/api.ModuleService/SetProjectModules',
      ($0.SetProjectModulesRequest value) => value.writeToBuffer(),
      $0.SetProjectModulesResponse.fromBuffer);
  static final _$setResourceModules = $grpc.ClientMethod<$0.SetResourceModulesRequest, $0.SetResourceModulesResponse>(
      '/api.ModuleService/SetResourceModules',
      ($0.SetResourceModulesRequest value) => value.writeToBuffer(),
      $0.SetResourceModulesResponse.fromBuffer);
  static final _$listResourceModules = $grpc.ClientMethod<$0.ListResourceModulesRequest, $0.ListResourceModulesResponse>(
      '/api.ModuleService/ListResourceModules',
      ($0.ListResourceModulesRequest value) => value.writeToBuffer(),
      $0.ListResourceModulesResponse.fromBuffer);
  static final _$isAPIActivated = $grpc.ClientMethod<$0.IsAPIActivatedRequest, $0.IsAPIActivatedResponse>(
      '/api.ModuleService/IsAPIActivated',
      ($0.IsAPIActivatedRequest value) => value.writeToBuffer(),
      $0.IsAPIActivatedResponse.fromBuffer);
}

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

  ModuleServiceBase() {
    $addMethod($grpc.ServiceMethod<$0.ListModulesRequest, $0.ListModulesResponse>(
        'List',
        list_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.ListModulesRequest.fromBuffer(value),
        ($0.ListModulesResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.CreateModuleRequest, $0.CreateModuleResponse>(
        'Create',
        create_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.CreateModuleRequest.fromBuffer(value),
        ($0.CreateModuleResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.DeleteModuleRequest, $0.DeleteModuleResponse>(
        'Delete',
        delete_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.DeleteModuleRequest.fromBuffer(value),
        ($0.DeleteModuleResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.SetOrganisationModulesRequest, $0.SetOrganisationModulesResponse>(
        'SetOrganisationModules',
        setOrganisationModules_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.SetOrganisationModulesRequest.fromBuffer(value),
        ($0.SetOrganisationModulesResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.SetProjectModulesRequest, $0.SetProjectModulesResponse>(
        'SetProjectModules',
        setProjectModules_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.SetProjectModulesRequest.fromBuffer(value),
        ($0.SetProjectModulesResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.SetResourceModulesRequest, $0.SetResourceModulesResponse>(
        'SetResourceModules',
        setResourceModules_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.SetResourceModulesRequest.fromBuffer(value),
        ($0.SetResourceModulesResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.ListResourceModulesRequest, $0.ListResourceModulesResponse>(
        'ListResourceModules',
        listResourceModules_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.ListResourceModulesRequest.fromBuffer(value),
        ($0.ListResourceModulesResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.IsAPIActivatedRequest, $0.IsAPIActivatedResponse>(
        'IsAPIActivated',
        isAPIActivated_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.IsAPIActivatedRequest.fromBuffer(value),
        ($0.IsAPIActivatedResponse value) => value.writeToBuffer()));
  }

  $async.Future<$0.ListModulesResponse> list_Pre($grpc.ServiceCall $call, $async.Future<$0.ListModulesRequest> $request) async {
    return list($call, await $request);
  }

  $async.Future<$0.ListModulesResponse> list($grpc.ServiceCall call, $0.ListModulesRequest request);

  $async.Future<$0.CreateModuleResponse> create_Pre($grpc.ServiceCall $call, $async.Future<$0.CreateModuleRequest> $request) async {
    return create($call, await $request);
  }

  $async.Future<$0.CreateModuleResponse> create($grpc.ServiceCall call, $0.CreateModuleRequest request);

  $async.Future<$0.DeleteModuleResponse> delete_Pre($grpc.ServiceCall $call, $async.Future<$0.DeleteModuleRequest> $request) async {
    return delete($call, await $request);
  }

  $async.Future<$0.DeleteModuleResponse> delete($grpc.ServiceCall call, $0.DeleteModuleRequest request);

  $async.Future<$0.SetOrganisationModulesResponse> setOrganisationModules_Pre($grpc.ServiceCall $call, $async.Future<$0.SetOrganisationModulesRequest> $request) async {
    return setOrganisationModules($call, await $request);
  }

  $async.Future<$0.SetOrganisationModulesResponse> setOrganisationModules($grpc.ServiceCall call, $0.SetOrganisationModulesRequest request);

  $async.Future<$0.SetProjectModulesResponse> setProjectModules_Pre($grpc.ServiceCall $call, $async.Future<$0.SetProjectModulesRequest> $request) async {
    return setProjectModules($call, await $request);
  }

  $async.Future<$0.SetProjectModulesResponse> setProjectModules($grpc.ServiceCall call, $0.SetProjectModulesRequest request);

  $async.Future<$0.SetResourceModulesResponse> setResourceModules_Pre($grpc.ServiceCall $call, $async.Future<$0.SetResourceModulesRequest> $request) async {
    return setResourceModules($call, await $request);
  }

  $async.Future<$0.SetResourceModulesResponse> setResourceModules($grpc.ServiceCall call, $0.SetResourceModulesRequest request);

  $async.Future<$0.ListResourceModulesResponse> listResourceModules_Pre($grpc.ServiceCall $call, $async.Future<$0.ListResourceModulesRequest> $request) async {
    return listResourceModules($call, await $request);
  }

  $async.Future<$0.ListResourceModulesResponse> listResourceModules($grpc.ServiceCall call, $0.ListResourceModulesRequest request);

  $async.Future<$0.IsAPIActivatedResponse> isAPIActivated_Pre($grpc.ServiceCall $call, $async.Future<$0.IsAPIActivatedRequest> $request) async {
    return isAPIActivated($call, await $request);
  }

  $async.Future<$0.IsAPIActivatedResponse> isAPIActivated($grpc.ServiceCall call, $0.IsAPIActivatedRequest request);

}
