import { DepGraph } from "@snyk/dep-graph";
import { ApplicationFiles } from "./analyzer/applications/types";
import { JarFingerprint } from "./analyzer/types";
import { DockerFileAnalysis } from "./dockerfile/types";
import { OCIDistributionMetadata } from "./extractor/oci-distribution-metadata";
import { AutoDetectedUserInstructions, ImageNameInfo, ManifestFile } from "./types";
export interface DepGraphFact {
    type: "depGraph";
    data: DepGraph;
}
export interface KeyBinariesHashesFact {
    type: "keyBinariesHashes";
    data: string[];
}
export interface ImageLayersFact {
    type: "imageLayers";
    data: string[];
}
export interface DockerfileAnalysisFact {
    type: "dockerfileAnalysis";
    data: DockerFileAnalysis;
}
export interface RootFsFact {
    type: "rootFs";
    data: string[];
}
export interface AutoDetectedUserInstructionsFact {
    type: "autoDetectedUserInstructions";
    data: AutoDetectedUserInstructions;
}
export interface ImageIdFact {
    type: "imageId";
    data: string;
}
export interface ImageNamesFact {
    type: "imageNames";
    data: ImageNameInfo;
}
export interface ImageOsReleasePrettyNameFact {
    type: "imageOsReleasePrettyName";
    data: string;
}
export interface ImageManifestFilesFact {
    type: "imageManifestFiles";
    data: ManifestFile[];
}
export interface TestedFilesFact {
    type: "testedFiles";
    data: string[];
}
export interface ApplicationFilesFact {
    type: "applicationFiles";
    data: ApplicationFiles[];
}
export interface JarFingerprintsFact {
    type: "jarFingerprints";
    data: {
        fingerprints: JarFingerprint[];
        origin: string;
        path: string;
    };
}
export interface ImageLabels {
    type: "imageLabels";
    data: {
        [key: string]: string;
    };
}
export interface ImageSizeBytesFact {
    type: "imageSizeBytes";
    data: number;
}
export interface ImageCreationTimeFact {
    type: "imageCreationTime";
    data: string;
}
export interface LoadedPackagesFact {
    type: "loadedPackages";
    data: string;
}
export interface OCIDistributionMetadataFact {
    type: "ociDistributionMetadata";
    data: OCIDistributionMetadata;
}
