//
//  Generated code. Do not modify.
//  source: trackingQuery.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 'shared.pb.dart' as $3;
import 'trackingQuery.pb.dart' as $57;

export 'trackingQuery.pb.dart';

@$pb.GrpcServiceName('api.TrackingQuery')
class TrackingQueryClient extends $grpc.Client {
  static final _$getByIds = $grpc.ClientMethod<$57.TrackingByIdQuery, $57.TrackingByIdResult>(
      '/api.TrackingQuery/GetByIds',
      ($57.TrackingByIdQuery value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $57.TrackingByIdResult.fromBuffer(value));
  static final _$countLines = $grpc.ClientMethod<$3.CountLinesQuery, $3.CountLinesResult>(
      '/api.TrackingQuery/CountLines',
      ($3.CountLinesQuery value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $3.CountLinesResult.fromBuffer(value));

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

  $grpc.ResponseFuture<$57.TrackingByIdResult> getByIds($57.TrackingByIdQuery request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$getByIds, request, options: options);
  }

  $grpc.ResponseFuture<$3.CountLinesResult> countLines($3.CountLinesQuery request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$countLines, request, options: options);
  }
}

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

  TrackingQueryServiceBase() {
    $addMethod($grpc.ServiceMethod<$57.TrackingByIdQuery, $57.TrackingByIdResult>(
        'GetByIds',
        getByIds_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $57.TrackingByIdQuery.fromBuffer(value),
        ($57.TrackingByIdResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$3.CountLinesQuery, $3.CountLinesResult>(
        'CountLines',
        countLines_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $3.CountLinesQuery.fromBuffer(value),
        ($3.CountLinesResult value) => value.writeToBuffer()));
  }

  $async.Future<$57.TrackingByIdResult> getByIds_Pre($grpc.ServiceCall $call, $async.Future<$57.TrackingByIdQuery> $request) async {
    return getByIds($call, await $request);
  }

  $async.Future<$3.CountLinesResult> countLines_Pre($grpc.ServiceCall $call, $async.Future<$3.CountLinesQuery> $request) async {
    return countLines($call, await $request);
  }

  $async.Future<$57.TrackingByIdResult> getByIds($grpc.ServiceCall call, $57.TrackingByIdQuery request);
  $async.Future<$3.CountLinesResult> countLines($grpc.ServiceCall call, $3.CountLinesQuery request);
}
