import { StandardSchemaV1 } from '@standard-schema/spec'; import { MaybePromise } from './types.js'; import 'react'; declare class ValidationError extends Error { name: 'ValidationError'; issues: readonly StandardSchemaV1.Issue[]; data: TData; constructor(result: StandardSchemaV1.FailureResult, data: TData); } type ValidationFunctionSync = (data: TInput) => TOutput; type ValidationFunction = (data: TInput) => MaybePromise; type ValidatorSync = ValidationFunctionSync | StandardSchemaV1; type Validator = ValidationFunction | StandardSchemaV1; type ValidatorInput = Awaited[0] : TValidator extends StandardSchemaV1 ? StandardSchemaV1.InferInput : never>; type ValidatorOutput = Awaited : TValidator extends StandardSchemaV1 ? StandardSchemaV1.InferOutput : never>; declare function validateSync(fnOrSchema: TValidator, data: ValidatorInput): ValidatorOutput; declare function validateAsync(fnOrSchema: TValidator, data: ValidatorInput): Promise>; export { ValidationError as SchemaValidationError, type Validator, type ValidatorInput, type ValidatorOutput, type ValidatorSync, validateAsync, validateSync };