import type { StandardSchemaV1 } from '@standard-schema/spec'; export type { StandardSchemaV1 }; export function standardValidate( schema: T, input: StandardSchemaV1.InferInput ): StandardSchemaV1.InferOutput { let result = schema['~standard'].validate(input); if (result instanceof Promise) { throw new Error('Schema validation must be synchronous'); } // if the `issues` field exists, the validation failed if (result.issues) { throw new Error(JSON.stringify(result.issues, null, 2)); } return (result as StandardSchemaV1.SuccessResult>).value; }