import type { IncomingMessage } from 'node:http'; import type { Authenticator, AuthResult } from './Authenticator'; export interface SolidTokenAuthenticatorOptions { /** * Function to resolve accountId from webId (optional) */ resolveAccountId?: (webId: string) => Promise; publicBaseUrl?: string; internalBaseUrl?: string; } /** * Authenticator for Solid access tokens (Bearer or DPoP). */ export declare class SolidTokenAuthenticator implements Authenticator { private readonly logger; private readonly verify; private readonly resolveAccountId?; private readonly publicOrigin?; constructor(options?: SolidTokenAuthenticatorOptions); canAuthenticate(request: IncomingMessage): boolean; authenticate(request: IncomingMessage): Promise; private buildRequestUrl; private verifyRequest; private trustedCanonicalRouteUrl; private configuredCanonicalRequestUrl; private hasLocalRouteHeader; private firstHeaderValue; private pathAndSearch; private getProtocol; private getHost; private getForwardedPrefix; private joinPaths; private isJwt; private extractWebId; private extractString; }