import ProjectInfoItem from "./ProjectInfoItem";
import Project from "../app/Project";
import IProjectInfoGenerator from "./IProjectInfoGenerator";
import ProjectInfoSet from "./ProjectInfoSet";
import ContentIndex from "../core/ContentIndex";
export interface ISummaryInfoGeneratorResults {
    size: number;
    fileCounts: number;
    folderCounts: number;
    contentSize: number;
    contentFileCounts: number;
    contentFolderCounts: number;
}
export declare enum SummaryInfoGeneratorTest {
    resourceManifest = 101,
    behaviorManifest = 102
}
/**
 * Aggregates summary information about the project including manifests and content types.
 *
 * @see {@link ../../public/data/forms/mctoolsval/summary.form.json} for topic definitions
 */
export default class SummaryInfoGenerator implements IProjectInfoGenerator {
    id: string;
    title: string;
    canAlwaysProcess: boolean;
    performAddOnValidations: boolean;
    summarize(info: any, infoSet: ProjectInfoSet): void;
    summarizePhase2(info: any, infoSet: ProjectInfoSet): void;
    generate(project: Project, contentIndex: ContentIndex): Promise<ProjectInfoItem[]>;
}
