// Generated by the protocol buffer compiler.  DO NOT EDIT!
// clang-format off
// source: keyapis/device/v1/keyapis_device_trunk_config.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 KEYAPISDEVICEV1ValidationError;
@class KEYAPISDIALV1DeleteTrunkConfigResponse_Error;
@class KEYAPISDIALV1GetTrunkConfigCountResponse_Error;
@class KEYAPISDIALV1GetTrunkConfigListResponse_Error;
@class KEYAPISDIALV1GetTrunkConfigResponse_Error;
@class KEYAPISDIALV1PostTrunkConfigResponse_Error;
@class KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error;
@class KEYAPISDIALV1TrunkConfig;
@class KEYAPISDIALV1TrunkConfigFilter;
@class KEYAPISDIALV1TrunkConfigPaging;
@class KEYAPISDIALV1TrunkConfig_SavingError;
@class KEYAPISDIALV1TrunkConfig_SavingError_Conflict;
GPB_ENUM_FWD_DECLARE(KEYAPISDEVICEV1Device_SipTrunk_SipType);

NS_ASSUME_NONNULL_BEGIN

#pragma mark - Enum KEYAPISDIALV1TrunkConfigPaging_OrderByType

/**
 * Справочник типов значений сортировки.
 * # Тип: byte
 **/
typedef GPB_ENUM(KEYAPISDIALV1TrunkConfigPaging_OrderByType) {
  /**
   * 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.
   **/
  KEYAPISDIALV1TrunkConfigPaging_OrderByType_GPBUnrecognizedEnumeratorValue = kGPBUnrecognizedEnumeratorValue,
  /** Значение не указано */
  KEYAPISDIALV1TrunkConfigPaging_OrderByType_OrderByTypeUnknown = 0,

  /** По идентификатору */
  KEYAPISDIALV1TrunkConfigPaging_OrderByType_Id = 1,

  /** Дата последнего изменения */
  KEYAPISDIALV1TrunkConfigPaging_OrderByType_ChangedAt = 2,

  /** Дата создания */
  KEYAPISDIALV1TrunkConfigPaging_OrderByType_CreatedAt = 3,
};

GPBEnumDescriptor *KEYAPISDIALV1TrunkConfigPaging_OrderByType_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 KEYAPISDIALV1TrunkConfigPaging_OrderByType_IsValidValue(int32_t value);

#pragma mark - Enum KEYAPISDIALV1TrunkConfigPaging_DirectionType

/**
 * Справочник типов направлений сортировки;
 * # Тип: byte
 **/
typedef GPB_ENUM(KEYAPISDIALV1TrunkConfigPaging_DirectionType) {
  /**
   * 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.
   **/
  KEYAPISDIALV1TrunkConfigPaging_DirectionType_GPBUnrecognizedEnumeratorValue = kGPBUnrecognizedEnumeratorValue,
  /** Значение не указано */
  KEYAPISDIALV1TrunkConfigPaging_DirectionType_DirectionTypeUnknown = 0,

  /** От большего к меньшему */
  KEYAPISDIALV1TrunkConfigPaging_DirectionType_Desc = 1,

  /** От меньшего к большему */
  KEYAPISDIALV1TrunkConfigPaging_DirectionType_Asc = 2,
};

GPBEnumDescriptor *KEYAPISDIALV1TrunkConfigPaging_DirectionType_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 KEYAPISDIALV1TrunkConfigPaging_DirectionType_IsValidValue(int32_t value);

#pragma mark - KEYAPISDIALV1KeyapisDeviceTrunkConfigRoot

