Skip to main content

ERROR_MESSAGES_COMPOSITION

const ERROR_MESSAGES_COMPOSITION: object

Error messages constants for Kanon V3.

Centralized error messages used throughout the validation system. Messages without parameters are direct strings for optimal performance, while messages with parameters use functions for interpolation.

Type Declarationโ€‹

string: "Expected string"โ€‹

number: "Expected number"โ€‹

boolean: "Expected boolean"โ€‹

object: "Expected object"โ€‹

array: "Expected array"โ€‹

map: "Expected map"โ€‹

set: "Expected set"โ€‹

record: "Expected record"โ€‹

minLength(): (min) => stringโ€‹

min: number
Returns: string

maxLength(): (max) => stringโ€‹

max: number
Returns: string

min(): (min) => stringโ€‹

min: number
Returns: string

max(): (max) => stringโ€‹

max: number
Returns: string

int: "Number must be an integer"โ€‹

positive: "Number must be positive"โ€‹

negative: "Number must be negative"โ€‹

email: "Invalid email format"โ€‹

url: "Invalid URL format"โ€‹

uuid: "Invalid UUID format"โ€‹

pattern(): (regex) => stringโ€‹

regex: RegExp
Returns: string

length(): (length) => stringโ€‹

length: number
Returns: string

includes(): (substring) => stringโ€‹

substring: string
Returns: string

startsWith(): (prefix) => stringโ€‹

prefix: string
Returns: string

endsWith(): (suffix) => stringโ€‹

suffix: string
Returns: string

lt(): (lessThan) => stringโ€‹

lessThan: number
Returns: string

lte(): (lessThanOrEqual) => stringโ€‹

lessThanOrEqual: number
Returns: string

gt(): (greaterThan) => stringโ€‹

greaterThan: number
Returns: string

gte(): (greaterThanOrEqual) => stringโ€‹

greaterThanOrEqual: number
Returns: string

multipleOf(): (multiple) => stringโ€‹

multiple: number
Returns: string

arrayMinLength(): (min) => stringโ€‹

min: number
Returns: string

arrayMaxLength(): (max) => stringโ€‹

max: number
Returns: string

arrayLength(): (length) => stringโ€‹

length: number
Returns: string

arrayUnique: "Array must contain unique values"โ€‹

setMinSize(): (min) => stringโ€‹

min: number
Returns: string

setMaxSize(): (max) => stringโ€‹

max: number
Returns: string

mapMinSize(): (min) => stringโ€‹

min: number
Returns: string

mapMaxSize(): (max) => stringโ€‹

max: number
Returns: string

objectMinKeys(): (min) => stringโ€‹

min: number
Returns: string

objectMaxKeys(): (max) => stringโ€‹

max: number
Returns: string

objectStrict(): (key) => stringโ€‹

key: string
Returns: string

null: "Expected null"โ€‹

undefined: "Expected undefined"โ€‹

date: "Expected date"โ€‹

bigint: "Expected bigint"โ€‹

dateMin(): (min) => stringโ€‹

min: Date
Returns: string

dateMax(): (max) => stringโ€‹

max: Date
Returns: string

dateBefore(): (before) => stringโ€‹

before: Date
Returns: string

dateAfter(): (after) => stringโ€‹

after: Date
Returns: string

bigintMin(): (min) => stringโ€‹

min: bigint
Returns: string

bigintMax(): (max) => stringโ€‹

max: bigint
Returns: string

bigintPositive: "BigInt must be positive"โ€‹

bigintNegative: "BigInt must be negative"โ€‹

union: "Value does not match any of the expected types"โ€‹

literal(): (expected, actualType) => stringโ€‹

expected: unknown
actualType: string
Returns: string

tuple: "Expected tuple"โ€‹

tupleLength(): (expected, actual) => stringโ€‹

expected: number
actual: number
Returns: string

tupleMinLength(): (expected, actual) => stringโ€‹

expected: number
actual: number
Returns: string

enum(): (values, actualType) => stringโ€‹

values: readonly unknown[]
actualType: string
Returns: string

nativeEnum(): (values, actualType) => stringโ€‹

values: readonly unknown[]
actualType: string
Returns: string

symbol: "Expected symbol"โ€‹

never: "This value should never exist"โ€‹

void: "Expected void (undefined)"โ€‹

missingField(): (field) => stringโ€‹

field: string
Returns: string

propertyError(): (field, error) => stringโ€‹

field: string
error: string
Returns: string

keyofExpectedOneOf(): (keys) => stringโ€‹

keys: string
Returns: string

coerceNumber: "Cannot coerce to number"โ€‹

coerceString: "Cannot coerce to string"โ€‹

coerceDate: "Cannot coerce to date"โ€‹

coerceBigInt: "Cannot coerce to bigint"โ€‹

coerceInvalidDate: "Invalid date"โ€‹

coerceNullToBigInt: "Cannot convert null to BigInt"โ€‹

coerceUndefinedToBigInt: "Cannot convert undefined to BigInt"โ€‹

coerceNullToDate: "Cannot convert null to Date"โ€‹

coerceUndefinedToDate: "Cannot convert undefined to Date"โ€‹


Performanceโ€‹

Optimization: Messages without parameters are ~71% faster than arrow functions


Sinceโ€‹

2.0.0

TRADE-OFF

Direct strings provide better performance but limit tree-shaking compared to individual function exports. Bundle size impact is minimal (~1-2KB).