// Code generated by gRPC proto compiler.  DO NOT EDIT!
// source: keyapis/telemetry_control/v1/keyapis_telemetry_control_template_v1.proto

#if !defined(GPB_GRPC_PROTOCOL_ONLY) || !GPB_GRPC_PROTOCOL_ONLY
#import "keyapis/telemetry_control/v1/KeyapisTelemetryControlTemplateV1.pbrpc.h"
#import "keyapis/telemetry_control/v1/KeyapisTelemetryControlTemplateV1.pbobjc.h"
#import <ProtoRPC/ProtoRPCLegacy.h>
#import <RxLibrary/GRXWriter+Immediate.h>

#import "google/api/Annotations.pbobjc.h"
#import "google/api/FieldBehavior.pbobjc.h"
#if defined(GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS) && GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS
#import <Protobuf/GPBWrappers.pbobjc.h>
#else
#import "GPBWrappers.pbobjc.h"
#endif
#if defined(GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS) && GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS
#import <Protobuf/GPBTimestamp.pbobjc.h>
#else
#import "GPBTimestamp.pbobjc.h"
#endif

@implementation KEYAPISTELEMETRYCONTROLV1TemplateService

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wobjc-designated-initializers"

// Designated initializer
- (instancetype)initWithHost:(NSString *)host callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [super initWithHost:host
                 packageName:@"keyapis.telemetry_control.v1"
                 serviceName:@"TemplateService"
                 callOptions:callOptions];
}

- (instancetype)initWithHost:(NSString *)host {
  return [super initWithHost:host
                 packageName:@"keyapis.telemetry_control.v1"
                 serviceName:@"TemplateService"];
}

#pragma clang diagnostic pop

// Override superclass initializer to disallow different package and service names.
- (instancetype)initWithHost:(NSString *)host
                 packageName:(NSString *)packageName
                 serviceName:(NSString *)serviceName {
  return [self initWithHost:host];
}

- (instancetype)initWithHost:(NSString *)host
                 packageName:(NSString *)packageName
                 serviceName:(NSString *)serviceName
                 callOptions:(GRPCCallOptions *)callOptions {
  return [self initWithHost:host callOptions:callOptions];
}

#pragma mark - Class Methods

+ (instancetype)serviceWithHost:(NSString *)host {
  return [[self alloc] initWithHost:host];
}

+ (instancetype)serviceWithHost:(NSString *)host callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [[self alloc] initWithHost:host callOptions:callOptions];
}

#pragma mark - Method Implementations

#pragma mark GetTemplateDevice(GetTemplateDeviceRequest) returns (GetTemplateDeviceResponse)

