export interface ErrorFactory { error(w: T, message: string): any; errorOnProperty(w: T, property: string, message: string): any; warningOnProperty(w: T, property: string, message: string): any; warning(w: T, message: string): any; } export interface LinterRule { (wrapper: T, errorFactory: ErrorFactory): any; } export interface Linter { registerRule(nodeType: string, rule: LinterRule): any; }