// Generated by the protocol buffer compiler.  DO NOT EDIT!
// clang-format off
// source: deviceapis/device/v1/deviceapis_device_user_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 DEVICEAPISDEVICEV1PostUserNameReplaceRequest_ReplaceTo;
@class DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_ReplaceTo;
@class DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_ReplaceTo;
@class DEVICEAPISDEVICEV1User;
@class DEVICEAPISDEVICEV1User_Permission;

NS_ASSUME_NONNULL_BEGIN

#pragma mark - DEVICEAPISDEVICEV1DeviceapisDeviceUserV1Root

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

#pragma mark - DEVICEAPISDEVICEV1DeleteUserRequest

typedef GPB_ENUM(DEVICEAPISDEVICEV1DeleteUserRequest_FieldNumber) {
  DEVICEAPISDEVICEV1DeleteUserRequest_FieldNumber_Username = 1,
};

/**
 * Запрос удаления единичной сущности User по ключу
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1DeleteUserRequest : GPBMessage

/** Имя пользователя */
@property(nonatomic, readwrite, copy, null_resettable) NSString *username;

@end

#pragma mark - DEVICEAPISDEVICEV1DeleteUserResponse

/**
 * Ответ на запрос удаления единичной сущности User по ключу
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1DeleteUserResponse : GPBMessage

@end

#pragma mark - DEVICEAPISDEVICEV1GetUserListRequest

/**
 * Запрос получения списка сущностей User по фильтру
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1GetUserListRequest : GPBMessage

@end

#pragma mark - DEVICEAPISDEVICEV1GetUserListResponse

typedef GPB_ENUM(DEVICEAPISDEVICEV1GetUserListResponse_FieldNumber) {
  DEVICEAPISDEVICEV1GetUserListResponse_FieldNumber_DataArray = 1,
};

/**
 * Ответ на запрос получения списка сущностей User по фильтру
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1GetUserListResponse : GPBMessage

/** Список User */
@property(nonatomic, readwrite, strong, null_resettable) NSMutableArray<DEVICEAPISDEVICEV1User*> *dataArray;
/** The number of items in @c dataArray without causing the container to be created. */
@property(nonatomic, readonly) NSUInteger dataArray_Count;

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserNameReplaceRequest

typedef GPB_ENUM(DEVICEAPISDEVICEV1PostUserNameReplaceRequest_FieldNumber) {
  DEVICEAPISDEVICEV1PostUserNameReplaceRequest_FieldNumber_Username = 1,
  DEVICEAPISDEVICEV1PostUserNameReplaceRequest_FieldNumber_Data_p = 2,
};

/**
 * Запрос замены имени пользователя
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserNameReplaceRequest : GPBMessage

/** Имя пользователя */
@property(nonatomic, readwrite, copy, null_resettable) NSString *username;

/** Поле на замену */
@property(nonatomic, readwrite, strong, null_resettable) DEVICEAPISDEVICEV1PostUserNameReplaceRequest_ReplaceTo *data_p;
/** Test to see if @c data_p has been set. */
@property(nonatomic, readwrite) BOOL hasData_p;

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserNameReplaceRequest_ReplaceTo

typedef GPB_ENUM(DEVICEAPISDEVICEV1PostUserNameReplaceRequest_ReplaceTo_FieldNumber) {
  DEVICEAPISDEVICEV1PostUserNameReplaceRequest_ReplaceTo_FieldNumber_TargetUsername = 1,
};

/**
 * Поле на замену
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserNameReplaceRequest_ReplaceTo : GPBMessage

/** Имя пользователя */
@property(nonatomic, readwrite, copy, null_resettable) NSString *targetUsername;

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserNameReplaceResponse

/**
 * Ответ на запрос замены имени пользователя
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserNameReplaceResponse : GPBMessage

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest

typedef GPB_ENUM(DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_FieldNumber) {
  DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_FieldNumber_Username = 1,
  DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_FieldNumber_Data_p = 2,
};

/**
 * Запрос замены пароля пользователя
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest : GPBMessage

/** Имя пользователя */
@property(nonatomic, readwrite, copy, null_resettable) NSString *username;

/** Поле на замену */
@property(nonatomic, readwrite, strong, null_resettable) DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_ReplaceTo *data_p;
/** Test to see if @c data_p has been set. */
@property(nonatomic, readwrite) BOOL hasData_p;

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_ReplaceTo

typedef GPB_ENUM(DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_ReplaceTo_FieldNumber) {
  DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_ReplaceTo_FieldNumber_Password = 1,
};

/**
 * Поле на замену
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserPasswordReplaceRequest_ReplaceTo : GPBMessage

/** Пароль */
@property(nonatomic, readwrite, copy, null_resettable) NSString *password;

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserPasswordReplaceResponse

/**
 * Ответ на запрос замены пароля пользователя
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserPasswordReplaceResponse : GPBMessage

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest

typedef GPB_ENUM(DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_FieldNumber) {
  DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_FieldNumber_Username = 1,
  DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_FieldNumber_Data_p = 2,
};

/**
 * Запрос замены разрешений пользователя
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest : GPBMessage

/** Имя пользователя */
@property(nonatomic, readwrite, copy, null_resettable) NSString *username;

