"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations import httpx from plex_api_client.types import BaseModel from plex_api_client.utils import FieldMetadata, PathParamMetadata import pydantic from typing import List, Optional from typing_extensions import Annotated, NotRequired, TypedDict class GetMediaArtsRequestTypedDict(TypedDict): rating_key: int r"""the id of the library item to return the artwork of.""" class GetMediaArtsRequest(BaseModel): rating_key: Annotated[ int, pydantic.Field(alias="ratingKey"), FieldMetadata(path=PathParamMetadata(style="simple", explode=False)), ] r"""the id of the library item to return the artwork of.""" class GetMediaArtsMetadataTypedDict(TypedDict): key: str r"""The URL of the artwork.""" rating_key: str r"""The URL of the artwork.""" selected: bool r"""Whether this is the selected artwork.""" thumb: str r"""The URL of the artwork thumbnail.""" provider: NotRequired[str] r"""The provider of the artwork.""" class GetMediaArtsMetadata(BaseModel): key: str r"""The URL of the artwork.""" rating_key: Annotated[str, pydantic.Field(alias="ratingKey")] r"""The URL of the artwork.""" selected: bool r"""Whether this is the selected artwork.""" thumb: str r"""The URL of the artwork thumbnail.""" provider: Optional[str] = None r"""The provider of the artwork.""" class GetMediaArtsMediaContainerTypedDict(TypedDict): size: int r"""Number of media items returned in this response.""" media_tag_version: int r"""The version number for media tags.""" media_tag_prefix: str r"""The prefix used for media tag resource paths.""" identifier: str r"""An plugin identifier for the media container.""" metadata: List[GetMediaArtsMetadataTypedDict] class GetMediaArtsMediaContainer(BaseModel): size: int r"""Number of media items returned in this response.""" media_tag_version: Annotated[int, pydantic.Field(alias="mediaTagVersion")] r"""The version number for media tags.""" media_tag_prefix: Annotated[str, pydantic.Field(alias="mediaTagPrefix")] r"""The prefix used for media tag resource paths.""" identifier: str r"""An plugin identifier for the media container.""" metadata: Annotated[List[GetMediaArtsMetadata], pydantic.Field(alias="Metadata")] class GetMediaArtsResponseBodyTypedDict(TypedDict): r"""The available background artwork for the library item.""" media_container: NotRequired[GetMediaArtsMediaContainerTypedDict] class GetMediaArtsResponseBody(BaseModel): r"""The available background artwork for the library item.""" media_container: Annotated[ Optional[GetMediaArtsMediaContainer], pydantic.Field(alias="MediaContainer") ] = None class GetMediaArtsResponseTypedDict(TypedDict): content_type: str r"""HTTP response content type for this operation""" status_code: int r"""HTTP response status code for this operation""" raw_response: httpx.Response r"""Raw HTTP response; suitable for custom response parsing""" object: NotRequired[GetMediaArtsResponseBodyTypedDict] r"""The available background artwork for the library item.""" class GetMediaArtsResponse(BaseModel): content_type: str r"""HTTP response content type for this operation""" status_code: int r"""HTTP response status code for this operation""" raw_response: httpx.Response r"""Raw HTTP response; suitable for custom response parsing""" object: Optional[GetMediaArtsResponseBody] = None r"""The available background artwork for the library item."""