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

export 'restrictionLinks.pb.dart';

@$pb.GrpcServiceName('api.RestrictionLinkService')
class RestrictionLinkServiceClient extends $grpc.Client {
  static final _$create = $grpc.ClientMethod<$50.CreateRestrictionLinkRequest, $50.CreateRestrictionLinkResponse>(
      '/api.RestrictionLinkService/Create',
      ($50.CreateRestrictionLinkRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $50.CreateRestrictionLinkResponse.fromBuffer(value));
  static final _$update = $grpc.ClientMethod<$50.UpdateRestrictionLinkRequest, $50.UpdateRestrictionLinkResponse>(
      '/api.RestrictionLinkService/Update',
      ($50.UpdateRestrictionLinkRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $50.UpdateRestrictionLinkResponse.fromBuffer(value));
  static final _$delete = $grpc.ClientMethod<$50.DeleteRestrictionLinkRequest, $50.DeleteRestrictionLinkResponse>(
      '/api.RestrictionLinkService/Delete',
      ($50.DeleteRestrictionLinkRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $50.DeleteRestrictionLinkResponse.fromBuffer(value));
  static final _$get = $grpc.ClientMethod<$50.GetRestrictionLinkRequest, $50.GetRestrictionLinkResponse>(
      '/api.RestrictionLinkService/Get',
      ($50.GetRestrictionLinkRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $50.GetRestrictionLinkResponse.fromBuffer(value));
  static final _$list = $grpc.ClientMethod<$50.ListRestrictionLinksRequest, $50.ListRestrictionLinksResponse>(
      '/api.RestrictionLinkService/List',
      ($50.ListRestrictionLinksRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $50.ListRestrictionLinksResponse.fromBuffer(value));
  static final _$setUserActors = $grpc.ClientMethod<$50.SetUserActorsRequest, $50.SetUserActorsResponse>(
      '/api.RestrictionLinkService/SetUserActors',
      ($50.SetUserActorsRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $50.SetUserActorsResponse.fromBuffer(value));
  static final _$deleteForProject = $grpc.ClientMethod<$50.DeleteForProjectRestrictionLinkRequest, $50.DeleteForProjectRestrictionLinkResponse>(
      '/api.RestrictionLinkService/DeleteForProject',
      ($50.DeleteForProjectRestrictionLinkRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $50.DeleteForProjectRestrictionLinkResponse.fromBuffer(value));

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

  $grpc.ResponseFuture<$50.CreateRestrictionLinkResponse> create($50.CreateRestrictionLinkRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$create, request, options: options);
  }

  $grpc.ResponseFuture<$50.UpdateRestrictionLinkResponse> update($50.UpdateRestrictionLinkRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$update, request, options: options);
  }

  $grpc.ResponseFuture<$50.DeleteRestrictionLinkResponse> delete($50.DeleteRestrictionLinkRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$delete, request, options: options);
  }

  $grpc.ResponseFuture<$50.GetRestrictionLinkResponse> get($50.GetRestrictionLinkRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$get, request, options: options);
  }

  $grpc.ResponseFuture<$50.ListRestrictionLinksResponse> list($50.ListRestrictionLinksRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$list, request, options: options);
  }

  $grpc.ResponseFuture<$50.SetUserActorsResponse> setUserActors($50.SetUserActorsRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$setUserActors, request, options: options);
  }

  $grpc.ResponseFuture<$50.DeleteForProjectRestrictionLinkResponse> deleteForProject($50.DeleteForProjectRestrictionLinkRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$deleteForProject, request, options: options);
  }
}

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

  RestrictionLinkServiceBase() {
    $addMethod($grpc.ServiceMethod<$50.CreateRestrictionLinkRequest, $50.CreateRestrictionLinkResponse>(
        'Create',
        create_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $50.CreateRestrictionLinkRequest.fromBuffer(value),
        ($50.CreateRestrictionLinkResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$50.UpdateRestrictionLinkRequest, $50.UpdateRestrictionLinkResponse>(
        'Update',
        update_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $50.UpdateRestrictionLinkRequest.fromBuffer(value),
        ($50.UpdateRestrictionLinkResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$50.DeleteRestrictionLinkRequest, $50.DeleteRestrictionLinkResponse>(
        'Delete',
        delete_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $50.DeleteRestrictionLinkRequest.fromBuffer(value),
        ($50.DeleteRestrictionLinkResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$50.GetRestrictionLinkRequest, $50.GetRestrictionLinkResponse>(
        'Get',
        get_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $50.GetRestrictionLinkRequest.fromBuffer(value),
        ($50.GetRestrictionLinkResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$50.ListRestrictionLinksRequest, $50.ListRestrictionLinksResponse>(
        'List',
        list_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $50.ListRestrictionLinksRequest.fromBuffer(value),
        ($50.ListRestrictionLinksResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$50.SetUserActorsRequest, $50.SetUserActorsResponse>(
        'SetUserActors',
        setUserActors_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $50.SetUserActorsRequest.fromBuffer(value),
        ($50.SetUserActorsResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$50.DeleteForProjectRestrictionLinkRequest, $50.DeleteForProjectRestrictionLinkResponse>(
        'DeleteForProject',
        deleteForProject_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $50.DeleteForProjectRestrictionLinkRequest.fromBuffer(value),
        ($50.DeleteForProjectRestrictionLinkResponse value) => value.writeToBuffer()));
  }

  $async.Future<$50.CreateRestrictionLinkResponse> create_Pre($grpc.ServiceCall $call, $async.Future<$50.CreateRestrictionLinkRequest> $request) async {
    return create($call, await $request);
  }

  $async.Future<$50.UpdateRestrictionLinkResponse> update_Pre($grpc.ServiceCall $call, $async.Future<$50.UpdateRestrictionLinkRequest> $request) async {
    return update($call, await $request);
  }

  $async.Future<$50.DeleteRestrictionLinkResponse> delete_Pre($grpc.ServiceCall $call, $async.Future<$50.DeleteRestrictionLinkRequest> $request) async {
    return delete($call, await $request);
  }

  $async.Future<$50.GetRestrictionLinkResponse> get_Pre($grpc.ServiceCall $call, $async.Future<$50.GetRestrictionLinkRequest> $request) async {
    return get($call, await $request);
  }

  $async.Future<$50.ListRestrictionLinksResponse> list_Pre($grpc.ServiceCall $call, $async.Future<$50.ListRestrictionLinksRequest> $request) async {
    return list($call, await $request);
  }

  $async.Future<$50.SetUserActorsResponse> setUserActors_Pre($grpc.ServiceCall $call, $async.Future<$50.SetUserActorsRequest> $request) async {
    return setUserActors($call, await $request);
  }

  $async.Future<$50.DeleteForProjectRestrictionLinkResponse> deleteForProject_Pre($grpc.ServiceCall $call, $async.Future<$50.DeleteForProjectRestrictionLinkRequest> $request) async {
    return deleteForProject($call, await $request);
  }

  $async.Future<$50.CreateRestrictionLinkResponse> create($grpc.ServiceCall call, $50.CreateRestrictionLinkRequest request);
  $async.Future<$50.UpdateRestrictionLinkResponse> update($grpc.ServiceCall call, $50.UpdateRestrictionLinkRequest request);
  $async.Future<$50.DeleteRestrictionLinkResponse> delete($grpc.ServiceCall call, $50.DeleteRestrictionLinkRequest request);
  $async.Future<$50.GetRestrictionLinkResponse> get($grpc.ServiceCall call, $50.GetRestrictionLinkRequest request);
  $async.Future<$50.ListRestrictionLinksResponse> list($grpc.ServiceCall call, $50.ListRestrictionLinksRequest request);
  $async.Future<$50.SetUserActorsResponse> setUserActors($grpc.ServiceCall call, $50.SetUserActorsRequest request);
  $async.Future<$50.DeleteForProjectRestrictionLinkResponse> deleteForProject($grpc.ServiceCall call, $50.DeleteForProjectRestrictionLinkRequest request);
}
