@code-pushup/models
Version:
Model definitions and validators for the Code PushUp CLI
15 lines (14 loc) • 770 B
TypeScript
import { ZodError, type ZodType, z } from 'zod';
type SchemaValidationContext = {
filePath?: string;
};
/**
* Autocompletes valid Zod Schema input for convience, but will accept any other data as well
*/
type ZodInputLooseAutocomplete<T extends ZodType> = z.input<T> | {} | null | undefined;
export declare class SchemaValidationError extends Error {
constructor(error: ZodError, schema: ZodType, { filePath }: SchemaValidationContext);
}
export declare function validate<T extends ZodType>(schema: T, data: ZodInputLooseAutocomplete<T>, context?: SchemaValidationContext): z.output<T>;
export declare function validateAsync<T extends ZodType>(schema: T, data: ZodInputLooseAutocomplete<T>, context?: SchemaValidationContext): Promise<z.output<T>>;
export {};