import Project from "../../../app/Project";
import ProjectItem from "../../../app/ProjectItem";
import ContentIndex from "../../../core/ContentIndex";
import { PackType } from "../../../minecraft/Pack";
import IProjectInfoGenerator from "../../IProjectInfoGenerator";
import ProjectInfoItem from "../../ProjectInfoItem";
type PackDesc = {
    type?: PackType;
    isWorld?: boolean;
    isEDUOffer?: boolean;
};
/**
 * Validates pack manifest files for structure, required fields, and format compliance.
 *
 * @see {@link ../../../../public/data/forms/mctoolsval/chkmanif.form.json} for topic definitions
 */
export default class CheckManifestGenerator implements IProjectInfoGenerator {
    id: string;
    title: string;
    canAlwaysProcess: boolean;
    generate(project: Project, contentIndex: ContentIndex): Promise<ProjectInfoItem[]>;
    validateManifest(manifestItem: ProjectItem, pack: PackDesc): Promise<ProjectInfoItem[]>;
    private validateIds;
    private validateSettings;
    private validateCapabilitiesForMinEngineVersionPlusPbr;
    private validateCapabilities;
    private validateSubpacks;
    private validateDependencies;
    private validateModules;
    private validateHeader;
    private validateMinEngineVersion;
    private getMinimalVersionThatRequiresV2;
    private validateFormatVersion;
    summarize(): void;
}
export {};
