import GdkPixbuf from "gi://GdkPixbuf"; import type Gtk from "gi://Gtk?version=3.0"; 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 type { DiffedProps } from "../../../utils/element-extenders/map-properties"; import { PropertyMapper } from "../../../utils/element-extenders/map-properties"; import type { TextNode } from "../../text-node"; import type { TextViewElement } from "../text-view"; import type { ITextViewElement, TextViewElementContainer, TextViewNode } from "../text-view-elem-interface"; export type TextViewImageProps = { src: string | GdkPixbuf.Pixbuf; resizeToWidth?: number; resizeToHeight?: number; preserveAspectRatio?: boolean; }; type TextViewImageElementMixin = GjsElement<"TEXT_VIEW_IMAGE"> & ITextViewElement; export declare class TextViewImageElement extends BaseElement implements TextViewImageElementMixin { static getContext(currentContext: HostContext): HostContext; readonly kind = "TEXT_VIEW_IMAGE"; protected pixbuf: GdkPixbuf.Pixbuf; protected parent: TextViewElementContainer | null; readonly lifecycle: ElementLifecycleController; protected handlers: null; protected readonly propsMapper: PropertyMapper; protected isVisible: boolean; constructor(props: DiffedProps, context: HostContext, beforeFirstUpdate?: (self: any) => void); protected resizeImage(): void; 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; notifyMounted(): void; notifyChildWillUnmount(): void; show(): void; hide(): void; getWidget(): Gtk.Widget; getParentElement(): TextViewElementContainer | null; addEventListener(signal: string, callback: Rg.GjsElementEventListenerCallback): void; removeEventListener(signal: string, callback: Rg.GjsElementEventListenerCallback): void; getTextView(): TextViewElement | undefined; toNode(): TextViewNode; } export {};