/**
 * 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 KEYAPISDIALV1KeyapisDeviceTrunkConfigRoot : GPBRootObject
@end

#pragma mark - KEYAPISDIALV1TrunkConfig

typedef GPB_ENUM(KEYAPISDIALV1TrunkConfig_FieldNumber) {
  KEYAPISDIALV1TrunkConfig_FieldNumber_Id_p = 1,
  KEYAPISDIALV1TrunkConfig_FieldNumber_CityOrponId = 2,
  KEYAPISDIALV1TrunkConfig_FieldNumber_DeviceSipTrunkSipType = 3,
  KEYAPISDIALV1TrunkConfig_FieldNumber_IpAddress = 4,
  KEYAPISDIALV1TrunkConfig_FieldNumber_Port = 5,
  KEYAPISDIALV1TrunkConfig_FieldNumber_CreatedAt = 6,
  KEYAPISDIALV1TrunkConfig_FieldNumber_ChangedAt = 7,
  KEYAPISDIALV1TrunkConfig_FieldNumber_DeletedAt = 8,
};

/**
 * Trunk-конфигурация.
 * # Описание модели
 **/
GPB_FINAL @interface KEYAPISDIALV1TrunkConfig : GPBMessage

/**
 * Идентификатор.
 * # Тип: Guid
 **/
@property(nonatomic, readwrite, copy, null_resettable) NSString *id_p;

/** ОРПОН Города */
@property(nonatomic, readwrite) int64_t cityOrponId;

/** Тип Trunk-аккаунта */
@property(nonatomic, readwrite) enum KEYAPISDEVICEV1Device_SipTrunk_SipType deviceSipTrunkSipType;

/**
 * IP-адрес.
 * # Диапазон: 7..15
 **/
@property(nonatomic, readwrite, copy, null_resettable) NSString *ipAddress;

/**
 * Порт.
 * # Диапазон: 0..65535
 **/
@property(nonatomic, readwrite) int32_t port;

/**
 * Дата создания.
 * # Тип: DateTime
 **/
@property(nonatomic, readwrite, strong, null_resettable) GPBTimestamp *createdAt;
/** Test to see if @c createdAt has been set. */
@property(nonatomic, readwrite) BOOL hasCreatedAt;

/**
 * Дата последнего изменения.
 * Заполняется и обновляется сервером.
 * Заполняется при создании и изменении.
 * Является версией объекта.
 * # Тип: DateTime
 **/
@property(nonatomic, readwrite, strong, null_resettable) GPBTimestamp *changedAt;
/** Test to see if @c changedAt has been set. */
@property(nonatomic, readwrite) BOOL hasChangedAt;

/**
 * Дата удаления.
 * # Тип: DateTime?
 **/
@property(nonatomic, readwrite, strong, null_resettable) GPBTimestamp *deletedAt;
/** Test to see if @c deletedAt has been set. */
@property(nonatomic, readwrite) BOOL hasDeletedAt;

@end

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

#pragma mark - KEYAPISDIALV1TrunkConfig_SavingError

typedef GPB_ENUM(KEYAPISDIALV1TrunkConfig_SavingError_FieldNumber) {
  KEYAPISDIALV1TrunkConfig_SavingError_FieldNumber_Conflict = 1,
};

typedef GPB_ENUM(KEYAPISDIALV1TrunkConfig_SavingError_Reason_OneOfCase) {
  KEYAPISDIALV1TrunkConfig_SavingError_Reason_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1TrunkConfig_SavingError_Reason_OneOfCase_Conflict = 1,
};

/**
 * Ошибка сохранения.
 * Эти проверки выполняются при работе с базой данных и сторонними сервисами
 **/
GPB_FINAL @interface KEYAPISDIALV1TrunkConfig_SavingError : GPBMessage

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

/** Конфликт версий */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfig_SavingError_Conflict *conflict;

@end

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

#pragma mark - KEYAPISDIALV1TrunkConfig_SavingError_Conflict

/**
 * Конфликт версий.
 * Причины:
 * - В базе хранится другая версия строки, значения changed_at оличаются
 **/
GPB_FINAL @interface KEYAPISDIALV1TrunkConfig_SavingError_Conflict : GPBMessage

@end

#pragma mark - KEYAPISDIALV1TrunkConfigFilter

