import { Timerange } from "./time_util"; import { Clip_settings, Visual_segment } from "./segment"; import { TextAnimation } from "./animation"; import { Font_type, Effect_meta } from "../data"; import { Text_intro, Text_outro, Text_loop_anim } from "../data"; declare class Text_style { size: number; bold: boolean; italic: boolean; underline: boolean; color: [number, number, number]; alpha: number; align: 0 | 1 | 2; vertical: boolean; letter_spacing: number; line_spacing: number; keyword: {}; max_line_width: number; auto_wrapping: boolean; constructor({ size, bold, italic, underline, color, alpha, align, vertical, letter_spacing, line_spacing, keyword, auto_wrapping, max_line_width }?: { size?: number; bold?: boolean; italic?: boolean; underline?: boolean; color?: [number, number, number]; alpha?: number; align?: 0 | 1 | 2; vertical?: boolean; letter_spacing?: number; line_spacing?: number; keyword?: {}; auto_wrapping?: boolean; max_line_width?: number; }); } declare class Text_border { alpha: number; color: [number, number, number]; width: number; constructor({ alpha, color, width }?: { alpha?: number; color?: [number, number, number]; width?: number; }); export_json(): { content: { solid: { alpha: number; color: number[]; }; }; width: number; }; } declare class Text_background { style: 1 | 2; alpha: number; color: string; round_radius: number; height: number; width: number; horizontal_offset: number; vertical_offset: number; constructor({ color, style, alpha, round_radius, height, width, horizontal_offset, vertical_offset }: { color: string; style?: 1 | 2; alpha?: number; round_radius?: number; height?: number; width?: number; horizontal_offset?: number; vertical_offset?: number; }); export_json(): { background_style: 2 | 1; background_color: string; background_alpha: number; background_round_radius: number; background_height: number; background_width: number; background_horizontal_offset: number; background_vertical_offset: number; }; } declare class TextBubble { global_id: string; effect_id: string; resource_id: string; name: string; constructor(name: string, effect_id: string, resource_id: string); export_json(): { apply_target_type: number; effect_id: string; id: string; resource_id: string; type: string; name: string; value: number; }; } declare class TextEffect extends TextBubble { export_json(): any; } declare class Text_segment extends Visual_segment { text: string; font: Effect_meta | null; style: Text_style; border: Text_border | null; background: Text_background | null; bubble: TextBubble | null; effect: TextEffect | null; constructor(text: string, timerange: Timerange, { font, style, clip_settings, border, background }?: { font?: Font_type | null; style?: any | null; clip_settings?: Clip_settings | null; border?: Text_border | null; background?: Text_background | null; }); static create_from_template(text: string, timerange: Timerange, template: Text_segment): Text_segment; add_animation(animation_type: Text_intro | Text_outro | Text_loop_anim | any, duration?: string | number): Text_segment; add_bubble(name: string, effect_id: string, resource_id: string): Text_segment; add_effect(name: string, effect_id: string): Text_segment; export_material(): { id: string; content: string; typesetting: number; alignment: 0 | 2 | 1; letter_spacing: number; line_spacing: number; line_feed: number; line_max_width: number; force_apply_line_max_width: boolean; check_flag: number; global_alpha: number; type: string; }; } export { Text_style, Text_segment, Text_border, TextAnimation, TextBubble, TextEffect, Text_background };