Coverage for src/csv_schema_validator/types.py: 100%
6 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-23 15:34 +0100
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-23 15:34 +0100
1"""
2Type definitions for CSV schema validation.
4This module provides type aliases and protocols for better type safety
5and code documentation.
6"""
7from __future__ import annotations
9from typing import Any, Protocol
11from .core import FieldDict, SchemaDict, ValidationResult, BOOLEAN_VALUES
12from .field_validators import ErrorDict, RowData, HeaderData, ValidationProtocol
14# Re-export for backward compatibility
15__all__ = [
16 "ErrorDict",
17 "FieldDict",
18 "SchemaDict",
19 "ValidationResult",
20 "BOOLEAN_VALUES",
21 "RowData",
22 "HeaderData",
23 "ValidationProtocol",
24]
26# Error type constants
27ERROR_TYPES = frozenset({
28 "CSVValidationError",
29 "SchemaValidationError",
30 "FieldValidationError",
31 "TypeValidationError",
32 "PatternValidationError",
33 "EnumValidationError",
34 "RangeValidationError",
35 "RequiredFieldError",
36 "FileError",
37 "CSVFileError",
38 "SchemaFileError",
39 "EmptyFileError",
40 "InvalidJSONError",
41 "ValidationConfigurationError",
42})