# ValidationRule

Fields, allowed values, and APIs that use ValidationRule.

Canonical: https://grid.syidax.com/docs/types/ValidationRule/

<a id="definition"></a>

## Type definition

A question mark (?) marks an optional field; readonly marks a value you should not change directly. A union (|) accepts one of the listed forms. Functions are callbacks that Grid invokes at the relevant point.

```typescript
export interface ValidationRule {
  field: string;
  type: ValidationRuleType;
  value?: unknown;
  value2?: unknown;
  values?: readonly unknown[];
  pattern?: string;
  validator?: (value: unknown, data: Record<string, unknown>) => boolean | string;
  message?: string;
}
```

<a id="used-by"></a>

## APIs using this type

- [validationRules](https://grid.syidax.com/docs/options/validationRules.md) — Defines required values, ranges, lists, patterns, custom validation, and other input checks.

<a id="related"></a>

## Related types

- [ValidationRuleType](https://grid.syidax.com/docs/types/ValidationRuleType.md)
