import type { Effect } from "@/effects/types"; import type { BlendMode, Transform } from "@/rendering"; import type { BaseTimelineElement } from "./base"; export interface TextBackground { enabled: boolean; color: string; cornerRadius?: number; paddingX?: number; paddingY?: number; offsetX?: number; offsetY?: number; } export interface TextElement extends BaseTimelineElement { type: "text"; content: string; fontSize: number; fontFamily: string; color: string; background: TextBackground; textAlign: "left" | "center" | "right"; fontWeight: "normal" | "bold"; fontStyle: "normal" | "italic"; textDecoration: "none" | "underline" | "line-through"; letterSpacing?: number; lineHeight?: number; hidden?: boolean; transform: Transform; opacity: number; blendMode?: BlendMode; effects?: Effect[]; }