diff --git a/src/@ionic-native/plugins/android-fingerprint-auth/index.ts b/src/@ionic-native/plugins/android-fingerprint-auth/index.ts index 2366e86bb..f29fb17f2 100644 --- a/src/@ionic-native/plugins/android-fingerprint-auth/index.ts +++ b/src/@ionic-native/plugins/android-fingerprint-auth/index.ts @@ -1,9 +1,7 @@ import { Injectable } from '@angular/core'; -import { Cordova, Plugin, IonicNativePlugin } from '@ionic-native/core'; - +import { Cordova, IonicNativePlugin, Plugin } from '@ionic-native/core'; export interface AFAAuthOptions { - /** * Required * Used as the alias for your key in the Android Key Store. @@ -62,7 +60,6 @@ export interface AFAAuthOptions { * Set the hint displayed by the fingerprint icon on the fingerprint authentication dialog. */ dialogHint?: string; - } export interface AFADecryptOptions { @@ -96,6 +93,17 @@ export interface AFAEncryptResponse { token: string; } +export interface AFAAvailableResponse { + isAvailable: boolean; + isHardwareDetected: boolean; + hasEnrolledFingerprints: boolean; +} + +export interface AFADeleteOptions { + clientId: string; + username: string; +} + /** * @name Android Fingerprint Auth * @description @@ -139,6 +147,8 @@ export interface AFAEncryptResponse { * AFAAuthOptions * AFAEncryptResponse * AFADecryptOptions + * AFAAvailableResponse + * AFADeleteOptions */ @Plugin({ pluginName: 'AndroidFingerprintAuth', @@ -149,55 +159,63 @@ export interface AFAEncryptResponse { }) @Injectable() export class AndroidFingerprintAuth extends IonicNativePlugin { - ERRORS: { - BAD_PADDING_EXCEPTION: 'BAD_PADDING_EXCEPTION', - CERTIFICATE_EXCEPTION: 'CERTIFICATE_EXCEPTION', - FINGERPRINT_CANCELLED: 'FINGERPRINT_CANCELLED', - FINGERPRINT_DATA_NOT_DELETED: 'FINGERPRINT_DATA_NOT_DELETED', - FINGERPRINT_ERROR: 'FINGERPRINT_ERROR', - FINGERPRINT_NOT_AVAILABLE: 'FINGERPRINT_NOT_AVAILABLE', - FINGERPRINT_PERMISSION_DENIED: 'FINGERPRINT_PERMISSION_DENIED', - FINGERPRINT_PERMISSION_DENIED_SHOW_REQUEST: 'FINGERPRINT_PERMISSION_DENIED_SHOW_REQUEST', - ILLEGAL_BLOCK_SIZE_EXCEPTION: 'ILLEGAL_BLOCK_SIZE_EXCEPTION', - INIT_CIPHER_FAILED: 'INIT_CIPHER_FAILED', - INVALID_ALGORITHM_PARAMETER_EXCEPTION: 'INVALID_ALGORITHM_PARAMETER_EXCEPTION', - IO_EXCEPTION: 'IO_EXCEPTION', - JSON_EXCEPTION: 'JSON_EXCEPTION', - MINIMUM_SDK: 'MINIMUM_SDK', - MISSING_ACTION_PARAMETERS: 'MISSING_ACTION_PARAMETERS', - MISSING_PARAMETERS: 'MISSING_PARAMETERS', - NO_SUCH_ALGORITHM_EXCEPTION: 'NO_SUCH_ALGORITHM_EXCEPTION', - SECURITY_EXCEPTION: 'SECURITY_EXCEPTION' + BAD_PADDING_EXCEPTION: 'BAD_PADDING_EXCEPTION'; + CERTIFICATE_EXCEPTION: 'CERTIFICATE_EXCEPTION'; + FINGERPRINT_CANCELLED: 'FINGERPRINT_CANCELLED'; + FINGERPRINT_DATA_NOT_DELETED: 'FINGERPRINT_DATA_NOT_DELETED'; + FINGERPRINT_ERROR: 'FINGERPRINT_ERROR'; + FINGERPRINT_NOT_AVAILABLE: 'FINGERPRINT_NOT_AVAILABLE'; + FINGERPRINT_PERMISSION_DENIED: 'FINGERPRINT_PERMISSION_DENIED'; + FINGERPRINT_PERMISSION_DENIED_SHOW_REQUEST: 'FINGERPRINT_PERMISSION_DENIED_SHOW_REQUEST'; + ILLEGAL_BLOCK_SIZE_EXCEPTION: 'ILLEGAL_BLOCK_SIZE_EXCEPTION'; + INIT_CIPHER_FAILED: 'INIT_CIPHER_FAILED'; + INVALID_ALGORITHM_PARAMETER_EXCEPTION: 'INVALID_ALGORITHM_PARAMETER_EXCEPTION'; + IO_EXCEPTION: 'IO_EXCEPTION'; + JSON_EXCEPTION: 'JSON_EXCEPTION'; + MINIMUM_SDK: 'MINIMUM_SDK'; + MISSING_ACTION_PARAMETERS: 'MISSING_ACTION_PARAMETERS'; + MISSING_PARAMETERS: 'MISSING_PARAMETERS'; + NO_SUCH_ALGORITHM_EXCEPTION: 'NO_SUCH_ALGORITHM_EXCEPTION'; + SECURITY_EXCEPTION: 'SECURITY_EXCEPTION'; }; /** * Opens a native dialog fragment to use the device hardware fingerprint scanner to authenticate against fingerprints registered for the device. - * @param options {AFAAuthOptions} Options - * @returns {Promise} + * @param {AFAAuthOptions} options Options + * @returns {Promise} */ @Cordova() - encrypt(options: AFAAuthOptions): Promise { return; } + encrypt(options: AFAAuthOptions): Promise { + return; + } /** * Opens a native dialog fragment to use the device hardware fingerprint scanner to authenticate against fingerprints registered for the device. - * @param options {AFAAuthOptions} Options - * @returns {Promise} + * @param {AFAAuthOptions} options Options + * @returns {Promise} */ @Cordova() - decrypt(options: AFAAuthOptions): Promise { return; } + decrypt(options: AFAAuthOptions): Promise { + return; + } /** * Check if service is available - * @returns {Promise} Returns a Promise that resolves if fingerprint auth is available on the device + * @returns {Promise} Returns a Promise that resolves if fingerprint auth is available on the device */ @Cordova() - isAvailable(): Promise<{ isAvailable: boolean, isHardwareDetected: boolean, hasEnrolledFingerprints: boolean }> { return; } + isAvailable(): Promise { + return; + } /** * Delete the cipher used for encryption and decryption by username - * @returns {Promise} Returns a Promise that resolves if the cipher was successfully deleted + * @param {AFADeleteOptions} options Options + * @returns {Promise<{ deleted: boolean }>} Returns a Promise that resolves if the cipher was successfully deleted */ @Cordova() - delete(options: { clientId: string; username: string; }): Promise<{ deleted: boolean }> { return; } + delete(options: AFADeleteOptions): Promise<{ deleted: boolean }> { + return; + } }