//
//  Generated code. Do not modify.
//  source: restrictions.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 'restrictions.pb.dart' as $51;

export 'restrictions.pb.dart';

@$pb.GrpcServiceName('api.RestrictionService')
class RestrictionServiceClient extends $grpc.Client {
  static final _$create = $grpc.ClientMethod<$51.CreateRestrictionRequest, $51.CreateRestrictionResponse>(
      '/api.RestrictionService/Create',
      ($51.CreateRestrictionRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.CreateRestrictionResponse.fromBuffer(value));
  static final _$update = $grpc.ClientMethod<$51.UpdateRestrictionRequest, $51.UpdateRestrictionResponse>(
      '/api.RestrictionService/Update',
      ($51.UpdateRestrictionRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.UpdateRestrictionResponse.fromBuffer(value));
  static final _$get = $grpc.ClientMethod<$51.GetRestrictionRequest, $51.GetRestrictionResponse>(
      '/api.RestrictionService/Get',
      ($51.GetRestrictionRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.GetRestrictionResponse.fromBuffer(value));
  static final _$list = $grpc.ClientMethod<$51.ListRestrictionsRequest, $51.ListRestrictionsResponse>(
      '/api.RestrictionService/List',
      ($51.ListRestrictionsRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.ListRestrictionsResponse.fromBuffer(value));
  static final _$delete = $grpc.ClientMethod<$51.DeleteRestrictionRequest, $51.DeleteRestrictionResponse>(
      '/api.RestrictionService/Delete',
      ($51.DeleteRestrictionRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.DeleteRestrictionResponse.fromBuffer(value));
  static final _$enable = $grpc.ClientMethod<$51.EnableRestrictionRequest, $51.EnableRestrictionResponse>(
      '/api.RestrictionService/Enable',
      ($51.EnableRestrictionRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.EnableRestrictionResponse.fromBuffer(value));
  static final _$disable = $grpc.ClientMethod<$51.DisableRestrictionRequest, $51.DisableRestrictionResponse>(
      '/api.RestrictionService/Disable',
      ($51.DisableRestrictionRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.DisableRestrictionResponse.fromBuffer(value));
  static final _$deleteForProject = $grpc.ClientMethod<$51.DeleteForProjectRestrictionRequest, $51.DeleteForProjectRestrictionResponse>(
      '/api.RestrictionService/DeleteForProject',
      ($51.DeleteForProjectRestrictionRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.DeleteForProjectRestrictionResponse.fromBuffer(value));
  static final _$getRulesJSONTree = $grpc.ClientMethod<$51.GetRulesJSONTreeRequest, $51.GetRulesJSONTreeResponse>(
      '/api.RestrictionService/GetRulesJSONTree',
      ($51.GetRulesJSONTreeRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.GetRulesJSONTreeResponse.fromBuffer(value));
  static final _$validateRule = $grpc.ClientMethod<$51.ValidateRestrictionRuleRequest, $51.ValidateRestrictionRuleResponse>(
      '/api.RestrictionService/ValidateRule',
      ($51.ValidateRestrictionRuleRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.ValidateRestrictionRuleResponse.fromBuffer(value));
  static final _$getRuleJSONTree = $grpc.ClientMethod<$51.GetRuleJSONTreeRequest, $51.GetRuleJSONTreeResponse>(
      '/api.RestrictionService/GetRuleJSONTree',
      ($51.GetRuleJSONTreeRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.GetRuleJSONTreeResponse.fromBuffer(value));
  static final _$compute = $grpc.ClientMethod<$51.ComputeRuleRequest, $51.ComputeRuleResponse>(
      '/api.RestrictionService/Compute',
      ($51.ComputeRuleRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $51.ComputeRuleResponse.fromBuffer(value));

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

  $grpc.ResponseFuture<$51.CreateRestrictionResponse> create($51.CreateRestrictionRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$create, request, options: options);
  }

  $grpc.ResponseFuture<$51.UpdateRestrictionResponse> update($51.UpdateRestrictionRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$update, request, options: options);
  }

  $grpc.ResponseFuture<$51.GetRestrictionResponse> get($51.GetRestrictionRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$get, request, options: options);
  }

  $grpc.ResponseFuture<$51.ListRestrictionsResponse> list($51.ListRestrictionsRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$list, request, options: options);
  }

  $grpc.ResponseFuture<$51.DeleteRestrictionResponse> delete($51.DeleteRestrictionRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$delete, request, options: options);
  }

  $grpc.ResponseFuture<$51.EnableRestrictionResponse> enable($51.EnableRestrictionRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$enable, request, options: options);
  }

  $grpc.ResponseFuture<$51.DisableRestrictionResponse> disable($51.DisableRestrictionRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$disable, request, options: options);
  }

  $grpc.ResponseFuture<$51.DeleteForProjectRestrictionResponse> deleteForProject($51.DeleteForProjectRestrictionRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$deleteForProject, request, options: options);
  }

  $grpc.ResponseFuture<$51.GetRulesJSONTreeResponse> getRulesJSONTree($51.GetRulesJSONTreeRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$getRulesJSONTree, request, options: options);
  }

  $grpc.ResponseFuture<$51.ValidateRestrictionRuleResponse> validateRule($51.ValidateRestrictionRuleRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$validateRule, request, options: options);
  }

  $grpc.ResponseFuture<$51.GetRuleJSONTreeResponse> getRuleJSONTree($51.GetRuleJSONTreeRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$getRuleJSONTree, request, options: options);
  }

  $grpc.ResponseFuture<$51.ComputeRuleResponse> compute($51.ComputeRuleRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$compute, request, options: options);
  }
}

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

  RestrictionServiceBase() {
    $addMethod($grpc.ServiceMethod<$51.CreateRestrictionRequest, $51.CreateRestrictionResponse>(
        'Create',
        create_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.CreateRestrictionRequest.fromBuffer(value),
        ($51.CreateRestrictionResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.UpdateRestrictionRequest, $51.UpdateRestrictionResponse>(
        'Update',
        update_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.UpdateRestrictionRequest.fromBuffer(value),
        ($51.UpdateRestrictionResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.GetRestrictionRequest, $51.GetRestrictionResponse>(
        'Get',
        get_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.GetRestrictionRequest.fromBuffer(value),
        ($51.GetRestrictionResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.ListRestrictionsRequest, $51.ListRestrictionsResponse>(
        'List',
        list_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.ListRestrictionsRequest.fromBuffer(value),
        ($51.ListRestrictionsResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.DeleteRestrictionRequest, $51.DeleteRestrictionResponse>(
        'Delete',
        delete_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.DeleteRestrictionRequest.fromBuffer(value),
        ($51.DeleteRestrictionResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.EnableRestrictionRequest, $51.EnableRestrictionResponse>(
        'Enable',
        enable_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.EnableRestrictionRequest.fromBuffer(value),
        ($51.EnableRestrictionResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.DisableRestrictionRequest, $51.DisableRestrictionResponse>(
        'Disable',
        disable_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.DisableRestrictionRequest.fromBuffer(value),
        ($51.DisableRestrictionResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.DeleteForProjectRestrictionRequest, $51.DeleteForProjectRestrictionResponse>(
        'DeleteForProject',
        deleteForProject_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.DeleteForProjectRestrictionRequest.fromBuffer(value),
        ($51.DeleteForProjectRestrictionResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.GetRulesJSONTreeRequest, $51.GetRulesJSONTreeResponse>(
        'GetRulesJSONTree',
        getRulesJSONTree_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.GetRulesJSONTreeRequest.fromBuffer(value),
        ($51.GetRulesJSONTreeResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.ValidateRestrictionRuleRequest, $51.ValidateRestrictionRuleResponse>(
        'ValidateRule',
        validateRule_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.ValidateRestrictionRuleRequest.fromBuffer(value),
        ($51.ValidateRestrictionRuleResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.GetRuleJSONTreeRequest, $51.GetRuleJSONTreeResponse>(
        'GetRuleJSONTree',
        getRuleJSONTree_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.GetRuleJSONTreeRequest.fromBuffer(value),
        ($51.GetRuleJSONTreeResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$51.ComputeRuleRequest, $51.ComputeRuleResponse>(
        'Compute',
        compute_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $51.ComputeRuleRequest.fromBuffer(value),
        ($51.ComputeRuleResponse value) => value.writeToBuffer()));
  }

  $async.Future<$51.CreateRestrictionResponse> create_Pre($grpc.ServiceCall $call, $async.Future<$51.CreateRestrictionRequest> $request) async {
    return create($call, await $request);
  }

  $async.Future<$51.UpdateRestrictionResponse> update_Pre($grpc.ServiceCall $call, $async.Future<$51.UpdateRestrictionRequest> $request) async {
    return update($call, await $request);
  }

  $async.Future<$51.GetRestrictionResponse> get_Pre($grpc.ServiceCall $call, $async.Future<$51.GetRestrictionRequest> $request) async {
    return get($call, await $request);
  }

  $async.Future<$51.ListRestrictionsResponse> list_Pre($grpc.ServiceCall $call, $async.Future<$51.ListRestrictionsRequest> $request) async {
    return list($call, await $request);
  }

  $async.Future<$51.DeleteRestrictionResponse> delete_Pre($grpc.ServiceCall $call, $async.Future<$51.DeleteRestrictionRequest> $request) async {
    return delete($call, await $request);
  }

  $async.Future<$51.EnableRestrictionResponse> enable_Pre($grpc.ServiceCall $call, $async.Future<$51.EnableRestrictionRequest> $request) async {
    return enable($call, await $request);
  }

  $async.Future<$51.DisableRestrictionResponse> disable_Pre($grpc.ServiceCall $call, $async.Future<$51.DisableRestrictionRequest> $request) async {
    return disable($call, await $request);
  }

  $async.Future<$51.DeleteForProjectRestrictionResponse> deleteForProject_Pre($grpc.ServiceCall $call, $async.Future<$51.DeleteForProjectRestrictionRequest> $request) async {
    return deleteForProject($call, await $request);
  }

  $async.Future<$51.GetRulesJSONTreeResponse> getRulesJSONTree_Pre($grpc.ServiceCall $call, $async.Future<$51.GetRulesJSONTreeRequest> $request) async {
    return getRulesJSONTree($call, await $request);
  }

  $async.Future<$51.ValidateRestrictionRuleResponse> validateRule_Pre($grpc.ServiceCall $call, $async.Future<$51.ValidateRestrictionRuleRequest> $request) async {
    return validateRule($call, await $request);
  }

  $async.Future<$51.GetRuleJSONTreeResponse> getRuleJSONTree_Pre($grpc.ServiceCall $call, $async.Future<$51.GetRuleJSONTreeRequest> $request) async {
    return getRuleJSONTree($call, await $request);
  }

  $async.Future<$51.ComputeRuleResponse> compute_Pre($grpc.ServiceCall $call, $async.Future<$51.ComputeRuleRequest> $request) async {
    return compute($call, await $request);
  }

  $async.Future<$51.CreateRestrictionResponse> create($grpc.ServiceCall call, $51.CreateRestrictionRequest request);
  $async.Future<$51.UpdateRestrictionResponse> update($grpc.ServiceCall call, $51.UpdateRestrictionRequest request);
  $async.Future<$51.GetRestrictionResponse> get($grpc.ServiceCall call, $51.GetRestrictionRequest request);
  $async.Future<$51.ListRestrictionsResponse> list($grpc.ServiceCall call, $51.ListRestrictionsRequest request);
  $async.Future<$51.DeleteRestrictionResponse> delete($grpc.ServiceCall call, $51.DeleteRestrictionRequest request);
  $async.Future<$51.EnableRestrictionResponse> enable($grpc.ServiceCall call, $51.EnableRestrictionRequest request);
  $async.Future<$51.DisableRestrictionResponse> disable($grpc.ServiceCall call, $51.DisableRestrictionRequest request);
  $async.Future<$51.DeleteForProjectRestrictionResponse> deleteForProject($grpc.ServiceCall call, $51.DeleteForProjectRestrictionRequest request);
  $async.Future<$51.GetRulesJSONTreeResponse> getRulesJSONTree($grpc.ServiceCall call, $51.GetRulesJSONTreeRequest request);
  $async.Future<$51.ValidateRestrictionRuleResponse> validateRule($grpc.ServiceCall call, $51.ValidateRestrictionRuleRequest request);
  $async.Future<$51.GetRuleJSONTreeResponse> getRuleJSONTree($grpc.ServiceCall call, $51.GetRuleJSONTreeRequest request);
  $async.Future<$51.ComputeRuleResponse> compute($grpc.ServiceCall call, $51.ComputeRuleRequest request);
}
