export interface MigrateOptions { /** * Whether the consumer renders text with the modern engines (HTML / * render-tag). Two migrations only make sense there, and the editor can still * be switched to the legacy Konva.Text renderer. Defaults to true because * every converter uses the modern path; the editor passes its actual flag. */ modernTextRenderer?: boolean; /** * The v2→3 background policy. Three states, no new argument needed: * * - `undefined` (default) — **auto**: infer the pre-v3 renderer from the * design, as `usesRichTextEditor` below explains. * - `true` — **per-line**: never stamp; every pre-v3 background renders as * the per-line polygon. * - `false` — **full-rect**: always stamp; every pre-v3 background renders as * a full rect. The escape hatch for a rich-text client whose designs happen * to hold only bare strings, which auto cannot tell from a plain design. */ modernizeTextBackground?: boolean; } /** * Bring a design up to `CURRENT_SCHEMA_VERSION`. Returns a new object; the * input is never mutated. A design already at the current version is returned * unchanged apart from the clone. */ export declare function migrateDesign(json: T, options?: MigrateOptions): T;