"""Frame type implementations for packet analysis."""

from .base import FrameTypeInterface
from .overview import Overview
from .chapter10 import Chapter10Stats
from .ch10_analog import Ch10AnalogStats
from .ch10_tmats import Ch10TMATSStats
from .ch10_pcm import Ch10PCMStats
from .ch10_time import Ch10TimeStats
from .iena import IENAStats
from .ptp import PTPStats
from .ptp_sync import PTPSyncStats
from .ptp_announce import PTPAnnounceStats
from .ptp_delay import PTPDelayStats

__all__ = [
    'FrameTypeInterface',
    'Overview',
    'Chapter10Stats',
    'Ch10AnalogStats',
    'Ch10TMATSStats',
    'Ch10PCMStats',
    'Ch10TimeStats',
    'IENAStats',
    'PTPStats',
    'PTPSyncStats',
    'PTPAnnounceStats',
    'PTPDelayStats',
]

# Registry of available frame type classes
FRAME_TYPES = {
    'overview': Overview,
    'chapter10': Chapter10Stats,
    'ch10-analog': Ch10AnalogStats,
    'ch10-tmats': Ch10TMATSStats,
    'ch10-pcm': Ch10PCMStats,
    'ch10-time': Ch10TimeStats,
    'iena': IENAStats,
    'ptp': PTPStats,
    'ptp-sync': PTPSyncStats,
    'ptp-announce': PTPAnnounceStats,
    'ptp-delay': PTPDelayStats
}