Skip to main content
function createCpsatRuleRegistry<Registry>(ruleRegistry): Registry;
Creates a custom CP-SAT rule registry.

Type Parameters

Registry

Registry extends CpsatRuleRegistry

Parameters

ruleRegistry
Registry
required

Returns

Registry
Built-in rule names cannot be redefined unless the registry entry points to the exact same built-in descriptor instance.

Example

const debugRuleRegistry = createCpsatRuleRegistry({
  debug: defineRuleDescriptor({
    name: "debug",
    schema: z.object({ flag: z.boolean() }),
    compile() {
      return { rule: "debug", description: "debug", artifacts: [] };
    },
  }),
});