"""Temporal — hierarchical temporal memory for AI agents.

Summarizes conversations across time scales (5m, hourly, daily, weekly,
monthly) with context rendering and associative recall.

Quick start::

    from temporal import Memory, Message
    from temporal.stores import InMemoryStore
    from temporal.llm import OpenAIClient

    memory = Memory(store=InMemoryStore(), llm=OpenAIClient())
    memory.log([Message(role="user", content="Hello!")])
    memory.summarize()
    context, conversation = memory.recall()
"""

from temporal.core.models import ContentBlock, LLMResponse, MemoryData, Message, SummaryRecord
from temporal.core.protocols import LLMClient, MemoryStore, MessageFormatter
from temporal.core.types import PeriodType
from temporal.service import Memory

__all__ = [
    "ContentBlock",
    "LLMClient",
    "LLMResponse",
    "Memory",
    "MemoryData",
    "MemoryStore",
    "Message",
    "MessageFormatter",
    "PeriodType",
    "SummaryRecord",
]
