Ts Screener ~repack~ May 2026
private resolveFiles(): string[] const includes = this.options.include.flatMap(pattern => glob.sync(pattern)); const excludes = new Set(this.options.exclude.flatMap(pattern => glob.sync(pattern))); return includes.filter(f => !excludes.has(f));
return errors;
async run(): Promise<ScreenerReport> const files = this.resolveFiles(); const reports: FileReport[] = []; ts screener
if (file.anyCount) console.log( 'any' usage count: $file.anyCount ); private resolveFiles(): string[] const includes = this
📄 src/api/client.ts Missing types: Missing type: data, Missing type: config 'any' usage count: 2 This gives you a production-ready, extensible TypeScript quality gate. Want me to add a or IDE plugin next? return includes.filter(f =>
export type ScreenerReport = summary: filesScanned: number; totalAnyUsage: number; totalMissingTypes: number; typeCoveragePercent: number; passed: boolean; ; details: FileReport[]; ; import ts from 'typescript'; import glob from 'glob'; import readFileSync from 'fs'; import FileReport, ScreenerOptions, ScreenerReport from './types.js'; export class TypeScriptScreener { constructor(private options: ScreenerOptions) {}
ts.forEachChild(node, visit); ;