# Generated by ariadne-codegen
# Source: metasrht/graphql/

from datetime import datetime
from typing import Annotated, Optional

from pydantic import BeforeValidator
from srht.graphql import gql_time

from .base_model import BaseModel


class GetIntrospection(BaseModel):
    user: "GetIntrospectionUser"
    grant: Optional["GetIntrospectionGrant"]


class GetIntrospectionUser(BaseModel):
    username: str


class GetIntrospectionGrant(BaseModel):
    client: "GetIntrospectionGrantClient"
    issued: Annotated[datetime, BeforeValidator(gql_time)]
    expires: Annotated[datetime, BeforeValidator(gql_time)]
    grants: Optional[str]


class GetIntrospectionGrantClient(BaseModel):
    uuid: str


GetIntrospection.model_rebuild()
GetIntrospectionGrant.model_rebuild()
