types/dependency.types.ts

types/dependency.types.ts is a file in GovLab Quality. 45 lines of code and 9 definitions.

export type EmitterKind = "eslint" | "native" | "none" | "prettier" | "stylelint";

export type ToolDisposition = "advisory" | "excluded" | "full-gate" | "selectable";

export interface InstallRecord {
    tool: string;
    ecosystem: string;
    npm?: string;
    system?: string;
    ruleIdPrefix?: string;
    pluginNamespace?: string;
    isPlugin: boolean;
    configTarget: string;
    emitter: EmitterKind;
    installable?: boolean;
    reason?: string;
    catalogRules?: boolean;
    disposition?: ToolDisposition;
}

export interface InstallCoverage {
    noEngineSetting: string[];
    noNativeDescriptor: string[];
}

export interface InstallRegistry {
    records: InstallRecord[];
    coverage: InstallCoverage;
}

export interface InstallRequest {
    ecosystems: string[];
    auto: boolean;
    dryRun: boolean;
}

export interface SystemInstruction {
    tool: string;
    system: string;
}

export interface InstallPlan {
    ecosystems: string[];
    npmDeps: string[];
    systemInstructions: SystemInstruction[];
    eslintPlugins: string[];
    emitters: string[];
}

export interface InstallReport {
    installed: string[];
    systemInstructions: SystemInstruction[];
}