diffjam
Version:
cli for diffjam.com
36 lines (35 loc) • 1.25 kB
TypeScript
import { FileMatcher } from "./FileMatcher";
import { Match } from "./match";
export type Needles = {
regex: RegExp;
otherRegexes: RegExp[];
positive: string[];
negative: string[];
};
export interface PolicyJson {
description: string;
filePattern: string | string[];
ignoreFilePatterns?: string[];
search: string | string[];
baseline: number;
hiddenFromOutput?: boolean;
}
export declare class Policy {
name: string;
description: string;
baseline: number;
hiddenFromOutput: boolean;
ran: boolean;
needles: Needles;
ignoreFilePatterns: undefined | string[];
filePattern: string[];
search: string[];
constructor(name: string, description: string, filePattern: string | string[], search: string | string[], baseline: number, ignoreFilePatterns?: string | string[], hiddenFromOutput?: boolean);
toJson(): PolicyJson;
isFileUnderPolicy(filePath: string): boolean;
processFile(file: FileMatcher, onMatch: (match: Match, policy: this) => void): void;
isCountAcceptable(matches: Match[]): boolean;
isCountCinchable(matches: Match[]): boolean;
static searchConfigToNeedles(search: string[]): Needles;
static fromJson(name: string, obj: any): Policy;
}