"""Schemas for Forgejo webhook ingest responses."""

from __future__ import annotations

from uuid import UUID

from sqlmodel import SQLModel

RUNTIME_ANNOTATION_TYPES = (UUID,)


class ForgejoWebhookIngestResponse(SQLModel):
    """Response returned after receiving a Forgejo webhook delivery."""

    ok: bool = True
    repository_id: UUID
    action: str | None = None
    issue_id: UUID | None = None
    issue_number: int | None = None
    ignored: bool = False
    reason: str | None = None

