UNPKG

neo4j-client-sso

Version:

Single sign-on client (frontend) library for Neo4j products

64 lines (63 loc) 1.75 kB
import { FetchError, NoProviderError, Success } from './discovery'; export interface SSOProviderOriginal { id: string; name: string; auth_flow: string; auth_endpoint: string; token_endpoint?: string; well_known_discovery_uri?: string; params: { client_id: string; redirect_uri: string; response_type: string; scope: string; }; auth_params?: Record<string, string>; token_params?: Record<string, string>; config?: { implicit_flow_requires_nonce?: boolean; principal?: string; token_type_principal?: string; token_type_authentication?: string; code_challenge_method?: string; }; visible: boolean; } export type SSOProvider4dot4Format = Omit<SSOProviderOriginal, 'params'> & { redirect_uri: string; params: { client_id: string; response_type: string; scope: string; }; }; export interface InitialisationParameters { sso_redirect?: string; auth_flow_step?: string; idp_id?: string; token_type?: string; access_token?: string; id_token?: string; error_description?: string; code?: string; state?: string; session_state?: string; error?: string; } export interface Credentials { username: string; password: string; } export interface AuthRequestParams { state: string; nonce?: string; code_challenge_method?: string; code_challenge?: string; } export interface DiscoveryResult { status: DiscoveryResultStatus; message: string; SSOProviders: SSOProviderOriginal[]; otherDataDiscovered: Record<string, unknown>; } export type DiscoveryResultStatus = typeof Success | typeof FetchError | typeof NoProviderError;