/**
 * Метод получения шаблона ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)getTemplateDeviceWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToGetTemplateDeviceWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод получения шаблона ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToGetTemplateDeviceWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"GetTemplateDevice"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод получения шаблона ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)getTemplateDeviceWithMessage:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"GetTemplateDevice"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceResponse class]];
}

#pragma mark GetTemplateDeviceList(GetTemplateDeviceListRequest) returns (stream GetTemplateDeviceListResponse)

/**
 * Метод получения списка шаблонов ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)getTemplateDeviceListWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceListRequest *)request eventHandler:(void(^)(BOOL done, KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceListResponse *_Nullable response, NSError *_Nullable error))eventHandler{
  [[self RPCToGetTemplateDeviceListWithRequest:request eventHandler:eventHandler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод получения списка шаблонов ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToGetTemplateDeviceListWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceListRequest *)request eventHandler:(void(^)(BOOL done, KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceListResponse *_Nullable response, NSError *_Nullable error))eventHandler{
  return [self RPCToMethod:@"GetTemplateDeviceList"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceListResponse class]
        responsesWriteable:[GRXWriteable writeableWithEventHandler:eventHandler]];
}
/**
 * Метод получения списка шаблонов ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)getTemplateDeviceListWithMessage:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceListRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"GetTemplateDeviceList"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceListResponse class]];
}

#pragma mark GetTemplateDeviceCount(GetTemplateDeviceCountRequest) returns (GetTemplateDeviceCountResponse)

/**
 * Метод получения количества шаблонов ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)getTemplateDeviceCountWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceCountRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceCountResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToGetTemplateDeviceCountWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод получения количества шаблонов ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToGetTemplateDeviceCountWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceCountRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceCountResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"GetTemplateDeviceCount"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceCountResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод получения количества шаблонов ПУ.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)getTemplateDeviceCountWithMessage:(KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceCountRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"GetTemplateDeviceCount"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateDeviceCountResponse class]];
}

#pragma mark PostTemplateDevice(PostTemplateDeviceRequest) returns (PostTemplateDeviceResponse)

/**
 * Метод сохранения шаблона ПУ.
 * Поддерживает создание и обновление.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)postTemplateDeviceWithRequest:(KEYAPISTELEMETRYCONTROLV1PostTemplateDeviceRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1PostTemplateDeviceResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToPostTemplateDeviceWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод сохранения шаблона ПУ.
 * Поддерживает создание и обновление.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToPostTemplateDeviceWithRequest:(KEYAPISTELEMETRYCONTROLV1PostTemplateDeviceRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1PostTemplateDeviceResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"PostTemplateDevice"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1PostTemplateDeviceResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод сохранения шаблона ПУ.
 * Поддерживает создание и обновление.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)postTemplateDeviceWithMessage:(KEYAPISTELEMETRYCONTROLV1PostTemplateDeviceRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"PostTemplateDevice"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1PostTemplateDeviceResponse class]];
}

#pragma mark DeleteTemplateDevice(DeleteTemplateDeviceRequest) returns (DeleteTemplateDeviceResponse)

/**
 * Метод удаления шаблона ПУ.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)deleteTemplateDeviceWithRequest:(KEYAPISTELEMETRYCONTROLV1DeleteTemplateDeviceRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1DeleteTemplateDeviceResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToDeleteTemplateDeviceWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод удаления шаблона ПУ.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToDeleteTemplateDeviceWithRequest:(KEYAPISTELEMETRYCONTROLV1DeleteTemplateDeviceRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1DeleteTemplateDeviceResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"DeleteTemplateDevice"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1DeleteTemplateDeviceResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод удаления шаблона ПУ.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)deleteTemplateDeviceWithMessage:(KEYAPISTELEMETRYCONTROLV1DeleteTemplateDeviceRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"DeleteTemplateDevice"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1DeleteTemplateDeviceResponse class]];
}

#pragma mark GetTemplateIndicator(GetTemplateIndicatorRequest) returns (GetTemplateIndicatorResponse)

/**
 * Метод получения шаблона индикатора.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)getTemplateIndicatorWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToGetTemplateIndicatorWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод получения шаблона индикатора.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToGetTemplateIndicatorWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"GetTemplateIndicator"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод получения шаблона индикатора.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)getTemplateIndicatorWithMessage:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"GetTemplateIndicator"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorResponse class]];
}

#pragma mark GetTemplateIndicatorList(GetTemplateIndicatorListRequest) returns (stream GetTemplateIndicatorListResponse)

/**
 * Метод получения списка шаблонов индикаторов.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)getTemplateIndicatorListWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorListRequest *)request eventHandler:(void(^)(BOOL done, KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorListResponse *_Nullable response, NSError *_Nullable error))eventHandler{
  [[self RPCToGetTemplateIndicatorListWithRequest:request eventHandler:eventHandler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод получения списка шаблонов индикаторов.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToGetTemplateIndicatorListWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorListRequest *)request eventHandler:(void(^)(BOOL done, KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorListResponse *_Nullable response, NSError *_Nullable error))eventHandler{
  return [self RPCToMethod:@"GetTemplateIndicatorList"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorListResponse class]
        responsesWriteable:[GRXWriteable writeableWithEventHandler:eventHandler]];
}
/**
 * Метод получения списка шаблонов индикаторов.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)getTemplateIndicatorListWithMessage:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorListRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"GetTemplateIndicatorList"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorListResponse class]];
}

#pragma mark GetTemplateIndicatorCount(GetTemplateIndicatorCountRequest) returns (GetTemplateIndicatorCountResponse)

/**
 * Метод получения количества шаблонов индикаторов.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)getTemplateIndicatorCountWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorCountRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorCountResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToGetTemplateIndicatorCountWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод получения количества шаблонов индикаторов.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToGetTemplateIndicatorCountWithRequest:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorCountRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorCountResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"GetTemplateIndicatorCount"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorCountResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод получения количества шаблонов индикаторов.
 * Метод доступен для: Token: service, application, admin, owner, employee, bti, seller. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)getTemplateIndicatorCountWithMessage:(KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorCountRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"GetTemplateIndicatorCount"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1GetTemplateIndicatorCountResponse class]];
}

#pragma mark PostTemplateIndicator(PostTemplateIndicatorRequest) returns (PostTemplateIndicatorResponse)

/**
 * Метод сохранения шаблонов индикатора.
 * Поддерживает создание и обновление.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)postTemplateIndicatorWithRequest:(KEYAPISTELEMETRYCONTROLV1PostTemplateIndicatorRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1PostTemplateIndicatorResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToPostTemplateIndicatorWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод сохранения шаблонов индикатора.
 * Поддерживает создание и обновление.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToPostTemplateIndicatorWithRequest:(KEYAPISTELEMETRYCONTROLV1PostTemplateIndicatorRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1PostTemplateIndicatorResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"PostTemplateIndicator"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1PostTemplateIndicatorResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод сохранения шаблонов индикатора.
 * Поддерживает создание и обновление.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)postTemplateIndicatorWithMessage:(KEYAPISTELEMETRYCONTROLV1PostTemplateIndicatorRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"PostTemplateIndicator"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1PostTemplateIndicatorResponse class]];
}

#pragma mark DeleteTemplateIndicator(DeleteTemplateIndicatorRequest) returns (DeleteTemplateIndicatorResponse)

/**
 * Метод удаления шаблона шаблона индикатора.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (void)deleteTemplateIndicatorWithRequest:(KEYAPISTELEMETRYCONTROLV1DeleteTemplateIndicatorRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1DeleteTemplateIndicatorResponse *_Nullable response, NSError *_Nullable error))handler{
  [[self RPCToDeleteTemplateIndicatorWithRequest:request handler:handler] start];
}
// Returns a not-yet-started RPC object.
/**
 * Метод удаления шаблона шаблона индикатора.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 *
 * This method belongs to a set of APIs that have been deprecated. Using the v2 API is recommended.
 */
