import type { error } from "../../../dev/utils/src/main.js" import type { inferAst, validateAst } from "./ast.js" import type { astToString } from "./utils.js" /** "N%D", where "N" is a number and "D" is a non-zero integer */ export type validateDivisor = isDivisible< inferAst > extends true ? validateAst : error>> type isDivisible = [data] extends [number] ? true : false export const writeIndivisibleMessage = ( root: root ): writeIndivisibleMessage => `Divisibility operand ${root} must be a number` type writeIndivisibleMessage = `Divisibility operand ${root} must be a number`