import ProjectInfoItem from "./ProjectInfoItem";
import ProjectInfoSet from "./ProjectInfoSet";
import IProjectInfoGenerator from "./IProjectInfoGenerator";
import Project from "../app/Project";
import ContentIndex from "../core/ContentIndex";
export declare enum TextureImageInfoGeneratorTest {
    textureImages = 101,
    textureImagesTier0 = 200,
    textureImagesTier1 = 201,
    textureImagesTier2 = 202,
    textureImagesTier3 = 203,
    textureImagesTier4 = 204,
    textureImagesTier5 = 205,
    pngJpgImageProcessingError = 401,
    individualTextureMemoryExceedsBudget = 402,
    totalTextureMemoryExceedsBudget = 403,
    tgaImageProcessingError = 404,
    individualAtlasTextureMemoryExceedsBudget = 405,
    totalAtlasTextureMemoryExceedsBudgetWarn = 406,
    totalAtlasTextureMemoryExceedsBudgetError = 407,
    pngJpgImageProcessingNoResults = 408,
    invalidTieringConfiguration = 409,
    invalidTieringForVibrantVisuals = 410,
    totalTextureMemoryExceedsBudgetErrorBase = 420,
    totalTextureMemoryExceedsBudgetWarningBase = 440,
    texturePackDoesntOverrideVanillaGameTexture = 460,
    texturePackDoesntOverrideMostTextures = 461,
    mashupPackDoesntOverrideMostTextures = 462
}
export declare const TexturePerformanceTierCount = 6;
/**
 * Validates texture images for size, format, and memory budget compliance.
 *
 * @see {@link ../../public/data/forms/mctoolsval/textureimage.form.json} for topic definitions
 */
export default class TextureImageInfoGenerator implements IProjectInfoGenerator {
    id: string;
    title: string;
    performAddOnValidations: boolean;
    private _vanillaPathCache;
    private _matchesVanillaPathCached;
    summarize(info: any, infoSet: ProjectInfoSet): void;
    static isGameTexturePath(path: string): boolean;
    generate(project: Project, contentIndex: ContentIndex): Promise<ProjectInfoItem[]>;
}