/** Поле на замену */
@property(nonatomic, readwrite, strong, null_resettable) DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_ReplaceTo *data_p;
/** Test to see if @c data_p has been set. */
@property(nonatomic, readwrite) BOOL hasData_p;

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_ReplaceTo

typedef GPB_ENUM(DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_ReplaceTo_FieldNumber) {
  DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_ReplaceTo_FieldNumber_PermissionArray = 1,
};

/**
 * Поле на замену
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserPermissionReplaceRequest_ReplaceTo : GPBMessage

/** Права доступа */
@property(nonatomic, readwrite, strong, null_resettable) NSMutableArray<DEVICEAPISDEVICEV1User_Permission*> *permissionArray;
/** The number of items in @c permissionArray without causing the container to be created. */
@property(nonatomic, readonly) NSUInteger permissionArray_Count;

@end

#pragma mark - DEVICEAPISDEVICEV1PostUserPermissionReplaceResponse

/**
 * Ответ на запрос замены разрешений пользователя
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1PostUserPermissionReplaceResponse : GPBMessage

@end

#pragma mark - DEVICEAPISDEVICEV1SaveUserRequest

typedef GPB_ENUM(DEVICEAPISDEVICEV1SaveUserRequest_FieldNumber) {
  DEVICEAPISDEVICEV1SaveUserRequest_FieldNumber_Data_p = 1,
};

/**
 * Запрос на создания/редактирование сущности User
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1SaveUserRequest : GPBMessage

/** Пользователь */
@property(nonatomic, readwrite, strong, null_resettable) DEVICEAPISDEVICEV1User *data_p;
/** Test to see if @c data_p has been set. */
@property(nonatomic, readwrite) BOOL hasData_p;

@end

#pragma mark - DEVICEAPISDEVICEV1SaveUserResponse

typedef GPB_ENUM(DEVICEAPISDEVICEV1SaveUserResponse_FieldNumber) {
  DEVICEAPISDEVICEV1SaveUserResponse_FieldNumber_Data_p = 1,
};

typedef GPB_ENUM(DEVICEAPISDEVICEV1SaveUserResponse_Type_OneOfCase) {
  DEVICEAPISDEVICEV1SaveUserResponse_Type_OneOfCase_GPBUnsetOneOfCase = 0,
  DEVICEAPISDEVICEV1SaveUserResponse_Type_OneOfCase_Data_p = 1,
};

/**
 * Ответ на запрос на создания/редактирование сущности User
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1SaveUserResponse : GPBMessage

/** Тип ответа */
@property(nonatomic, readonly) DEVICEAPISDEVICEV1SaveUserResponse_Type_OneOfCase typeOneOfCase;

/** Пользователь */
@property(nonatomic, readwrite, strong, null_resettable) DEVICEAPISDEVICEV1User *data_p;

@end

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

#pragma mark - DEVICEAPISDEVICEV1User

typedef GPB_ENUM(DEVICEAPISDEVICEV1User_FieldNumber) {
  DEVICEAPISDEVICEV1User_FieldNumber_Username = 1,
  DEVICEAPISDEVICEV1User_FieldNumber_Password = 2,
  DEVICEAPISDEVICEV1User_FieldNumber_PermissionArray = 3,
};

/**
 * Пользователь
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1User : GPBMessage

/** Имя пользователя */
@property(nonatomic, readwrite, copy, null_resettable) NSString *username;

/**
 * Пароль.
 * Не возвращается с сервера.
 * TODO: в генерации сваггера не показывать INPUT_ONLY поля в ответах
 **/
@property(nonatomic, readwrite, copy, null_resettable) NSString *password;

/** Права доступа */
@property(nonatomic, readwrite, strong, null_resettable) NSMutableArray<DEVICEAPISDEVICEV1User_Permission*> *permissionArray;
/** The number of items in @c permissionArray without causing the container to be created. */
@property(nonatomic, readonly) NSUInteger permissionArray_Count;

@end

#pragma mark - DEVICEAPISDEVICEV1User_Permission

typedef GPB_ENUM(DEVICEAPISDEVICEV1User_Permission_FieldNumber) {
  DEVICEAPISDEVICEV1User_Permission_FieldNumber_PermissionName = 1,
  DEVICEAPISDEVICEV1User_Permission_FieldNumber_IsEnabled = 2,
};

/**
 * Права доступа
 **/
GPB_FINAL @interface DEVICEAPISDEVICEV1User_Permission : GPBMessage

/** Имя разрешения */
@property(nonatomic, readwrite, copy, null_resettable) NSString *permissionName;

/** Наличие разрешения */
@property(nonatomic, readwrite) BOOL isEnabled;

@end

NS_ASSUME_NONNULL_END

CF_EXTERN_C_END

#pragma clang diagnostic pop

// @@protoc_insertion_point(global_scope)

// clang-format on
