import type { GjsContext } from "../../../../reconciler/gjs-renderer"; import type { HostContext } from "../../../../reconciler/host-context"; import { BaseElement, type GjsElement } from "../../../gjs-element"; import { ElementLifecycleController } from "../../../utils/element-extenders/element-lifecycle-controller"; import { EventHandlers } from "../../../utils/element-extenders/event-handlers"; import type { DiffedProps } from "../../../utils/element-extenders/map-properties"; import { PropertyMapper } from "../../../utils/element-extenders/map-properties"; import type { AlignmentProps } from "../../../utils/property-maps-factories/create-alignment-prop-mapper"; import type { ChildPropertiesProps } from "../../../utils/property-maps-factories/create-child-props-mapper"; import type { ExpandProps } from "../../../utils/property-maps-factories/create-expand-prop-mapper"; import type { MarginProps } from "../../../utils/property-maps-factories/create-margin-prop-mapper"; import type { SizeRequestProps } from "../../../utils/property-maps-factories/create-size-request-prop-mapper"; import type { StyleProps } from "../../../utils/property-maps-factories/create-style-prop-mapper"; import { Bin } from "../../../utils/widgets/bin"; import type { TextNode } from "../../text-node"; import type { TextViewElement } from "../text-view"; import type { ITextViewElement, TextViewElementContainer, TextViewNode } from "../text-view-elem-interface"; type TextViewWidgetPropsMixin = ChildPropertiesProps & SizeRequestProps & AlignmentProps & MarginProps & ExpandProps & StyleProps; export type TextViewWidgetProps = TextViewWidgetPropsMixin & {}; type TextViewWidgetElementMixin = GjsElement<"TEXT_VIEW_WIDGET", Bin> & ITextViewElement; export declare class TextViewWidgetElement extends BaseElement implements TextViewWidgetElementMixin { static getContext(currentContext: HostContext): HostContext; readonly kind = "TEXT_VIEW_WIDGET"; protected widget: Bin; protected parent: TextViewElementContainer | null; readonly lifecycle: ElementLifecycleController; protected handlers: EventHandlers; protected readonly propsMapper: PropertyMapper; protected child: GjsElement | null; constructor(props: DiffedProps); updateProps(props: DiffedProps): void; appendChild(child: GjsElement | TextNode): void; insertBefore(child: GjsElement | TextNode, beforeChild: GjsElement | TextNode): void; remove(parent: GjsElement): void; render(): void; notifyWillMountTo(parent: GjsElement): boolean; notifyMountedTo(parent: GjsElement): void; notifyChildWillUnmount(child: GjsElement | TextNode): void; show(): void; hide(): void; getWidget(): Bin; getParentElement(): TextViewElementContainer | null; getTextView(): TextViewElement | undefined; toNode(): TextViewNode; } export {};