@atomist/sdm-pack-fingerprints
Version:
an Atomist SDM Extension Pack for fingerprinting code
23 lines (22 loc) • 1.22 kB
TypeScript
import { Project } from "@atomist/automation-client";
import { ApplyFingerprint, Aspect, ExtractFingerprint, FP } from "../../machine/Aspect";
import { VirtualProjectFinder } from "./VirtualProjectFinder";
import { AtomicAspect } from "../../machine/AtomicAspect";
export declare type EligibleAspect = Aspect | AtomicAspect;
/**
* Make this aspect work with virtual projects as found by the given
* VirtualProjectFinder
* @param {Aspect} aspect to make virtual project aware
* @param {VirtualProjectFinder} virtualProjectFinder. If not supplied, return the
* original aspect.
* @return {Aspect}
*/
export declare function makeVirtualProjectAware<A extends EligibleAspect>(aspect: A, virtualProjectFinder: VirtualProjectFinder): A;
/**
* Turn this fingerprint into a multi fingerprint
* @param {ExtractFingerprint} ef extractor
* @param virtualProjectFinder virtual project finder
* @return {ExtractFingerprint}
*/
export declare function makeExtractorVirtualProjectAware(ef: ExtractFingerprint, virtualProjectFinder: VirtualProjectFinder): (p: Project) => Promise<FP[]>;
export declare function makeApplyVirtualProjectAware(af: ApplyFingerprint, virtualProjectFinder: VirtualProjectFinder): ApplyFingerprint;