"""
FSM Transition Callbacks Package.

This package provides specialized callback implementations for
FSM state transitions.
"""

from .cache import (
    APICacheInvalidation,
    CacheInvalidationCallback,
    ModelCacheInvalidation,
    PatternCacheInvalidation,
    RelatedModelCacheInvalidation,
)
from .notifications import (
    ModerationNotificationCallback,
    NotificationCallback,
    StatusChangeNotification,
    SubmissionApprovedNotification,
    SubmissionEscalatedNotification,
    SubmissionRejectedNotification,
)
from .related_updates import (
    ComputedFieldUpdateCallback,
    ParkCountUpdateCallback,
    RelatedModelUpdateCallback,
    SearchTextUpdateCallback,
)

__all__ = [
    # Notification callbacks
    "NotificationCallback",
    "SubmissionApprovedNotification",
    "SubmissionRejectedNotification",
    "SubmissionEscalatedNotification",
    "StatusChangeNotification",
    "ModerationNotificationCallback",
    # Cache callbacks
    "CacheInvalidationCallback",
    "ModelCacheInvalidation",
    "RelatedModelCacheInvalidation",
    "PatternCacheInvalidation",
    "APICacheInvalidation",
    # Related update callbacks
    "RelatedModelUpdateCallback",
    "ParkCountUpdateCallback",
    "SearchTextUpdateCallback",
    "ComputedFieldUpdateCallback",
]
