UNPKG

@solid/community-server

Version:

Community Solid Server: an open and modular implementation of the Solid specifications

35 lines (34 loc) 1.46 kB
import type { ResponseDescription } from '../http/output/response/ResponseDescription'; import type { OperationHttpHandlerInput } from '../server/OperationHttpHandler'; import { OperationHttpHandler } from '../server/OperationHttpHandler'; import type { ProviderFactory } from './configuration/ProviderFactory'; import type { CookieStore } from './interaction/account/util/CookieStore'; import type { InteractionHandler } from './interaction/InteractionHandler'; export interface IdentityProviderHttpHandlerArgs { /** * Used to generate the OIDC provider. */ providerFactory: ProviderFactory; /** * Used to determine the account of the requesting agent. */ cookieStore: CookieStore; /** * Handles the requests. */ handler: InteractionHandler; } /** * Generates the active Interaction object if there is an ongoing OIDC interaction. * Finds the account ID if there is cookie metadata. * * Calls the stored {@link InteractionHandler} with that information and returns the result. */ export declare class IdentityProviderHttpHandler extends OperationHttpHandler { protected readonly logger: import("global-logger-factory").Logger<unknown>; private readonly providerFactory; private readonly cookieStore; private readonly handler; constructor(args: IdentityProviderHttpHandlerArgs); handle({ operation, request, response }: OperationHttpHandlerInput): Promise<ResponseDescription>; }