// GENERATED CODE -- DO NOT EDIT!

// package: huddly
// file: api/service.proto

import * as api_service_pb from "../api/service_pb";
import * as google_protobuf_empty_pb from "google-protobuf/google/protobuf/empty_pb";
import * as grpc from "@grpc/grpc-js";

interface IHuddlyCameraServiceService extends grpc.ServiceDefinition<grpc.UntypedServiceImplementation> {
  setDefaultCamera: grpc.MethodDefinition<api_service_pb.CameraInfoWrite, google_protobuf_empty_pb.Empty>;
  getDefaultCamera: grpc.MethodDefinition<google_protobuf_empty_pb.Empty, api_service_pb.CameraInfo>;
  setActiveCamera: grpc.MethodDefinition<api_service_pb.CameraInfoWrite, google_protobuf_empty_pb.Empty>;
  getActiveCamera: grpc.MethodDefinition<google_protobuf_empty_pb.Empty, api_service_pb.CameraInfo>;
  setUserPTZ: grpc.MethodDefinition<api_service_pb.UserPtz, google_protobuf_empty_pb.Empty>;
  getUserPTZ: grpc.MethodDefinition<google_protobuf_empty_pb.Empty, api_service_pb.UserPtz>;
  getAvailableCameras: grpc.MethodDefinition<google_protobuf_empty_pb.Empty, api_service_pb.AvailableCameras>;
  setFwUpdateSchedule: grpc.MethodDefinition<api_service_pb.FwUpdateSchedule, api_service_pb.FwUpdateScheduleStatus>;
  getFwUpdateSchedule: grpc.MethodDefinition<google_protobuf_empty_pb.Empty, api_service_pb.FwUpdateSchedule>;
  scheduleFwUpdate: grpc.MethodDefinition<api_service_pb.CameraInfoWrite, api_service_pb.FwUpdateScheduleStatus>;
  scheduleFwUpdateAll: grpc.MethodDefinition<google_protobuf_empty_pb.Empty, api_service_pb.FwUpdateScheduleStatus>;
}

export const HuddlyCameraServiceService: IHuddlyCameraServiceService;

export interface IHuddlyCameraServiceServer extends grpc.UntypedServiceImplementation {
  setDefaultCamera: grpc.handleUnaryCall<api_service_pb.CameraInfoWrite, google_protobuf_empty_pb.Empty>;
  getDefaultCamera: grpc.handleUnaryCall<google_protobuf_empty_pb.Empty, api_service_pb.CameraInfo>;
  setActiveCamera: grpc.handleUnaryCall<api_service_pb.CameraInfoWrite, google_protobuf_empty_pb.Empty>;
  getActiveCamera: grpc.handleUnaryCall<google_protobuf_empty_pb.Empty, api_service_pb.CameraInfo>;
  setUserPTZ: grpc.handleUnaryCall<api_service_pb.UserPtz, google_protobuf_empty_pb.Empty>;
  getUserPTZ: grpc.handleUnaryCall<google_protobuf_empty_pb.Empty, api_service_pb.UserPtz>;
  getAvailableCameras: grpc.handleUnaryCall<google_protobuf_empty_pb.Empty, api_service_pb.AvailableCameras>;
  setFwUpdateSchedule: grpc.handleUnaryCall<api_service_pb.FwUpdateSchedule, api_service_pb.FwUpdateScheduleStatus>;
  getFwUpdateSchedule: grpc.handleUnaryCall<google_protobuf_empty_pb.Empty, api_service_pb.FwUpdateSchedule>;
  scheduleFwUpdate: grpc.handleUnaryCall<api_service_pb.CameraInfoWrite, api_service_pb.FwUpdateScheduleStatus>;
  scheduleFwUpdateAll: grpc.handleUnaryCall<google_protobuf_empty_pb.Empty, api_service_pb.FwUpdateScheduleStatus>;
}

