"""Validation schemas for config operations."""

from .base import Base, NonEmptyDict, NonEmptyStr


class InputToConfig(Base):
    """Validation schema for config input data."""

    customer: NonEmptyStr
    crawl_origin_tickets_storage_account_name: NonEmptyStr
    crawl_origin_data_full_cosmos_db_name: NonEmptyStr
    ticket_validated_at: NonEmptyStr


class ConfigToCrawl(InputToConfig):
    """Validation schema for config-to-crawl operations."""

    config_source: NonEmptyStr
    compute_target: NonEmptyStr
    data_target: NonEmptyStr
    subscriber: NonEmptyStr
    InputToConfig_validated_at: NonEmptyStr
    config_execution_row: NonEmptyDict