typedef GPB_ENUM(KEYAPISDIALV1TrunkConfigFilter_FieldNumber) {
  KEYAPISDIALV1TrunkConfigFilter_FieldNumber_CityOrponIdsArray = 1,
  KEYAPISDIALV1TrunkConfigFilter_FieldNumber_IpAddressesArray = 2,
  KEYAPISDIALV1TrunkConfigFilter_FieldNumber_ShowDeleted = 3,
};

/**
 * Фильтр для Trunk-конфигураций
 **/
GPB_FINAL @interface KEYAPISDIALV1TrunkConfigFilter : GPBMessage

/** Фильтр по ОРПОН идентификаторам города */
@property(nonatomic, readwrite, strong, null_resettable) GPBInt64Array *cityOrponIdsArray;
/** The number of items in @c cityOrponIdsArray without causing the container to be created. */
@property(nonatomic, readonly) NSUInteger cityOrponIdsArray_Count;

/** Фильтр по IP-адресам */
@property(nonatomic, readwrite, strong, null_resettable) NSMutableArray<NSString*> *ipAddressesArray;
/** The number of items in @c ipAddressesArray without causing the container to be created. */
@property(nonatomic, readonly) NSUInteger ipAddressesArray_Count;

/** Показывать удаленные */
@property(nonatomic, readwrite, strong, null_resettable) GPBBoolValue *showDeleted;
/** Test to see if @c showDeleted has been set. */
@property(nonatomic, readwrite) BOOL hasShowDeleted;

@end

#pragma mark - KEYAPISDIALV1TrunkConfigPaging

typedef GPB_ENUM(KEYAPISDIALV1TrunkConfigPaging_FieldNumber) {
  KEYAPISDIALV1TrunkConfigPaging_FieldNumber_OrderByType = 1,
  KEYAPISDIALV1TrunkConfigPaging_FieldNumber_DirectionType = 2,
  KEYAPISDIALV1TrunkConfigPaging_FieldNumber_Limit = 3,
  KEYAPISDIALV1TrunkConfigPaging_FieldNumber_Offset = 4,
};

/**
 * Постраничный вывод
 **/
GPB_FINAL @interface KEYAPISDIALV1TrunkConfigPaging : GPBMessage

/**
 * Тип значения сортировки.
 * Если значение не передано, то будет взято значение по умолчанию.
 * # По умолчанию: CHANGED_AT
 **/
@property(nonatomic, readwrite) KEYAPISDIALV1TrunkConfigPaging_OrderByType orderByType;

/**
 * Тип направления сортировки.
 * # По умолчанию: DESC
 **/
@property(nonatomic, readwrite) KEYAPISDIALV1TrunkConfigPaging_DirectionType directionType;

/**
 * Количество записей на страницу.
 * Если значение 0 (не передано), то будет взято значение по умолчанию.
 * # Диапазон: 0..100.
 * # По умолчанию: 20
 **/
@property(nonatomic, readwrite) int32_t limit;

/**
 * Сдвиг.
 * # Диапазон: 0..2147483647
 **/
@property(nonatomic, readwrite) int32_t offset;

@end

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

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

#pragma mark - KEYAPISDIALV1PostTrunkConfigRequest

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigRequest_FieldNumber) {
  KEYAPISDIALV1PostTrunkConfigRequest_FieldNumber_Data_p = 1,
};

/**
 * Запрос сохранения Trunk-конфигурации по идентификатору
 **/
GPB_FINAL @interface KEYAPISDIALV1PostTrunkConfigRequest : GPBMessage

/** Trunk-конфигурации */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfig *data_p;
/** Test to see if @c data_p has been set. */
@property(nonatomic, readwrite) BOOL hasData_p;

@end

#pragma mark - KEYAPISDIALV1PostTrunkConfigResponse

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigResponse_FieldNumber) {
  KEYAPISDIALV1PostTrunkConfigResponse_FieldNumber_Data_p = 1,
  KEYAPISDIALV1PostTrunkConfigResponse_FieldNumber_Error = 2,
};

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigResponse_Type_OneOfCase) {
  KEYAPISDIALV1PostTrunkConfigResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1PostTrunkConfigResponse_Type_OneOfCase_Data_p = 1,
  KEYAPISDIALV1PostTrunkConfigResponse_Type_OneOfCase_Error = 2,
};

