@atomist/sdm-pack-aspect
Version:
an Atomist SDM Extension Pack for visualizing drift across an organization
41 lines • 2.3 kB
TypeScript
import { Configuration } from "@atomist/automation-client";
import { Aspect, FP } from "@atomist/sdm-pack-fingerprint";
import { ProjectAnalysisResult } from "../analysis/ProjectAnalysisResult";
import { ScoreWeightings, WeightedScore } from "../scorer/Score";
import { AspectRegistry, RepositoryScorer, ScoredRepo, Tag, TagAndScoreOptions, TaggerDefinition, WorkspaceScorer, WorkspaceToScore } from "./AspectRegistry";
import { AspectReportDetails, AspectReportDetailsRegistry, AspectWithReportDetails } from "./AspectReportDetailsRegistry";
import { IdealStore } from "./IdealStore";
import { ProblemStore, UndesirableUsageChecker } from "./ProblemStore";
export declare class DefaultAspectRegistry implements AspectRegistry, AspectReportDetailsRegistry {
private readonly opts;
private readonly taggers;
/**
* Add a tagger that will work on all repositories.
*/
withTaggers(...taggers: TaggerDefinition[]): this;
scoreWorkspace(workspaceId: string, workspaceToScore: WorkspaceToScore): Promise<WeightedScore>;
tagAndScoreRepos(workspaceId: string, repos: ProjectAnalysisResult[], tsOpts: TagAndScoreOptions): Promise<ScoredRepo[]>;
readonly availableTags: Tag[];
readonly aspects: Aspect[];
aspectOf(type: string): Aspect | undefined;
reportDetailsOf(typeOrAspect: string | Aspect, workspaceId: string): Promise<AspectReportDetails | undefined>;
undesirableUsageCheckerFor(workspaceId: string): Promise<UndesirableUsageChecker | undefined>;
readonly idealStore: IdealStore;
readonly problemStore: ProblemStore;
readonly scorers: RepositoryScorer[];
private tagRepos;
private tagRepo;
constructor(opts: {
idealStore: IdealStore;
problemStore: ProblemStore;
aspects: AspectWithReportDetails[];
undesirableUsageChecker: UndesirableUsageChecker;
scorers?: RepositoryScorer[];
workspaceScorers?: WorkspaceScorer[];
scoreWeightings?: ScoreWeightings;
configuration?: Configuration;
});
}
export declare function defaultedToDisplayableFingerprintName(aspect?: Aspect): (fingerprintName: string) => string;
export declare function defaultedToDisplayableFingerprint(aspect?: Aspect): (fpi: FP) => string;
//# sourceMappingURL=DefaultAspectRegistry.d.ts.map