export type Pattern = string; export type Path = string; export type KeyedPatterns = { readonly [K in keyof T]: Pattern[]; }; export type KeyedPaths = { readonly [K in keyof T]: Path[]; }; export type _MatchResult = { readonly [K in keyof T]: boolean; }; export type MatchResult = _MatchResult & { /** Returns an object containing arrays of matched files instead of the usual boolean values. */ getKeyedPaths(): KeyedPaths; }; /** A vendored copy of the Chainsmoker module on NPM */ export type Chainsmoker = (...patterns: Pattern[]) => MatchResult; export default function chainsmoker(keyedPaths: KeyedPaths): Chainsmoker;