// Generated by the protocol buffer compiler.  DO NOT EDIT!
// clang-format off
// source: keyapis/access_control/v1/keyapis_access_control_broadcast_alert_v1.proto

// This CPP symbol can be defined to use imports that match up to the framework
// imports needed when using CocoaPods.
#if !defined(GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS)
 #define GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS 0
#endif

#if GPB_USE_PROTOBUF_FRAMEWORK_IMPORTS
 #import <Protobuf/GPBProtocolBuffers.h>
#else
 #import "GPBProtocolBuffers.h"
#endif

#if GOOGLE_PROTOBUF_OBJC_VERSION < 30007
#error This file was generated by a newer version of protoc which is incompatible with your Protocol Buffer library sources.
#endif
#if 30007 < GOOGLE_PROTOBUF_OBJC_MIN_SUPPORTED_VERSION
#error This file was generated by an older version of protoc which is incompatible with your Protocol Buffer library sources.
#endif

// @@protoc_insertion_point(imports)

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"

CF_EXTERN_C_BEGIN

@class KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error;
@class KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_SoundFileNotFound;
@class KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error;
@class KEYAPISACCESSCONTROLV1ValidationError;

NS_ASSUME_NONNULL_BEGIN

#pragma mark - Enum KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType

/**
 * Тип проигрывания.
 * # Тип: byte
 **/
typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType) {
  /**
   * Value used if any message's field encounters a value that is not defined
   * by this enum. The message will also have C functions to get/set the rawValue
   * of the field.
   **/
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_GPBUnrecognizedEnumeratorValue = kGPBUnrecognizedEnumeratorValue,
  /** Значение не указано */
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_PlayTypeUnknown = 0,

  /** Только на аналоговые трубки */
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_HandsetOnly = 1,

  /** Tолько на динамик домофона */
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_SpeakerOnly = 2,

  /** Сначала на аналоговые трубки проигрываем заданное количество тактов, затем на динамик домофона */
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_HandsetAndSpeaker = 3,

  /** Сначала на динамик домофона проигрываем заданное количество тактов, затем на аналоговые трубки */
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_SpeakerAndHandset = 4,
};

GPBEnumDescriptor *KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_EnumDescriptor(void);

/**
 * Checks to see if the given value is defined by the enum or was not known at
 * the time this source was generated.
 **/
BOOL KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_IsValidValue(int32_t value);

#pragma mark - KEYAPISACCESSCONTROLV1KeyapisAccessControlBroadcastAlertV1Root

/**
 * Exposes the extension registry for this file.
 *
 * The base class provides:
 * @code
 *   + (GPBExtensionRegistry *)extensionRegistry;
 * @endcode
 * which is a @c GPBExtensionRegistry that includes all the extensions defined by
 * this file and all files that it depends on.
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1KeyapisAccessControlBroadcastAlertV1Root : GPBRootObject
@end

#pragma mark - KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_FieldNumber) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_FieldNumber_SoundFileUri = 1,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_FieldNumber_OrponsArray = 2,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_FieldNumber_TactPlayDuration = 3,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_FieldNumber_TactRepeatCount = 4,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_FieldNumber_PlayRepeatCount = 5,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_FieldNumber_PlayType = 6,
};

/**
 * Запрос на запуск массового оповещения через домофоны
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest : GPBMessage

/**
 * Ссылка на звуковой файл для проигрывания.
 * Файл должен лежать на внутреннем хранилище.
 * # Диапазон: 2..100
 **/
@property(nonatomic, readwrite, copy, null_resettable) NSString *soundFileUri;

/**
 * Массив ОРПОНов домов, на которых запускаем проигрывание.
 * # Диапазон: 1..100
 **/
@property(nonatomic, readwrite, strong, null_resettable) GPBInt64Array *orponsArray;
/** The number of items in @c orponsArray without causing the container to be created. */
@property(nonatomic, readonly) NSUInteger orponsArray_Count;

/**
 * Длительность воспроизведения такта в секундах.
 * Такт включает в себя проигрывание файла на трубках или на динамике.
 * # Диапазон: 0..65536
 **/
@property(nonatomic, readwrite) int32_t tactPlayDuration;

/**
 * Количество последовательных повторов тактов перед сменой динамика на трубки или наоборот.
 * # Диапазон: 0..65536
 **/
@property(nonatomic, readwrite) int32_t tactRepeatCount;

