"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from .leader import Leader, LeaderTypedDict
from .projectlevel import ProjectLevel
from .projecttype import ProjectType
from datetime import datetime
from owasp_nest.types import BaseModel
from typing import List
from typing_extensions import TypedDict


class ProjectDetailTypedDict(TypedDict):
    r"""Detail schema for Project (used in single item endpoints)."""

    created_at: datetime
    key: str
    level: ProjectLevel
    r"""Enum for OWASP project levels."""
    name: str
    type: ProjectType
    r"""Enum for OWASP project types."""
    updated_at: datetime
    description: str
    leaders: List[LeaderTypedDict]


class ProjectDetail(BaseModel):
    r"""Detail schema for Project (used in single item endpoints)."""

    created_at: datetime

    key: str

    level: ProjectLevel
    r"""Enum for OWASP project levels."""

    name: str

    type: ProjectType
    r"""Enum for OWASP project types."""

    updated_at: datetime

    description: str

    leaders: List[Leader]
