import type * as TYoga from '../../../yoga-types/index'; import { Point } from '../misc/Point'; import { Rect } from '../misc/Rect'; import { Node } from './Node'; import { StyleHandler } from "./StyleHandler"; export declare class TermElement extends Node { name: string; flags: number; dirtyRects: Rect[]; nodeList: TermElement[]; renderList: TermElement[]; activeElement: TermElement; /** Position & size of the whole element inside its parent. Comes from Yoga.getComputed{Left,Top,Width,Height} */ elementRect: Rect; /** Position & size of the content box inside the element. Comes from Yoga.getComputedBorder(...) */ contentRect: Rect; /** Position & size of the element children box | note: xy 'x' and 'y' are "wrong", in that they are not the actual box offset (which would always be 0;0), but rather the scroll offset (ie = scrollLeft / scrollTop) */ scrollRect: Rect; /** Position & size of the element inside the viewport */ elementWorldRect: Rect; /** Position & size of the element content inside the viewport */ contentWorldRect: Rect; /** Position & size of the actual visible box inside the element */ elementClipRect: Rect; /** Used to check if the caret is visible */ contentClipRect: Rect; /** Position & size of the visible box that contains xy the element itself and each of its children */ elementBoundingRect: Rect; caret: Point; style: StyleHandler; yogaNode: TYoga.Node; constructor(); reset(): void; toString({ depth }?: { depth?: number; }): string; appendChild(node: TermElement): void; insertBefore(node: TermElement, referenceNode: TermElement): void; linkBefore(node: TermElement, referenceNode: TermElement): void; removeChild(node: TermElement): void; get scrollLeft(): any; set scrollLeft(scrollLeft: any); get scrollTop(): any; set scrollTop(scrollTop: any); get scrollWidth(): any; get scrollHeight(): number; get offsetWidth(): any; get offsetHeight(): number; get innerWidth(): any; get innerHeight(): number; getCaretCoordinates(): any; getBoundingClientRect(): Rect; scrollIntoView({ align, alignX, alignY, force, forceX, forceY, direction, }?: { align?: string; alignX?: string; alignY?: string; force?: boolean; forceX?: boolean; forceY?: boolean; direction?: string; }): void; scrollCellIntoView(position: any, { align, alignX, alignY, force, forceX, forceY, direction, }?: { align?: string; alignX?: string; alignY?: string; force?: boolean; forceX?: boolean; forceY?: boolean; direction?: string; }): void; scrollColumnIntoView(column: any, { align, force }?: { align?: string; force?: boolean; }): void; scrollRowIntoView(row: any, { align, force }?: { align?: string; force?: boolean; }): void; setDirtyNodeListFlag(): void; clearDirtyNodeListFlag(): void; setDirtyRenderListFlag(): void; clearDirtyRenderListFlag(): void; setDirtyLayoutFlag(): void; clearDirtyLayoutFlag(): void; clearDirtyLayoutChildrenFlag(): void; setDirtyClippingFlag(): void; clearDirtyClippingFlag(): void; clearDirtyClippingChildrenFlag(): void; setDirtyFlag(flag: any, parentFlag?: number): void; clearDirtyFlag(flag: any): void; queueDirtyRect(dirtyRect?: Rect, checkIntersectionFrom?: number): void; queueDirtyRects(dirtyRects: any, checkIntersectionFrom?: number): void; flushDirtyRects(): Rect[]; requestUpdates(): void; triggerUpdates({ maxDepth }?: { maxDepth?: number; }): void; generateNodeList(): any[]; generateRenderList(): any[]; cascadeLayout({ dirtyLayoutNodes, force }?: { dirtyLayoutNodes?: any[]; force?: boolean; }): void; cascadeClipping({ dirtyScrollNodes, relativeClipRect, force }?: { dirtyScrollNodes?: any[]; relativeClipRect?: any; force?: boolean; }): void; getElementRects(): import("@s-libs/micro-dash/lib/interfaces").IfCouldBe | {}; getPreferredSize(maxWidth: any, widthMode: any, maxHeight: any, heightMode: any): { width: any; height: number; }; /** The max of the children's elementRect.(x+width) */ getInternalContentWidth(): number; getInternalContentHeight(): number; queueDirtyStyle(element: TermElement): boolean; static elementName: string; debugPaintRects: boolean; renderElement(x: any, y: any, l: any): string; renderContent(x: any, y: any, l: any): string; renderBackground(l: any): string; renderText(text: any): any; }