import type { Context } from '../http/Context';
import type { DatabaseContainer } from '../database/DatabaseContainer';
import type { RequestConfigControllerUser } from '../types/interfaces';
import type { SecurityProviders } from '../types/types';
import { Session } from './Session';
import { SessionStoreAdapterFactory } from './SessionStoreAdapterFactory';
export declare class SessionFactory {
    protected readonly securityProviders: SecurityProviders;
    protected storeFactory: SessionStoreAdapterFactory;
    constructor(securityProviders: SecurityProviders, databaseContainer: DatabaseContainer);
    build(providerKey: string, context: Context, previouslyLoadedUser?: RequestConfigControllerUser): Promise<Session>;
}
