from django.utils.functional import cached_property as cached_property
from django.views.generic import FormView
from wagtail.admin.forms.pages import ParentChooserForm as ParentChooserForm
from wagtail.admin.views.generic.base import WagtailAdminTemplateMixin as WagtailAdminTemplateMixin
from wagtail.models import Page as Page
from wagtail.permissions import page_permission_policy as page_permission_policy

class ChooseParentView(WagtailAdminTemplateMixin, FormView):
    template_name: str
    model = Page
    index_url_name: str | None
    page_title: str
    def get_valid_parent_pages(self, user): ...
    def get(self, request, *args, **kwargs): ...
    def get_form(self): ...
    def get_index_url(self): ...
    def get_breadcrumbs_items(self): ...
    def get_page_subtitle(self): ...
    @cached_property
    def submit_button_label(self): ...
    def form_valid(self, form): ...
    def get_context_data(self, **kwargs): ...