/**
 * Ответ на запрос сохранения Trunk-конфигурации по идентификатору
 **/
GPB_FINAL @interface KEYAPISDIALV1PostTrunkConfigResponse : GPBMessage

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

/** Профиль шифрования */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfig *data_p;

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

@end

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

#pragma mark - KEYAPISDIALV1PostTrunkConfigResponse_Error

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigResponse_Error_FieldNumber) {
  KEYAPISDIALV1PostTrunkConfigResponse_Error_FieldNumber_Validation = 1,
  KEYAPISDIALV1PostTrunkConfigResponse_Error_FieldNumber_Saving = 2,
};

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigResponse_Error_Reason_OneOfCase) {
  KEYAPISDIALV1PostTrunkConfigResponse_Error_Reason_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1PostTrunkConfigResponse_Error_Reason_OneOfCase_Validation = 1,
  KEYAPISDIALV1PostTrunkConfigResponse_Error_Reason_OneOfCase_Saving = 2,
};

/**
 * Ошибка запроса сохранения Trunk-конфигурации
 **/
GPB_FINAL @interface KEYAPISDIALV1PostTrunkConfigResponse_Error : GPBMessage

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

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

/** Ошибка сохранения */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfig_SavingError *saving;

@end

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

#pragma mark - KEYAPISDIALV1GetTrunkConfigRequest

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigRequest_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigRequest_FieldNumber_Id_p = 1,
};

/**
 * Запрос на получение Trunk-конфигурации
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigRequest : GPBMessage

/**
 * Идентификатор трубки.
 * # Тип: Guid
 **/
@property(nonatomic, readwrite, copy, null_resettable) NSString *id_p;

@end

#pragma mark - KEYAPISDIALV1GetTrunkConfigResponse

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigResponse_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigResponse_FieldNumber_Data_p = 1,
  KEYAPISDIALV1GetTrunkConfigResponse_FieldNumber_Error = 2,
};

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigResponse_Type_OneOfCase) {
  KEYAPISDIALV1GetTrunkConfigResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1GetTrunkConfigResponse_Type_OneOfCase_Data_p = 1,
  KEYAPISDIALV1GetTrunkConfigResponse_Type_OneOfCase_Error = 2,
};

/**
 * Ответ на запрос Trunk-конфигурации
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigResponse : GPBMessage

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

/** Trunk-конфигурация */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfig *data_p;

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

@end

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

#pragma mark - KEYAPISDIALV1GetTrunkConfigResponse_Error

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigResponse_Error_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigResponse_Error_FieldNumber_Validation = 1,
};

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigResponse_Error_Reason_OneOfCase) {
  KEYAPISDIALV1GetTrunkConfigResponse_Error_Reason_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1GetTrunkConfigResponse_Error_Reason_OneOfCase_Validation = 1,
};

/**
 * Ошибка запроса получения баннера
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigResponse_Error : GPBMessage

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

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

@end

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

#pragma mark - KEYAPISDIALV1GetTrunkConfigListRequest

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigListRequest_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigListRequest_FieldNumber_Filter = 1,
  KEYAPISDIALV1GetTrunkConfigListRequest_FieldNumber_Paging = 2,
};

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigListRequest_Pagination_OneOfCase) {
  KEYAPISDIALV1GetTrunkConfigListRequest_Pagination_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1GetTrunkConfigListRequest_Pagination_OneOfCase_Paging = 2,
};

/**
 * Запрос на получение списка Trunk-конфигураций
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigListRequest : GPBMessage

/** Фильтр */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfigFilter *filter;
/** Test to see if @c filter has been set. */
@property(nonatomic, readwrite) BOOL hasFilter;

/** Вариант разбиения на страницы */
@property(nonatomic, readonly) KEYAPISDIALV1GetTrunkConfigListRequest_Pagination_OneOfCase paginationOneOfCase;

