#!/usr/bin/env python3
"""Dataclass-based result schemas for analysis output."""

from .results_loader import (
    _load_anti_analysis,
    _load_crypto,
    _load_error,
    _load_execution_time,
    _load_exports,
    _load_file_info,
    _load_functions,
    _load_hashing,
    _load_imports,
    _load_indicators,
    _load_packer,
    _load_sections,
    _load_security,
    _load_strings,
    _load_timestamp,
    _load_yara_matches,
    from_dict,
)
from .results_models import AnalysisResult, SectionInfo, SecurityFeatures
from ..domain.entities import (
    AntiAnalysisResult,
    CryptoResult,
    ExportInfo,
    FileInfo,
    FunctionInfo,
    HashingResult,
    ImportInfo,
    Indicator,
    PackerResult,
    StringInfo,
    YaraMatch,
)

__all__ = [
    "AnalysisResult",
    "AntiAnalysisResult",
    "CryptoResult",
    "ExportInfo",
    "FileInfo",
    "FunctionInfo",
    "HashingResult",
    "ImportInfo",
    "Indicator",
    "PackerResult",
    "SecurityFeatures",
    "SectionInfo",
    "StringInfo",
    "YaraMatch",
    "from_dict",
    "_load_anti_analysis",
    "_load_crypto",
    "_load_error",
    "_load_execution_time",
    "_load_exports",
    "_load_file_info",
    "_load_functions",
    "_load_hashing",
    "_load_imports",
    "_load_indicators",
    "_load_packer",
    "_load_sections",
    "_load_security",
    "_load_strings",
    "_load_timestamp",
    "_load_yara_matches",
]
