async function generateTypesForRule(ruleName) {
    /** @type {import("eslint").Rule.RuleModule} */
    const { meta } = rules[ruleName];
    const { schema } = meta;

    if (!schema || !schema.length) {
        println("❌ (not schema provided)");
        return;
    }

    await compile(schema[0], `${ruleName}Options`)
        .then((genTypes) => {
            appendFileSync(OUTPUT, genTypes);
            println("✔️");
        })
        .catch(() => {
            println(`❌ (compilation error)`);
        });
}
/**
 * Generate types for specific rule
 * @param {string} ruleName
 */
Generate types for specific rule
@param {string} ruleName
Generate types for specific rule @param { string } ruleName
async function generateTypesForRule(ruleName) {
    const { meta } = rules[ruleName];
    const { schema } = meta;
    if (!schema || !schema.length) {
        println("❌ (not schema provided)");
        return;
    }
    await compile(schema[0], `${ruleName}Options`)
        .then((genTypes) => {
            appendFileSync(OUTPUT, genTypes);
            println("✔️");
        })
        .catch(() => {
            println(`❌ (compilation error)`);
        });
}
async function generateTypesForRule ( ruleName ) { const { meta } = rules [ ruleName ] ; const { schema } = meta ; if ( ! schema || ! schema . length ) { println ( "❌ (not schema provided)"); return ; } await compile ( schema [ 0 ] , ` ${ ruleName } ` ) . then ( ( genTypes ) => { appendFileSync ( OUTPUT , genTypes ) ; println ( "✔️"); } ) . catch ( ( ) => { println ( ` ; } ) ; }
Generate types for specific rule
 @param {string} ruleName
Generate types for specific rule @param { string } ruleName
/** @type {import("eslint").Rule.RuleModule} */