/** Стандартный постраничный вывод */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfigPaging *paging;

@end

/**
 * Clears whatever value was set for the oneof 'pagination'.
 **/
void KEYAPISDIALV1GetTrunkConfigListRequest_ClearPaginationOneOfCase(KEYAPISDIALV1GetTrunkConfigListRequest *message);

#pragma mark - KEYAPISDIALV1GetTrunkConfigListResponse

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigListResponse_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigListResponse_FieldNumber_Data_p = 1,
  KEYAPISDIALV1GetTrunkConfigListResponse_FieldNumber_Error = 2,
};

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigListResponse_Type_OneOfCase) {
  KEYAPISDIALV1GetTrunkConfigListResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1GetTrunkConfigListResponse_Type_OneOfCase_Data_p = 1,
  KEYAPISDIALV1GetTrunkConfigListResponse_Type_OneOfCase_Error = 2,
};

/**
 * Ответ на запрос списка Trunk-конфигураций
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigListResponse : GPBMessage

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

/** Trunk-конфигурация */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfig *data_p;

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

@end

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

#pragma mark - KEYAPISDIALV1GetTrunkConfigListResponse_Error

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigListResponse_Error_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigListResponse_Error_FieldNumber_ValidationError = 1,
};

/**
 * Ошибка запроса получения списка Trunk-конфигураций
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigListResponse_Error : GPBMessage

/** Ошибка валидации */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDEVICEV1ValidationError *validationError;
/** Test to see if @c validationError has been set. */
@property(nonatomic, readwrite) BOOL hasValidationError;

@end

#pragma mark - KEYAPISDIALV1GetTrunkConfigCountRequest

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigCountRequest_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigCountRequest_FieldNumber_Filter = 1,
};

/**
 * Запрос на получение количества Trunk-конфигураций
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigCountRequest : GPBMessage

/** Фильтр */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDIALV1TrunkConfigFilter *filter;
/** Test to see if @c filter has been set. */
@property(nonatomic, readwrite) BOOL hasFilter;

@end

#pragma mark - KEYAPISDIALV1GetTrunkConfigCountResponse

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigCountResponse_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigCountResponse_FieldNumber_Data_p = 1,
  KEYAPISDIALV1GetTrunkConfigCountResponse_FieldNumber_Error = 2,
};

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigCountResponse_Type_OneOfCase) {
  KEYAPISDIALV1GetTrunkConfigCountResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1GetTrunkConfigCountResponse_Type_OneOfCase_Data_p = 1,
  KEYAPISDIALV1GetTrunkConfigCountResponse_Type_OneOfCase_Error = 2,
};

/**
 * Ответ на запрос количества Trunk-конфигураций
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigCountResponse : GPBMessage

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

/** Всего Trunk-конфигураций */
@property(nonatomic, readwrite) int32_t data_p;

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

@end

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

#pragma mark - KEYAPISDIALV1GetTrunkConfigCountResponse_Error

typedef GPB_ENUM(KEYAPISDIALV1GetTrunkConfigCountResponse_Error_FieldNumber) {
  KEYAPISDIALV1GetTrunkConfigCountResponse_Error_FieldNumber_ValidationError = 1,
};

/**
 * Ошибка запроса получения количества Trunk-конфигураций
 **/
GPB_FINAL @interface KEYAPISDIALV1GetTrunkConfigCountResponse_Error : GPBMessage

/** Ошибка валидации */
@property(nonatomic, readwrite, strong, null_resettable) KEYAPISDEVICEV1ValidationError *validationError;
/** Test to see if @c validationError has been set. */
@property(nonatomic, readwrite) BOOL hasValidationError;

@end

#pragma mark - KEYAPISDIALV1DeleteTrunkConfigRequest

typedef GPB_ENUM(KEYAPISDIALV1DeleteTrunkConfigRequest_FieldNumber) {
  KEYAPISDIALV1DeleteTrunkConfigRequest_FieldNumber_Id_p = 1,
};

/**
 * Запрос удаления Trunk-конфигурации
 **/
