import type { Rule } from '../services/build/rule.js'; interface Rules { _?: Rule; } type Registry = { [K in keyof Rules as `${K & string}`]: Rules[K]; } & Rules; type Constructors = { [K in keyof Registry as `${K & string}`]?: new (...args: any[]) => Registry[K]; }; export type { Constructors, Registry, Rules };