UNPKG

normul

Version:

Normul is a tiny TypeScript/JavaScript library for data normalization and transformation

10 lines (9 loc) 612 B
import type { ParseContext, Simplify } from '../../types.js'; import { Schema } from '../Schema.js'; export type InferArray<T extends [Schema, ...Schema[]]> = Simplify<T extends [infer S] ? S extends Schema<infer U> ? U[] : never : T extends [Schema, ...Schema[]] ? (T[number] extends Schema<infer U> ? U : never)[] : never>; export declare class ArraySchema<T extends [Schema, ...Schema[]]> extends Schema<InferArray<T>> { protected readonly elementSchemas: T; constructor(elementSchemas: T); protected _normalize(input: unknown, ctx: ParseContext): InferArray<T>; protected cloneArgs(): T[]; }