Skip to content

Validator

Validator<Args> = (args) => ValidationResult | Promise<ValidationResult>

Defined in: display-reactor.ts:61

A validator function that validates method arguments. Receives display types (strings for Principal, bigint, etc.).

Args = unknown[]

Args

The display-type arguments to validate

ValidationResult | Promise<ValidationResult>

ValidationResult indicating success or failure with issues

// Validator receives display types
reactor.registerValidator("transfer", ([input]) => {
const issues = []
// input.to is string (not Principal)
if (!input.to) {
issues.push({ path: ["to"], message: "Recipient is required" })
}
// input.amount is string (not bigint)
if (!/^\d+$/.test(input.amount)) {
issues.push({ path: ["amount"], message: "Must be a valid number" })
}
return issues.length > 0 ? { success: false, issues } : { success: true }
})