UNPKG

dclint

Version:

A command-line tool for validating and enforcing best practices in Docker Compose files.

49 lines (48 loc) 1.34 kB
import * as Rules from './index'; type RuleClass = (typeof Rules)[keyof typeof Rules]; type RuleInstance = InstanceType<RuleClass>; type RuleName = RuleInstance['name']; type RuleType = 'warning' | 'error'; type RuleSeverity = 'info' | 'minor' | 'major' | 'critical'; type RuleCategory = 'style' | 'security' | 'best-practice' | 'performance'; interface Rule { name: RuleName; type: RuleType; meta: RuleMeta; category: RuleCategory; severity: RuleSeverity; fixable: boolean; options?: object; getMessage(details?: object): string; check(content: object, type?: RuleType): RuleMessage[]; fix?(content: string): string; } interface RuleMeta { description: string; url: string; } interface RuleMessage { rule: RuleName; type: RuleType; severity: RuleSeverity; category: RuleCategory; message: string; line: number; column: number; endLine?: number; endColumn?: number; meta?: RuleMeta; fixable: boolean; data: object; } interface RuleDefinition { name: RuleName; type: RuleType; category: RuleCategory; severity: RuleSeverity; fixable: boolean; meta: RuleMeta; hasFixFunction: boolean; hasOptions: boolean; } export { Rule, RuleDefinition, RuleName, RuleSeverity, RuleCategory, RuleType, RuleMeta, RuleMessage };