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

export 'matrix-proxy.pb.dart';

@$pb.GrpcServiceName('api.MatrixProxyService')
class MatrixProxyServiceClient extends $grpc.Client {
  static final _$createRoom = $grpc.ClientMethod<$30.CreateRoomRequest, $30.CreateRoomResponse>(
      '/api.MatrixProxyService/CreateRoom',
      ($30.CreateRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.CreateRoomResponse.fromBuffer(value));
  static final _$deleteRoom = $grpc.ClientMethod<$30.DeleteRoomRequest, $30.DeleteRoomResponse>(
      '/api.MatrixProxyService/DeleteRoom',
      ($30.DeleteRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.DeleteRoomResponse.fromBuffer(value));
  static final _$inviteUserToRoom = $grpc.ClientMethod<$30.InviteUserToRoomRequest, $30.InviteUserToRoomResponse>(
      '/api.MatrixProxyService/InviteUserToRoom',
      ($30.InviteUserToRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.InviteUserToRoomResponse.fromBuffer(value));
  static final _$sendNoticeToRoom = $grpc.ClientMethod<$30.SendNoticeToRoomRequest, $30.SendNoticeToRoomResponse>(
      '/api.MatrixProxyService/SendNoticeToRoom',
      ($30.SendNoticeToRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.SendNoticeToRoomResponse.fromBuffer(value));
  static final _$createProjectRoom = $grpc.ClientMethod<$30.CreateProjectRoomRequest, $30.CreateProjectRoomResponse>(
      '/api.MatrixProxyService/CreateProjectRoom',
      ($30.CreateProjectRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.CreateProjectRoomResponse.fromBuffer(value));
  static final _$deleteProjectRoom = $grpc.ClientMethod<$30.DeleteProjectRoomRequest, $30.DeleteProjectRoomResponse>(
      '/api.MatrixProxyService/DeleteProjectRoom',
      ($30.DeleteProjectRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.DeleteProjectRoomResponse.fromBuffer(value));
  static final _$inviteUserToProjectRoom = $grpc.ClientMethod<$30.InviteUserToProjectRoomRequest, $30.InviteUserToProjectRoomResponse>(
      '/api.MatrixProxyService/InviteUserToProjectRoom',
      ($30.InviteUserToProjectRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.InviteUserToProjectRoomResponse.fromBuffer(value));
  static final _$sendNoticeToProjectRoom = $grpc.ClientMethod<$30.SendNoticeToProjectRoomRequest, $30.SendNoticeToProjectRoomResponse>(
      '/api.MatrixProxyService/SendNoticeToProjectRoom',
      ($30.SendNoticeToProjectRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.SendNoticeToProjectRoomResponse.fromBuffer(value));
  static final _$deleteRoomsForProject = $grpc.ClientMethod<$30.DeleteRoomsForProjectRequest, $30.DeleteRoomsForProjectResponse>(
      '/api.MatrixProxyService/DeleteRoomsForProject',
      ($30.DeleteRoomsForProjectRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.DeleteRoomsForProjectResponse.fromBuffer(value));
  static final _$sendMessageToProjectRoom = $grpc.ClientMethod<$30.SendMessageToProjectRoomRequest, $30.SendMessageToProjectRoomResponse>(
      '/api.MatrixProxyService/SendMessageToProjectRoom',
      ($30.SendMessageToProjectRoomRequest value) => value.writeToBuffer(),
      ($core.List<$core.int> value) => $30.SendMessageToProjectRoomResponse.fromBuffer(value));

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

  $grpc.ResponseFuture<$30.CreateRoomResponse> createRoom($30.CreateRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$createRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.DeleteRoomResponse> deleteRoom($30.DeleteRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$deleteRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.InviteUserToRoomResponse> inviteUserToRoom($30.InviteUserToRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$inviteUserToRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.SendNoticeToRoomResponse> sendNoticeToRoom($30.SendNoticeToRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$sendNoticeToRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.CreateProjectRoomResponse> createProjectRoom($30.CreateProjectRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$createProjectRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.DeleteProjectRoomResponse> deleteProjectRoom($30.DeleteProjectRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$deleteProjectRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.InviteUserToProjectRoomResponse> inviteUserToProjectRoom($30.InviteUserToProjectRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$inviteUserToProjectRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.SendNoticeToProjectRoomResponse> sendNoticeToProjectRoom($30.SendNoticeToProjectRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$sendNoticeToProjectRoom, request, options: options);
  }

  $grpc.ResponseFuture<$30.DeleteRoomsForProjectResponse> deleteRoomsForProject($30.DeleteRoomsForProjectRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$deleteRoomsForProject, request, options: options);
  }

  $grpc.ResponseFuture<$30.SendMessageToProjectRoomResponse> sendMessageToProjectRoom($30.SendMessageToProjectRoomRequest request, {$grpc.CallOptions? options}) {
    return $createUnaryCall(_$sendMessageToProjectRoom, request, options: options);
  }
}

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

  MatrixProxyServiceBase() {
    $addMethod($grpc.ServiceMethod<$30.CreateRoomRequest, $30.CreateRoomResponse>(
        'CreateRoom',
        createRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.CreateRoomRequest.fromBuffer(value),
        ($30.CreateRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.DeleteRoomRequest, $30.DeleteRoomResponse>(
        'DeleteRoom',
        deleteRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.DeleteRoomRequest.fromBuffer(value),
        ($30.DeleteRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.InviteUserToRoomRequest, $30.InviteUserToRoomResponse>(
        'InviteUserToRoom',
        inviteUserToRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.InviteUserToRoomRequest.fromBuffer(value),
        ($30.InviteUserToRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.SendNoticeToRoomRequest, $30.SendNoticeToRoomResponse>(
        'SendNoticeToRoom',
        sendNoticeToRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.SendNoticeToRoomRequest.fromBuffer(value),
        ($30.SendNoticeToRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.CreateProjectRoomRequest, $30.CreateProjectRoomResponse>(
        'CreateProjectRoom',
        createProjectRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.CreateProjectRoomRequest.fromBuffer(value),
        ($30.CreateProjectRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.DeleteProjectRoomRequest, $30.DeleteProjectRoomResponse>(
        'DeleteProjectRoom',
        deleteProjectRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.DeleteProjectRoomRequest.fromBuffer(value),
        ($30.DeleteProjectRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.InviteUserToProjectRoomRequest, $30.InviteUserToProjectRoomResponse>(
        'InviteUserToProjectRoom',
        inviteUserToProjectRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.InviteUserToProjectRoomRequest.fromBuffer(value),
        ($30.InviteUserToProjectRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.SendNoticeToProjectRoomRequest, $30.SendNoticeToProjectRoomResponse>(
        'SendNoticeToProjectRoom',
        sendNoticeToProjectRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.SendNoticeToProjectRoomRequest.fromBuffer(value),
        ($30.SendNoticeToProjectRoomResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.DeleteRoomsForProjectRequest, $30.DeleteRoomsForProjectResponse>(
        'DeleteRoomsForProject',
        deleteRoomsForProject_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.DeleteRoomsForProjectRequest.fromBuffer(value),
        ($30.DeleteRoomsForProjectResponse value) => value.writeToBuffer()));
    $addMethod($grpc.ServiceMethod<$30.SendMessageToProjectRoomRequest, $30.SendMessageToProjectRoomResponse>(
        'SendMessageToProjectRoom',
        sendMessageToProjectRoom_Pre,
        false,
        false,
        ($core.List<$core.int> value) => $30.SendMessageToProjectRoomRequest.fromBuffer(value),
        ($30.SendMessageToProjectRoomResponse value) => value.writeToBuffer()));
  }

  $async.Future<$30.CreateRoomResponse> createRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.CreateRoomRequest> $request) async {
    return createRoom($call, await $request);
  }

  $async.Future<$30.DeleteRoomResponse> deleteRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.DeleteRoomRequest> $request) async {
    return deleteRoom($call, await $request);
  }

  $async.Future<$30.InviteUserToRoomResponse> inviteUserToRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.InviteUserToRoomRequest> $request) async {
    return inviteUserToRoom($call, await $request);
  }

  $async.Future<$30.SendNoticeToRoomResponse> sendNoticeToRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.SendNoticeToRoomRequest> $request) async {
    return sendNoticeToRoom($call, await $request);
  }

  $async.Future<$30.CreateProjectRoomResponse> createProjectRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.CreateProjectRoomRequest> $request) async {
    return createProjectRoom($call, await $request);
  }

  $async.Future<$30.DeleteProjectRoomResponse> deleteProjectRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.DeleteProjectRoomRequest> $request) async {
    return deleteProjectRoom($call, await $request);
  }

  $async.Future<$30.InviteUserToProjectRoomResponse> inviteUserToProjectRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.InviteUserToProjectRoomRequest> $request) async {
    return inviteUserToProjectRoom($call, await $request);
  }

  $async.Future<$30.SendNoticeToProjectRoomResponse> sendNoticeToProjectRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.SendNoticeToProjectRoomRequest> $request) async {
    return sendNoticeToProjectRoom($call, await $request);
  }

  $async.Future<$30.DeleteRoomsForProjectResponse> deleteRoomsForProject_Pre($grpc.ServiceCall $call, $async.Future<$30.DeleteRoomsForProjectRequest> $request) async {
    return deleteRoomsForProject($call, await $request);
  }

  $async.Future<$30.SendMessageToProjectRoomResponse> sendMessageToProjectRoom_Pre($grpc.ServiceCall $call, $async.Future<$30.SendMessageToProjectRoomRequest> $request) async {
    return sendMessageToProjectRoom($call, await $request);
  }

  $async.Future<$30.CreateRoomResponse> createRoom($grpc.ServiceCall call, $30.CreateRoomRequest request);
  $async.Future<$30.DeleteRoomResponse> deleteRoom($grpc.ServiceCall call, $30.DeleteRoomRequest request);
  $async.Future<$30.InviteUserToRoomResponse> inviteUserToRoom($grpc.ServiceCall call, $30.InviteUserToRoomRequest request);
  $async.Future<$30.SendNoticeToRoomResponse> sendNoticeToRoom($grpc.ServiceCall call, $30.SendNoticeToRoomRequest request);
  $async.Future<$30.CreateProjectRoomResponse> createProjectRoom($grpc.ServiceCall call, $30.CreateProjectRoomRequest request);
  $async.Future<$30.DeleteProjectRoomResponse> deleteProjectRoom($grpc.ServiceCall call, $30.DeleteProjectRoomRequest request);
  $async.Future<$30.InviteUserToProjectRoomResponse> inviteUserToProjectRoom($grpc.ServiceCall call, $30.InviteUserToProjectRoomRequest request);
  $async.Future<$30.SendNoticeToProjectRoomResponse> sendNoticeToProjectRoom($grpc.ServiceCall call, $30.SendNoticeToProjectRoomRequest request);
  $async.Future<$30.DeleteRoomsForProjectResponse> deleteRoomsForProject($grpc.ServiceCall call, $30.DeleteRoomsForProjectRequest request);
  $async.Future<$30.SendMessageToProjectRoomResponse> sendMessageToProjectRoom($grpc.ServiceCall call, $30.SendMessageToProjectRoomRequest request);
}
