import { HttpHandler, type HttpHandlerInput } from '@solid/community-server'; export interface AutoDetectOidcHandlerOptions { /** External account authority used by Cloud+Local provisioning metadata. */ oidcIssuer?: string; /** Explanation used when this handler declines OIDC routes. */ message?: string; /** @deprecated This handler does not cache or proxy OIDC metadata. */ cacheMs?: number; } /** * Auto-detect OIDC Handler * * This component does not make Local SP the Cloud+Local OIDC issuer. * Cloud+Local clients obtain tokens from the configured Cloud issuer; Local is * only the storage/provision target. OIDC routes that still exist on this CSS * instance are passed through to the normal CSS handler for same-origin or * Standalone compatibility. * * 使用方式:在 HTTP pipeline 中替换默认的 OidcHandler */ export declare class AutoDetectOidcHandler extends HttpHandler { private readonly logger; private readonly oidcIssuer?; private readonly message; constructor(options?: AutoDetectOidcHandlerOptions); /** * 判断是否处理请求 * - Cloud+Local: do not handle OIDC here; clients use the Cloud issuer * - Standard/Standalone: pass through to the configured CSS OIDC handler */ canHandle({ request }: HttpHandlerInput): Promise; /** * 处理请求:该 handler 只用于显式透传,不应实际处理 OIDC 请求。 */ handle(): Promise; /** * 检查是否是 OIDC 路径 */ private isOidcPath; /** * 从 URL 提取 pathname */ private getPathname; }