// This is a generated file - do not edit.
//
// Generated from appointmentQuery.proto.

// @dart = 3.3

// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names
// ignore_for_file: curly_braces_in_flow_control_structures
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
// ignore_for_file: non_constant_identifier_names

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 'appointmentQuery.pb.dart' as $0;
import 'clickhouse.pb.dart' as $2;
import 'shared.pb.dart' as $1;

export 'appointmentQuery.pb.dart';

@$pb.GrpcServiceName('api.AppointmentQuery')
class AppointmentQueryClient extends $grpc.Client {
  /// The hostname for this service.
  static const $core.String defaultHost = '';

  /// OAuth scopes needed for the client.
  static const $core.List<$core.String> oauthScopes = [
    '',
  ];

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

  $grpc.ResponseFuture<$0.AppointmentByIdResult> getByIds($0.AppointmentByIdQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$getByIds, request, options: options);
  }

  $grpc.ResponseFuture<$0.AppointmentByIdResult> getByIdsMine($0.AppointmentByIdQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$getByIdsMine, request, options: options);
  }

  $grpc.ResponseFuture<$0.AppointmentByFilterResult> find($0.AppointmentByFilterQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$find, request, options: options);
  }

  $grpc.ResponseFuture<$0.AppointmentByMatchResult> findMatchingFieldValues($0.AppointmentByMatchQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$findMatchingFieldValues, request, options: options);
  }

  $grpc.ResponseFuture<$1.ElementByMatchResult> findMatchingFieldElements($1.ElementByMatchQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$findMatchingFieldElements, request, options: options);
  }

  $grpc.ResponseFuture<$1.ExtractResult> extract($1.ExtractQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$extract, request, options: options);
  }

  $grpc.ResponseFuture<$1.ExtractResult> crossExtract($1.CrossExtractQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$crossExtract, request, options: options);
  }

  $grpc.ResponseFuture<$2.GetKPIDataResult> getKPIData($2.GetKPIDataQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$getKPIData, request, options: options);
  }

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

  $grpc.ResponseFuture<$0.CrossFindAppointmentResult> crossFind($1.CrossFindQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$crossFind, request, options: options);
  }

  $grpc.ResponseFuture<$1.CrossFindByMatchResult> crossFindMatchingFieldValues($1.CrossFindByMatchQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$crossFindMatchingFieldValues, request, options: options);
  }

  $grpc.ResponseFuture<$1.ElementByMatchResult> crossFindMatchingFieldElements($1.CrossFindElementByMatchQuery request, {$grpc.CallOptions? options,}) {
    return $createUnaryCall(_$crossFindMatchingFieldElements, request, options: options);
  }

    // method descriptors

  static final _$getByIds = $grpc.ClientMethod<$0.AppointmentByIdQuery, $0.AppointmentByIdResult>(
      '/api.AppointmentQuery/GetByIds',
      ($0.AppointmentByIdQuery value) => value.writeToBuffer(),
      $0.AppointmentByIdResult.fromBuffer);
  static final _$getByIdsMine = $grpc.ClientMethod<$0.AppointmentByIdQuery, $0.AppointmentByIdResult>(
      '/api.AppointmentQuery/GetByIdsMine',
      ($0.AppointmentByIdQuery value) => value.writeToBuffer(),
      $0.AppointmentByIdResult.fromBuffer);
  static final _$find = $grpc.ClientMethod<$0.AppointmentByFilterQuery, $0.AppointmentByFilterResult>(
      '/api.AppointmentQuery/Find',
      ($0.AppointmentByFilterQuery value) => value.writeToBuffer(),
      $0.AppointmentByFilterResult.fromBuffer);
  static final _$findMatchingFieldValues = $grpc.ClientMethod<$0.AppointmentByMatchQuery, $0.AppointmentByMatchResult>(
      '/api.AppointmentQuery/FindMatchingFieldValues',
      ($0.AppointmentByMatchQuery value) => value.writeToBuffer(),
      $0.AppointmentByMatchResult.fromBuffer);
  static final _$findMatchingFieldElements = $grpc.ClientMethod<$1.ElementByMatchQuery, $1.ElementByMatchResult>(
      '/api.AppointmentQuery/FindMatchingFieldElements',
      ($1.ElementByMatchQuery value) => value.writeToBuffer(),
      $1.ElementByMatchResult.fromBuffer);
  static final _$extract = $grpc.ClientMethod<$1.ExtractQuery, $1.ExtractResult>(
      '/api.AppointmentQuery/Extract',
      ($1.ExtractQuery value) => value.writeToBuffer(),
      $1.ExtractResult.fromBuffer);
  static final _$crossExtract = $grpc.ClientMethod<$1.CrossExtractQuery, $1.ExtractResult>(
      '/api.AppointmentQuery/CrossExtract',
      ($1.CrossExtractQuery value) => value.writeToBuffer(),
      $1.ExtractResult.fromBuffer);
  static final _$getKPIData = $grpc.ClientMethod<$2.GetKPIDataQuery, $2.GetKPIDataResult>(
      '/api.AppointmentQuery/GetKPIData',
      ($2.GetKPIDataQuery value) => value.writeToBuffer(),
      $2.GetKPIDataResult.fromBuffer);
  static final _$countLines = $grpc.ClientMethod<$1.CountLinesQuery, $1.CountLinesResult>(
      '/api.AppointmentQuery/CountLines',
      ($1.CountLinesQuery value) => value.writeToBuffer(),
      $1.CountLinesResult.fromBuffer);
  static final _$crossFind = $grpc.ClientMethod<$1.CrossFindQuery, $0.CrossFindAppointmentResult>(
      '/api.AppointmentQuery/CrossFind',
      ($1.CrossFindQuery value) => value.writeToBuffer(),
      $0.CrossFindAppointmentResult.fromBuffer);
  static final _$crossFindMatchingFieldValues = $grpc.ClientMethod<$1.CrossFindByMatchQuery, $1.CrossFindByMatchResult>(
      '/api.AppointmentQuery/CrossFindMatchingFieldValues',
      ($1.CrossFindByMatchQuery value) => value.writeToBuffer(),
      $1.CrossFindByMatchResult.fromBuffer);
  static final _$crossFindMatchingFieldElements = $grpc.ClientMethod<$1.CrossFindElementByMatchQuery, $1.ElementByMatchResult>(
      '/api.AppointmentQuery/CrossFindMatchingFieldElements',
      ($1.CrossFindElementByMatchQuery value) => value.writeToBuffer(),
      $1.ElementByMatchResult.fromBuffer);
}

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

  AppointmentQueryServiceBase() {
    $addMethod($grpc.ServiceMethod<$0.AppointmentByIdQuery, $0.AppointmentByIdResult>(
        'GetByIds',
        getByIds_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.AppointmentByIdQuery.fromBuffer(value),
        ($0.AppointmentByIdResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.AppointmentByIdQuery, $0.AppointmentByIdResult>(
        'GetByIdsMine',
        getByIdsMine_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.AppointmentByIdQuery.fromBuffer(value),
        ($0.AppointmentByIdResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.AppointmentByFilterQuery, $0.AppointmentByFilterResult>(
        'Find',
        find_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.AppointmentByFilterQuery.fromBuffer(value),
        ($0.AppointmentByFilterResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$0.AppointmentByMatchQuery, $0.AppointmentByMatchResult>(
        'FindMatchingFieldValues',
        findMatchingFieldValues_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $0.AppointmentByMatchQuery.fromBuffer(value),
        ($0.AppointmentByMatchResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$1.ElementByMatchQuery, $1.ElementByMatchResult>(
        'FindMatchingFieldElements',
        findMatchingFieldElements_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $1.ElementByMatchQuery.fromBuffer(value),
        ($1.ElementByMatchResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$1.ExtractQuery, $1.ExtractResult>(
        'Extract',
        extract_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $1.ExtractQuery.fromBuffer(value),
        ($1.ExtractResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$1.CrossExtractQuery, $1.ExtractResult>(
        'CrossExtract',
        crossExtract_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $1.CrossExtractQuery.fromBuffer(value),
        ($1.ExtractResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$2.GetKPIDataQuery, $2.GetKPIDataResult>(
        'GetKPIData',
        getKPIData_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $2.GetKPIDataQuery.fromBuffer(value),
        ($2.GetKPIDataResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$1.CountLinesQuery, $1.CountLinesResult>(
        'CountLines',
        countLines_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $1.CountLinesQuery.fromBuffer(value),
        ($1.CountLinesResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$1.CrossFindQuery, $0.CrossFindAppointmentResult>(
        'CrossFind',
        crossFind_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $1.CrossFindQuery.fromBuffer(value),
        ($0.CrossFindAppointmentResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$1.CrossFindByMatchQuery, $1.CrossFindByMatchResult>(
        'CrossFindMatchingFieldValues',
        crossFindMatchingFieldValues_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $1.CrossFindByMatchQuery.fromBuffer(value),
        ($1.CrossFindByMatchResult value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$1.CrossFindElementByMatchQuery, $1.ElementByMatchResult>(
        'CrossFindMatchingFieldElements',
        crossFindMatchingFieldElements_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $1.CrossFindElementByMatchQuery.fromBuffer(value),
        ($1.ElementByMatchResult value) => value.writeToBuffer()));
  }

  $async.Future<$0.AppointmentByIdResult> getByIds_Pre($grpc.ServiceCall $call, $async.Future<$0.AppointmentByIdQuery> $request) async {
    return getByIds($call, await $request);
  }

  $async.Future<$0.AppointmentByIdResult> getByIds($grpc.ServiceCall call, $0.AppointmentByIdQuery request);

  $async.Future<$0.AppointmentByIdResult> getByIdsMine_Pre($grpc.ServiceCall $call, $async.Future<$0.AppointmentByIdQuery> $request) async {
    return getByIdsMine($call, await $request);
  }

  $async.Future<$0.AppointmentByIdResult> getByIdsMine($grpc.ServiceCall call, $0.AppointmentByIdQuery request);

  $async.Future<$0.AppointmentByFilterResult> find_Pre($grpc.ServiceCall $call, $async.Future<$0.AppointmentByFilterQuery> $request) async {
    return find($call, await $request);
  }

  $async.Future<$0.AppointmentByFilterResult> find($grpc.ServiceCall call, $0.AppointmentByFilterQuery request);

  $async.Future<$0.AppointmentByMatchResult> findMatchingFieldValues_Pre($grpc.ServiceCall $call, $async.Future<$0.AppointmentByMatchQuery> $request) async {
    return findMatchingFieldValues($call, await $request);
  }

  $async.Future<$0.AppointmentByMatchResult> findMatchingFieldValues($grpc.ServiceCall call, $0.AppointmentByMatchQuery request);

  $async.Future<$1.ElementByMatchResult> findMatchingFieldElements_Pre($grpc.ServiceCall $call, $async.Future<$1.ElementByMatchQuery> $request) async {
    return findMatchingFieldElements($call, await $request);
  }

  $async.Future<$1.ElementByMatchResult> findMatchingFieldElements($grpc.ServiceCall call, $1.ElementByMatchQuery request);

  $async.Future<$1.ExtractResult> extract_Pre($grpc.ServiceCall $call, $async.Future<$1.ExtractQuery> $request) async {
    return extract($call, await $request);
  }

  $async.Future<$1.ExtractResult> extract($grpc.ServiceCall call, $1.ExtractQuery request);

  $async.Future<$1.ExtractResult> crossExtract_Pre($grpc.ServiceCall $call, $async.Future<$1.CrossExtractQuery> $request) async {
    return crossExtract($call, await $request);
  }

  $async.Future<$1.ExtractResult> crossExtract($grpc.ServiceCall call, $1.CrossExtractQuery request);

  $async.Future<$2.GetKPIDataResult> getKPIData_Pre($grpc.ServiceCall $call, $async.Future<$2.GetKPIDataQuery> $request) async {
    return getKPIData($call, await $request);
  }

  $async.Future<$2.GetKPIDataResult> getKPIData($grpc.ServiceCall call, $2.GetKPIDataQuery request);

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

  $async.Future<$1.CountLinesResult> countLines($grpc.ServiceCall call, $1.CountLinesQuery request);

  $async.Future<$0.CrossFindAppointmentResult> crossFind_Pre($grpc.ServiceCall $call, $async.Future<$1.CrossFindQuery> $request) async {
    return crossFind($call, await $request);
  }

  $async.Future<$0.CrossFindAppointmentResult> crossFind($grpc.ServiceCall call, $1.CrossFindQuery request);

  $async.Future<$1.CrossFindByMatchResult> crossFindMatchingFieldValues_Pre($grpc.ServiceCall $call, $async.Future<$1.CrossFindByMatchQuery> $request) async {
    return crossFindMatchingFieldValues($call, await $request);
  }

  $async.Future<$1.CrossFindByMatchResult> crossFindMatchingFieldValues($grpc.ServiceCall call, $1.CrossFindByMatchQuery request);

  $async.Future<$1.ElementByMatchResult> crossFindMatchingFieldElements_Pre($grpc.ServiceCall $call, $async.Future<$1.CrossFindElementByMatchQuery> $request) async {
    return crossFindMatchingFieldElements($call, await $request);
  }

  $async.Future<$1.ElementByMatchResult> crossFindMatchingFieldElements($grpc.ServiceCall call, $1.CrossFindElementByMatchQuery request);

}
