from _typeshed import Incomplete
from django import forms
from django.utils.functional import cached_property as cached_property
from wagtail.admin.staticfiles import versioned_static as versioned_static
from wagtail.blocks import FieldBlock as FieldBlock
from wagtail.telepath import register as register
from wagtail.widget_adapters import WidgetAdapter as WidgetAdapter

DEFAULT_TABLE_OPTIONS: Incomplete

class TableInput(forms.HiddenInput):
    table_options: Incomplete
    def __init__(self, table_options=None, attrs=None) -> None: ...
    @cached_property
    def media(self): ...

class TableInputAdapter(WidgetAdapter):
    js_constructor: str
    def js_args(self, widget): ...

class TableBlock(FieldBlock):
    table_options: Incomplete
    field_options: Incomplete
    def __init__(self, required: bool = True, help_text=None, table_options=None, **kwargs) -> None: ...
    @cached_property
    def field(self): ...
    def value_from_form(self, value): ...
    def value_for_form(self, value): ...
    def to_python(self, value): ...
    def clean(self, value): ...
    def get_form_state(self, value): ...
    def is_html_renderer(self): ...
    def get_searchable_content(self, value): ...
    def render(self, value, context=None): ...
    def get_table_options(self, table_options=None): ...
    class Meta:
        default: Incomplete
        template: str
        icon: str
