1 /* 2 * Copyright (c) 2022-2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef OHOS_USERAUTH_COMMON_H 17 #define OHOS_USERAUTH_COMMON_H 18 19 #include <map> 20 #include <vector> 21 22 #include "napi/native_api.h" 23 #include "napi/native_common.h" 24 25 #include "iam_common_defines.h" 26 27 namespace OHOS { 28 namespace UserIam { 29 namespace UserAuth { 30 constexpr size_t ARGS_ZERO = 0; 31 constexpr size_t ARGS_ONE = 1; 32 constexpr size_t ARGS_TWO = 2; 33 constexpr size_t ARGS_THREE = 3; 34 constexpr size_t ARGS_FOUR = 4; 35 36 constexpr size_t PARAM0 = 0; 37 constexpr size_t PARAM1 = 1; 38 constexpr size_t PARAM2 = 2; 39 constexpr size_t PARAM3 = 3; 40 41 constexpr int32_t API_VERSION_6 = 6; 42 constexpr int32_t API_VERSION_8 = 8; 43 constexpr int32_t API_VERSION_9 = 9; 44 constexpr int32_t API_VERSION_10 = 10; 45 constexpr int32_t API_VERSION_12 = 12; 46 47 constexpr const char *NOTICE_EVENT_AUTH_READY = "EVENT_AUTH_TYPE_READY"; 48 constexpr const char *NOTICE_EVENT_CANCEL_AUTH = "EVENT_AUTH_USER_CANCEL"; 49 constexpr const char *NOTICE_EVENT_USER_NAVIGATION = "EVENT_AUTH_USER_NAVIGATION"; 50 constexpr const char *NOTICE_EVENT_WIDGET_PARA_INVALID = "EVENT_AUTH_WIDGET_PARA_INVALID"; 51 constexpr const char *NOTICE_EVENT_END = "EVENT_AUTH_END"; 52 constexpr const char *NOTICE_EVENT_RELOAD = "EVENT_AUTH_RELOAD"; 53 54 // For API6 55 enum class AuthenticationResult : int32_t { 56 NO_SUPPORT = -1, 57 SUCCESS = 0, 58 COMPARE_FAILURE = 1, 59 CANCELED = 2, 60 TIMEOUT = 3, 61 CAMERA_FAIL = 4, 62 BUSY = 5, 63 INVALID_PARAMETERS = 6, 64 LOCKED = 7, 65 NOT_ENROLLED = 8, 66 GENERAL_ERROR = 100, 67 }; 68 69 enum class UserAuthResultCode : int32_t { 70 OHOS_CHECK_PERMISSION_FAILED = 201, 71 OHOS_CHECK_SYSTEM_APP_FAILED = 202, 72 OHOS_INVALID_PARAM = 401, 73 RESULT_CODE_V9_MIN = 12500000, 74 RESULT_CODE_V10_MIN = 12500000, 75 SUCCESS = 12500000, 76 FAIL = 12500001, 77 GENERAL_ERROR = 12500002, 78 CANCELED = 12500003, 79 TIMEOUT = 12500004, 80 TYPE_NOT_SUPPORT = 12500005, 81 TRUST_LEVEL_NOT_SUPPORT = 12500006, 82 BUSY = 12500007, 83 LOCKED = 12500009, 84 NOT_ENROLLED = 12500010, 85 RESULT_CODE_V9_MAX = 12500010, 86 CANCELED_FROM_WIDGET = 12500011, 87 PIN_EXPIRED = 12500013, 88 RESULT_CODE_V10_MAX = 12500013, 89 }; 90 91 enum FaceTipsCode { 92 FACE_AUTH_TIP_TOO_BRIGHT = 1, 93 FACE_AUTH_TIP_TOO_DARK = 2, 94 FACE_AUTH_TIP_TOO_CLOSE = 3, 95 FACE_AUTH_TIP_TOO_FAR = 4, 96 FACE_AUTH_TIP_TOO_HIGH = 5, 97 FACE_AUTH_TIP_TOO_LOW = 6, 98 FACE_AUTH_TIP_TOO_RIGHT = 7, 99 FACE_AUTH_TIP_TOO_LEFT = 8, 100 FACE_AUTH_TIP_TOO_MUCH_MOTION = 9, 101 FACE_AUTH_TIP_POOR_GAZE = 10, 102 FACE_AUTH_TIP_NOT_DETECTED = 11, 103 FACE_AUTH_TIP_MAX = FACE_AUTH_TIP_NOT_DETECTED, 104 }; 105 106 enum FingerprintTips { 107 FINGERPRINT_AUTH_TIP_GOOD = 0, 108 FINGERPRINT_AUTH_TIP_IMAGER_DIRTY = 1, 109 FINGERPRINT_AUTH_TIP_INSUFFICIENT = 2, 110 FINGERPRINT_AUTH_TIP_PARTIAL = 3, 111 FINGERPRINT_AUTH_TIP_TOO_FAST = 4, 112 FINGERPRINT_AUTH_TIP_TOO_SLOW = 5, 113 FINGERPRINT_AUTH_TIP_MAX = FINGERPRINT_AUTH_TIP_TOO_SLOW, 114 }; 115 } // namespace UserAuth 116 } // namespace UserIam 117 } // namespace OHOS 118 #endif /* OHOS_USERAUTH_COMMON_H */ 119