@vvfx/artis 0.0.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/LICENSE +22 -0
  2. package/dist/artis/artis.d.ts +44 -0
  3. package/dist/artis/base-artis.d.ts +520 -0
  4. package/dist/artis/canvas-layer-order.d.ts +19 -0
  5. package/dist/artis/create-info-to-schema.d.ts +21 -0
  6. package/dist/artis/index.d.ts +15 -0
  7. package/dist/artis/operations/index.d.ts +3 -0
  8. package/dist/artis/operations/operations.d.ts +362 -0
  9. package/dist/artis/operations/scene-operations.d.ts +26 -0
  10. package/dist/artis/operations/types.d.ts +39 -0
  11. package/dist/artis/scene-artis.d.ts +386 -0
  12. package/dist/artis/screenshot-service.d.ts +83 -0
  13. package/dist/artis/types.d.ts +130 -0
  14. package/dist/artis/wiring/index.d.ts +17 -0
  15. package/dist/artis/wiring/register-commands.d.ts +44 -0
  16. package/dist/artis/wiring/setup-commands.d.ts +5 -0
  17. package/dist/artis/wiring/setup-event-bindings.d.ts +16 -0
  18. package/dist/artis/wiring/setup-keybindings.d.ts +38 -0
  19. package/dist/artis/wiring/setup-plugins.d.ts +5 -0
  20. package/dist/artis/wiring/wiring-context.d.ts +34 -0
  21. package/dist/artis-sdk/artis-sdk.d.ts +1117 -0
  22. package/dist/artis-sdk/index.d.ts +1 -0
  23. package/dist/core/asset/asset-manager.d.ts +288 -0
  24. package/dist/core/asset/index.d.ts +3 -0
  25. package/dist/core/command/command-service.d.ts +315 -0
  26. package/dist/core/command/commands/composite-command.d.ts +45 -0
  27. package/dist/core/command/commands/frame-layout-command.d.ts +81 -0
  28. package/dist/core/command/commands/frame-layout-mode-command.d.ts +55 -0
  29. package/dist/core/command/commands/frame-move-in-command.d.ts +54 -0
  30. package/dist/core/command/commands/frame-move-out-command.d.ts +54 -0
  31. package/dist/core/command/commands/group-children-detach-command.d.ts +28 -0
  32. package/dist/core/command/commands/index.d.ts +98 -0
  33. package/dist/core/command/commands/item-align-command.d.ts +52 -0
  34. package/dist/core/command/commands/item-create-command.d.ts +66 -0
  35. package/dist/core/command/commands/item-delete-command.d.ts +40 -0
  36. package/dist/core/command/commands/item-distribute-command.d.ts +53 -0
  37. package/dist/core/command/commands/item-group-command.d.ts +41 -0
  38. package/dist/core/command/commands/item-reorder-command.d.ts +41 -0
  39. package/dist/core/command/commands/item-replace-source-command.d.ts +48 -0
  40. package/dist/core/command/commands/item-set-font-family-command.d.ts +46 -0
  41. package/dist/core/command/commands/item-set-generator-resource-command.d.ts +40 -0
  42. package/dist/core/command/commands/item-transform-command.d.ts +51 -0
  43. package/dist/core/command/commands/item-ungroup-command.d.ts +34 -0
  44. package/dist/core/command/commands/item-update-property-by-create-info-command.d.ts +41 -0
  45. package/dist/core/command/commands/item-update-property-command.d.ts +82 -0
  46. package/dist/core/command/commands/mask-commit-command.d.ts +53 -0
  47. package/dist/core/command/commands/page-auto-layout-command.d.ts +53 -0
  48. package/dist/core/command/commands/picture-cut-commit-command.d.ts +43 -0
  49. package/dist/core/command/commands/picture-expand-commit-command.d.ts +35 -0
  50. package/dist/core/command/commands/scene-switch-command.d.ts +35 -0
  51. package/dist/core/command/commands/selection-set-command.d.ts +38 -0
  52. package/dist/core/command/commands/sprite-image-command.d.ts +36 -0
  53. package/dist/core/command/commands/sprite-text-edit-commit-command.d.ts +43 -0
  54. package/dist/core/command/commands/state-hand-command.d.ts +14 -0
  55. package/dist/core/command/commands/state-image-cut-command.d.ts +14 -0
  56. package/dist/core/command/commands/state-image-expand-command.d.ts +14 -0
  57. package/dist/core/command/commands/state-image-mask-command.d.ts +15 -0
  58. package/dist/core/command/commands/state-image-text-edit-command.d.ts +14 -0
  59. package/dist/core/command/commands/state-item-create-command.d.ts +34 -0
  60. package/dist/core/command/commands/state-move-command.d.ts +14 -0
  61. package/dist/core/command/commands/state-switch-command-base.d.ts +41 -0
  62. package/dist/core/command/commands/text-move-command.d.ts +47 -0
  63. package/dist/core/command/commands/text-rotate-command.d.ts +52 -0
  64. package/dist/core/command/commands/text-scale-command.d.ts +56 -0
  65. package/dist/core/command/commands/text-update-content-command.d.ts +51 -0
  66. package/dist/core/command/commands/transform-move-command.d.ts +56 -0
  67. package/dist/core/command/commands/transform-move-with-frame-change-command.d.ts +80 -0
  68. package/dist/core/command/commands/transform-move-with-layout-command.d.ts +56 -0
  69. package/dist/core/command/commands/transform-rotate-command.d.ts +51 -0
  70. package/dist/core/command/commands/transform-scale-command.d.ts +54 -0
  71. package/dist/core/command/commands/video-play-command.d.ts +28 -0
  72. package/dist/core/command/commands/video-source-command.d.ts +39 -0
  73. package/dist/core/command/commands/viewport-fit-to-box-command.d.ts +37 -0
  74. package/dist/core/command/commands/viewport-fit-to-items-command.d.ts +43 -0
  75. package/dist/core/command/commands/viewport-move-command.d.ts +34 -0
  76. package/dist/core/command/commands/viewport-zoom-command.d.ts +35 -0
  77. package/dist/core/command/index.d.ts +5 -0
  78. package/dist/core/command/registry.d.ts +246 -0
  79. package/dist/core/command/types.d.ts +124 -0
  80. package/dist/core/element-registry/element-facade.d.ts +35 -0
  81. package/dist/core/element-registry/element-identity-strategy.d.ts +75 -0
  82. package/dist/core/element-registry/element-registry.d.ts +72 -0
  83. package/dist/core/element-registry/index.d.ts +5 -0
  84. package/dist/core/element-registry/types.d.ts +15 -0
  85. package/dist/core/gizmo/gizmo-bootstrap.d.ts +70 -0
  86. package/dist/core/gizmo/gizmo-command-binder.d.ts +55 -0
  87. package/dist/core/gizmo/gizmo-config-override.d.ts +24 -0
  88. package/dist/core/gizmo/gizmo-registry.d.ts +39 -0
  89. package/dist/core/gizmo/index.d.ts +19 -0
  90. package/dist/core/gizmo/register-gizmo-command-bindings.d.ts +20 -0
  91. package/dist/core/gizmo/state-gizmo-controller.d.ts +20 -0
  92. package/dist/core/history/history-manager.d.ts +174 -0
  93. package/dist/core/history/index.d.ts +1 -0
  94. package/dist/core/index.d.ts +25 -0
  95. package/dist/core/item/base-item.d.ts +154 -0
  96. package/dist/core/item/card-item.d.ts +91 -0
  97. package/dist/core/item/default-item-schema.d.ts +20 -0
  98. package/dist/core/item/effects-item.d.ts +99 -0
  99. package/dist/core/item/frame-item.d.ts +153 -0
  100. package/dist/core/item/generator-item.d.ts +114 -0
  101. package/dist/core/item/group-item.d.ts +51 -0
  102. package/dist/core/item/index.d.ts +25 -0
  103. package/dist/core/item/sprite-item.d.ts +80 -0
  104. package/dist/core/item/text-item.d.ts +171 -0
  105. package/dist/core/item/types.d.ts +158 -0
  106. package/dist/core/item/video-item.d.ts +120 -0
  107. package/dist/core/keybinding/index.d.ts +11 -0
  108. package/dist/core/keybinding/key-binding-controller.d.ts +44 -0
  109. package/dist/core/keybinding/key-binding-registry.d.ts +92 -0
  110. package/dist/core/keybinding/key-binding-store.d.ts +29 -0
  111. package/dist/core/keybinding/key-matcher.d.ts +24 -0
  112. package/dist/core/keybinding/types.d.ts +84 -0
  113. package/dist/core/plugin/index.d.ts +3 -0
  114. package/dist/core/plugin/io-plugin.d.ts +167 -0
  115. package/dist/core/plugin/plugin-system.d.ts +77 -0
  116. package/dist/core/predict/align-predict.d.ts +20 -0
  117. package/dist/core/predict/base/box-ops.d.ts +40 -0
  118. package/dist/core/predict/base/index.d.ts +14 -0
  119. package/dist/core/predict/base/parent-coord.d.ts +29 -0
  120. package/dist/core/predict/base/schema-box.d.ts +21 -0
  121. package/dist/core/predict/distribute-predict.d.ts +19 -0
  122. package/dist/core/predict/frame-layout-predict.d.ts +24 -0
  123. package/dist/core/predict/index.d.ts +12 -0
  124. package/dist/core/preferences/index.d.ts +2 -0
  125. package/dist/core/preferences/user-preferences-manager.d.ts +130 -0
  126. package/dist/core/quality/error-monitor/error-monitor-facade.d.ts +73 -0
  127. package/dist/core/quality/error-monitor/error-monitor.d.ts +106 -0
  128. package/dist/core/quality/error-monitor/index.d.ts +4 -0
  129. package/dist/core/quality/error-monitor/types.d.ts +198 -0
  130. package/dist/core/quality/index.d.ts +3 -0
  131. package/dist/core/quality/perf-monitor/index.d.ts +5 -0
  132. package/dist/core/quality/perf-monitor/perf-monitor-facade.d.ts +45 -0
  133. package/dist/core/quality/perf-monitor/perf-monitor.d.ts +60 -0
  134. package/dist/core/quality/perf-monitor/types.d.ts +66 -0
  135. package/dist/core/quality/stability-monitor/index.d.ts +5 -0
  136. package/dist/core/quality/stability-monitor/stability-monitor-facade.d.ts +50 -0
  137. package/dist/core/quality/stability-monitor/stability-monitor.d.ts +61 -0
  138. package/dist/core/quality/stability-monitor/types.d.ts +69 -0
  139. package/dist/core/renderer/background-controller.d.ts +56 -0
  140. package/dist/core/renderer/index.d.ts +5 -0
  141. package/dist/core/renderer/player-adapter.d.ts +129 -0
  142. package/dist/core/renderer/renderer.d.ts +134 -0
  143. package/dist/core/service/frame-service.d.ts +116 -0
  144. package/dist/core/service/index.d.ts +9 -0
  145. package/dist/core/service/interaction-providers.d.ts +20 -0
  146. package/dist/core/service/interaction-service.d.ts +211 -0
  147. package/dist/core/service/item-asset-service.d.ts +120 -0
  148. package/dist/core/service/item-creator-service.d.ts +211 -0
  149. package/dist/core/service/item-service.d.ts +641 -0
  150. package/dist/core/service/item-sync-service.d.ts +66 -0
  151. package/dist/core/service/json-scene-sync-service.d.ts +140 -0
  152. package/dist/core/service/refresh-animation-base-service.d.ts +1 -0
  153. package/dist/core/service/scene-data-assembler.d.ts +166 -0
  154. package/dist/core/service/view-service.d.ts +202 -0
  155. package/dist/core/state/base-state.d.ts +28 -0
  156. package/dist/core/state/index.d.ts +6 -0
  157. package/dist/core/state/presets.d.ts +25 -0
  158. package/dist/core/state/state-manager.d.ts +50 -0
  159. package/dist/core/state/types.d.ts +52 -0
  160. package/dist/core/store/index.d.ts +3 -0
  161. package/dist/core/store/scene-store.d.ts +194 -0
  162. package/dist/core/store/store.d.ts +36 -0
  163. package/dist/core/types/artis-config.d.ts +186 -0
  164. package/dist/core/types/artis-events.d.ts +101 -0
  165. package/dist/core/types/frame.d.ts +3 -0
  166. package/dist/core/types/generator.d.ts +28 -0
  167. package/dist/core/types/index.d.ts +15 -0
  168. package/dist/core/types/item-create-info.d.ts +205 -0
  169. package/dist/core/types/item-property.d.ts +149 -0
  170. package/dist/core/types/item-reorder.d.ts +12 -0
  171. package/dist/core/types/item-schema.d.ts +263 -0
  172. package/dist/core/types/item-set-property.d.ts +48 -0
  173. package/dist/core/types/page.d.ts +40 -0
  174. package/dist/core/types/sdk.d.ts +28 -0
  175. package/dist/core/types/view.d.ts +39 -0
  176. package/dist/helper/exporter/config.d.ts +18 -0
  177. package/dist/helper/exporter/const.d.ts +71 -0
  178. package/dist/helper/exporter/export-media.d.ts +189 -0
  179. package/dist/helper/exporter/exporter.d.ts +58 -0
  180. package/dist/helper/exporter/index.d.ts +2 -0
  181. package/dist/helper/exporter/types.d.ts +194 -0
  182. package/dist/helper/exporter/utils.d.ts +71 -0
  183. package/dist/helper/exporter/wav-audio.d.ts +35 -0
  184. package/dist/helper/html-overlay/anchor-navigation-runtime.d.ts +1 -0
  185. package/dist/helper/html-overlay/auto-height-layout.d.ts +16 -0
  186. package/dist/helper/html-overlay/auto-height-runtime.d.ts +40 -0
  187. package/dist/helper/html-overlay/document-runtime.d.ts +18 -0
  188. package/dist/helper/html-overlay/document-transform.d.ts +46 -0
  189. package/dist/helper/html-overlay/dom-order.d.ts +5 -0
  190. package/dist/helper/html-overlay/host-message-runtime.d.ts +15 -0
  191. package/dist/helper/html-overlay/html-capture-runtime.d.ts +12 -0
  192. package/dist/helper/html-overlay/html-card-service.d.ts +287 -0
  193. package/dist/helper/html-overlay/html-viewport-style.d.ts +6 -0
  194. package/dist/helper/html-overlay/index.d.ts +1 -0
  195. package/dist/helper/html-overlay/inline-script-json.d.ts +1 -0
  196. package/dist/helper/html-overlay/mime-utils.d.ts +13 -0
  197. package/dist/helper/html-overlay/overlay-transform.d.ts +30 -0
  198. package/dist/helper/html-overlay/path-utils.d.ts +34 -0
  199. package/dist/helper/html-overlay/runtime-context.d.ts +2 -0
  200. package/dist/helper/html-overlay/shell-runtime.d.ts +13 -0
  201. package/dist/helper/index.d.ts +5 -0
  202. package/dist/helper/scene-builder.d.ts +111 -0
  203. package/dist/helper/screen-shot.d.ts +51 -0
  204. package/dist/helper/size-adapt.d.ts +88 -0
  205. package/dist/index.cjs +69350 -0
  206. package/dist/index.cjs.map +1 -0
  207. package/dist/index.d.ts +19 -0
  208. package/dist/index.mjs +68963 -0
  209. package/dist/index.mjs.map +1 -0
  210. package/dist/shared/index.d.ts +1 -0
  211. package/dist/shared/player.d.ts +9 -0
  212. package/dist/utils/background-manager.d.ts +76 -0
  213. package/dist/utils/common-utils.d.ts +39 -0
  214. package/dist/utils/container-size.d.ts +7 -0
  215. package/dist/utils/find-player-item.d.ts +9 -0
  216. package/dist/utils/index.d.ts +11 -0
  217. package/dist/utils/json-data-utils.d.ts +198 -0
  218. package/dist/utils/layout-utils.d.ts +144 -0
  219. package/dist/utils/pixel-box-utils.d.ts +26 -0
  220. package/dist/utils/player-data-utils.d.ts +9 -0
  221. package/dist/utils/player-utils.d.ts +42 -0
  222. package/dist/utils/replay-utils.d.ts +22 -0
  223. package/dist/utils/types.d.ts +130 -0
  224. package/package.json +66 -0
