Function: defineConstraint()

August 8, 2026 ยท View on GitHub

@plures/praxis


@plures/praxis / index / defineConstraint

Function: defineConstraint()

defineConstraint<TContext>(options): ConstraintDescriptor<TContext>

Defined in: src/dsl/index.ts:165

Define a constraint

Type Parameters

TContext

TContext = unknown

Parameters

options

DefineConstraintOptions<TContext>

Constraint definition options: id, description, impl, optional contract and meta

Returns

ConstraintDescriptor<TContext>

A fully constructed ConstraintDescriptor

Example

const maxCartItems = defineConstraint({
  id: "cart.maxItems",
  description: "Cart cannot exceed 100 items",
  impl: (state) => {
    const itemCount = state.context.items?.length ?? 0;
    return itemCount <= 100 || `Cart has ${itemCount} items, maximum is 100`;
  }
});