archunit
Version:
ArchUnit TypeScript is an architecture testing library, to specify and assert architecture rules in your TypeScript app
47 lines (46 loc) • 2.04 kB
TypeScript
import { Graph } from '../../common/extraction';
import { Checkable, CheckOptions } from '../../common/fluentapi';
import { Rule } from '../assertion';
import { Violation } from '../../common/assertion';
import { MapFunction } from '../../common/projection';
export declare const projectSlices: (filename?: string) => SliceConditionBuilder;
export declare class SliceConditionBuilder {
readonly graphProvider: GraphProvider;
mapFunction: MapFunction;
constructor(graphProvider: GraphProvider);
definedBy: (pattern: string) => SliceConditionBuilder;
should: () => PositiveConditionBuilder;
shouldNot: () => NegativeSliceCondition;
}
export declare class NegativeSliceCondition implements Checkable {
readonly sliceConditionBuilder: SliceConditionBuilder;
private readonly forbiddenEdges;
constructor(sliceConditionBuilder: SliceConditionBuilder, forbiddenEdges: Rule[]);
containDependency: (from: string, to: string) => NegativeSliceCondition;
check: () => Promise<Violation[]>;
}
export declare class PositiveConditionBuilder {
readonly sliceConditionBuilder: SliceConditionBuilder;
ignoreUnknownNodes: boolean;
ignoreExternals: boolean;
constructor(sliceConditionBuilder: SliceConditionBuilder);
adhereToDiagram(diagram: string): PositiveSliceCondition;
adhereToDiagramInFile(filename: string): PositiveSliceCondition;
ignoringUnknownNodes(): PositiveConditionBuilder;
ignoringExternalDependencies(): this;
}
export declare class PositiveSliceCondition implements Checkable {
readonly positiveConditionBuilder: PositiveConditionBuilder;
readonly diagram: {
filename?: string;
diagram?: string;
};
constructor(positiveConditionBuilder: PositiveConditionBuilder, diagram: {
filename?: string;
diagram?: string;
});
check(options?: CheckOptions): Promise<Violation[]>;
}
type GraphProvider = () => Promise<Graph>;
export declare const nxProjectSlices: (rootFolder?: string) => SliceConditionBuilder;
export {};