use core::ptr::NonNull;
use objc2::__framework_prelude::*;
use objc2_foundation::*;
use crate::*;
extern "C" {
pub static HMErrorDomain: &'static NSString;
}
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct HMErrorCode(pub NSInteger);
impl HMErrorCode {
#[doc(alias = "HMErrorCodeUnexpectedError")]
pub const UnexpectedError: Self = Self(-1);
#[doc(alias = "HMErrorCodeAlreadyExists")]
pub const AlreadyExists: Self = Self(1);
#[doc(alias = "HMErrorCodeNotFound")]
pub const NotFound: Self = Self(2);
#[doc(alias = "HMErrorCodeInvalidParameter")]
pub const InvalidParameter: Self = Self(3);
#[doc(alias = "HMErrorCodeAccessoryNotReachable")]
pub const AccessoryNotReachable: Self = Self(4);
#[doc(alias = "HMErrorCodeReadOnlyCharacteristic")]
pub const ReadOnlyCharacteristic: Self = Self(5);
#[doc(alias = "HMErrorCodeWriteOnlyCharacteristic")]
pub const WriteOnlyCharacteristic: Self = Self(6);
#[doc(alias = "HMErrorCodeNotificationNotSupported")]
pub const NotificationNotSupported: Self = Self(7);
#[doc(alias = "HMErrorCodeOperationTimedOut")]
pub const OperationTimedOut: Self = Self(8);
#[doc(alias = "HMErrorCodeAccessoryPoweredOff")]
pub const AccessoryPoweredOff: Self = Self(9);
#[doc(alias = "HMErrorCodeAccessDenied")]
pub const AccessDenied: Self = Self(10);
#[doc(alias = "HMErrorCodeObjectAssociatedToAnotherHome")]
pub const ObjectAssociatedToAnotherHome: Self = Self(11);
#[doc(alias = "HMErrorCodeObjectNotAssociatedToAnyHome")]
pub const ObjectNotAssociatedToAnyHome: Self = Self(12);
#[doc(alias = "HMErrorCodeObjectAlreadyAssociatedToHome")]
pub const ObjectAlreadyAssociatedToHome: Self = Self(13);
#[doc(alias = "HMErrorCodeAccessoryIsBusy")]
pub const AccessoryIsBusy: Self = Self(14);
#[doc(alias = "HMErrorCodeOperationInProgress")]
pub const OperationInProgress: Self = Self(15);
#[doc(alias = "HMErrorCodeAccessoryOutOfResources")]
pub const AccessoryOutOfResources: Self = Self(16);
#[doc(alias = "HMErrorCodeInsufficientPrivileges")]
pub const InsufficientPrivileges: Self = Self(17);
#[doc(alias = "HMErrorCodeAccessoryPairingFailed")]
pub const AccessoryPairingFailed: Self = Self(18);
#[doc(alias = "HMErrorCodeInvalidDataFormatSpecified")]
pub const InvalidDataFormatSpecified: Self = Self(19);
#[doc(alias = "HMErrorCodeNilParameter")]
pub const NilParameter: Self = Self(20);
#[doc(alias = "HMErrorCodeUnconfiguredParameter")]
pub const UnconfiguredParameter: Self = Self(21);
#[doc(alias = "HMErrorCodeInvalidClass")]
pub const InvalidClass: Self = Self(22);
#[doc(alias = "HMErrorCodeOperationCancelled")]
pub const OperationCancelled: Self = Self(23);
#[doc(alias = "HMErrorCodeRoomForHomeCannotBeInZone")]
pub const RoomForHomeCannotBeInZone: Self = Self(24);
#[doc(alias = "HMErrorCodeNoActionsInActionSet")]
pub const NoActionsInActionSet: Self = Self(25);
#[doc(alias = "HMErrorCodeNoRegisteredActionSets")]
pub const NoRegisteredActionSets: Self = Self(26);
#[doc(alias = "HMErrorCodeMissingParameter")]
pub const MissingParameter: Self = Self(27);
#[doc(alias = "HMErrorCodeFireDateInPast")]
pub const FireDateInPast: Self = Self(28);
#[doc(alias = "HMErrorCodeRoomForHomeCannotBeUpdated")]
pub const RoomForHomeCannotBeUpdated: Self = Self(29);
#[doc(alias = "HMErrorCodeActionInAnotherActionSet")]
pub const ActionInAnotherActionSet: Self = Self(30);
#[doc(alias = "HMErrorCodeObjectWithSimilarNameExistsInHome")]
pub const ObjectWithSimilarNameExistsInHome: Self = Self(31);
#[doc(alias = "HMErrorCodeHomeWithSimilarNameExists")]
pub const HomeWithSimilarNameExists: Self = Self(32);
#[doc(alias = "HMErrorCodeRenameWithSimilarName")]
pub const RenameWithSimilarName: Self = Self(33);
#[doc(alias = "HMErrorCodeCannotRemoveNonBridgeAccessory")]
pub const CannotRemoveNonBridgeAccessory: Self = Self(34);
#[doc(alias = "HMErrorCodeNameContainsProhibitedCharacters")]
pub const NameContainsProhibitedCharacters: Self = Self(35);
#[doc(alias = "HMErrorCodeNameDoesNotStartWithValidCharacters")]
pub const NameDoesNotStartWithValidCharacters: Self = Self(36);
#[doc(alias = "HMErrorCodeUserIDNotEmailAddress")]
pub const UserIDNotEmailAddress: Self = Self(37);
#[doc(alias = "HMErrorCodeUserDeclinedAddingUser")]
pub const UserDeclinedAddingUser: Self = Self(38);
#[doc(alias = "HMErrorCodeUserDeclinedRemovingUser")]
pub const UserDeclinedRemovingUser: Self = Self(39);
#[doc(alias = "HMErrorCodeUserDeclinedInvite")]
pub const UserDeclinedInvite: Self = Self(40);
#[doc(alias = "HMErrorCodeUserManagementFailed")]
pub const UserManagementFailed: Self = Self(41);
#[doc(alias = "HMErrorCodeRecurrenceTooSmall")]
pub const RecurrenceTooSmall: Self = Self(42);
#[doc(alias = "HMErrorCodeInvalidValueType")]
pub const InvalidValueType: Self = Self(43);
#[doc(alias = "HMErrorCodeValueLowerThanMinimum")]
pub const ValueLowerThanMinimum: Self = Self(44);
#[doc(alias = "HMErrorCodeValueHigherThanMaximum")]
pub const ValueHigherThanMaximum: Self = Self(45);
#[doc(alias = "HMErrorCodeStringLongerThanMaximum")]
pub const StringLongerThanMaximum: Self = Self(46);
#[doc(alias = "HMErrorCodeHomeAccessNotAuthorized")]
pub const HomeAccessNotAuthorized: Self = Self(47);
#[doc(alias = "HMErrorCodeOperationNotSupported")]
pub const OperationNotSupported: Self = Self(48);
#[doc(alias = "HMErrorCodeMaximumObjectLimitReached")]
pub const MaximumObjectLimitReached: Self = Self(49);
#[doc(alias = "HMErrorCodeAccessorySentInvalidResponse")]
pub const AccessorySentInvalidResponse: Self = Self(50);
#[doc(alias = "HMErrorCodeStringShorterThanMinimum")]
pub const StringShorterThanMinimum: Self = Self(51);
#[doc(alias = "HMErrorCodeGenericError")]
pub const GenericError: Self = Self(52);
#[doc(alias = "HMErrorCodeSecurityFailure")]
pub const SecurityFailure: Self = Self(53);
#[doc(alias = "HMErrorCodeCommunicationFailure")]
pub const CommunicationFailure: Self = Self(54);
#[doc(alias = "HMErrorCodeMessageAuthenticationFailed")]
pub const MessageAuthenticationFailed: Self = Self(55);
#[doc(alias = "HMErrorCodeInvalidMessageSize")]
pub const InvalidMessageSize: Self = Self(56);
#[doc(alias = "HMErrorCodeAccessoryDiscoveryFailed")]
pub const AccessoryDiscoveryFailed: Self = Self(57);
#[doc(alias = "HMErrorCodeClientRequestError")]
pub const ClientRequestError: Self = Self(58);
#[doc(alias = "HMErrorCodeAccessoryResponseError")]
pub const AccessoryResponseError: Self = Self(59);
#[doc(alias = "HMErrorCodeNameDoesNotEndWithValidCharacters")]
pub const NameDoesNotEndWithValidCharacters: Self = Self(60);
#[doc(alias = "HMErrorCodeAccessoryIsBlocked")]
pub const AccessoryIsBlocked: Self = Self(61);
#[doc(alias = "HMErrorCodeInvalidAssociatedServiceType")]
pub const InvalidAssociatedServiceType: Self = Self(62);
#[doc(alias = "HMErrorCodeActionSetExecutionFailed")]
pub const ActionSetExecutionFailed: Self = Self(63);
#[doc(alias = "HMErrorCodeActionSetExecutionPartialSuccess")]
pub const ActionSetExecutionPartialSuccess: Self = Self(64);
#[doc(alias = "HMErrorCodeActionSetExecutionInProgress")]
pub const ActionSetExecutionInProgress: Self = Self(65);
#[doc(alias = "HMErrorCodeAccessoryOutOfCompliance")]
pub const AccessoryOutOfCompliance: Self = Self(66);
#[doc(alias = "HMErrorCodeDataResetFailure")]
pub const DataResetFailure: Self = Self(67);
#[doc(alias = "HMErrorCodeNotificationAlreadyEnabled")]
pub const NotificationAlreadyEnabled: Self = Self(68);
#[doc(alias = "HMErrorCodeRecurrenceMustBeOnSpecifiedBoundaries")]
pub const RecurrenceMustBeOnSpecifiedBoundaries: Self = Self(69);
#[doc(alias = "HMErrorCodeDateMustBeOnSpecifiedBoundaries")]
pub const DateMustBeOnSpecifiedBoundaries: Self = Self(70);
#[doc(alias = "HMErrorCodeCannotActivateTriggerTooFarInFuture")]
pub const CannotActivateTriggerTooFarInFuture: Self = Self(71);
#[doc(alias = "HMErrorCodeRecurrenceTooLarge")]
pub const RecurrenceTooLarge: Self = Self(72);
#[doc(alias = "HMErrorCodeReadWritePartialSuccess")]
pub const ReadWritePartialSuccess: Self = Self(73);
#[doc(alias = "HMErrorCodeReadWriteFailure")]
pub const ReadWriteFailure: Self = Self(74);
#[doc(alias = "HMErrorCodeNotSignedIntoiCloud")]
pub const NotSignedIntoiCloud: Self = Self(75);
#[doc(alias = "HMErrorCodeKeychainSyncNotEnabled")]
pub const KeychainSyncNotEnabled: Self = Self(76);
#[doc(alias = "HMErrorCodeCloudDataSyncInProgress")]
pub const CloudDataSyncInProgress: Self = Self(77);
#[doc(alias = "HMErrorCodeNetworkUnavailable")]
pub const NetworkUnavailable: Self = Self(78);
#[doc(alias = "HMErrorCodeAddAccessoryFailed")]
pub const AddAccessoryFailed: Self = Self(79);
#[doc(alias = "HMErrorCodeMissingEntitlement")]
pub const MissingEntitlement: Self = Self(80);
#[doc(alias = "HMErrorCodeCannotUnblockNonBridgeAccessory")]
pub const CannotUnblockNonBridgeAccessory: Self = Self(81);
#[doc(alias = "HMErrorCodeDeviceLocked")]
pub const DeviceLocked: Self = Self(82);
#[doc(alias = "HMErrorCodeCannotRemoveBuiltinActionSet")]
pub const CannotRemoveBuiltinActionSet: Self = Self(83);
#[doc(alias = "HMErrorCodeLocationForHomeDisabled")]
pub const LocationForHomeDisabled: Self = Self(84);
#[doc(alias = "HMErrorCodeNotAuthorizedForLocationServices")]
pub const NotAuthorizedForLocationServices: Self = Self(85);
#[doc(alias = "HMErrorCodeReferToUserManual")]
pub const ReferToUserManual: Self = Self(86);
#[doc(alias = "HMErrorCodeInvalidOrMissingAuthorizationData")]
pub const InvalidOrMissingAuthorizationData: Self = Self(87);
#[doc(alias = "HMErrorCodeBridgedAccessoryNotReachable")]
pub const BridgedAccessoryNotReachable: Self = Self(88);
#[doc(alias = "HMErrorCodeNotAuthorizedForMicrophoneAccess")]
pub const NotAuthorizedForMicrophoneAccess: Self = Self(89);
#[doc(alias = "HMErrorCodeIncompatibleNetwork")]
pub const IncompatibleNetwork: Self = Self(90);
#[doc(alias = "HMErrorCodeNoHomeHub")]
pub const NoHomeHub: Self = Self(91);
#[doc(alias = "HMErrorCodeNoCompatibleHomeHub")]
pub const NoCompatibleHomeHub: Self = Self(92);
#[doc(alias = "HMErrorCodeIncompatibleAccessory")]
pub const IncompatibleAccessory: Self = Self(93);
#[doc(alias = "HMErrorCodeIncompatibleHomeHub")]
#[deprecated]
pub const IncompatibleHomeHub: Self = Self(HMErrorCode::NoCompatibleHomeHub.0);
#[doc(alias = "HMErrorCodeObjectWithSimilarNameExists")]
pub const ObjectWithSimilarNameExists: Self = Self(95);
#[doc(alias = "HMErrorCodeOwnershipFailure")]
pub const OwnershipFailure: Self = Self(96);
#[doc(alias = "HMErrorCodeMaximumAccessoriesOfTypeInHome")]
pub const MaximumAccessoriesOfTypeInHome: Self = Self(97);
#[doc(alias = "HMErrorCodeWiFiCredentialGenerationFailed")]
pub const WiFiCredentialGenerationFailed: Self = Self(98);
#[doc(alias = "HMErrorCodeEnterpriseNetworkNotSupported")]
pub const EnterpriseNetworkNotSupported: Self = Self(99);
#[doc(alias = "HMErrorCodeTimedOutWaitingForAccessory")]
pub const TimedOutWaitingForAccessory: Self = Self(100);
#[doc(alias = "HMErrorCodeAccessoryCommunicationFailure")]
pub const AccessoryCommunicationFailure: Self = Self(101);
#[doc(alias = "HMErrorCodeFailedToJoinNetwork")]
pub const FailedToJoinNetwork: Self = Self(102);
#[doc(alias = "HMErrorCodeAccessoryIsSuspended")]
pub const AccessoryIsSuspended: Self = Self(103);
#[doc(alias = "HMErrorCodePartialCommunicationFailure")]
pub const PartialCommunicationFailure: Self = Self(104);
#[doc(alias = "HMErrorCodeHomeUpgradeRequired")]
pub const HomeUpgradeRequired: Self = Self(105);
}
unsafe impl Encode for HMErrorCode {
const ENCODING: Encoding = NSInteger::ENCODING;
}
unsafe impl RefEncode for HMErrorCode {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}