from typing import Optional
import numpy as np
from pydantic import BaseModel, ConfigDict


class RelativePose(BaseModel):
    model_config = ConfigDict(arbitrary_types_allowed=True)

    translation: np.ndarray
    rotation: np.ndarray
    confidence: float
    inlier_count: int
    total_matches: int
    tracking_good: bool
    scale_ambiguous: bool = True
    chunk_id: Optional[str] = None

