import { Compositor } from "../controller.js"; import { Actions } from "../../../actions.js"; import { LineJoin } from "../../../pixi.mjs.js"; import { FontMetadata } from "../../../global.js"; import { TextEffect, State } from "../../../types.js"; import type { TextStyleAlign, TextStyleFontStyle, TextStyleFontVariant, TextStyleFontWeight, TEXT_GRADIENT, TextStyleTextBaseline, TextStyleWhiteSpace } from "pixi.js"; export declare class TextManager extends Map { #private; private compositor; private actions; textDefaultStyles: { size: number; variant: TextStyleFontVariant[]; style: TextStyleFontStyle[]; weight: TextStyleFontWeight[]; fill: import("../../../pixi.mjs.js").FillInput[]; fillGradientType: TEXT_GRADIENT; fillGradientStops: number[]; stroke: import("../../../pixi.mjs.js").StrokeInput; strokeThickness: number; lineJoin: LineJoin[]; miterLimit: number; letterSpacing: number; textBaseline: TextStyleTextBaseline[]; align: TextStyleAlign[]; whiteSpace: TextStyleWhiteSpace[]; wrapWidth: number; lineHeight: number; leading: number; }; constructor(compositor: Compositor, actions: Actions); create_and_add_text_effect(state: State): void; add_text_effect(effect: TextEffect, recreate?: boolean): void; add_text_to_canvas(effect: TextEffect): void; remove_text_from_canvas(effect: TextEffect): void; measure_text_width(effect: TextEffect): void; measure_text_height(effect: TextEffect): void; set_font_variant: (event: Event) => void; set_font_weight: (event: Event) => void; set_text_font: (event: Event) => void; set_font_size: (event: Event) => void; set_font_style: (event: Event) => void; set_text_align: (event: Event) => void; set_fill: (event: Event, index: number) => void; set_drop_shadow_color: (event: Event) => void; set_drop_shadow_alpha: (event: Event) => void; set_drop_shadow_angle: (event: Event) => void; set_drop_shadow_blur: (event: Event) => void; set_drop_shadow_distance: (event: Event) => void; toggle_drop_shadow: (event: Event) => void; set_word_wrap: (event: Event) => void; set_break_words: (event: Event) => void; set_leading: (event: Event) => void; set_line_height: (event: Event) => void; set_wrap_width: (event: Event) => void; set_white_space: (event: Event) => void; move_fill_down(index: number): void; move_fill_up(index: number): void; set_text_content: (event: Event) => void; set_fill_gradient_type: (event: Event) => void; add_fill_gradient_stop: () => void; remove_fill_gradient_stop: (index: number) => void; set_fill_gradient_stop: (event: Event, index: number) => void; add_fill: () => void; remove_fill: (index: number) => void; set_stroke_color: (event: Event) => void; set_stroke_thickness: (event: Event) => void; set_stroke_line_join: (event: Event) => void; set_stroke_miter_limit: (event: Event) => void; set_letter_spacing: (event: Event) => void; set_text_baseline: (event: Event) => void; set_selected_effect(effect: TextEffect | null): void; get selectedText(): TextEffect | null; destroy(): void; getFonts(onPermissionStateChange: (state: PermissionState, deniedStateText: string, fonts?: FontMetadata[]) => void): Promise; }