Skip to main content

validateSchema()

validateSchema<T>(schema): (data) => T

Curried validation function for any Zod schema with consistent error handling.

Type Parameters

T

T

The expected output type after successful validation

Parameters

schema

ZodType<T>

Zod schema to validate against

Returns

Function that accepts data and returns validated result

(data): T

Parameters

data

unknown

Returns

T

Throws

Validation error with formatted path and message details (from returned function)

Remarks

Curried design enables partial application for reusable validators. Provides consistent error formatting across all validation operations. Error messages include full property paths for easy debugging.

Example

// Create reusable validators
const validateDataset = validate(anyDatasetSchema);

// Use validators multiple times
const dataset1 = validateDataset(rawConfig1);
const dataset2 = validateDataset(rawConfig2);

// One-shot validation (non-curried usage)
const config = validate(configSchema)(rawConfig);