import { AuthenticationProviderManager } from '../authentication/authentication-provider-manager'; import { TokenManagerInterface } from '../interfaces'; import { Request, Response } from '@rxstack/core'; import { AsyncEventDispatcher } from '@rxstack/async-event-dispatcher'; import { SecurityConfiguration } from '../security-configuration'; import { AbstractRefreshTokenManager } from '../services'; export declare class SecurityController { protected authManager: AuthenticationProviderManager; protected tokenManager: TokenManagerInterface; protected refreshTokenManager: AbstractRefreshTokenManager; protected dispatcher: AsyncEventDispatcher; protected configuration: SecurityConfiguration; constructor(authManager: AuthenticationProviderManager, tokenManager: TokenManagerInterface, refreshTokenManager: AbstractRefreshTokenManager, dispatcher: AsyncEventDispatcher, configuration: SecurityConfiguration); loginAction(request: Request): Promise; logoutAction(request: Request): Promise; refreshTokenAction(request: Request): Promise; authenticateAction(request: Request): Promise; unauthenticateAction(request: Request): Promise; private findRefreshTokenOr404; private setConnectionTimeout; private clearConnectionTimeout; }