You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.5 KiB
61 lines
1.5 KiB
type Pathname = string |
|
|
|
interface TestResult { |
|
ignored: boolean |
|
unignored: boolean |
|
} |
|
|
|
export interface Ignore { |
|
/** |
|
* Adds one or several rules to the current manager. |
|
* @param {string[]} patterns |
|
* @returns IgnoreBase |
|
*/ |
|
add(patterns: string | Ignore | readonly (string | Ignore)[]): this |
|
|
|
/** |
|
* Filters the given array of pathnames, and returns the filtered array. |
|
* NOTICE that each path here should be a relative path to the root of your repository. |
|
* @param paths the array of paths to be filtered. |
|
* @returns The filtered array of paths |
|
*/ |
|
filter(pathnames: readonly Pathname[]): Pathname[] |
|
|
|
/** |
|
* Creates a filter function which could filter |
|
* an array of paths with Array.prototype.filter. |
|
*/ |
|
createFilter(): (pathname: Pathname) => boolean |
|
|
|
/** |
|
* Returns Boolean whether pathname should be ignored. |
|
* @param {string} pathname a path to check |
|
* @returns boolean |
|
*/ |
|
ignores(pathname: Pathname): boolean |
|
|
|
/** |
|
* Returns whether pathname should be ignored or unignored |
|
* @param {string} pathname a path to check |
|
* @returns TestResult |
|
*/ |
|
test(pathname: Pathname): TestResult |
|
} |
|
|
|
interface Options { |
|
ignorecase?: boolean |
|
// For compatibility |
|
ignoreCase?: boolean |
|
allowRelativePaths?: boolean |
|
} |
|
|
|
/** |
|
* Creates new ignore manager. |
|
*/ |
|
declare function ignore(options?: Options): Ignore |
|
|
|
declare namespace ignore { |
|
export function isPathValid (pathname: string): boolean |
|
} |
|
|
|
export default ignore
|
|
|