/**
 * Adapts HTML coming from a legacy editor (TinyMCE-shaped output) so that
 * it renders correctly inside the TextArea editor (TipTap with
 * `resizable-media`).
 *
 * The legacy markup stores sizes as HTML attributes and uses `margin:auto`/
 * `float` for alignment, none of which TipTap reads. This function moves
 * those to CSS, wraps `img`/`video`/`iframe` in the `resizable-media`
 * structure when missing, and trims the empty paragraphs that legacy
 * authors used to push content below a floated element.
 *
 * Idempotent: re-running it on already-wrapped HTML only syncs missing
 * width or text-align on existing wrappers.
 *
 * Nullish inputs (`undefined` / `null` / empty string) pass through
 * unchanged so the caller can keep distinguishing "field never set" from
 * "field explicitly empty".
 *
 * @example
 * ```ts
 * const safe = wrapResizableMedia(legacyHtml);
 * <FormTextArea name="description" defaultValue={safe} />
 * ```
 */
export declare const wrapResizableMedia: <T extends string | undefined | null>(html: T) => T | string;
