@passkey-fas/webauthn-sdk
Version:
Official JavaScript SDK for FaS (FIDO2 as Service) Platform - Easy passwordless authentication integration
57 lines (47 loc) • 1.35 kB
TypeScript
// Định nghĩa TypeScript cho @fas-platform/webauthn-sdk
export interface FaSSDKConfig {
clientId: string;
clientSecret?: string; // Optional when useProxy is true
apiBase?: string;
useProxy?: boolean; // Enable backend proxy mode
timeout?: number;
}
export interface FaSUser {
id: string;
email: string;
fullname?: string;
projectId: string;
isExternalUser: boolean;
registrationCompleted: boolean;
createdAt: string;
updatedAt: string;
}
export interface FaSAuthResult {
success: boolean;
user: FaSUser;
token: string;
}
export interface FaSError extends Error {
code: string;
originalError?: Error;
}
export interface BrowserSupport {
webauthn: boolean;
conditionalUI: boolean;
residentKeys: boolean;
userVerification: boolean;
loading?: boolean;
}
declare class FaSSDK {
constructor(config: FaSSDKConfig);
registerPasskey(email: string, fullname?: string): Promise<FaSAuthResult>;
authenticatePasskey(email: string): Promise<FaSAuthResult>;
passwordlessLogin(): Promise<FaSAuthResult>;
getAuthToken(): string | null;
setAuthToken(token: string): void;
logout(): void;
isAuthenticated(): boolean;
static isWebAuthnSupported(): boolean;
static getBrowserSupport(): BrowserSupport;
}
export default FaSSDK;