UNPKG

sessionize-auth

Version:

A flexible session management library for React, Next.js, Angular, and React Native

69 lines (61 loc) 1.38 kB
/** * SSO (Single Sign-On) types for sessionize-auth */ export interface SSOProvider { id: string; name: string; icon?: string; color?: string; scopes: string[]; authUrl: string; tokenUrl: string; userInfoUrl: string; clientId: string; redirectUri: string; } export interface SSOConfig { providers: SSOProvider[]; defaultRedirectPath?: string; stateParam?: string; codeParam?: string; errorParam?: string; popupMode?: boolean; popupWidth?: number; popupHeight?: number; } export interface SSOUser { id: string; email: string; name: string; avatar?: string; provider: string; providerId: string; accessToken?: string; refreshToken?: string; expiresAt?: number; } export interface SSOAuthResult { success: boolean; user?: SSOUser; error?: string; provider?: string; } export interface SSOAuthState { provider: string; state: string; timestamp: number; returnTo?: string; } export interface SSOProviderConfig { clientId: string; clientSecret?: string; redirectUri: string; scopes?: string[]; customParams?: Record<string, string>; } export interface SSOError { code: string; message: string; provider?: string; details?: any; }