from collections.abc import Callable
from typing import Any

from django.utils.functional import cached_property as cached_property

class cached_classmethod(dict[type, _cache]):
    fn: Callable[..., Any]
    def __init__(self, fn: Callable[..., Any]) -> None: ...
    def __get__(self, instance: Any, owner: type) -> _cache: ...
    def __missing__(self, cls: type) -> _cache: ...

class _cache:
    cache: cached_classmethod
    cls: type
    fn: Callable[..., Any]
    def __init__(self, cache: cached_classmethod, cls: type, fn: Callable[..., Any]) -> None: ...
    @cached_property
    def value(self) -> Any: ...
    def __call__(self) -> Any: ...
    def cache_clear(self) -> None: ...

def xframe_options_sameorigin_override(view_func: Callable[..., Any]) -> Callable[..., Any]: ...
