from typing import Any, Optional

from django.core.handlers.wsgi import WSGIRequest
from django.core.paginator import Paginator
from django.db.models.query import QuerySet
from django.http.response import JsonResponse
from django.views.generic.list import BaseListView

class AutocompleteJsonView(BaseListView):
    paginate_by: int = ...
    model_admin: ModelAdmin = ...
    term: Any = ...
    paginator_class: Any = ...
    object_list: Any = ...
    def get(self, request: WSGIRequest, *args: Any, **kwargs: Any) -> JsonResponse: ...
    def get_paginator(self, *args: Any, **kwargs: Any) -> Paginator: ...
    def get_queryset(self) -> QuerySet: ...
    def has_perm(self, request: WSGIRequest, obj: None = ...) -> bool: ...
