
    uUh                         d dl mZmZ d dlmZmZmZmZ d dlmZ  G d de      Z	 G d de      Z
 G d d	e      Z G d
 de      Z G d de      Z G d de      Zy)    )	BaseModelField)ListDictAnyOptional)datetimec                   L    e Zd ZU  edd      Zeed<    eddd      Zeed<   y	)
PaginationParamsr   )geskipd      i  r   lelimitN)__name__
__module____qualname__r   r   int__annotations__r        \/Users/theessential/Documents/Github/40Admission/40-admission-backend/app/schemas/reports.pyr   r      s%    aAD#sqT*E3*r   r   c                   F    e Zd ZU eed<   eeef   ed<   eeeef      ed<   y)ApplicationStatsResponsetotal_applicationsapplications_by_statusapplications_by_projectN)	r   r   r   r   r   r   strr   r   r   r   r   r   r      s)     cN*!$sCx.11r   r   c                   T    e Zd ZU eed<   eed<   eed<   dZee   ed<   dZ	ee   ed<   y)CandidateRankingItemcandidate_idcandidate_nameproject_titleNscoreassessment_summary)
r   r   r   r   r   r    r&   r   floatr'   r   r   r   r"   r"      s1    !E8E?!(,,r   r"   c                   2    e Zd ZU eed<   eed<   ee   ed<   y)CandidateRankingResponse
project_idr%   rankingsN)r   r   r   r   r   r    r   r"   r   r   r   r*   r*      s    O'((r   r*   c                   z    e Zd ZU  eddd      Zee   ed<   dZee	   ed<   dZ
eee	ef      ed<   dZee	   ed<   y)	AIAssessmentBaseNr   r   r   r&   summarydetailsmodel_version)r   r   r   r   r&   r   r(   r   r/   r    r0   r   r   r1   r   r   r   r.   r.      sL    "4A#6E8E?6!GXc]!(,GXd38n%,#'M8C='r   r.   c                   |    e Zd ZU eed<   eed<   eed<   dZee   ed<   dZee	   ed<   dZ
eee	ef      ed<   eed<   y)	AIAssessmentResponseidr#   r+   Nr&   r/   r0   generated_at)r   r   r   r   r   r&   r   r(   r/   r    r0   r   r   r	   r   r   r   r3   r3   #   sK    GO!E8E?!!GXc]!(,GXd38n%,r   r3   N)pydanticr   r   typingr   r   r   r   r	   r   r   r"   r*   r.   r3   r   r   r   <module>r8      sY    % , , +y +
2y 2
-9 -)y )(y (9 r   