@@ -0,0 +1,1117 @@
1
+ import { Artis, type ArtisOptions } from '../artis';
2
+ import { ItemOrderAction, type ItemService, type ArtisItemType, type HistoryManager, type PageAutoLayoutParam, type ItemCreateInfo, type SpriteCreateInfo, type TextCreateInfo, type VideoCreateInfo, type GeneratorCreateInfo, type EffectsCreateInfo, type FrameCreateInfo, type CardCreateInfo, type ArtisData, type InitArtisData, type SetItemPropertyParam, type SceneCreateInfo, type GeneratorResource, type SpriteGeneratorResource, type VideoGeneratorResource, type CardHTML, type CardItem, type CardTypeConfig } from '../core';
3
+ import { Exporter, type ExportParams, type ExportMediaInitOptions, type ExportMediaItemDownloadInfo, type Buffers, type Extras } from '../helper';
4
+ import { spec } from '../shared';
5
+ import { Box2, Vector2, ItemCreateType, type LoadingItemOptions, type SpriteTextInitParam, type MaskConfig } from '@vvfx/gizmo';
6
+ import { type AlignType, type DistributeType } from '../utils/types';
7
+ /**
8
+ * ArtisSDK - 兼容门面层(仅 editor 模式)
9
+ *
10
+ * 设计目标:
11
+ * 1. 老用户零成本接入:仅替换 import 路径(`export { ArtisSDK as SDK }`),
12
+ * 旧方法签名保留并以 @deprecated 委托到新能力。
13
+ * 2. 新用户可发现新接口:通过父类 {@link Artis} 暴露的命名空间
14
+ * (`item` / `command` / `selection` / `view` / `history` / `preferences` / `htmlCard` / `screenshot`)使用。
15
+ *
16
+ * 约束:
17
+ * - 本类只支持 editor 模式;template / 多视图能力后续单独封装专用 Artis 子类。
18
+ * - 所有「写数据」的旧方法在迁移时统一改走 Command(支持撤销/重做)。
19
+ *
20
+ * @deprecated 推荐直接使用 {@link Artis} 及其命名空间接口(item/command/view/selection/...),
21
+ * 或高频快捷门面 {@link Artis.operations}(类型化 addSprite/deleteItem/... 供直接调用);
22
+ * 本类仅用于旧 SDK 平滑迁移。
23
+ */
24
+ export declare class ArtisSDK extends Artis {
25
+ /** 视频导出器(懒实例化) */
26
+ private _exporter?;
27
+ /** openTextGizmo 的 rAF 轮询句柄(dispose 时需取消,避免回调落到已释放的 GestureHandler) */
28
+ private _textEditRafId?;
29
+ /**
30
+ * @param container 画布容器
31
+ * @param optionsOrMode 兼容旧签名:可传 ArtisOptions;或传旧 mode 字符串(仅 editor 受支持)
32
+ *
33
+ * 旧用法 `new SDK(container, 'template')` 仍可调用,但 template 模式不再受支持,
34
+ * 会退化为 editor 并打印告警。
35
+ */
36
+ constructor(container: HTMLElement, optionsOrMode?: ArtisOptions | string);
37
+ /**
38
+ * 兼容旧的第二参(mode 字符串)与新的 ArtisOptions。
39
+ * @param optionsOrMode 兼容旧签名:可传 ArtisOptions;或传旧 mode 字符串(仅 editor 受支持)
40
+ * @returns 归一化后的 ArtisOptions;mode 字符串退化为 {},非 editor 模式退化为 editor 并打印告警
41
+ */
42
+ private static _normalizeOptions;
43
+ /**
44
+ * 获取当前选中元素的 ID 列表(旧 SDK 选中 id 语义)。
45
+ *
46
+ * 注意:基类 Artis 的 `_getActiveItems` 返回的是元素对象集合(ArtisItem[]),
47
+ * 语义不同;本方法沿用旧 SDK 的「选中 id 列表」契约,供兼容层使用。
48
+ * @deprecated 请使用 `artis.selection.getSelectedIds()`
49
+ * @returns 当前选中的元素 ID 列表
50
+ */
51
+ getActiveItemIds(): string[];
52
+ /**
53
+ * 设置选中元素
54
+ *
55
+ * @deprecated 请使用 `artis.command.execute('selection.set', { newSelectedIds: itemIds })`(支持撤销/重做)
56
+ * @param itemIds 选中的元素 ID 列表
57
+ */
58
+ setSelectedItems(itemIds: string[]): void;
59
+ /**
60
+ * 设置预选中元素
61
+ *
62
+ * @deprecated 预选能力在新架构中已下线,调用无效果
63
+ * @param _id 元素 ID(已忽略)
64
+ */
65
+ setPreSelectedItem(_id: string): void;
66
+ /**
67
+ * 获取预选中元素
68
+ *
69
+ * @deprecated 预选能力在新架构中已下线,恒返回空字符串
70
+ * @returns 恒返回空字符串
71
+ */
72
+ getPreSelectedItem(): string;
73
+ /**
74
+ * 获取指定元素(旧 SDKItem,对应新 ArtisItem)
75
+ * @deprecated 请使用 `artis.item.getArtisItem(id)`
76
+ * @param id 元素 ID
77
+ * @returns 元素对象;元素不存在时返回 undefined
78
+ */
79
+ getSDKItem(id: string): ReturnType<ItemService['getArtisItem']>;
80
+ /**
81
+ * 获取指定元素(ArtisItem)。
82
+ * @deprecated 请使用 `artis.item.getArtisItem(id)`
83
+ * @param id 元素 ID
84
+ * @returns 元素对象;元素不存在时返回 undefined
85
+ */
86
+ getArtisItem(id: string): ReturnType<ItemService['getArtisItem']>;
87
+ /**
88
+ * 获取多个元素(旧 SDKItem 列表,对应新 ArtisItem)
89
+ * @deprecated 请使用 `artis.item.getArtisItem(id)` 逐个获取
90
+ * @param ids 元素 ID 列表,缺省取全部元素
91
+ * @returns 命中的元素对象列表(跳过不存在的 ID)
92
+ */
93
+ getSDKItems(ids?: string[]): NonNullable<ReturnType<ItemService['getArtisItem']>>[];
94
+ /**
95
+ * 获取元素的子元素 ID 列表
96
+ * @deprecated 请使用 `artis.item.getArtisItem(id)` 后读取其 children
97
+ * @param id 父元素 ID
98
+ * @returns 子元素 ID 列表;元素不存在或无 children 时返回空数组
99
+ */
100
+ getChildrenIds(id: string): string[];
101
+ /**
102
+ * 获取元素的像素包围盒
103
+ * @deprecated 请使用 `artis.item.getPixelBox(id)`
104
+ * @param idInfo 元素 ID
105
+ * @returns 元素像素包围盒;元素不存在时返回 undefined
106
+ */
107
+ getItemBoxById(idInfo: string): ReturnType<ItemService['getPixelBox']>;
108
+ /**
109
+ * 获取元素的锁定状态
110
+ * @deprecated 请使用 `artis.item.getArtisItem(id)` 读取其锁定状态
111
+ * @param id 元素 ID
112
+ * @returns 是否锁定;元素不存在时返回 false
113
+ */
114
+ getItemLockState(id: string): boolean;
115
+ /**
116
+ * 删除元素(支持单个或批量)
117
+ *
118
+ * @deprecated 请使用 `artis.command.execute('item.delete', { itemId: id })` 逐个删除(支持撤销)
119
+ * @param idInfo 单个元素 ID 或 ID 列表
120
+ */
121
+ deleteItems(idInfo: string | string[]): void;
122
+ /**
123
+ * 调整元素层级顺序
124
+ *
125
+ * @deprecated 请使用 `artis.command.execute('item.reorder', { itemId, reorderType })`,
126
+ * 其中 reorderType 为 'bringToFront' | 'sendToBack' | 'moveUp' | 'moveDown'
127
+ * @param id 元素 ID
128
+ * @param action 旧的层级操作枚举
129
+ */
130
+ updateItemOrder(id: string, action: ItemOrderAction): void;
131
+ /**
132
+ * 成组元素
133
+ *
134
+ * @deprecated 请使用 `artis.command.execute('item.group', { childrenIds })`
135
+ * @param groupInfo 旧的成组创建信息(仅读取其 children)
136
+ */
137
+ groupItems(groupInfo: {
138
+ property?: {
139
+ children?: string[];
140
+ };
141
+ }): void;
142
+ /**
143
+ * 设置元素名称
144
+ *
145
+ * @deprecated 请使用 `artis.command.execute('item.updateProperty', { itemId, propertyKey, newValue })`
146
+ * @param id 元素 ID
147
+ * @param name 新名称
148
+ */
149
+ setItemName(id: string, name: string): void;
150
+ /**
151
+ * 将元素移入画板
152
+ *
153
+ * @deprecated 请使用 `artis.command.execute('frame.moveIn', { itemIds, frameId })`
154
+ * @param itemIds 待移入的元素 ID 列表
155
+ * @param frameId 目标画板元素 ID
156
+ */
157
+ moveItemsToFrame(itemIds: string[], frameId: string): void;
158
+ /**
159
+ * 将元素移出画板
160
+ *
161
+ * @deprecated 请使用 `artis.command.execute('frame.moveOut', { itemIds })`
162
+ * @param itemIds 待移出的元素 ID 列表
163
+ */
164
+ moveItemsOutOfFrame(itemIds: string[]): void;
165
+ /**
166
+ * 设置元素的父子关系(移入指定父级)
167
+ *
168
+ * @deprecated 请使用 `artis.command.execute('frame.moveIn', { itemIds: [id], frameId: parentId })`
169
+ * @param id 待移入的元素 ID
170
+ * @param parentId 目标父级元素 ID
171
+ */
172
+ setItemParent(id: string, parentId: string): void;
173
+ /**
174
+ * 解除元素与指定父级的关系(移出画板)
175
+ *
176
+ * @deprecated 请使用 `artis.command.execute('frame.moveOut', { itemIds: [id], frameId: parentId })`
177
+ * @param id 待移出的元素 ID
178
+ * @param parentId 要解除的父级元素 ID
179
+ */
180
+ deleteItemParent(id: string, parentId: string): void;
181
+ /**
182
+ * 设置图片元素尺寸
183
+ *
184
+ * @deprecated 请使用 `artis.command.execute('item.transform', { itemId, newTransform: { width, height } })`
185
+ * @param id 元素 ID
186
+ * @param size 像素尺寸 [width, height]
187
+ */
188
+ setSpriteSize(id: string, size: [number, number]): void;
189
+ /**
190
+ * 调整画板元素尺寸(可选同时平移)
191
+ *
192
+ * @deprecated 请使用 `artis.command.execute('item.transform', { itemId, newTransform: { width, height, position } })`
193
+ * @param id 画板元素 ID
194
+ * @param size 像素尺寸 [width, height]
195
+ * @param translation 可选的位置偏移 [x, y]
196
+ */
197
+ resizeFrameItem(id: string, size: [number, number], translation?: [number, number]): void;
198
+ /**
199
+ * 设置特效元素的资源
200
+ *
201
+ * @deprecated 请使用 `artis.item.updateEffectsSource(id, effects)`
202
+ * @param id 特效元素 ID
203
+ * @param effects 特效资源地址
204
+ */
205
+ setEffectsResource(id: string, effects: string): void;
206
+ /**
207
+ * 设置元素锁定状态
208
+ *
209
+ * @deprecated 请使用 `artis.command.execute('item.updateProperty', { itemId: id, propertyKey: 'locked', newValue: state })`
210
+ * @param id 元素 ID
211
+ * @param state 是否锁定
212
+ */
213
+ setItemLockState(id: string, state: boolean): void;
214
+ /**
215
+ * 对画板执行自动布局(切换为 auto 布局模式)
216
+ *
217
+ * @deprecated 请使用 `artis.command.execute('frame.layoutMode', { frameId, targetMode: 'auto' })`
218
+ * @param frameId 画板元素 ID
219
+ */
220
+ applyFrameAutoLayout(frameId: string): void;
221
+ /**
222
+ * 对整个页面执行自动排布
223
+ *
224
+ * @deprecated 请使用 `artis.command.execute('page.autoLayout', { param })`(支持撤销)
225
+ * @param param 自动排布参数
226
+ */
227
+ autoLayoutPage(param?: PageAutoLayoutParam): void;
228
+ /**
229
+ * 经 CreateInfo → ItemSchema 转换后创建元素,并 await 异步资源加载(M4 回流)。
230
+ * 对齐 master「创建即资源就绪」语义——resolve 时图片/视频/特效预合成/画板预合成已就绪。
231
+ * @param createInfo 旧元素创建信息
232
+ * @returns 新创建元素的 ID
233
+ */
234
+ private _createByInfoAsync;
235
+ /**
236
+ * 创建图片元素
237
+ *
238
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas: schema })`(schema 见 SpriteItemSchema)
239
+ * @param spriteInfo 图片元素创建信息
240
+ * @returns 新元素 ID
241
+ */
242
+ addSpriteItem(spriteInfo: SpriteCreateInfo): Promise<string | undefined>;
243
+ /**
244
+ * 创建文本元素
245
+ *
246
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas: schema })`(schema 见 TextItemSchema)
247
+ * @param textInfo 文本元素创建信息
248
+ * @returns 新元素 ID
249
+ */
250
+ addTextItem(textInfo: TextCreateInfo): Promise<string | undefined>;
251
+ /**
252
+ * 创建视频元素
253
+ *
254
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas: schema })`(schema 见 VideoItemSchema)
255
+ * @param videoInfo 视频元素创建信息
256
+ * @returns 新元素 ID
257
+ */
258
+ addVideoItem(videoInfo: VideoCreateInfo): Promise<string | undefined>;
259
+ /**
260
+ * 创建卡片元素
261
+ *
262
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas: schema })`(schema 见 CardItemSchema)
263
+ * @param createInfo 卡片元素创建信息
264
+ * @returns 新元素 ID(创建失败返回 undefined)
265
+ */
266
+ addCardItem(createInfo: CardCreateInfo): string | undefined;
267
+ /**
268
+ * 创建生成器元素
269
+ *
270
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas: schema })`(schema 见 GeneratorItemSchema)
271
+ * @param createInfo 生成器元素创建信息
272
+ * @returns 新元素 ID
273
+ */
274
+ addGeneratorItem(createInfo: GeneratorCreateInfo): Promise<string | undefined>;
275
+ /**
276
+ * 创建特效元素
277
+ *
278
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas: schema })`(schema 见 EffectsItemSchema)
279
+ * @param effectsInfo 特效元素创建信息
280
+ * @returns 新元素 ID
281
+ */
282
+ addEffectsItem(effectsInfo: EffectsCreateInfo): Promise<string | undefined>;
283
+ /**
284
+ * 创建画板元素
285
+ *
286
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas: schema })`(schema 见 FrameItemSchema)
287
+ * @param createInfo 画板元素创建信息
288
+ * @returns 新画板元素 ID
289
+ */
290
+ addFrameItem(createInfo: FrameCreateInfo): Promise<string | undefined>;
291
+ /**
292
+ * 批量创建元素
293
+ *
294
+ * 「先子后父」的拓扑排序已下沉到 `item.create` 命令层(ItemCreateCommand 构造期算 buildOrder),
295
+ * 此处只做 createInfo → schema 转发;返回的 ids 与 createInfos 逐项一一对应。
296
+ *
297
+ * @deprecated 请使用 `artis.command.execute('item.create', { schemas })` 批量创建
298
+ * @param createInfos 元素创建信息列表
299
+ * @returns 新创建元素的 ID 列表(与 createInfos 逐项对应)
300
+ */
301
+ addItemByCreateInfos(createInfos: ItemCreateInfo[], asyncMode?: boolean): Promise<string[]>;
302
+ /**
303
+ * 注册单个卡片类型
304
+ * @deprecated 请使用 `artis.preferences.registerCardType(config)`
305
+ * @param cardTypeConfig 卡片类型配置
306
+ * @returns 是否注册成功
307
+ */
308
+ registerCardType(cardTypeConfig: CardTypeConfig): boolean;
309
+ /**
310
+ * 批量注册卡片类型
311
+ * @deprecated 请使用 `artis.preferences.registerCardTypes(configs)`
312
+ * @param configs 卡片类型配置列表
313
+ * @returns 成功注册的数量
314
+ */
315
+ registerCardTypes(configs: CardTypeConfig[]): number;
316
+ /**
317
+ * 注销卡片类型
318
+ * @deprecated 请使用 `artis.preferences.unregisterCardType(type)`
319
+ * @param type 卡片类型名称
320
+ * @returns 是否注销成功
321
+ */
322
+ unregisterCardType(type: string): boolean;
323
+ /**
324
+ * 获取所有已注册的卡片类型
325
+ * @deprecated 请使用 `artis.preferences.getRegisteredCardTypes()`
326
+ * @returns 已注册的卡片类型配置列表
327
+ */
328
+ getRegisteredCardTypes(): CardTypeConfig[];
329
+ /**
330
+ * 判断卡片类型是否已注册
331
+ * @deprecated 请使用 `artis.preferences.isCardTypeRegistered(type)`
332
+ * @param type 卡片类型名称
333
+ * @returns 是否已注册
334
+ */
335
+ isCardTypeRegistered(type: string): boolean;
336
+ /**
337
+ * 按注册的 cardType 动态解析卡片 HTML。
338
+ * @deprecated 请使用 `artis.htmlCard.resolveHTML(item)`
339
+ */
340
+ resolveCardHTML(item: CardItem): CardHTML | undefined;
341
+ /**
342
+ * 解析卡片对应的注册类型配置。
343
+ * @deprecated 请使用 `artis.htmlCard.resolveTypeConfig(item)`
344
+ */
345
+ resolveCardTypeConfig(item: CardItem): CardTypeConfig | undefined;
346
+ /**
347
+ * 重新解析并挂载指定卡片的 HTML。
348
+ * @deprecated 请使用 `artis.htmlCard.refresh(id)`
349
+ */
350
+ refreshCardHTML(id: string): boolean;
351
+ /**
352
+ * 向卡片内容注册的 patch handler 派发增量更新。
353
+ * @deprecated 请使用 `artis.htmlCard.patch(id, patch)`
354
+ */
355
+ patchCardHTML(id: string, patch: unknown): boolean;
356
+ /**
357
+ * 获取 HTML 卡片 iframe window。
358
+ * @deprecated 请使用 `artis.htmlCard.getWindow(id)`
359
+ */
360
+ getHtmlCardWindow(id: string): Window | null | undefined;
361
+ /**
362
+ * 向 HTML 卡片 iframe 派发跨文档事件。
363
+ * @deprecated 请使用 `artis.htmlCard.dispatchEvent(id, type, detail)`
364
+ */
365
+ dispatchHtmlCardEvent(id: string, type: string, detail?: unknown): boolean;
366
+ /**
367
+ * 获取页面数据。
368
+ *
369
+ * 旧 SDK 返回多视图重型结构(含 viewProperties / activeData / property / scene);
370
+ * 新架构为单视图,统一投影为 {@link ArtisData}(仅 `items`)。
371
+ *
372
+ * 旧用户访问 `.items` 仍可用;`.viewProperties` / `.activeData` 等多视图字段已下线,
373
+ * 请改用 `artis.selection.getSelectedIds()` 等命名空间接口获取对应数据。
374
+ *
375
+ * @deprecated 请使用 `artis.store.toArtisData()` 或对应命名空间接口
376
+ */
377
+ get pageData(): ArtisData;
378
+ /**
379
+ * 通过页面数据重新加载并启动。
380
+ *
381
+ * 仅投影单视图:从入参中提取元素数据(`items`)走新 {@link Artis.run}。
382
+ * 旧多视图 PageData(`viewProperties` / `scene` 等)能力已下线,相关字段被忽略。
383
+ *
384
+ * @deprecated 请使用 `artis.run({ items })`
385
+ * @param data 兼容旧 PageData;新用法请直接传 `{ items: ItemSchema[] }`
386
+ */
387
+ runByPageData(data: InitArtisData | {
388
+ items?: unknown[];
389
+ }): Promise<void>;
390
+ /**
391
+ * 追加多视图页面数据。
392
+ *
393
+ * @deprecated 多视图能力在新架构中已下线,调用无效果。
394
+ * 单视图加载请使用 `artis.run({ items })`。
395
+ * @param _data 旧多视图页面数据(已忽略)
396
+ */
397
+ loadPageData(_data: unknown): Promise<void>;
398
+ /**
399
+ * 通过 JSONScene 重新加载所有视图。
400
+ *
401
+ * @deprecated 基于 scene 的整页重载能力在新架构中已下线,调用无效果。
402
+ * 请改用 `artis.run({ items })` 加载元素数据。
403
+ * @param _scene 旧 JSONScene 数据(已忽略)
404
+ */
405
+ reloadPageDataByScene(_scene: unknown): Promise<void>;
406
+ /**
407
+ * 设置视图缩放(绝对值)。
408
+ *
409
+ * @deprecated 请使用 `artis.view.setZoom(zoom, center)`
410
+ * @param zoom 目标缩放值(绝对值)
411
+ * @param center 缩放中心(视口坐标),不传则以默认锚点缩放
412
+ * @param _ignoreClamp 旧参数:是否忽略缩放范围约束。新架构由 view 内部统一钳位,此参已废弃
413
+ */
414
+ setPageZoom(zoom: number, center?: [number, number], _ignoreClamp?: boolean): void;
415
+ /**
416
+ * 设置画布平移(绝对值)。
417
+ *
418
+ * @deprecated 请使用 `artis.view.setTranslation([x, y])`
419
+ * @param targetTranslation 目标平移值(绝对值),兼容旧 Vector2(含 toArray)或 [x, y] 数组
420
+ */
421
+ setPageMove(targetTranslation: [number, number] | {
422
+ toArray(): number[];
423
+ }): void;
424
+ /**
425
+ * 缩放视图(增量)。
426
+ *
427
+ * @deprecated 请使用 `artis.command.execute('viewport.zoom', { zoomDelta: shift, center })`
428
+ * @param shift 缩放增量
429
+ * @param center 缩放中心(视口坐标)
430
+ */
431
+ pageZoom(shift: number, center?: [number, number]): void;
432
+ /**
433
+ * 平移视图(增量)。
434
+ *
435
+ * @deprecated 请使用 `artis.command.execute('viewport.move', { deltaX: dx, deltaY: dy })`
436
+ * @param shift 平移增量 [dx, dy]
437
+ */
438
+ pageMove(shift: [number, number]): void;
439
+ /**
440
+ * 自适应视口:有 box 则 fitToBox,无 box 取全部元素 pixel box 合并后 fit。
441
+ *
442
+ * @deprecated 请使用 `artis.view.fitToBox(box, shiftParam)`。
443
+ * @param shiftParam fit 时的留白/偏移参数
444
+ * @param box 待 fit 的目标包围盒;缺省时取全部元素的 pixel box 合并
445
+ */
446
+ viewportFit(shiftParam?: unknown, box?: Box2): void;
447
+ /**
448
+ * 像素坐标系包围盒 → 视口坐标系包围盒(应用 zoom + translation)。
449
+ *
450
+ * @deprecated 推荐直接使用 `artis.interactionService.getViewBoxByBox(box)`。
451
+ * @param box 像素坐标系包围盒
452
+ * @returns 视口坐标系包围盒
453
+ */
454
+ getViewBoxByBox(box: Box2): Box2;
455
+ /**
456
+ * 视口坐标 → 像素坐标换算(逆向 zoom + translation)。
457
+ *
458
+ * @deprecated 推荐直接使用 `artis.interactionService.getPixelPositionByViewPoint(viewPosition)`。
459
+ * @param viewPosition 视口坐标
460
+ * @returns 像素坐标
461
+ */
462
+ getPixelPositionByViewPosition(viewPosition: Vector2): Vector2;
463
+ /**
464
+ * 设置画布背景。
465
+ *
466
+ * @deprecated 请使用 `artis.setBackground(config)`(config 为 {@link ArtisBackgroundConfig})
467
+ * @param type 背景类型:'color' | 'image' | 'chess-board' | 'dot-board'
468
+ * @param value color 时为颜色值;image 时为图片 URL;棋盘/点阵时为可选底色
469
+ */
470
+ setSDKBackground(type: 'color' | 'image' | 'chess-board' | 'dot-board', value?: string): void;
471
+ /**
472
+ * 设置画布背景({@link setSDKBackground} 的旧别名)。
473
+ *
474
+ * @deprecated 请使用 `artis.setBackground(config)`(config 为 {@link ArtisBackgroundConfig})
475
+ * @param type 背景类型:'color' | 'image' | 'chess-board' | 'dot-board'
476
+ * @param value color 时为颜色值;image 时为图片 URL;棋盘/点阵时为可选底色
477
+ */
478
+ setArtisBackground(type: 'color' | 'image' | 'chess-board' | 'dot-board', value?: string): void;
479
+ /**
480
+ * 旧 (type, value) 背景入参 → 新 ArtisBackgroundConfig 对象。
481
+ * @param type 背景类型:'color' | 'image' | 'chess-board' | 'dot-board'
482
+ * @param value color 时为颜色值;image 时为图片 URL;棋盘/点阵时忽略
483
+ * @returns 归一化后的 ArtisBackgroundConfig
484
+ */
485
+ private static _toBackgroundConfig;
486
+ /**
487
+ * 获取页面配置。
488
+ *
489
+ * @deprecated 请分别使用 `artis.preferences.page` 与 `artis.view`(zoom / translation)
490
+ * @returns 页面配置(含安全区预览 / 缩放 / 吸附 / 异步模式 / 平移)
491
+ */
492
+ getPageConfig(): {
493
+ safeAreaPreview: boolean;
494
+ zoom: number;
495
+ adsorption: boolean;
496
+ asyncMode: boolean;
497
+ translation: [number, number];
498
+ };
499
+ /**
500
+ * 设置页面配置。
501
+ *
502
+ * @deprecated 缩放请用 `artis.view.setZoom(zoom)`;其余开关用 `artis.preferences.setPage(...)`
503
+ * @param pageConfig 页面配置(缩放 / 安全区预览 / 吸附 / 异步模式)
504
+ */
505
+ setPageConfig(pageConfig: {
506
+ safeAreaPreview?: boolean;
507
+ zoom?: number;
508
+ adsorption?: boolean;
509
+ asyncMode?: boolean;
510
+ }): void;
511
+ /**
512
+ * 设置元素属性(支持单属性 / 多属性)。
513
+ *
514
+ * 统一走 `item.updateProperty` Command(支持撤销);多属性场景以 batch 聚合为单条历史。
515
+ *
516
+ * @deprecated 请使用 `artis.command.execute('item.updateProperty', { itemId, propertyKey, newValue })`
517
+ * @param param 单属性 `{ itemId, propertyName, propertyValue }` 或多属性 `{ itemId, property }`
518
+ */
519
+ setItemProperty<T extends ArtisItemType>(param: SetItemPropertyParam<T>): Promise<void>;
520
+ /**
521
+ * 获取(懒实例化)视频导出器,并桥接导出事件到新事件系统。
522
+ *
523
+ * Exporter 的 `progress` / `done` / `complete` 事件,旧 SDK 通过
524
+ * `exportProgress` / `exportDone` / `exportComplete` 暴露;这些旧事件已下线,
525
+ * 导出进度请直接 `artis.exporter.on('progress', ...)` 监听。
526
+ * @returns 视频导出器实例
527
+ */
528
+ private _getExporter;
529
+ /**
530
+ * 视频导出器实例(懒创建)。
531
+ *
532
+ * 推荐用法(新接口):`artis.exporter.on('progress', ...)`、`artis.exporter.onExport(params)`。
533
+ */
534
+ get exporter(): Exporter;
535
+ /**
536
+ * 撤销 / 重做入口(兼容旧 `_undoRedo`)。
537
+ *
538
+ * `canUndo` / `canRedo` 暴露为属性(旧风格);`push` / `undo` / `redo` 转发到 `history`。
539
+ *
540
+ * @deprecated 请使用 `artis.history`(注意新 HistoryManager 的 canUndo / canRedo 为方法)
541
+ */
542
+ get undoRedo(): {
543
+ push: HistoryManager['push'];
544
+ undo: HistoryManager['undo'];
545
+ redo: HistoryManager['redo'];
546
+ canUndo: boolean;
547
+ canRedo: boolean;
548
+ };
549
+ /**
550
+ * 导出当前导出器状态。
551
+ * @deprecated 请使用 `artis.exporter.status`
552
+ */
553
+ get exportStatus(): Exporter['status'] | undefined;
554
+ /**
555
+ * 执行导出。
556
+ *
557
+ * @deprecated 请使用 `artis.exporter.onExport(params)`
558
+ * @param params 导出参数列表(含 scene / size / 下载信息)。
559
+ * 旧无参用法依赖多视图 `exportOptions`,新架构已下线,必须显式传入 params。
560
+ */
561
+ onExport(params?: ExportParams): void;
562
+ /**
563
+ * 取消导出。
564
+ * @deprecated 请使用 `artis.exporter.onCancel()`
565
+ */
566
+ cancelExport(): void;
567
+ /**
568
+ * 设置导出参数。
569
+ * @deprecated 请使用 `artis.exporter.setOptions(options)`
570
+ * @param exportParam 导出参数(部分字段)
571
+ */
572
+ setExportParam(exportParam: Partial<ExportMediaInitOptions>): void;
573
+ /**
574
+ * 以媒体格式 buffer 下载。
575
+ * @deprecated 请使用 `artis.exporter.downloadByMediaBuffers(params, buffers, extras)`
576
+ * @param params 下载项信息列表
577
+ * @param buffers 媒体 buffer 集合
578
+ * @param extras 附加信息(如字幕等)
579
+ */
580
+ downloadByMediaBuffersOfExporter(params: ExportMediaItemDownloadInfo[], buffers: Buffers, extras: Extras): void;
581
+ /**
582
+ * 由指定元素 ID 组装独立场景并生成截图。
583
+ *
584
+ * @deprecated 请使用 `artis.screenshot.generateByItemIds(ids, { time })`。
585
+ * @param idInfo 元素 ID(单个或多个)
586
+ * @param time 截图时刻(秒),默认 0
587
+ * @returns 截图 dataURL;场景无预览尺寸或生成失败时返回 undefined
588
+ */
589
+ createScreenShotSceneByIds(idInfo: string | string[], time?: number): Promise<string | undefined>;
590
+ /**
591
+ * 生成截图。数字入参兼容旧 SDK view ID,在单视图 Artis 中映射为当前全部元素;
592
+ * 字符串或字符串数组按指定元素截图。
593
+ *
594
+ * @deprecated 请使用 `artis.screenshot.generateByItemIds(ids, options)`
595
+ * @param idInfo 旧 view ID,或元素 ID(单个或多个)
596
+ * @param size 截图结果尺寸 [width, height];数字 view ID 默认 [300, 400],元素截图默认使用场景预览尺寸
597
+ * @param tick 截图时刻(秒);数字 view ID 默认使用主合成时长,元素截图默认 0
598
+ * @param backgroundColor 背景色 [r, g, b, a](0-255 / 0-1),不传则透明
599
+ * @returns 截图 dataURL;生成失败时返回 undefined
600
+ */
601
+ generateScreenShot(idInfo: number | string | string[], size?: [number, number], tick?: number, backgroundColor?: spec.vec4): Promise<string | undefined>;
602
+ /**
603
+ * 生成画板(Frame)元素的截图(仅渲染其子元素)。
604
+ *
605
+ * @deprecated 请使用 `artis.screenshot.generateByItemIds(frameItem.children)`
606
+ * @param id 画板元素 ID
607
+ * @returns 截图 dataURL;非画板 / 无子元素时返回 undefined
608
+ */
609
+ createScreenShotByFrame(id: string): Promise<string | undefined>;
610
+ /**
611
+ * 生成动效(Effects)元素的截图。
612
+ *
613
+ * @deprecated 请使用 `artis.screenshot.generateByItemIds(effectsId)`
614
+ * @param id 动效元素 ID
615
+ * @returns 截图 dataURL;非动效元素时返回 undefined
616
+ */
617
+ createScreenShotByEffects(id: string): Promise<string | undefined>;
618
+ /**
619
+ * 批量设置元素扩展属性。
620
+ * @deprecated 请使用 `artis.item.getArtisItem(id)?.setExtensions(extension)`
621
+ * @param id 元素 ID
622
+ * @param extension 扩展属性键值对
623
+ * @returns 是否设置成功;元素不存在时返回 false
624
+ */
625
+ setItemExtension(id: string, extension: Record<string, unknown>): boolean;
626
+ /**
627
+ * 批量获取元素扩展属性(不传 keys 则返回全部)。
628
+ * @deprecated 请使用 `artis.item.getArtisItem(id)?.getAllExtension()`
629
+ * @param id 元素 ID
630
+ * @param keys 待获取的扩展属性键名列表,缺省返回全部
631
+ * @returns 扩展属性键值对;元素不存在时返回 undefined
632
+ */
633
+ getItemExtension(id: string, keys?: string[]): Record<string, unknown> | undefined;
634
+ /**
635
+ * 删除元素扩展属性(支持批量)。
636
+ * @deprecated 请使用 `artis.item.getArtisItem(id)?.deleteExtension(key)`
637
+ * @param id 元素 ID
638
+ * @param keys 待删除的扩展属性键名列表
639
+ * @returns 是否删除成功;元素不存在时返回 false
640
+ */
641
+ deleteItemExtensions(id: string, keys: string[]): boolean;
642
+ /**
643
+ * 检查元素是否有指定扩展属性。
644
+ * @deprecated 请使用 `artis.item.getArtisItem(id)?.hasExtension(key)`
645
+ * @param id 元素 ID
646
+ * @param key 扩展属性键名
647
+ * @returns 是否存在;元素不存在时返回 false
648
+ */
649
+ hasItemExtension(id: string, key: string): boolean;
650
+ /**
651
+ * 获取元素所有扩展属性键名列表。
652
+ * @deprecated 请使用 `artis.item.getArtisItem(id)?.getExtensionKeys()`
653
+ * @param id 元素 ID
654
+ * @returns 扩展属性键名列表;元素不存在时返回 undefined
655
+ */
656
+ getItemExtensionKeys(id: string): string[] | undefined;
657
+ /**
658
+ * @deprecated 多视图能力已下线,调用无效果。新架构为单视图。
659
+ * @param _index 旧视图索引(已忽略)
660
+ */
661
+ switchScene(_index: number): Promise<void>;
662
+ /**
663
+ * @deprecated 多视图能力已下线,调用无效果。
664
+ * @param _viewParams 旧视图参数(已忽略)
665
+ * @param _scene 旧 scene 标识(已忽略)
666
+ */
667
+ addViewParams(_viewParams: unknown, _scene?: unknown): Promise<void>;
668
+ /**
669
+ * @deprecated 多视图能力已下线,调用无效果。
670
+ * @param _ids 旧视图参数 ID 列表(已忽略)
671
+ */
672
+ deleteViewParams(_ids: number[]): Promise<void>;
673
+ /**
674
+ * @deprecated 多视图能力已下线,恒返回 undefined。
675
+ * @param _id 旧视图参数 ID(已忽略)
676
+ * @returns 恒返回 undefined
677
+ */
678
+ getViewProperty(_id: number): undefined;
679
+ /**
680
+ * @deprecated 多视图能力已下线,恒返回空数组。
681
+ * @returns 恒返回空数组
682
+ */
683
+ getViewScene(): [];
684
+ /**
685
+ * @deprecated 多视图能力已下线,恒返回空数组。截图请使用 `artis.screenshot.generateByItemIds(ids)`。
686
+ * @returns 恒返回空数组
687
+ */
688
+ getViewThumbnail(): [];
689
+ /**
690
+ * @deprecated 该坐标换算依赖已下线的多视图能力,恒返回 undefined。
691
+ * @param id 元素 ID
692
+ * @returns 恒返回 undefined
693
+ */
694
+ getViewBox(id: string): Box2 | undefined;
695
+ /**
696
+ * @deprecated 多视图 JSON 导出能力已下线,恒返回空数组。
697
+ * @param _idInfo 旧视图 ID 或 ID 列表(已忽略)
698
+ * @returns 恒返回空数组
699
+ */
700
+ exportJSON(_idInfo?: number | number[]): [];
701
+ /**
702
+ * @deprecated 出血安全区预览(多视图)能力已下线,调用无效果。
703
+ * @param _visible 是否显示出血安全区(已忽略)
704
+ */
705
+ setSafeAreaPreviewVisible(_visible: boolean): void;
706
+ /**
707
+ * 多元素对齐:以选中元素的整体包围盒为基准,将各元素贴到对应边 / 中线。
708
+ *
709
+ * @param type 对齐类型(left / right / horizontal-center / top / bottom / vertical-center)
710
+ * @param ids 参与对齐的元素 id;缺省时取当前选中元素
711
+ * @deprecated 请使用 `artis.command.execute('item.align', { alignType: type, itemIds: ids })`(支持撤销/重做)
712
+ */
713
+ makeItemAlign(type: AlignType, ids?: string[]): void;
714
+ /**
715
+ * 多元素等间距分布:按中心点沿分布方向铺开(固定首尾,至少需要 3 个元素)。
716
+ *
717
+ * @param type 分布类型(horizontal-spacing / vertical-spacing)
718
+ * @param ids 参与分布的元素 id;缺省时取当前选中元素
719
+ * @deprecated 请使用 `artis.command.execute('item.distribute', { distributeType: type, itemIds: ids })`(支持撤销/重做)
720
+ */
721
+ makeItemDistribute(type: DistributeType, ids?: string[]): void;
722
+ /**
723
+ * 开启图片裁切 Gizmo:切换到「图片裁切」状态(imageCut)。
724
+ * @deprecated 请使用 `artis.command.execute('state.imageCut')`。
725
+ */
726
+ openPictureCutGizmo(): void;
727
+ /**
728
+ * 关闭图片裁切 Gizmo:切回默认的「移动」状态(move)。
729
+ * @deprecated 请使用 `artis.command.execute('state.move')`。
730
+ */
731
+ closePictureCutGizmo(): void;
732
+ /**
733
+ * 获取当前裁切信息(归一化裁切框 + 元素视图框),委托 PictureCutGizmo.getCutInfo。
734
+ * @returns 裁切信息;Gizmo 未就绪 / 未选中单个元素 / 结果无效时返回 undefined
735
+ */
736
+ getCutInfo(): {
737
+ cutBox: Box2;
738
+ itemBox: Box2;
739
+ } | undefined;
740
+ /**
741
+ * 获取归一化裁切包围盒(min/max ∈ [0,1],相对元素包围盒),委托 PictureCutGizmo.getCutBox。
742
+ * @returns 归一化裁切框;Gizmo 未就绪时返回 undefined
743
+ */
744
+ getCutBox(): Box2 | undefined;
745
+ /**
746
+ * 设置归一化裁切包围盒(入参为归一化坐标),委托 PictureCutGizmo.setCutBox。
747
+ * @param normalizeBox 归一化裁切框
748
+ */
749
+ setCutBox(normalizeBox: Box2): void;
750
+ /**
751
+ * 设置裁切 Gizmo 是否锁定缩放比例,委托 PictureCutGizmo.isLockScale。
752
+ * @param state 是否锁定
753
+ */
754
+ setPictureCutGizmoLockScale(state: boolean): void;
755
+ /**
756
+ * @deprecated 裁切撤销统一走 `artis.history.undo()`(撤销最近一条 PictureCutCommitCommand)。
757
+ * @returns 恒返回 true
758
+ */
759
+ undoPictureCutGizmo(): boolean;
760
+ /**
761
+ * @deprecated 裁切重做统一走 `artis.history.redo()`。
762
+ * @returns 恒返回 true
763
+ */
764
+ redoPictureCutGizmo(): boolean;
765
+ /** @deprecated 请使用 `artis.history.canUndo()`。 */
766
+ get canUndoPictureCutGizmo(): boolean;
767
+ /** @deprecated 请使用 `artis.history.canRedo()`。 */
768
+ get canRedoPictureCutGizmo(): boolean;
769
+ /** @deprecated isolated 状态退出时 session 自动清理,调用无效果。 */
770
+ clearPictureCutGizmoUndoRedo(): void;
771
+ /**
772
+ * 开启图片扩边 Gizmo:切换到「图片扩边」状态(imageExpand)。
773
+ * @deprecated 请使用 `artis.command.execute('state.imageExpand')`。
774
+ */
775
+ openPictureExpandGizmo(): void;
776
+ /**
777
+ * 关闭图片扩边 Gizmo:切回默认的「移动」状态(move)。
778
+ * @deprecated 请使用 `artis.command.execute('state.move')`。
779
+ */
780
+ closePictureExpandGizmo(): void;
781
+ /**
782
+ * 获取当前扩边信息(归一化扩边框 + 元素视图框),委托 PictureExpandGizmo.getExpandInfo。
783
+ * @returns 扩边信息;Gizmo 未就绪 / 未选中单个元素 / 结果无效时返回 undefined
784
+ */
785
+ getExpandInfo(): {
786
+ expandBox: Box2;
787
+ itemBox: Box2;
788
+ } | undefined;
789
+ /**
790
+ * 获取归一化扩边包围盒(相对元素包围盒,可超出 [0,1]),委托 PictureExpandGizmo.getExpandBox。
791
+ * @returns 归一化扩边框;Gizmo 未就绪时返回 undefined
792
+ */
793
+ getExpandBox(): Box2 | undefined;
794
+ /**
795
+ * 设置归一化扩边包围盒(入参为归一化坐标),委托 PictureExpandGizmo.setExpandBox。
796
+ * @param normalizeBox 归一化扩边框
797
+ */
798
+ setExpandBox(normalizeBox: Box2): void;
799
+ /**
800
+ * 设置扩边 Gizmo 是否锁定缩放比例,委托 PictureExpandGizmo.isLockScale。
801
+ * @param state 是否锁定
802
+ */
803
+ setPictureExpandGizmoLockScale(state: boolean): void;
804
+ /**
805
+ * @deprecated 扩边撤销统一走 `artis.history.undo()`(撤销最近一条 PictureExpandCommitCommand)。
806
+ * @returns 恒返回 true
807
+ */
808
+ undoPictureExpandGizmo(): boolean;
809
+ /**
810
+ * @deprecated 扩边重做统一走 `artis.history.redo()`。
811
+ * @returns 恒返回 true
812
+ */
813
+ redoPictureExpandGizmo(): boolean;
814
+ /** @deprecated 请使用 `artis.history.canUndo()`。 */
815
+ get canUndoPictureExpandGizmo(): boolean;
816
+ /** @deprecated 请使用 `artis.history.canRedo()`。 */
817
+ get canRedoPictureExpandGizmo(): boolean;
818
+ /** @deprecated isolated 状态退出时 session 自动清理,调用无效果。 */
819
+ clearPictureExpandGizmoUndoRedo(): void;
820
+ /**
821
+ * 开启蒙版 Gizmo:切换到「图片蒙版」状态(imageMask),并应用初始笔刷大小。
822
+ * @deprecated 请使用 `artis.command.execute('state.imageMask')` + `artis.gizmoManager.configs.set(maskConfig, { brushSize })`。
823
+ * @param brushSize 初始笔刷大小
824
+ */
825
+ openMaskGizmo(brushSize: number): void;
826
+ /**
827
+ * 清空蒙版:移除已绘制的所有蒙版笔迹。
828
+ * @deprecated 推荐直接使用 `artis.gizmoManager.get('mask')?.clearMask()`。
829
+ */
830
+ clearMaskGizmo(): void;
831
+ /**
832
+ * 关闭蒙版 Gizmo:切回默认的「移动」状态(move)。
833
+ * @deprecated 请使用 `artis.command.execute('state.move')`。
834
+ */
835
+ closeMaskGizmo(): void;
836
+ /**
837
+ * @deprecated 请直接使用 `artis.gizmoManager.get('mask')?.getMask()`。
838
+ * @returns 蒙版 dataURL;Gizmo 未就绪时返回 undefined
839
+ */
840
+ getMask(): string | undefined;
841
+ /**
842
+ * 设置蒙版 Gizmo 配置(笔刷大小 / 蒙版颜色 / 蒙版图片等)。
843
+ *
844
+ * 其中 maskImage 为运行时蒙版图片(非 MaskConfig 字段),单独写入 gizmo.maskImage。
845
+ * @deprecated 推荐直接使用 `artis.gizmoManager.get('mask')` 上的 config / maskImage。
846
+ * @param config 蒙版配置(笔刷大小 / 蒙版颜色 / 蒙版图片等)
847
+ */
848
+ setMaskGizmoConfig(config: Partial<MaskConfig> & {
849
+ maskImage?: HTMLImageElement;
850
+ }): void;
851
+ /**
852
+ * 设置蒙版 Gizmo 模式:'paint' 笔刷涂抹 / 'erase' 笔刷擦除 / 'box-paint' 框选涂抹 / 'box-erase' 框选擦除。
853
+ * @deprecated 推荐直接使用 `artis.gizmoManager.get('mask')?.setMode(mode)`。
854
+ * @param mode 蒙版模式:'paint' | 'erase' | 'box-paint' | 'box-erase'
855
+ */
856
+ setMaskGizmoMode(mode: 'paint' | 'erase' | 'box-paint' | 'box-erase'): void;
857
+ /**
858
+ * @deprecated 蒙版撤销统一走 `artis.history.undo()`(撤销最近一条 MaskCommitCommand)。
859
+ * @returns 恒返回 true
860
+ */
861
+ undoMaskGizmo(): boolean;
862
+ /**
863
+ * @deprecated 蒙版重做统一走 `artis.history.redo()`。
864
+ * @returns 恒返回 true
865
+ */
866
+ redoMaskGizmo(): boolean;
867
+ /** @deprecated 请使用 `artis.history.canUndo()`。 */
868
+ get canUndoMaskGizmo(): boolean;
869
+ /** @deprecated 请使用 `artis.history.canRedo()`。 */
870
+ get canRedoMaskGizmo(): boolean;
871
+ /** @deprecated isolated 状态退出时 session 自动清理,调用无效果。 */
872
+ clearMaskGizmoUndoRedo(): void;
873
+ /**
874
+ * 开启精改文字 Gizmo:切换到「精准改字」状态(imageTextEdit)。
875
+ * @deprecated 请使用 `artis.command.execute('state.imageTextEdit')`。
876
+ * @param initParam 文字片段初始化参数,不传则复用 Gizmo 既有结果
877
+ */
878
+ openSpriteTextEditGizmo(initParam?: SpriteTextInitParam[]): void;
879
+ /**
880
+ * 关闭精改文字 Gizmo:切回默认的「移动」状态(move)。
881
+ * @deprecated 请使用 `artis.command.execute('state.move')`。
882
+ */
883
+ closeSpriteTextEditGizmo(): void;
884
+ /** @deprecated 精改文字 Gizmo 能力已下线,调用无效果。 */
885
+ /**
886
+ * 选中指定文字片段,委托 SpriteTextEditGizmo.setSelected。
887
+ * @param id 元素 ID
888
+ * @param index 文字片段索引
889
+ */
890
+ setSpriteTextSelectedIndex(id: string, index: number): void;
891
+ /**
892
+ * 设置指定文字片段的文本内容,委托 SpriteTextEditGizmo.setText。
893
+ * @param id 元素 ID
894
+ * @param index 文字片段索引
895
+ * @param text 新文本
896
+ */
897
+ setSpriteTextSelectedText(id: string, index: number, text: string): void;
898
+ /**
899
+ * 设置指定文字片段的「已修改」状态,委托 SpriteTextEditGizmo.setChangedState。
900
+ * @param id 元素 ID
901
+ * @param index 文字片段索引
902
+ * @param hasChanged 是否已修改
903
+ */
904
+ setSpriteTextChangedState(id: string, index: number, hasChanged: boolean): void;
905
+ /**
906
+ * 设置指定文字片段的「编辑中」状态,委托 SpriteTextEditGizmo.setEditState。
907
+ * @param id 元素 ID
908
+ * @param index 文字片段索引
909
+ * @param isEditing 是否编辑中
910
+ */
911
+ setSpriteTextEditState(id: string, index: number, isEditing: boolean): void;
912
+ /**
913
+ * 开启元素创建 Gizmo:切换到「创建元素」状态(itemCreate)。
914
+ * @param createType 创建类型,默认为画板(frame)
915
+ * @deprecated 请使用 `artis.command.execute('state.itemCreate', { createType })`。
916
+ */
917
+ openItemCreateGizmo(createType?: ItemCreateType): void;
918
+ /**
919
+ * 关闭元素创建 Gizmo:切回默认的「移动」状态(move)。
920
+ * @deprecated 推荐直接使用 `artis.states.activate('move')`。
921
+ */
922
+ closeItemCreateGizmo(): void;
923
+ /**
924
+ * 开启文本编辑 Gizmo:选中目标文本并进入编辑态(textarea 自动聚焦)。
925
+ *
926
+ * 内部:切到 move 态 → 选中 itemId → 进入 GestureHandler TextEditMode。
927
+ * @deprecated 推荐用 `artis.states.activate('move')` + 选中 + 双击进入编辑。
928
+ * @param itemId 待编辑的文本元素 ID
929
+ */
930
+ openTextGizmo(itemId: string): void;
931
+ /** @deprecated 关闭文本编辑态。 */
932
+ closeTextGizmo(): void;
933
+ /**
934
+ * @deprecated 请直接使用 `artis.gizmoManager.get('loading')?.add(...)`。
935
+ * @param id loading 标识 ID
936
+ * @param options 提示文案与是否清空选中元素等可选项
937
+ */
938
+ openLoadingGizmo(id: string, options?: LoadingItemOptions): void;
939
+ /**
940
+ * @deprecated 请直接使用 `artis.gizmoManager.get('loading')?.updateItem(...)`。
941
+ * @param id loading 标识 ID
942
+ * @param options 待更新的 LoadingTip 属性
943
+ */
944
+ updateLoadingGizmo(id: string, options: LoadingItemOptions): void;
945
+ /**
946
+ * @deprecated 请直接使用 `artis.gizmoManager.get('loading')?.delete(...)`。
947
+ * @param id loading 标识 ID
948
+ */
949
+ closeLoadingGizmo(id: string): void;
950
+ /**
951
+ * @deprecated 变换 Gizmo 锁定缩放能力已下线,调用无效果。
952
+ * @param _state 是否锁定(已忽略)
953
+ */
954
+ setResizeSelectionGizmoLockScale(_state: boolean): void;
955
+ /**
956
+ * 获取元素的 CreateInfo(委托 ItemService.getItemCreateInfo)。
957
+ * @param id 元素 ID
958
+ * @returns 元素 CreateInfo;元素不存在时返回 undefined
959
+ */
960
+ getItemCreateInfo(id: string): ItemCreateInfo | undefined;
961
+ /**
962
+ * 批量获取元素 CreateInfo(委托 ItemService.getItemCreateInfos),ids 缺省取全部。
963
+ * @param ids 元素 ID 列表,缺省取全部
964
+ * @returns 元素 CreateInfo 列表(跳过不存在的元素)
965
+ */
966
+ getItemCreateInfos(ids?: string[]): ItemCreateInfo[];
967
+ /**
968
+ * 按 CreateInfo 批量更新元素属性,走 `item.updatePropertyBySchema` Command(可撤销)。
969
+ * @param createInfo 单个或多个 CreateInfo
970
+ */
971
+ setItemPropertyByCreateInfo(createInfo: ItemCreateInfo | ItemCreateInfo[]): Promise<void>;
972
+ /**
973
+ * 按 ItemSchema 的纯几何参数(position/width/height/scale/rotation)预算世界 AABB。
974
+ * 不依赖 player;position 或尺寸缺失时返回空 Box2(isEmpty()===true)。
975
+ * @param schema 元素 schema(底层 CreateInfo 已迁为 ItemSchema,基础几何参数定义未变)
976
+ * @returns 世界 AABB;几何不全时返回空 Box2
977
+ */
978
+ private static _boxFromItemSchema;
979
+ /**
980
+ * 根据单个 CreateInfo 预算元素世界包围盒(AABB),无需创建元素、不依赖 player。
981
+ *
982
+ * 底层 CreateInfo 已迁为 ItemSchema 形态,但基础几何参数(position/width/height/scale/rotation)
983
+ * 定义未变;此处按纯几何预算:以 position 为中心、width×height×scale 为尺寸构建轴对齐框,
984
+ * 再按 rotation 绕中心旋转后取外接 AABB。缺几何参数的元素(如 Group 未含尺寸、Effects/Text
985
+ * 未显式指定尺寸)返回 undefined。
986
+ *
987
+ * @param createInfo 元素 CreateInfo(基础几何参数与 ItemSchema 一致)
988
+ * @returns 世界包围盒;几何参数不全时返回 undefined
989
+ */
990
+ getBoundingBoxByItemCreateInfo(createInfo: ItemCreateInfo): Box2 | undefined;
991
+ /**
992
+ * 根据多个 CreateInfo 预算整体包围盒(并集 AABB),无需创建元素、不依赖 player。
993
+ * 几何参数不全的元素被跳过;全部元素都缺几何时返回 undefined。
994
+ * @param createInfos 元素 CreateInfo 列表
995
+ * @returns 整体世界包围盒;无任何可预算元素时返回 undefined
996
+ */
997
+ getBoundingBoxByItemCreateInfos(createInfos: ItemCreateInfo[]): Box2 | undefined;
998
+ /**
999
+ * 根据 CreateInfos 生成独立 JSONScene(委托 IOPlugin.createSceneByItemIds)。
1000
+ *
1001
+ * 注意:底层从「已存在于场景中的元素」按 ID 序列化,故传入的 CreateInfo 须对应当前
1002
+ * 场景中真实存在的元素(有 id)。常用于局部导出 / 截图建场景。
1003
+ *
1004
+ * @param createInfos 元素 CreateInfo 列表
1005
+ * @param sceneInfo 场景名称与尺寸
1006
+ * @returns 生成的 JSONScene;无有效元素 ID 时返回 undefined
1007
+ */
1008
+ createSceneByCreateInfos(createInfos: ItemCreateInfo[], sceneInfo?: SceneCreateInfo): spec.JSONScene | undefined;
1009
+ /**
1010
+ * 设置视频/时间轴播放状态:'play' 播放 / 'pause' 暂停。
1011
+ * @deprecated 请直接操作 `artis.player.play()` / `artis.player.pause()`。
1012
+ * @param playState 播放状态:'play' | 'pause'
1013
+ */
1014
+ setPlayState(playState: 'play' | 'pause'): Promise<void>;
1015
+ /**
1016
+ * 按百分比跳转播放进度:progress 为 0-100,对应激活 composition 时长的百分比。
1017
+ *
1018
+ * 跳转后保持当前播放态(playing 时续播、paused 时停在该帧),并保留各单 video/effects
1019
+ * 元素自身的播放态(ignoreMediaPlayState=true,详见 {@link Renderer.goto})。
1020
+ * @param progress 播放进度百分比 0-100
1021
+ */
1022
+ setPlayProgress(progress: number): Promise<void>;
1023
+ /**
1024
+ * @deprecated 模式切换能力已下线,仅支持 editor 模式,调用无效果。
1025
+ * @param _mode 模式名(已忽略)
1026
+ */
1027
+ setSDKMode(_mode: string): void;
1028
+ /**
1029
+ * @deprecated 静态 config 已废弃,恒返回 undefined。请使用 `artis.preferences`。
1030
+ * @returns 恒为 undefined(静态 config 已废弃)
1031
+ */
1032
+ getSDKConfig(): undefined;
1033
+ /**
1034
+ * @deprecated 静态 config 已废弃,请使用 `artis.preferences.setXxx(...)`。
1035
+ * @param _config 旧静态 config(已忽略)
1036
+ */
1037
+ setSDKConfig(_config: unknown): void;
1038
+ /**
1039
+ * @deprecated 请使用 `artis.preferences.setExport(...)`。
1040
+ * @param config 导出配置(enabled 开关等)
1041
+ */
1042
+ setExportConfig(config: {
1043
+ enabled?: boolean;
1044
+ }): void;
1045
+ /**
1046
+ * 设置文本元素字体,走 `item.setFontFamily` Command(可撤销)。
1047
+ * @param id 文本元素 ID
1048
+ * @param fontFamilyName 字体名称
1049
+ * @param url 字体资源地址
1050
+ */
1051
+ setItemFontFamily(id: string, fontFamilyName: string, url: string): Promise<void>;
1052
+ /**
1053
+ * 读取视频元素当前播放时间(秒)。元素不存在或非视频时返回 0。
1054
+ * @param id 视频元素 ID
1055
+ * @returns 当前播放时间(秒);读取失败返回 0
1056
+ */
1057
+ getVideoItemPlayTime(id: string): number;
1058
+ /**
1059
+ * 设置视频元素播放时间(秒),底层自动 clamp 到 [0, duration]。静默定位,不动播放态。
1060
+ * @param id 视频元素 ID
1061
+ * @param time 目标时间(秒)
1062
+ */
1063
+ setVideoItemPlayTime(id: string, time: number): void;
1064
+ /**
1065
+ * 读取动效元素当前播放时间(秒)。元素不存在或非动效时返回 0。
1066
+ * @param id 动效元素 ID
1067
+ * @returns 当前播放时间(秒);读取失败返回 0
1068
+ */
1069
+ getEffectsItemPlayTime(id: string): number;
1070
+ /**
1071
+ * 设置动效元素播放时间(秒)。静默定位,不动其他元素播放态。
1072
+ * @param id 动效元素 ID
1073
+ * @param time 目标时间(秒)
1074
+ */
1075
+ setEffectsItemPlayTime(id: string, time: number): void;
1076
+ /**
1077
+ * 设置生成器资源:将生成器元素原地替换为对应的 sprite / video 元素(复用同 ID)。
1078
+ * 走 `item.setGeneratorResource` Command(可撤销)。
1079
+ *
1080
+ * @param id 生成器元素 ID
1081
+ * @param resourceUrl 资源地址
1082
+ * @returns 转换后的元素 ID(与入参 id 相同)
1083
+ */
1084
+ setGeneratorResource(id: string, resourceUrl: string): Promise<string>;
1085
+ /**
1086
+ * 设置生成器资源(GeneratorResource 对象形式)。
1087
+ * @param resource 生成器资源信息(含 itemId / url)
1088
+ */
1089
+ setGeneratorResourceFromObject(resource: GeneratorResource): void;
1090
+ /**
1091
+ * 设置图片生成器资源。
1092
+ * @param resource 图片生成器资源信息(含 itemId / url)
1093
+ * @returns 转换后的元素 ID(与 resource.itemId 相同)
1094
+ */
1095
+ setSpriteGeneratorResource(resource: SpriteGeneratorResource): Promise<string>;
1096
+ /**
1097
+ * 设置视频生成器资源。
1098
+ * @param resource 视频生成器资源信息(含 itemId / url)
1099
+ * @returns 转换后的元素 ID(与 resource.itemId 相同)
1100
+ */
1101
+ setVideoGeneratorResource(resource: VideoGeneratorResource): Promise<string>;
1102
+ /**
1103
+ * @deprecated 请使用 `artis.command.execute('state.hand' | 'state.move')`。
1104
+ * @param type 交互类型:'hand' 平移 / 'select' 选择
1105
+ */
1106
+ setInteractType(type: 'hand' | 'select'): void;
1107
+ /**
1108
+ * 读取当前交互类型({@link setInteractType} 的逆映射):
1109
+ * 当前激活态为 'hand' → 'hand';'move' → 'select';其余态 → undefined。
1110
+ * @returns 当前交互类型;非 hand/move 态返回 undefined
1111
+ */
1112
+ getInteractType(): 'hand' | 'select' | undefined;
1113
+ /**
1114
+ * 销毁实例,释放兼容层额外持有的导出器资源。
1115
+ */
1116
+ dispose(): void;
1117
+ }