export class HuddlyCameraServiceClient extends grpc.Client {
  constructor(address: string, credentials: grpc.ChannelCredentials, options?: object);
  setDefaultCamera(argument: api_service_pb.CameraInfoWrite, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  setDefaultCamera(argument: api_service_pb.CameraInfoWrite, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  setDefaultCamera(argument: api_service_pb.CameraInfoWrite, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  getDefaultCamera(argument: google_protobuf_empty_pb.Empty, callback: grpc.requestCallback<api_service_pb.CameraInfo>): grpc.ClientUnaryCall;
  getDefaultCamera(argument: google_protobuf_empty_pb.Empty, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.CameraInfo>): grpc.ClientUnaryCall;
  getDefaultCamera(argument: google_protobuf_empty_pb.Empty, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.CameraInfo>): grpc.ClientUnaryCall;
  setActiveCamera(argument: api_service_pb.CameraInfoWrite, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  setActiveCamera(argument: api_service_pb.CameraInfoWrite, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  setActiveCamera(argument: api_service_pb.CameraInfoWrite, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  getActiveCamera(argument: google_protobuf_empty_pb.Empty, callback: grpc.requestCallback<api_service_pb.CameraInfo>): grpc.ClientUnaryCall;
  getActiveCamera(argument: google_protobuf_empty_pb.Empty, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.CameraInfo>): grpc.ClientUnaryCall;
  getActiveCamera(argument: google_protobuf_empty_pb.Empty, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.CameraInfo>): grpc.ClientUnaryCall;
  setUserPTZ(argument: api_service_pb.UserPtz, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  setUserPTZ(argument: api_service_pb.UserPtz, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  setUserPTZ(argument: api_service_pb.UserPtz, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<google_protobuf_empty_pb.Empty>): grpc.ClientUnaryCall;
  getUserPTZ(argument: google_protobuf_empty_pb.Empty, callback: grpc.requestCallback<api_service_pb.UserPtz>): grpc.ClientUnaryCall;
  getUserPTZ(argument: google_protobuf_empty_pb.Empty, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.UserPtz>): grpc.ClientUnaryCall;
  getUserPTZ(argument: google_protobuf_empty_pb.Empty, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.UserPtz>): grpc.ClientUnaryCall;
  getAvailableCameras(argument: google_protobuf_empty_pb.Empty, callback: grpc.requestCallback<api_service_pb.AvailableCameras>): grpc.ClientUnaryCall;
  getAvailableCameras(argument: google_protobuf_empty_pb.Empty, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.AvailableCameras>): grpc.ClientUnaryCall;
  getAvailableCameras(argument: google_protobuf_empty_pb.Empty, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.AvailableCameras>): grpc.ClientUnaryCall;
  setFwUpdateSchedule(argument: api_service_pb.FwUpdateSchedule, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  setFwUpdateSchedule(argument: api_service_pb.FwUpdateSchedule, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  setFwUpdateSchedule(argument: api_service_pb.FwUpdateSchedule, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  getFwUpdateSchedule(argument: google_protobuf_empty_pb.Empty, callback: grpc.requestCallback<api_service_pb.FwUpdateSchedule>): grpc.ClientUnaryCall;
  getFwUpdateSchedule(argument: google_protobuf_empty_pb.Empty, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateSchedule>): grpc.ClientUnaryCall;
  getFwUpdateSchedule(argument: google_protobuf_empty_pb.Empty, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateSchedule>): grpc.ClientUnaryCall;
  scheduleFwUpdate(argument: api_service_pb.CameraInfoWrite, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  scheduleFwUpdate(argument: api_service_pb.CameraInfoWrite, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  scheduleFwUpdate(argument: api_service_pb.CameraInfoWrite, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  scheduleFwUpdateAll(argument: google_protobuf_empty_pb.Empty, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  scheduleFwUpdateAll(argument: google_protobuf_empty_pb.Empty, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
  scheduleFwUpdateAll(argument: google_protobuf_empty_pb.Empty, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback<api_service_pb.FwUpdateScheduleStatus>): grpc.ClientUnaryCall;
}
