Source code for litestar_vite.plugin._static

"""Static files configuration dataclass."""

from dataclasses import dataclass
from typing import TYPE_CHECKING, Any

if TYPE_CHECKING:
    from collections.abc import Sequence

    from litestar.datastructures import CacheControlHeader
    from litestar.openapi.spec import SecurityRequirement
    from litestar.types import (
        AfterRequestHookHandler,  # pyright: ignore[reportUnknownVariableType]
        AfterResponseHookHandler,  # pyright: ignore[reportUnknownVariableType]
        BeforeRequestHookHandler,  # pyright: ignore[reportUnknownVariableType]
        ExceptionHandlersMap,
        Guard,  # pyright: ignore[reportUnknownVariableType]
        Middleware,
    )


[docs] @dataclass class StaticFilesConfig: """Configuration for static file serving. This configuration is passed to Litestar's static files router. """ after_request: "AfterRequestHookHandler | None" = None after_response: "AfterResponseHookHandler | None" = None before_request: "BeforeRequestHookHandler | None" = None cache_control: "CacheControlHeader | None" = None exception_handlers: "ExceptionHandlersMap | None" = None guards: "list[Guard] | None" = None # pyright: ignore[reportUnknownVariableType] middleware: "Sequence[Middleware] | None" = None opt: "dict[str, Any] | None" = None security: "Sequence[SecurityRequirement] | None" = None tags: "Sequence[str] | None" = None