"""C13 `FdrWriter` Protocol (consumer side).

Producer-side `FdrClient` lives in `gps_denied_onboard.fdr_client` (cross-cutting,
AZ-247); this consumer-side writer is owned by AZ-248 / E-C13.
"""

from __future__ import annotations

from typing import Protocol

from gps_denied_onboard.fdr_client.records import FdrRecord


class FdrWriter(Protocol):
    """FDR consumer: writer thread + segment rotation + ≤64 GB capacity cap."""

    def start(self) -> None: ...

    def stop(self) -> None: ...

    def consume(self, record: FdrRecord) -> None: ...
