## API Report File for "@digitalpersona/authentication"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { Answers } from '@digitalpersona/core';
import { Base64UrlString } from '@digitalpersona/core';
import { BioSample } from '@digitalpersona/core';
import { Credential } from '@digitalpersona/core';
import { CredentialId } from '@digitalpersona/core';
import { IAuthenticationClient as IAuthenticationClient_2 } from '@digitalpersona/services';
import { IAuthService } from '@digitalpersona/services';
import { JSONWebToken } from '@digitalpersona/core';
import { Questions } from '@digitalpersona/core';
import { User } from '@digitalpersona/core';

// Warning: (ae-forgotten-export) The symbol "Authenticator" needs to be exported by the entry point index.d.ts
// 
// @public
export class ContactlessCardAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, cardData: string): Promise<JSONWebToken>;
    identify(cardData: string): Promise<JSONWebToken>;
}

// @public
export class EmailOtpAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, code: string): Promise<JSONWebToken>;
    sendChallenge(user: User): Promise<void>;
}

// @public
export class FaceAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, samples: BioSample[]): Promise<JSONWebToken>;
    identify(samples: BioSample[]): Promise<JSONWebToken>;
}

// @public
export class Finger {
    constructor(
    position: FingerPosition);
    static fromJson(json: object): Finger;
    readonly position: FingerPosition;
}

// @public
export enum FingerPosition {
    // (undocumented)
    LeftIndex = 7,
    // (undocumented)
    LeftLittle = 10,
    // (undocumented)
    LeftMiddle = 8,
    // (undocumented)
    LeftRing = 9,
    // (undocumented)
    LeftThumb = 6,
    // (undocumented)
    RightIndex = 2,
    // (undocumented)
    RightLittle = 5,
    // (undocumented)
    RightMiddle = 3,
    // (undocumented)
    RightRing = 4,
    // (undocumented)
    RightThumb = 1,
    // (undocumented)
    Unknown = 0
}

// @public
export class FingerprintsAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, samples: BioSample[]): Promise<JSONWebToken>;
    getEnrolledFingers(user: User): Promise<Fingers>;
    identify(samples: BioSample[]): Promise<JSONWebToken>;
}

// @public
export type Fingers = Finger[];

// @public
export class PasswordAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, password: string): Promise<JSONWebToken>;
    randomize(user: User, token: JSONWebToken): Promise<string>;
    reset(user: User, newPassword: string, token: JSONWebToken): Promise<void>;
}

// @public
export class PinAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, pin: string): Promise<JSONWebToken>;
}

// @public
export class ProximityCardAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, cardData: string): Promise<JSONWebToken>;
    identify(cardData: string): Promise<JSONWebToken>;
}

// @public
export class PushOtpAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken): Promise<JSONWebToken>;
}

// @public
export class SecurityQuestionsAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, answers: Answers): Promise<JSONWebToken>;
    getEnrolledQuestions(user: User): Promise<Questions>;
}

// @public
export class SmartCardAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, cardData: string): Promise<JSONWebToken>;
}

// @public
export class SmsOtpAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, code: string): Promise<JSONWebToken>;
    sendChallenge(user: User): Promise<void>;
}

// @public
export class TimeOtpAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken, code: string): Promise<JSONWebToken>;
    getUnlockCode(userOrSerialNumber: User | string, challenge: string, token?: JSONWebToken): Promise<string>;
}

// @public
export class U2FAuth extends Authenticator {
    constructor(authService: IAuthService);
    authenticate(identity: User | JSONWebToken): Promise<JSONWebToken>;
    getAppId(): Promise<string>;
    static isSupported(): Promise<boolean>;
}

// @public
export class WindowsAuth extends Authenticator {
    constructor(authService: IAuthService, client: IAuthenticationClient_2);
    authenticate(): Promise<JSONWebToken>;
}


// (No @packageDocumentation comment for this package)

```
