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

export 'attachmentV2.pb.dart';

@$pb.GrpcServiceName('api.AttachmentServiceV2')
class AttachmentServiceV2Client extends $grpc.Client {
  static final _$upload = $grpc.ClientMethod<$8.UploadAttachmentV2Request, $8.UploadAttachmentV2Response>(
      '/api.AttachmentServiceV2/Upload',
      ($8.UploadAttachmentV2Request value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $8.UploadAttachmentV2Response.fromBuffer(value));
  static final _$addLink = $grpc.ClientMethod<$8.AddLinkV2Request, $8.AddLinkV2Response>(
      '/api.AttachmentServiceV2/AddLink',
      ($8.AddLinkV2Request value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $8.AddLinkV2Response.fromBuffer(value));
  static final _$download = $grpc.ClientMethod<$8.DownloadAttachmentV2Request, $8.DownloadAttachmentV2Response>(
      '/api.AttachmentServiceV2/Download',
      ($8.DownloadAttachmentV2Request value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $8.DownloadAttachmentV2Response.fromBuffer(value));
  static final _$delete = $grpc.ClientMethod<$8.DeleteAttachmentV2Request, $8.DeleteAttachmentV2Response>(
      '/api.AttachmentServiceV2/Delete',
      ($8.DeleteAttachmentV2Request value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $8.DeleteAttachmentV2Response.fromBuffer(value));
  static final _$list = $grpc.ClientMethod<$8.ListAttachmentsV2Request, $8.ListAttachmentsV2Response>(
      '/api.AttachmentServiceV2/List',
      ($8.ListAttachmentsV2Request value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $8.ListAttachmentsV2Response.fromBuffer(value));
  static final _$share = $grpc.ClientMethod<$8.ShareAttachmentV2Request, $8.ShareAttachmentV2Response>(
      '/api.AttachmentServiceV2/Share',
      ($8.ShareAttachmentV2Request value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $8.ShareAttachmentV2Response.fromBuffer(value));
  static final _$deleteAll = $grpc.ClientMethod<$8.DeleteAllAttachmentsV2Request, $8.DeleteAllAttachmentsV2Response>(
      '/api.AttachmentServiceV2/DeleteAll',
      ($8.DeleteAllAttachmentsV2Request value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $8.DeleteAllAttachmentsV2Response.fromBuffer(value));

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

  $grpc.ResponseFuture<$8.UploadAttachmentV2Response> upload($8.UploadAttachmentV2Request request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$upload, request, options: options);
  }

  $grpc.ResponseFuture<$8.AddLinkV2Response> addLink($8.AddLinkV2Request request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$addLink, request, options: options);
  }

  $grpc.ResponseFuture<$8.DownloadAttachmentV2Response> download($8.DownloadAttachmentV2Request request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$download, request, options: options);
  }

  $grpc.ResponseFuture<$8.DeleteAttachmentV2Response> delete($8.DeleteAttachmentV2Request request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$delete, request, options: options);
  }

  $grpc.ResponseFuture<$8.ListAttachmentsV2Response> list($8.ListAttachmentsV2Request request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$list, request, options: options);
  }

  $grpc.ResponseFuture<$8.ShareAttachmentV2Response> share($8.ShareAttachmentV2Request request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$share, request, options: options);
  }

  $grpc.ResponseFuture<$8.DeleteAllAttachmentsV2Response> deleteAll($8.DeleteAllAttachmentsV2Request request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$deleteAll, request, options: options);
  }
}

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

  AttachmentServiceV2ServiceBase() {
    $addMethod($grpc.ServiceMethod<$8.UploadAttachmentV2Request, $8.UploadAttachmentV2Response>(
        'Upload',
        upload_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $8.UploadAttachmentV2Request.fromBuffer(value),
        ($8.UploadAttachmentV2Response value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$8.AddLinkV2Request, $8.AddLinkV2Response>(
        'AddLink',
        addLink_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $8.AddLinkV2Request.fromBuffer(value),
        ($8.AddLinkV2Response value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$8.DownloadAttachmentV2Request, $8.DownloadAttachmentV2Response>(
        'Download',
        download_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $8.DownloadAttachmentV2Request.fromBuffer(value),
        ($8.DownloadAttachmentV2Response value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$8.DeleteAttachmentV2Request, $8.DeleteAttachmentV2Response>(
        'Delete',
        delete_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $8.DeleteAttachmentV2Request.fromBuffer(value),
        ($8.DeleteAttachmentV2Response value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$8.ListAttachmentsV2Request, $8.ListAttachmentsV2Response>(
        'List',
        list_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $8.ListAttachmentsV2Request.fromBuffer(value),
        ($8.ListAttachmentsV2Response value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$8.ShareAttachmentV2Request, $8.ShareAttachmentV2Response>(
        'Share',
        share_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $8.ShareAttachmentV2Request.fromBuffer(value),
        ($8.ShareAttachmentV2Response value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$8.DeleteAllAttachmentsV2Request, $8.DeleteAllAttachmentsV2Response>(
        'DeleteAll',
        deleteAll_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $8.DeleteAllAttachmentsV2Request.fromBuffer(value),
        ($8.DeleteAllAttachmentsV2Response value) => value.writeToBuffer()));
  }

  $async.Future<$8.UploadAttachmentV2Response> upload_Pre($grpc.ServiceCall $call, $async.Future<$8.UploadAttachmentV2Request> $request) async {
    return upload($call, await $request);
  }

  $async.Future<$8.AddLinkV2Response> addLink_Pre($grpc.ServiceCall $call, $async.Future<$8.AddLinkV2Request> $request) async {
    return addLink($call, await $request);
  }

  $async.Future<$8.DownloadAttachmentV2Response> download_Pre($grpc.ServiceCall $call, $async.Future<$8.DownloadAttachmentV2Request> $request) async {
    return download($call, await $request);
  }

  $async.Future<$8.DeleteAttachmentV2Response> delete_Pre($grpc.ServiceCall $call, $async.Future<$8.DeleteAttachmentV2Request> $request) async {
    return delete($call, await $request);
  }

  $async.Future<$8.ListAttachmentsV2Response> list_Pre($grpc.ServiceCall $call, $async.Future<$8.ListAttachmentsV2Request> $request) async {
    return list($call, await $request);
  }

  $async.Future<$8.ShareAttachmentV2Response> share_Pre($grpc.ServiceCall $call, $async.Future<$8.ShareAttachmentV2Request> $request) async {
    return share($call, await $request);
  }

  $async.Future<$8.DeleteAllAttachmentsV2Response> deleteAll_Pre($grpc.ServiceCall $call, $async.Future<$8.DeleteAllAttachmentsV2Request> $request) async {
    return deleteAll($call, await $request);
  }

  $async.Future<$8.UploadAttachmentV2Response> upload($grpc.ServiceCall call, $8.UploadAttachmentV2Request request);
  $async.Future<$8.AddLinkV2Response> addLink($grpc.ServiceCall call, $8.AddLinkV2Request request);
  $async.Future<$8.DownloadAttachmentV2Response> download($grpc.ServiceCall call, $8.DownloadAttachmentV2Request request);
  $async.Future<$8.DeleteAttachmentV2Response> delete($grpc.ServiceCall call, $8.DeleteAttachmentV2Request request);
  $async.Future<$8.ListAttachmentsV2Response> list($grpc.ServiceCall call, $8.ListAttachmentsV2Request request);
  $async.Future<$8.ShareAttachmentV2Response> share($grpc.ServiceCall call, $8.ShareAttachmentV2Request request);
  $async.Future<$8.DeleteAllAttachmentsV2Response> deleteAll($grpc.ServiceCall call, $8.DeleteAllAttachmentsV2Request request);
}
