import type { SecurityProviders, Services } from '../types/types';
import { AbstractFactory } from '../core/AbstractFactory';
import type { DatabaseContainer } from '../database/DatabaseContainer';
import type { EmailFactory } from '../email/EmailFactory';
import type { SessionFactory } from '../security/SessionFactory';
export declare class ServiceFactory extends AbstractFactory {
    protected services: Services;
    constructor(services: Services, emailFactory: EmailFactory, sessionFactory: SessionFactory, securityProviders: SecurityProviders, databaseContainer: DatabaseContainer);
    build<T>(key: string): T;
}