- (GRPCProtoCall *)RPCToDeleteTemplateIndicatorWithRequest:(KEYAPISTELEMETRYCONTROLV1DeleteTemplateIndicatorRequest *)request handler:(void(^)(KEYAPISTELEMETRYCONTROLV1DeleteTemplateIndicatorResponse *_Nullable response, NSError *_Nullable error))handler{
  return [self RPCToMethod:@"DeleteTemplateIndicator"
            requestsWriter:[GRXWriter writerWithValue:request]
             responseClass:[KEYAPISTELEMETRYCONTROLV1DeleteTemplateIndicatorResponse class]
        responsesWriteable:[GRXWriteable writeableWithSingleHandler:handler]];
}
/**
 * Метод удаления шаблона шаблона индикатора.
 * Метод доступен для: Token: admin, service, application. Без учета разрешений
 */
- (GRPCUnaryProtoCall *)deleteTemplateIndicatorWithMessage:(KEYAPISTELEMETRYCONTROLV1DeleteTemplateIndicatorRequest *)message responseHandler:(id<GRPCProtoResponseHandler>)handler callOptions:(GRPCCallOptions *_Nullable)callOptions {
  return [self RPCToMethod:@"DeleteTemplateIndicator"
                   message:message
           responseHandler:handler
               callOptions:callOptions
             responseClass:[KEYAPISTELEMETRYCONTROLV1DeleteTemplateIndicatorResponse class]];
}

@end
#endif
