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

export 'go-ape.pb.dart';

@$pb.GrpcServiceName('api.GoAPEService')
class GoAPEServiceClient extends $grpc.Client {
  static final _$generate = $grpc.ClientMethod<$0.GoAPEGenerateRequest, $0.GoAPEGenerateResult>(
      '/api.GoAPEService/Generate',
      ($0.GoAPEGenerateRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $0.GoAPEGenerateResult.fromBuffer(value));

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

  $grpc.ResponseFuture<$0.GoAPEGenerateResult> generate($0.GoAPEGenerateRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$generate, request, options: options);
  }
}

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

  GoAPEServiceBase() {
    $addMethod($grpc.ServiceMethod<$0.GoAPEGenerateRequest, $0.GoAPEGenerateResult>(
        'Generate',
        generate_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.GoAPEGenerateRequest.fromBuffer(value),
        ($0.GoAPEGenerateResult value) => value.writeToBuffer()));
  }

  $async.Future<$0.GoAPEGenerateResult> generate_Pre($grpc.ServiceCall $call, $async.Future<$0.GoAPEGenerateRequest> $request) async {
    return generate($call, await $request);
  }

  $async.Future<$0.GoAPEGenerateResult> generate($grpc.ServiceCall call, $0.GoAPEGenerateRequest request);
}