/**
 * Количество дополнительных повторов тактов, т.е. умолчание=0 - это проигрывание одного такта.
 * # Диапазон: 0..65536
 **/
@property(nonatomic, readwrite) int32_t playRepeatCount;

/** Тип проигрывания */
@property(nonatomic, readwrite) KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType playType;

@end

/**
 * Fetches the raw value of a @c KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest's @c playType property, even
 * if the value was not defined by the enum at the time the code was generated.
 **/
int32_t KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_RawValue(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest *message);
/**
 * Sets the raw value of an @c KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest's @c playType property, allowing
 * it to be set to a value that was not defined by the enum at the time the code
 * was generated.
 **/
void SetKEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest_PlayType_RawValue(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartRequest *message, int32_t value);

#pragma mark - KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_FieldNumber) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_FieldNumber_Error = 1,
};

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Type_OneOfCase) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Type_OneOfCase_Error = 1,
};

/**
 * Ответ на запрос на запуск массового оповещения через домофоны
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse : GPBMessage

/** Тип результата */
@property(nonatomic, readonly) KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Type_OneOfCase typeOneOfCase;

/** Ошибка */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error *error;

@end

/**
 * Clears whatever value was set for the oneof 'type'.
 **/
void KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_ClearTypeOneOfCase(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse *message);

#pragma mark - KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_FieldNumber) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_FieldNumber_Validation = 1,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_FieldNumber_SoundFileNotFound = 2,
};

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_Reason_OneOfCase) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_Reason_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_Reason_OneOfCase_Validation = 1,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_Reason_OneOfCase_SoundFileNotFound = 2,
};

/**
 * Ошибка запроса
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error : GPBMessage

/** Причина ошибки */
@property(nonatomic, readonly) KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_Reason_OneOfCase reasonOneOfCase;

/** Ошибка валидации */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISACCESSCONTROLV1ValidationError *validation;

/** Звуковой файл не найден */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_SoundFileNotFound *soundFileNotFound;

@end

/**
 * Clears whatever value was set for the oneof 'reason'.
 **/
void KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_ClearReasonOneOfCase(KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error *message);

#pragma mark - KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_SoundFileNotFound

/**
 * Звуковой файл не найден
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1PostBroadcastAlertStartResponse_Error_SoundFileNotFound : GPBMessage

@end

#pragma mark - KEYAPISACCESSCONTROLV1PostBroadcastAlertStopRequest

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStopRequest_FieldNumber) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStopRequest_FieldNumber_OrponsArray = 1,
};

/**
 * Запрос на прекращение массового оповещения через домофоны
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1PostBroadcastAlertStopRequest : GPBMessage

/**
 * Массив ОРПОНов домов, на которых запускаем проигрывание.
 * # Диапазон: 1..100
 **/
@property(nonatomic, readwrite, strong, null_resettable) GPBInt64Array *orponsArray;
/** The number of items in @c orponsArray without causing the container to be created. */
@property(nonatomic, readonly) NSUInteger orponsArray_Count;

@end

#pragma mark - KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_FieldNumber) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_FieldNumber_Error = 1,
};

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Type_OneOfCase) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Type_OneOfCase_Error = 1,
};

/**
 * Ответ на запрос на прекращение массового оповещения через домофоны
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse : GPBMessage

/** Тип результата */
@property(nonatomic, readonly) KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Type_OneOfCase typeOneOfCase;

/** Ошибка */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error *error;

@end

/**
 * Clears whatever value was set for the oneof 'type'.
 **/
void KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_ClearTypeOneOfCase(KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse *message);

#pragma mark - KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error_FieldNumber) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error_FieldNumber_Validation = 1,
};

typedef GPB_ENUM(KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error_Reason_OneOfCase) {
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error_Reason_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error_Reason_OneOfCase_Validation = 1,
};

/**
 * Ошибка запроса
 **/
GPB_FINAL @interface KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error : GPBMessage

/** Причина ошибки */
@property(nonatomic, readonly) KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error_Reason_OneOfCase reasonOneOfCase;

/** Ошибка валидации */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISACCESSCONTROLV1ValidationError *validation;

@end

/**
 * Clears whatever value was set for the oneof 'reason'.
 **/
void KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error_ClearReasonOneOfCase(KEYAPISACCESSCONTROLV1PostBroadcastAlertStopResponse_Error *message);

NS_ASSUME_NONNULL_END

CF_EXTERN_C_END

#pragma clang diagnostic pop

// @@protoc_insertion_point(global_scope)

// clang-format on