GPB_FINAL @interface KEYAPISDIALV1DeleteTrunkConfigRequest : GPBMessage

/**
 * Идентификатор.
 * # Тип: Guid
 **/
@property(nonatomic, readwrite, copy, null_resettable) NSString *id_p;

@end

#pragma mark - KEYAPISDIALV1DeleteTrunkConfigResponse

typedef GPB_ENUM(KEYAPISDIALV1DeleteTrunkConfigResponse_FieldNumber) {
  KEYAPISDIALV1DeleteTrunkConfigResponse_FieldNumber_Error = 1,
};

typedef GPB_ENUM(KEYAPISDIALV1DeleteTrunkConfigResponse_Type_OneOfCase) {
  KEYAPISDIALV1DeleteTrunkConfigResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1DeleteTrunkConfigResponse_Type_OneOfCase_Error = 1,
};

/**
 * Ответ на запрос удаления Trunk-конфигурации
 **/
GPB_FINAL @interface KEYAPISDIALV1DeleteTrunkConfigResponse : GPBMessage

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

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

@end

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

#pragma mark - KEYAPISDIALV1DeleteTrunkConfigResponse_Error

typedef GPB_ENUM(KEYAPISDIALV1DeleteTrunkConfigResponse_Error_FieldNumber) {
  KEYAPISDIALV1DeleteTrunkConfigResponse_Error_FieldNumber_Validation = 1,
};

typedef GPB_ENUM(KEYAPISDIALV1DeleteTrunkConfigResponse_Error_Reason_OneOfCase) {
  KEYAPISDIALV1DeleteTrunkConfigResponse_Error_Reason_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1DeleteTrunkConfigResponse_Error_Reason_OneOfCase_Validation = 1,
};

/**
 * Ошибка запроса восстановления Trunk-конфигурации
 **/
GPB_FINAL @interface KEYAPISDIALV1DeleteTrunkConfigResponse_Error : GPBMessage

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

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

@end

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

#pragma mark - KEYAPISDIALV1PostTrunkConfigRestoreRequest

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigRestoreRequest_FieldNumber) {
  KEYAPISDIALV1PostTrunkConfigRestoreRequest_FieldNumber_Id_p = 1,
};

/**
 * Запрос разархивации Trunk-конфигурации по идентификатору
 **/
GPB_FINAL @interface KEYAPISDIALV1PostTrunkConfigRestoreRequest : GPBMessage

/**
 * Идентификатор.
 * # Тип: Guid
 **/
@property(nonatomic, readwrite, copy, null_resettable) NSString *id_p;

@end

#pragma mark - KEYAPISDIALV1PostTrunkConfigRestoreResponse

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigRestoreResponse_FieldNumber) {
  KEYAPISDIALV1PostTrunkConfigRestoreResponse_FieldNumber_Error = 1,
};

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigRestoreResponse_Type_OneOfCase) {
  KEYAPISDIALV1PostTrunkConfigRestoreResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1PostTrunkConfigRestoreResponse_Type_OneOfCase_Error = 1,
};

/**
 * Отвест на запрос разархивации Trunk-конфигурации по идентификатору
 **/
GPB_FINAL @interface KEYAPISDIALV1PostTrunkConfigRestoreResponse : GPBMessage

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

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

@end

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

#pragma mark - KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error_FieldNumber) {
  KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error_FieldNumber_Validation = 1,
};

typedef GPB_ENUM(KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error_Reason_OneOfCase) {
  KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error_Reason_OneOfCase_GPBUnsetOneOfCase = 0,
  KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error_Reason_OneOfCase_Validation = 1,
};

/**
 * Ошибка запроса разархивации Trunk-конфигурации
 **/
GPB_FINAL @interface KEYAPISDIALV1PostTrunkConfigRestoreResponse_Error : GPBMessage

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

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

@end

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

NS_ASSUME_NONNULL_END

CF_EXTERN_C_END

#pragma clang diagnostic pop

// @@protoc_insertion_point(global_scope)

// clang-format on
