import type { DataRecord } from '@overture-stack/lectern-dictionary'; import type { RecordValidationError, FieldDetails } from '../validateRecord'; export type SchemaValidationRecordErrorUniqueKey = { reason: 'INVALID_BY_UNIQUE_KEY'; uniqueKey: DataRecord; matchingRecords: number[]; }; export type SchemaValidationRecordErrorUnique = FieldDetails & { reason: 'INVALID_BY_UNIQUE'; matchingRecords: number[]; }; export type SchemaValidationRecordErrorDetails = RecordValidationError | SchemaValidationRecordErrorUnique | SchemaValidationRecordErrorUniqueKey; export type SchemaRecordError = { recordIndex: number; recordErrors: ErrorDetails[]; }; export type SchemaValidationError = SchemaRecordError;