import { ProjectPrincipal } from './ProjectPrincipal.ts';
import type { PrincipalOptions } from './types/project.ts';
import type { MainOptions } from './util/create-options.ts';
export declare class PrincipalFactory {
    private principals;
    getPrincipalCount(): number;
    createPrincipal(options: MainOptions, opts: PrincipalOptions): ProjectPrincipal;
    private findReusablePrincipal;
    private linkPrincipal;
    private addNewPrincipal;
    getPrincipals(): ProjectPrincipal[];
    getPrincipalByPackageName(packageName: string): ProjectPrincipal | undefined;
    deletePrincipal(principal: ProjectPrincipal, cwd: string): void;
}
