from fastapi import APIRouter, Depends, status

from app.deps import verify_internal_token
from app.schemas.resume_match import ResumeMatchRequest, ResumeMatchResponse
from app.services.resume_match import ResumeMatchService

router = APIRouter(prefix="/resume-match")
_service = ResumeMatchService()


@router.post(
    "/score",
    response_model=ResumeMatchResponse,
    status_code=status.HTTP_200_OK,
    summary="Resume vs Job Description Screening Score",
    dependencies=[Depends(verify_internal_token)],
)
async def score_resume(payload: ResumeMatchRequest) -> ResumeMatchResponse:
    return await _service.score(payload)
