UNPKG

vec-idp-web-sdk

Version:

VECU Identity Verification Web SDK - A secure, easy-to-integrate identity verification solution

90 lines 2.4 kB
import { BaseProvider } from './BaseProvider'; import { IProviderConfig } from '@/types'; export interface IProviderConstructor { new (config?: IProviderConfig): BaseProvider; } export interface IProviderMetadata { name: string; displayName: string; description: string; website: string; supportEmail?: string; documentationUrl?: string; logoUrl?: string; capabilities: IProviderCapabilities; } export interface IProviderCapabilities { documents: { passport: boolean; driverLicense: boolean; nationalId: boolean; residencePermit: boolean; }; biometrics: { facialRecognition: boolean; livenessDetection: boolean; fingerprint: boolean; }; verification: { addressVerification: boolean; phoneVerification: boolean; emailVerification: boolean; databaseChecks: boolean; }; features: { qrCodeHandoff: boolean; videoVerification: boolean; nfcReading: boolean; multiLanguage: boolean; accessibility: boolean; }; } export interface IProviderSDKConfig { scriptUrl: string; stylesheetUrl?: string; globalVariableName?: string; initTimeout?: number; loadTimeout?: number; } export interface IProviderEventMap { 'provider:loaded': { provider: string; }; 'provider:ready': { provider: string; sessionId: string; }; 'provider:error': { provider: string; error: Error; }; 'provider:event': { provider: string; event: unknown; }; 'ui:created': { provider: string; container: HTMLElement; }; 'ui:destroyed': { provider: string; }; } export interface IProviderSession { id: string; provider: string; token: string; status: string; createdAt: Date; expiresAt?: Date; metadata?: Record<string, unknown>; } export interface IProviderSDKInstance { init(config: Record<string, unknown>): Promise<void>; createSession(options: Record<string, unknown>): Promise<Record<string, unknown>>; destroySession(sessionId: string): Promise<void>; on(event: string, handler: (...args: unknown[]) => void): void; off(event: string, handler: (...args: unknown[]) => void): void; destroy(): void; } //# sourceMappingURL=ProviderInterface.d.ts.map