import { Graphics } from "pixi.js"; import { DBase, DBaseEvents, DBaseOptions, DRefitable, DThemeBase } from "./d-base"; import { DImagePieceLayouter } from "./d-image-piece-layouter"; import { DOnOptions } from "./d-on-options"; import { DStateAwareOrValueMightBe } from "./d-state-aware"; import { DTextPiece, DTextPieceOptions, DThemeTextPiece } from "./d-text-piece"; import { DBaseOverflowMaskSimple } from "./d-base-overflow-mask-simple"; import { DTextPieceImpl } from "./d-text-piece-impl"; /** * {@link DTextBase} events. */ export interface DTextBaseEvents extends DBaseEvents { } /** * {@link DTextBase} "on" options. */ export interface DTextBaseOnOptions extends Partial>, DOnOptions { } /** * {@link DTextBase} options. */ export interface DTextBaseOptions = DThemeTextBase, EMITTER = any> extends DBaseOptions { text?: DTextPieceOptions; mask?: boolean; on?: DTextBaseOnOptions; } /** * {@link DTextBase} theme. */ export interface DThemeTextBase extends DThemeBase, DThemeTextPiece { } /** * A base class for UI classes with a text support. * See {@link DTextBaseEvents} for event defaults. */ export declare class DTextBase = DThemeTextBase, OPTIONS extends DTextBaseOptions = DTextBaseOptions> extends DBase { protected static LAYOUTER?: DImagePieceLayouter; protected _text?: DTextPieceImpl; protected _overflowMask?: DBaseOverflowMaskSimple | null; protected init(options?: OPTIONS): void; getOverflowMask(): Graphics | null; protected newOverflowMask(): DBaseOverflowMaskSimple | null; get text(): DTextPiece; protected getText(): DTextPieceImpl; protected newText(): DTextPieceImpl; set text(text: DStateAwareOrValueMightBe); protected onReflow(): void; protected getLayouter(): DImagePieceLayouter; protected onReflowTextAndImage(): void; protected isRefitable(target: any): target is DRefitable; protected applyTitle(): void; protected getType(): string; destroy(): void; }