import { Authentication, HeaderPrincipal, JWTPrincipal, Oauth2Principal, QueryParamPrincipal, SessionPrincipal } from './types/authn.type'; export declare class SessionAuthentication implements Authentication { private principal; private authorities; private sessionId; private authenticated; constructor(sessionId: string, principal: SessionPrincipal); hasPrincipal(): boolean; getAuthorities(): string[]; hasCredentials(): boolean; getPrincipal(): SessionPrincipal; getCredentials(): string; isAuthenticated(): boolean; } export declare class HeaderBasedAuthentication implements Authentication { private authHeader; constructor(authHeader: string); hasPrincipal(): boolean; getAuthorities(): string[]; hasCredentials(): boolean; getCredentials(): string; getPrincipal(): HeaderPrincipal; isAuthenticated(): boolean; } export declare class QueryParamBasedAuthentication implements Authentication { private authQueryParam; constructor(authQueryParam: string); hasPrincipal(): boolean; getAuthorities(): string[]; hasCredentials(): boolean; getCredentials(): string; getPrincipal(): QueryParamPrincipal; isAuthenticated(): boolean; } export declare class Oauth2Authentication implements Authentication { private principal; private authorities; private authenticated; private accessToken; constructor(accessToken: string, principal: Oauth2Principal); hasPrincipal(): boolean; getAuthorities(): string[]; hasCredentials(): boolean; getPrincipal(): Oauth2Principal; getCredentials(): string; isAuthenticated(): boolean; } export declare class JWTAuthentication implements Authentication { private principal; private authenticated; private jwt; constructor(jwt: string, principal: JWTPrincipal); hasPrincipal(): boolean; getAuthorities(): string[]; hasCredentials(): boolean; getPrincipal(): JWTPrincipal; getCredentials(): string; isAuthenticated(): boolean; }