import * as depGraphLib from '@snyk/dep-graph';
export interface TargetFramework {
    framework: string;
    original: string;
    version: string;
}
export interface TargetFrameworkInfo {
    Framework: string;
    Version: string;
    Platform: string;
    PlatformVersion: string;
    HasPlatform: boolean;
    HasProfile: boolean;
    Profile: string;
    DotNetFrameworkName: string;
    DotNetPlatformName: string;
    IsPCL: boolean;
    IsPackageBased: boolean;
    AllFrameworkVersions: boolean;
    IsUnsupported: boolean;
    IsAgnostic: boolean;
    IsAny: boolean;
    IsSpecificFramework: boolean;
    ShortName: string;
}
export interface Dependency {
    name: string;
    version: string;
    dependencies?: any;
}
export interface DependencyInfo {
    name: string;
    path: string;
    version: string;
}
export interface DependencyTree {
    name: string;
    children: Dependency[];
}
export declare enum ManifestType {
    PROJECT_JSON = "project.json",
    DOTNET_CORE = "dotnet-core",
    PACKAGES_CONFIG = "packages.config",
    PAKET = "paket"
}
interface Restore {
    projectUniqueName: string;
    projectName: string;
    projectPath: string;
    packagesPath: string;
    outputPath: string;
    projectStyle: string;
    configFilePaths: string[];
    originalTargetFrameworks: string[];
}
interface Project {
    version: string;
    restore: Restore;
    frameworks: Record<string, any>;
    runtimeIdentifierGraphPath: string;
}
export interface Target {
    type: string;
    dependencies: Record<string, string>;
}
export interface ProjectAssets {
    version: number;
    targets: Record<string, Record<string, Target>>;
    libraries: Record<string, any>;
    projectFileDependencyGroups: Record<string, string[]>;
    packageFolders: Record<string, any>;
    project: Project;
}
export interface PublishedProjectDeps {
    runtimeTarget: Record<string, any>;
    targets: Record<string, any>;
    libraries: Record<string, any>;
}
export type AssemblyVersions = Record<string, string>;
export interface DotNetFile {
    name: string;
    contents: string;
}
export interface DotnetCoreV2Result {
    dependencyGraph: depGraphLib.DepGraph;
    targetFramework: string | undefined;
}
export type Overrides = {
    overridesAssemblies: AssemblyVersions;
    overrideVersion: string | undefined;
};
export type ResolvedPackagesMap = Record<string, {
    readonly name: string;
    readonly resolvedVersion: string;
    readonly target: Target;
}>;
export type DotnetCoreV2Results = DotnetCoreV2Result[];
export {};
