@cocos/cocos-cli-types 0.0.1-alpha.15.1

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.
package/index.d.ts ADDED
@@ -0,0 +1,1436 @@
1
+ /// <reference types="node" />
2
+
3
+ /** 动画剪辑资源的 userData */
4
+ declare interface AnimationClipAssetUserData {
5
+ /** 动画名称 */
6
+ name: string;
7
+ }
8
+
9
+ declare interface AnimationImportSetting {
10
+ /**
11
+ * glTf 中原始动画资源的名称。
12
+ */
13
+ name: string;
14
+
15
+ /**
16
+ * 原始动画的长度,单位为秒。
17
+ */
18
+ duration: number;
19
+
20
+ /**
21
+ * 用户查看、切割原始动画时的 FPS 设定。
22
+ */
23
+ fps: number;
24
+
25
+ /**
26
+ * 对原始动画的划分,由用户配置。
27
+ * 若此资源存在,所有划分出的动画成为 glTf 资源下的独立动画并将被导出;
28
+ * 否则,直接导入原始动画资源。
29
+ */
30
+ splits: Array<{
31
+ /**
32
+ * 以前的 ID。如果存在,优先使用这个 ID 来创建子资源,以防止改名后 UUID 变化。
33
+ */
34
+ previousId?: string;
35
+
36
+ /**
37
+ * 划分出的动画的名称。
38
+ */
39
+ name: string;
40
+
41
+ /**
42
+ * 划分的起始时刻,单位为秒。
43
+ */
44
+ from: number;
45
+
46
+ /**
47
+ * 划分的终止时刻,单位为秒。
48
+ */
49
+ to: number;
50
+
51
+ /**
52
+ * 用户查看划分出的子动画时的 FPS 设定。
53
+ */
54
+ fps?: number;
55
+
56
+ /**
57
+ * 速度。
58
+ */
59
+ speed?: number;
60
+
61
+ /**
62
+ * 动画循环模式。
63
+ */
64
+ wrapMode?: number;
65
+
66
+ /**
67
+ * 额外的动画辅助曲线信息。
68
+ */
69
+ auxiliaryCurves?: Record<
70
+ string,
71
+ {
72
+ /**
73
+ * 序列化后的曲线。
74
+ */
75
+ curve: unknown;
76
+ }
77
+ >;
78
+
79
+ /**
80
+ * 加性动画导入设置。
81
+ */
82
+ additive?: {
83
+ /**
84
+ * 是否将动画导入为加性动画。
85
+ */
86
+ enabled: boolean;
87
+
88
+ /**
89
+ * 参考动画。
90
+ * 若设置,将参考该动画第 0 帧的姿势计算加性动画;
91
+ * 否则,则将参考第动画本身第 0 帧的姿势进行计算。
92
+ */
93
+ refClip?: string;
94
+ };
95
+ }>;
96
+ }
97
+
98
+ /** 所有资源处理器类型的常量数组(用于 Zod enum 和 TypeScript type) */
99
+ declare const ASSET_HANDLER_TYPES: string[];
100
+
101
+ /**
102
+ * 资源数据库启动参数
103
+ */
104
+ declare interface AssetDBOptions {
105
+ name: string;
106
+ target: string;
107
+ library: string;
108
+ temp: string;
109
+ /**
110
+ * 0: 忽略错误
111
+ * 1: 仅仅打印错误
112
+ * 2: 打印错误、警告
113
+ * 3: 打印错误、警告、日志
114
+ * 4: 打印错误、警告、日志、调试信息
115
+ */
116
+ level: LogLevel;
117
+ ignoreFiles: string[];
118
+ globList?: string[];
119
+ readonly: boolean;
120
+ flags?: {
121
+ reimportCheck?: boolean;
122
+ };
123
+ importConcurrency?: number;
124
+ }
125
+
126
+ declare interface AssetDBOptions_2 {
127
+ name: string;
128
+ target: string;
129
+ library: string;
130
+ temp: string;
131
+ interval: number;
132
+ /**
133
+ * 0: 忽略错误
134
+ * 1: 仅仅打印错误
135
+ * 2: 打印错误、警告
136
+ * 3: 打印错误、警告、日志
137
+ * 4: 打印错误、警告、日志、调试信息
138
+ */
139
+ level: number;
140
+ ignoreFiles: string[];
141
+ preImportExtList?: string[];
142
+ readonly: boolean;
143
+ visible: boolean;
144
+ ignoreGlob?: string;
145
+ }
146
+
147
+ /** 资源处理器类型(从常量数组派生) */
148
+ declare type AssetHandlerType = typeof ASSET_HANDLER_TYPES[number] | 'database';
149
+
150
+ declare interface AssetInfo extends IAssetInfo {
151
+ // Asset name
152
+ // 资源名字
153
+ name: string;
154
+ // Asset display name
155
+ // 资源用于显示的名字
156
+ displayName: string;
157
+ // URL
158
+ source: string;
159
+ // loader 加载的层级地址
160
+ path: string;
161
+ // loader 加载地址会去掉扩展名,这个参数不去掉
162
+ url: string;
163
+ // 绝对路径
164
+ file: string;
165
+ // 资源的唯一 ID
166
+ uuid: string;
167
+ // 使用的导入器名字
168
+ importer: string;
169
+ // 类型
170
+ type: IAssetType;
171
+ // 是否是文件夹
172
+ isDirectory: boolean;
173
+ // 导入资源的 map
174
+ library: { [key: string]: string };
175
+ // 子资源 map
176
+ subAssets: { [key: string]: AssetInfo };
177
+ // 是否显示
178
+ visible: boolean;
179
+ // 是否只读
180
+ readonly: boolean;
181
+
182
+ // 虚拟资源可以实例化成实体的话,会带上这个扩展名
183
+ instantiation?: string;
184
+ // 跳转指向资源
185
+ redirect?: IRedirectInfo;
186
+ // 继承类型
187
+ extends?: string[];
188
+ // 是否导入完成
189
+ imported: boolean;
190
+ // 是否导入失败
191
+ invalid: boolean;
192
+ }
193
+
194
+ declare interface AssetOperationOption {
195
+ // 是否强制覆盖已经存在的文件,默认 false,传递后会直接覆盖文件,未传递时有冲突会直接抛异常
196
+ overwrite?: boolean;
197
+ // 是否自动重命名冲突文件,默认 false ,传递后会以内部规则自动重命名冲突文件,新的文件名可以在返回值中获取
198
+ rename?: boolean;
199
+ }
200
+
201
+ declare interface AssetOperationOption {
202
+ // 是否强制覆盖已经存在的文件,默认 false
203
+ overwrite?: boolean;
204
+ // 是否自动重命名冲突文件,默认 false
205
+ rename?: boolean;
206
+ }
207
+
208
+ export declare namespace Assets {
209
+ export {
210
+ init,
211
+ deleteAsset,
212
+ refresh,
213
+ queryAssetInfo,
214
+ queryAssetMeta,
215
+ queryCreateMap,
216
+ queryAssetInfos,
217
+ queryAssetDBInfos,
218
+ createAssetByType,
219
+ createAsset,
220
+ importAsset,
221
+ reimportAsset,
222
+ saveAsset,
223
+ queryUUID,
224
+ queryPath,
225
+ queryUrl,
226
+ queryAssetDependencies,
227
+ queryAssetUsers,
228
+ querySortedPlugins,
229
+ renameAsset,
230
+ moveAsset,
231
+ updateDefaultUserData,
232
+ queryAssetUserDataConfig,
233
+ updateAssetUserData,
234
+ queryAssetConfigMap,
235
+ CreateAssetOptions,
236
+ IAssetConfig,
237
+ IAssetDBInfo,
238
+ ICreateMenuInfo,
239
+ IUerDataConfigItem,
240
+ QueryAssetType,
241
+ IAssetMeta,
242
+ IAssetInfo,
243
+ AssetOperationOption,
244
+ AssetInfo,
245
+ IRedirectInfo,
246
+ QueryAssetsOption,
247
+ CreateAssetByTypeOptions,
248
+ AssetDBOptions_2 as AssetDBOptions,
249
+ ExecuteAssetDBScriptMethodOptions,
250
+ ISupportCreateCCType,
251
+ IAssetType,
252
+ ISupportCreateType,
253
+ AssetHandlerType,
254
+ AssetUserDataMap
255
+ };
256
+ }
257
+
258
+ declare interface AssetUserDataMap {
259
+ 'animation-clip': AnimationClipAssetUserData;
260
+ 'auto-atlas': AutoAtlasAssetUserData;
261
+ 'label-atlas': LabelAtlasAssetUserData;
262
+ 'render-texture': RenderTextureAssetUserData;
263
+ 'directory': DirectoryAssetUserData;
264
+ 'texture-cube': TextureCubeAssetUserData;
265
+ 'erp-texture-cube': TextureCubeAssetUserData;
266
+ 'image': ImageAssetUserData;
267
+ 'sprite-frame': SpriteFrameAssetUserData;
268
+ 'texture': Texture2DAssetUserData;
269
+ 'spine-data': SpineAssetUserData;
270
+ 'javascript': JavaScriptAssetUserData;
271
+ 'gltf-animation': GltfAnimationAssetUserData;
272
+ 'particle': ParticleAssetUserData;
273
+ 'json': JsonAssetUserData;
274
+ 'prefab': PrefabAssetUserData;
275
+ 'scene': PrefabAssetUserData;
276
+ 'effect': EffectAssetUserData;
277
+ 'audio-clip': AudioClipAssetUserData;
278
+ 'bitmap-font': BitmapFontAssetUserData;
279
+ 'gltf-skeleton': GltfSkeletonAssetUserData;
280
+ 'gltf-embeded-image': GltfEmbededImageAssetUserData;
281
+ 'gltf-mesh': IVirtualAssetUserData;
282
+ 'gltf-material': IVirtualAssetUserData;
283
+ 'gltf-scene': IVirtualAssetUserData;
284
+ 'gltf': GlTFUserData;
285
+ 'fbx': GlTFUserData;
286
+ 'sprite-atlas': SpriteAtlasAssetUserData;
287
+ 'rt-sprite-frame': RtSpriteFrameAssetUserData;
288
+ 'sign-image': ImageAssetUserData;
289
+ 'alpha-image': ImageAssetUserData;
290
+
291
+ // 无特定 userData 的资源类型(仅保留 unknown)
292
+ 'unknown': any;
293
+ }
294
+
295
+ /** 音频资源的 userData */
296
+ declare interface AudioClipAssetUserData {
297
+ /** 下载模式:0-Web Audio, 1-DOM Audio */
298
+ downloadMode: number;
299
+ }
300
+
301
+ /** 自动图集资源的 userData */
302
+ declare interface AutoAtlasAssetUserData {
303
+ compressed: boolean;
304
+ dest: any;
305
+ /** 打包图像的尺寸 */
306
+ maxWidth: number;
307
+ maxHeight: number;
308
+ /** 图像的边距 */
309
+ padding: number;
310
+ allowRotation: boolean;
311
+ forceSquared: boolean;
312
+ powerOfTwo: boolean;
313
+ algorithm: string;
314
+ format: string;
315
+ quality: number;
316
+ contourBleed: boolean;
317
+ paddingBleed: boolean;
318
+ filterUnused: boolean;
319
+ removeTextureInBundle: boolean;
320
+ removeImageInBundle: boolean;
321
+ removeSpriteAtlasInBundle: boolean;
322
+ platformSettings: any;
323
+ textureSetting: any;
324
+ }
325
+
326
+ export declare namespace Base {
327
+ export {
328
+ init_2 as init
329
+ };
330
+ }
331
+
332
+ /** 位图字体资源的 userData */
333
+ declare interface BitmapFontAssetUserData {
334
+ /** 字体配置 */
335
+ _fntConfig: any;
336
+ /** 字体大小 */
337
+ fontSize: number;
338
+ /** 纹理 UUID */
339
+ textureUuid: string;
340
+ }
341
+
342
+ declare function close_2(): Promise<void>;
343
+
344
+ export declare namespace Configuration {
345
+ export {
346
+ init_3 as init,
347
+ migrateFromProject,
348
+ reload,
349
+ IConfiguration
350
+ };
351
+ }
352
+
353
+ /**
354
+ * Create Asset // 创建资源
355
+ */
356
+ declare function createAsset(options: CreateAssetOptions): Promise<IAssetInfo>;
357
+
358
+ /**
359
+ * Create Asset By Type // 按类型创建资源
360
+ */
361
+ declare function createAssetByType(ccType: ISupportCreateType, dirOrUrl: string, baseName: string, options?: CreateAssetByTypeOptions): Promise<IAssetInfo>;
362
+
363
+ declare interface CreateAssetByTypeOptions extends AssetOperationOption {
364
+ /**
365
+ * 指定的模板名称,默认为 default
366
+ */
367
+ templateName?: string;
368
+
369
+ /**
370
+ * 资源内容,当 content 与 template 都传递时,优先使用 content 创建文件
371
+ */
372
+ content?: string | Buffer | JSON;
373
+ }
374
+
375
+ declare interface CreateAssetOptions {
376
+ // 资源创建的输出地址,支持绝对路径和 url
377
+ target: string;
378
+
379
+ // 资源文件内容,支持字符串、Buffer、JSON
380
+ content?: string | Buffer | JSON;
381
+ // 资源文件模板地址,例如 db://xxx/ani ,支持 url 与绝对路径
382
+ template?: string;
383
+ // (当 content 与 template 都未传递时,将创建文件夹)
384
+ // (当 content 与 template 都传递时,优先使用 content 创建文件)
385
+
386
+ // 资源处理器名称,决定了此新建资源将由哪个资源处理器处理,未指定时将由 target 的后缀查找处理器
387
+ handler?: string;
388
+ // 指定 uuid ,由于 uuid 也有概率冲突,uuid 冲突时会自动重新分配 uuid
389
+ uuid?: string;
390
+ // 默认 false 不覆盖同名时文件将会重命名指定的 path
391
+ overwrite?: boolean;
392
+ // 是否自动重命名冲突文件,默认 false
393
+ rename?: boolean;
394
+ // 新建资源时指定的一些 userData 默认配置值
395
+ userData?: Record<string, any>;
396
+ // 传递一些自定义配置信息,可以在自定义资源处理器内使用
397
+ customOptions?: Record<string, any>;
398
+ }
399
+
400
+ /**
401
+ * Delete Asset // 删除资源
402
+ */
403
+ declare function deleteAsset(dbPath: string): Promise<IAssetInfo | null>;
404
+
405
+ /** 文件夹资源的 userData */
406
+ declare interface DirectoryAssetUserData {
407
+ /** 是否是资源包 */
408
+ isBundle?: boolean;
409
+ /** 资源包配置 ID */
410
+ bundleConfigID?: string;
411
+ /** 资源包名称 */
412
+ bundleName?: string;
413
+ /** 优先级 */
414
+ priority?: number;
415
+ }
416
+
417
+ /** Effect 着色器资源的 userData */
418
+ declare interface EffectAssetUserData {
419
+ /** 预编译组合 */
420
+ combinations?: any;
421
+ /** 编辑器相关数据 */
422
+ editor?: any;
423
+ }
424
+
425
+ export declare namespace Engine {
426
+ export {
427
+ init_4 as init
428
+ };
429
+ }
430
+
431
+ declare interface ExecuteAssetDBScriptMethodOptions {
432
+ name: string;
433
+ method: string;
434
+ args?: any[];
435
+ }
436
+
437
+ declare interface FileNameCheckConfig {
438
+ // 匹配规则
439
+ regStr: string;
440
+ // 匹配失败时的提示类型
441
+ failedType: 'error' | 'warn' | 'info',
442
+ // 匹配失败时的提示信息,支持 i18n:xxx
443
+ failedInfo: string;
444
+ }
445
+
446
+ declare type Filter = 'none' | 'nearest' | 'linear';
447
+
448
+ declare interface FilterPluginOptions {
449
+ loadPluginInEditor?: boolean;
450
+ loadPluginInWeb?: boolean;
451
+ loadPluginInNative?: boolean;
452
+ loadPluginInMiniGame?: boolean;
453
+ }
454
+
455
+ declare interface FntData {
456
+ commonHeight?: number;
457
+ fontSize?: number;
458
+ atlasName?: string;
459
+ fontDefDictionary?: FontDefDictionary;
460
+ kerningDict?: KerningDict;
461
+ }
462
+
463
+ declare interface FontDef {
464
+ rect: {
465
+ x: number;
466
+ y: number;
467
+ width: number;
468
+ height: number;
469
+ };
470
+ xOffset: number;
471
+ yOffset: number;
472
+ xAdvance: number;
473
+ }
474
+
475
+ declare interface FontDefDictionary {
476
+ [charId: number]: FontDef;
477
+ }
478
+
479
+ /** glTF 动画资源的 userData */
480
+ declare interface GltfAnimationAssetUserData {
481
+ gltfIndex: number;
482
+ events: Array<{
483
+ frame: number;
484
+ func: string;
485
+ params: string[];
486
+ }>;
487
+ editorExtras?: unknown;
488
+ embeddedPlayers?: Array<{
489
+ editorExtras?: unknown;
490
+ begin: number;
491
+ end: number;
492
+ reconciledSpeed: boolean;
493
+ playable:
494
+ | {
495
+ type: 'animation-clip';
496
+ path: string;
497
+ clip: string;
498
+ }
499
+ | {
500
+ type: 'particle-system';
501
+ path: string;
502
+ };
503
+ }>;
504
+ auxiliaryCurves?: Record<string, { curve: any }>;
505
+ wrapMode: number;
506
+ speed?: number;
507
+ sample?: number;
508
+ span?: {
509
+ from: number;
510
+ to: number;
511
+ };
512
+ additive?: any;
513
+ }
514
+
515
+ /** glTF 嵌入图片子资源的 userData */
516
+ declare interface GltfEmbededImageAssetUserData extends IVirtualAssetUserData {
517
+ /** 是否修复 Alpha 透明度瑕疵 */
518
+ fixAlphaTransparencyArtifacts?: boolean;
519
+ }
520
+
521
+ declare type GltfpackOptions = Record<string, any>;
522
+
523
+ /** glTF Skeleton 子资源的 userData */
524
+ declare interface GltfSkeletonAssetUserData extends IVirtualAssetUserData {
525
+ /** 骨骼数量 */
526
+ jointsLength?: number;
527
+ }
528
+
529
+ declare interface GlTFUserData {
530
+ assetFinder?: SerializedAssetFinder;
531
+
532
+ imageMetas: ImageMeta[];
533
+
534
+ // Normal import settings
535
+ // @default required
536
+ normals?: NormalImportSetting;
537
+
538
+ // Tangent import settings;
539
+ // @default required
540
+ tangents?: TangentImportSetting;
541
+
542
+ /**
543
+ * Controls how to import morph normals.
544
+ * @default Exclude.
545
+ */
546
+ morphNormals?: NormalImportSetting.exclude | NormalImportSetting.optional;
547
+
548
+ // Whether to extract material assets out of embedded (sub)assets,
549
+ // so that the assets become editable.
550
+ // @default false
551
+ dumpMaterials?: boolean;
552
+
553
+ // only for chat avatar
554
+ redirectMaterialMap?: Record<string, string>;
555
+
556
+ // The directory to dump the materials.
557
+ // Default to a direct sub-folder prefixed with 'Materials_' under current path.
558
+ materialDumpDir?: string;
559
+
560
+ /**
561
+ * Whether to use vertex colors(if valid) in material.
562
+ * @default false
563
+ */
564
+ useVertexColors?: boolean;
565
+
566
+ /**
567
+ * Whether to enable depth-write if the material specify the `BLEND` mode.
568
+ * See https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#alpha-coverage
569
+ * @default false
570
+ */
571
+ depthWriteInAlphaModeBlend?: boolean;
572
+
573
+ // @default true
574
+ skipValidation?: boolean;
575
+
576
+ /**
577
+ * 整个数组由导入器创建。`name` 和 `duration` 也都由导入器写入修改,外部不允许修改。
578
+ * `splits` 是允许用户配置的。
579
+ */
580
+ animationImportSettings?: AnimationImportSetting[];
581
+
582
+ /**
583
+ * 是否将所有动画挂载到生成的预制体上。
584
+ * @default false
585
+ */
586
+ mountAllAnimationsOnPrefab?: boolean;
587
+
588
+ /**
589
+ * 使用旧的 FBX 导入器。(在非 FBX 导入器上是 `undefined`)
590
+ */
591
+ legacyFbxImporter?: boolean;
592
+
593
+ /**
594
+ * 禁用 Mesh 分割,默认勾选
595
+ */
596
+ disableMeshSplit?: boolean;
597
+
598
+ /**
599
+ * 允许数据访问。
600
+ */
601
+ allowMeshDataAccess?: boolean;
602
+
603
+ /**
604
+ * 是否添加填充顶点色
605
+ * @default false
606
+ */
607
+ addVertexColor?: boolean;
608
+
609
+ /**
610
+ * 若开启并且模型场景顶部仅有一个节点,那么以该节点作为根节点转换为 Prefab。
611
+ * 否则,以场景为根节点转换为 Prefab。见 cocos/cocos-engine#11858 。
612
+ */
613
+ promoteSingleRootNode?: boolean;
614
+ /*
615
+ * 若开启则自动生成 Lightmap UV,并将 UV 写入第二个通道(若第二个通道有 UV , 则该 UV 会被覆盖)
616
+ * 否则,使用默认 UV 。
617
+ */
618
+ generateLightmapUVNode?: boolean;
619
+
620
+ /**
621
+ * 关于 FBX 的配置。仅当 `legacyFbxImporter === false` 时有效。
622
+ */
623
+ fbx?: IFbxSetting;
624
+
625
+ /**
626
+ * 减面配置
627
+ */
628
+ meshOptimizer?: MeshOptimizerOption;
629
+
630
+ /**
631
+ * mesh 优化配置
632
+ */
633
+ meshOptimize?: MeshOptimizeOptions;
634
+
635
+ /**
636
+ * 是否开启 mesh 减面
637
+ */
638
+ meshSimplify?: MeshSimplifyOptions;
639
+
640
+ /**
641
+ * MeshCluster Options
642
+ */
643
+ meshCluster?: MeshClusterOptions;
644
+
645
+ /**
646
+ * Mesh compression options
647
+ */
648
+ meshCompress?: MeshCompressOptions;
649
+
650
+ lods?: {
651
+ // 是否开启 LODS
652
+ enable: boolean;
653
+ // fbx 是否自带 LOD
654
+ hasBuiltinLOD: boolean;
655
+ // fbx 各层级 lod 的配置
656
+ options: LODsOption[];
657
+ };
658
+ }
659
+
660
+ declare interface IAssetConfig {
661
+ displayName?: string;
662
+ description?: string;
663
+ docURL?: string;
664
+ userDataConfig?: Record<string, IUerDataConfigItem>;
665
+ iconInfo?: ThumbnailInfo;
666
+ }
667
+
668
+ declare interface IAssetDBInfo extends AssetDBOptions {
669
+ // 当前数据库的启动状态
670
+ state: 'none' | 'start' | 'startup' | 'refresh'; // 是否已启动
671
+
672
+ // 数据库是否可见
673
+ visible: boolean;
674
+
675
+ // 提前预导入的资源后缀,将会在 afterPreStart 之前完成预导入的资源
676
+ preImportExtList: string[];
677
+ }
678
+
679
+ declare interface IAssetInfo {
680
+ name: string; // 资源名字
681
+ source: string; // url 地址
682
+ loadUrl: string; // loader 加载的层级地址
683
+ url: string; // loader 加载地址会去掉扩展名,这个参数不去掉
684
+ file: string; // 绝对路径
685
+ uuid: string; // 资源的唯一 ID
686
+ importer: AssetHandlerType; // 使用的导入器名字
687
+ imported: boolean; // 是否结束导入过程
688
+ invalid: boolean; // 是否导入成功
689
+ type: IAssetType; // 类型
690
+ isDirectory: boolean; // 是否是文件夹
691
+ library: { [key: string]: string }; // 导入资源的 map
692
+
693
+ // dataKeys 作用范围
694
+ isBundle?: boolean; // 是否是文件夹
695
+ displayName?: string; // 资源用于显示的名字
696
+ readonly?: boolean; // 是否只读
697
+ visible?: boolean; // 是否显示
698
+ subAssets?: { [key: string]: IAssetInfo }; // 子资源 map
699
+ // 虚拟资源可以实例化成实体的话,会带上这个扩展名
700
+ instantiation?: string;
701
+ redirect?: IRedirectInfo; // 跳转指向资源
702
+ meta?: IAssetMeta,
703
+ parent?: {
704
+ source: string;
705
+ library: { [key: string]: string };
706
+ uuid: string;
707
+ };
708
+ extends?: string[]; // 资源的继承链信息
709
+ mtime?: number; // 资源文件的 mtime
710
+ depends?: string[]; // 依赖的资源 uuid 信息
711
+ dependeds?: string[]; // 被依赖的资源 uuid 信息
712
+ }
713
+
714
+ declare interface IAssetMeta<T extends ISupportCreateType | 'unknown' = 'unknown'> {
715
+ ver: string;
716
+ importer: AssetHandlerType;
717
+ imported: boolean;
718
+ uuid: string;
719
+ files: string[];
720
+ subMetas: {
721
+ [index: string]: IAssetMeta<'unknown'>;
722
+ };
723
+ userData: AssetUserDataMap[T extends keyof AssetUserDataMap ? T : 'unknown'];
724
+ displayName?: string;
725
+ id?: string;
726
+ name?: string;
727
+ }
728
+
729
+ declare type IAssetType =
730
+ | ISupportCreateCCType
731
+ | 'cc.Asset' // 基础资源类型(instantiation-asset)
732
+ | 'cce.Database' // 数据库资源
733
+ | 'cce.EffectHeader' // 着色器头文件
734
+ | 'cc.VideoClip' // 视频剪辑
735
+ | 'cc.TiledMapAsset' // 瓦片地图
736
+ | 'cc.TTFFont' // TTF 字体
737
+ | 'cc.Texture2D' // 2D 纹理
738
+ | 'cc.SpriteFrame' // 精灵帧(sprite-frame、rt-sprite-frame)
739
+ | 'cc.ImageAsset' // 图片资源(image、gltf/image、image/alpha、image/sign、texture-cube-face)
740
+ | 'cc.TextAsset' // 文本资源
741
+ | 'cc.JsonAsset' // JSON 资源
742
+ | 'cc.AudioClip' // 音频剪辑
743
+ | 'cc.BitmapFont' // 位图字体
744
+ | 'cc.BufferAsset' // 缓冲区资源
745
+ | 'cc.ParticleAsset' // 粒子资源
746
+ | 'cc.RenderPipeline' // 渲染管线
747
+ | 'cc.Skeleton' // 骨骼(gltf/skeleton、instantiation-asset/skeleton)
748
+ | 'cc.Mesh' // 网格(gltf/mesh、instantiation-asset/mesh)
749
+ | 'sp.SkeletonData' // Spine 骨骼数据
750
+ | 'dragonBones.DragonBonesAsset' // DragonBones 资源
751
+ | 'dragonBones.DragonBonesAtlasAsset' // DragonBones 图集资源
752
+ | 'RenderStage' // 渲染阶段
753
+ | 'RenderFlow';
754
+
755
+ /**
756
+ * 配置的格式
757
+ */
758
+ declare interface IConfiguration {
759
+ /**
760
+ * 其他配置
761
+ */
762
+ [key: string]: any;
763
+ }
764
+
765
+ declare interface ICreateMenuInfo {
766
+ // 新建菜单名称,支持 i18n:xxx
767
+ label: string;
768
+ // 模板名称,默认为 default ,作为模板选择的唯一标识符
769
+ name: string;
770
+ // 创建的默认文件名称带后缀,具体实际上是为 assets 面板提供的数据,assets 面板新建时,需要先让用户填写清楚命名最后才创建
771
+ fullFileName: string;
772
+
773
+ // 资源文件内容,支持字符串、Buffer、JSON
774
+ content?: string | Buffer | JSON;
775
+ // 资源文件模板地址,例如 db://xxx/ani ,支持 url 与绝对路径
776
+ template?: string;
777
+ // (当 content 与 template 都未传递时,将创建文件夹)
778
+ // (当 content 与 template 都传递时,优先使用 content 创建文件)
779
+
780
+ // 创建类型的 handler 名称,默认为当前处理器名称
781
+ handler?: string;
782
+
783
+ // 创建子菜单
784
+ submenu?: ICreateMenuInfo[];
785
+ // 分组名称
786
+ group?: string;
787
+
788
+ // 资源创建时的名称校验规则
789
+ fileNameCheckConfigs?: FileNameCheckConfig[];
790
+ }
791
+
792
+ declare interface IFbxSetting {
793
+ /**
794
+ * https://github.com/cocos-creator/FBX-glTF-conv/pull/26
795
+ */
796
+ unitConversion?: 'geometry-level' | 'hierarchy-level' | 'disabled';
797
+
798
+ /**
799
+ * 动画烘焙速率。单位为 FPS。
800
+ * 一般来说有以下几种 FPS 选项。
801
+ * - NTSC video 30/60
802
+ * - PAL video 25
803
+ * - Film 24
804
+ * 见 https://knowledge.autodesk.com/support/3ds-max/learn-explore/caas/CloudHelp/cloudhelp/2020/ENU/3DSMax-Reference/files/GUID-92B75FD6-C112-44D6-AB89-DB50D11AE0DE-htm.html 。
805
+ * 为了以后的拓展性,我们目前仅支持用户从这几种选项中选择。
806
+ * @default 24
807
+ */
808
+ animationBakeRate?: 0 | 24 | 25 | 30 | 60;
809
+
810
+ /**
811
+ * 在导出动画时,是否优先使用 FBX 内记录的时间范围。
812
+ * @default true
813
+ */
814
+ preferLocalTimeSpan?: boolean;
815
+
816
+ /**
817
+ * 是否为导入的材质匹配DCC的光照模型.
818
+ * 在导入时,若此字段为 `undefined` 时,该字段将被初始化为当前配置的"是否开启智能材质转换".
819
+ */
820
+ smartMaterialEnabled?: boolean;
821
+
822
+ /**
823
+ * 匹配 DCC 原始模型名称。
824
+ */
825
+ matchMeshNames?: boolean;
826
+ }
827
+
828
+ /** 图片资源的 userData */
829
+ declare interface ImageAssetUserData {
830
+ /** 图片类型 */
831
+ type: ImageImportType;
832
+ /** 垂直翻转 */
833
+ flipVertical?: boolean;
834
+ /** 消除透明伪影 */
835
+ fixAlphaTransparencyArtifacts?: boolean;
836
+ /** 是否为 RGBE */
837
+ isRGBE?: boolean;
838
+ /** 这个图片是不是拥有 alpha 通道 */
839
+ hasAlpha?: boolean;
840
+ /** 重定向的 uuid */
841
+ redirect?: string;
842
+ visible?: boolean;
843
+ /** 是否翻转绿通道 */
844
+ flipGreenChannel?: boolean;
845
+
846
+ /**
847
+ * 部分资源导入后可能产生多张图像资源
848
+ */
849
+ sign?: string;
850
+ alpha?: string;
851
+ }
852
+
853
+ declare type ImageImportType = 'raw' | 'texture' | 'normal map' | 'sprite-frame' | 'texture cube';
854
+
855
+ declare interface ImageMeta {
856
+ /**
857
+ * 图片名字。
858
+ */
859
+ name?: string;
860
+
861
+ /**
862
+ * 模型文件中该图片的 URI,可能是以下形式:
863
+ * - Database URL,这种路径的图片存在项目目录中;
864
+ * - uuid URI,这种路径的图片已经作为子资源导入,路径代表子资源的 uuid。
865
+ * 如果未定义,表示此图片未指定源或指定的源无法解析。
866
+ */
867
+ uri?: string;
868
+
869
+ /**
870
+ * 用户设置的图片对象。
871
+ * 3.8.0 以前使用路径,3.8.0 之后使用 UUID。
872
+ */
873
+ remap?: string;
874
+ }
875
+
876
+ /**
877
+ * Import Asset // 导入资源
878
+ */
879
+ declare function importAsset(source: string, target: string, options?: AssetOperationOption): Promise<IAssetInfo[]>;
880
+
881
+ declare function init(): Promise<void>;
882
+
883
+ declare function init_2(projectPath: string): Promise<void>;
884
+
885
+ declare function init_3(projectPath: string): Promise<void>;
886
+
887
+ declare function init_4(projectPath: string): Promise<void>;
888
+
889
+ declare function init_5(projectPath: string): Promise<void>;
890
+
891
+ declare function init_6(projectPath: string): Promise<void>;
892
+
893
+ declare interface IPluginScriptInfo extends PluginScriptInfo {
894
+ url: string;
895
+ }
896
+
897
+ declare interface IRedirectInfo {
898
+ // 跳转资源的类型
899
+ type: string;
900
+ // 跳转资源的 uuid
901
+ uuid: string;
902
+ }
903
+
904
+ declare type ISupportCreateCCType =
905
+ | 'cc.AnimationClip' // 动画剪辑
906
+ | 'cc.Script' // 脚本(TypeScript/JavaScript)
907
+ | 'cc.SpriteAtlas' // 精灵图集(自动图集)
908
+ | 'cc.EffectAsset' // 着色器效果
909
+ | 'cc.SceneAsset' // 场景
910
+ | 'cc.Prefab' // 预制体
911
+ | 'cc.Material' // 材质
912
+ | 'cc.TextureCube' // 立方体贴图
913
+ | 'cc.TerrainAsset' // 地形
914
+ | 'cc.PhysicsMaterial' // 物理材质
915
+ | 'cc.LabelAtlas' // 标签图集
916
+ | 'cc.RenderTexture' // 渲染纹理
917
+ | 'cc.AnimationGraph' // 动画图
918
+ | 'cc.AnimationMask' // 动画遮罩
919
+ | 'cc.AnimationGraphVariant';
920
+
921
+ /** 支持创建的资源类型(从常量数组派生) */
922
+ declare type ISupportCreateType = typeof SUPPORT_CREATE_TYPES[number];
923
+
924
+ declare interface IUerDataConfigItem {
925
+ key?: string; // 唯一标识符
926
+ // 配置显示的名字,如果需要翻译,则传入 i18n:${key}
927
+ label?: string;
928
+ // 设置的简单说明
929
+ description?: string;
930
+
931
+ // 默认值
932
+ default?: any;
933
+ // 配置的类型
934
+ type?: 'array' | 'object';
935
+ itemConfigs?: IUerDataConfigItem[] | Record<string, IUerDataConfigItem>;
936
+ render?: {
937
+ ui: string;
938
+ attributes?: Record<string, string | boolean | number>;
939
+ items?: Array<{
940
+ label: string;
941
+ value: string;
942
+ }>;
943
+ };
944
+ }
945
+
946
+ /** glTF 虚拟子资源的通用 userData */
947
+ declare interface IVirtualAssetUserData {
948
+ /** 在 glTF 文件中的索引 */
949
+ gltfIndex?: number;
950
+ /** mesh 资源的面数 */
951
+ triangleCount?: number;
952
+ /** mesh 所在 lod 层级 */
953
+ lodLevel?: number;
954
+ /** 根据 lod 配置自动生成 */
955
+ lodOptions?: {
956
+ /** 自动生成的 mesh 占原 mesh 的百分比 */
957
+ faceCount: number;
958
+ };
959
+ [key: string]: any;
960
+ }
961
+
962
+ /** JavaScript 资源的 userData */
963
+ declare type JavaScriptAssetUserData = ScriptModuleUserData | PluginScriptUserData;
964
+
965
+ /** JSON 资源的 userData */
966
+ declare interface JsonAssetUserData {
967
+ /** 是否启用 JSON5 解析 */
968
+ json5?: boolean;
969
+ }
970
+
971
+ declare interface KerningDict {
972
+ [key: number]: number;
973
+ }
974
+
975
+ /** 标签图集资源的 userData */
976
+ declare interface LabelAtlasAssetUserData {
977
+ itemWidth: number;
978
+ itemHeight: number;
979
+ startChar: string;
980
+ fontSize: number;
981
+ spriteFrameUuid: string;
982
+ _fntConfig: FntData;
983
+ }
984
+
985
+ declare interface LODsOption {
986
+ // 屏占比
987
+ screenRatio: number;
988
+ // 和 lod0 的减面比
989
+ faceCount: number;
990
+ }
991
+
992
+ declare const enum LogLevel {
993
+ NONE = 0,
994
+ Error = 1,
995
+ WARN = 2,
996
+ LOG = 3,
997
+ DEBUG = 4
998
+ }
999
+
1000
+ declare interface MeshClusterOptions {
1001
+ enable: boolean;
1002
+ coneCluster?: boolean;
1003
+ }
1004
+
1005
+ declare interface MeshCompressOptions {
1006
+ enable: boolean;
1007
+ encode?: boolean;
1008
+ compress?: boolean;
1009
+ quantize?: boolean;
1010
+ }
1011
+
1012
+ declare interface MeshOptimizeOptions {
1013
+ enable: boolean;
1014
+ vertexCache?: boolean;
1015
+ vertexFetch?: boolean;
1016
+ overdraw?: boolean;
1017
+ }
1018
+
1019
+ declare interface MeshOptimizerOption {
1020
+ // 是否启用此功能
1021
+ enable: boolean;
1022
+ // 减面算法,默认 simplify
1023
+ algorithm?: 'gltfpack' | 'simplify';
1024
+ simplifyOptions?: SimplifyOptions;
1025
+ // 已废弃,仅做简单记录
1026
+ gltfpackOptions?: GltfpackOptions;
1027
+ }
1028
+
1029
+ declare interface MeshSimplifyOptions {
1030
+ enable: boolean;
1031
+ targetRatio?: number;
1032
+ autoErrorRate?: boolean;
1033
+ errorRate?: number;
1034
+ lockBoundary?: boolean;
1035
+ }
1036
+
1037
+ declare function migrateFromProject(): Promise<IConfiguration>;
1038
+
1039
+ /**
1040
+ * Move Asset // 移动资源
1041
+ */
1042
+ declare function moveAsset(source: string, target: string, options?: AssetOperationOption): Promise<any>;
1043
+
1044
+ declare enum NormalImportSetting {
1045
+ /**
1046
+ * 如果模型文件中包含法线信息则导出法线,否则不导出法线。
1047
+ */
1048
+ optional = 0,
1049
+ /**
1050
+ * 不在导出的网格中包含法线信息。
1051
+ */
1052
+ exclude = 1,
1053
+ /**
1054
+ * 如果模型文件中包含法线信息则导出法线,否则重新计算并导出法线。
1055
+ */
1056
+ require = 2,
1057
+ /**
1058
+ * 不管模型文件中是否包含法线信息,直接重新计算并导出法线。
1059
+ */
1060
+ recalculate = 3
1061
+ }
1062
+
1063
+ declare function open_2(projectPath: string): Promise<void>;
1064
+
1065
+ /** 粒子资源的 userData */
1066
+ declare interface ParticleAssetUserData {
1067
+ totalParticles: number;
1068
+ life: number;
1069
+ lifeVar: number;
1070
+ emissionRate: number;
1071
+ duration: number;
1072
+ srcBlendFactor: number;
1073
+ dstBlendFactor: number;
1074
+ startColor: any;
1075
+ startColorVar: any;
1076
+ endColor: any;
1077
+ endColorVar: any;
1078
+ startSize: number;
1079
+ startSizeVar: number;
1080
+ endSize: number;
1081
+ endSizeVar: number;
1082
+ positionType: number;
1083
+ sourcePos: any;
1084
+ posVar: any;
1085
+ angle: number;
1086
+ angleVar: number;
1087
+ startSpin: number;
1088
+ startSpinVar: number;
1089
+ endSpin: number;
1090
+ endSpinVar: number;
1091
+ emitterMode: number;
1092
+ gravity: any;
1093
+ speed: number;
1094
+ speedVar: number;
1095
+ radialAccel: number;
1096
+ radialAccelVar: number;
1097
+ tangentialAccel: number;
1098
+ tangentialAccelVar: number;
1099
+ rotationIsDir: boolean;
1100
+ startRadius: number;
1101
+ startRadiusVar: number;
1102
+ endRadius: number;
1103
+ endRadiusVar: number;
1104
+ rotatePerS: number;
1105
+ rotatePerSVar: number;
1106
+ spriteFrameUuid: string;
1107
+ }
1108
+
1109
+ declare interface PluginScriptInfo {
1110
+ /**
1111
+ * 脚本文件。
1112
+ */
1113
+ file: string;
1114
+ uuid: string;
1115
+ }
1116
+
1117
+ /** JavaScript 插件脚本的 userData */
1118
+ declare interface PluginScriptUserData {
1119
+ isPlugin: true;
1120
+ /** 界面没有开放给用户。默认开启 */
1121
+ experimentalHideCommonJs?: boolean;
1122
+ /** 界面没有开放给用户。默认开启 */
1123
+ experimentalHideAmd?: boolean;
1124
+ /** 仅当 executionScope 为 enclosed 时有效。指定了要模拟的全局变量 */
1125
+ simulateGlobals?: string[];
1126
+ /** 执行作用域 */
1127
+ executionScope?: 'enclosed' | 'global';
1128
+ /** 插件执行时机 */
1129
+ loadPluginInEditor?: boolean;
1130
+ loadPluginInWeb?: boolean;
1131
+ loadPluginInMiniGame?: boolean;
1132
+ loadPluginInNative?: boolean;
1133
+ }
1134
+
1135
+ /** 场景/预制体资源的 userData */
1136
+ declare interface PrefabAssetUserData {
1137
+ /** 是否为持久节点 */
1138
+ persistent?: boolean;
1139
+ /** 同步节点名称 */
1140
+ syncNodeName?: string;
1141
+ }
1142
+
1143
+ export declare namespace Project {
1144
+ export {
1145
+ init_5 as init,
1146
+ open_2 as open,
1147
+ close_2 as close
1148
+ };
1149
+ }
1150
+
1151
+ /**
1152
+ * Query Asset Config Map // 查询资源配置映射表
1153
+ */
1154
+ declare function queryAssetConfigMap(): Promise<Record<string, IAssetConfig>>;
1155
+
1156
+ /**
1157
+ * Query All Asset Database Info // 查询所有资源数据库信息
1158
+ */
1159
+ declare function queryAssetDBInfos(): Promise<Record<string, IAssetDBInfo>>;
1160
+
1161
+ /**
1162
+ * Query Asset Dependencies // 查询资源依赖
1163
+ */
1164
+ declare function queryAssetDependencies(uuidOrUrl: string, type?: QueryAssetType): Promise<string[]>;
1165
+
1166
+ /**
1167
+ * Query Asset Info // 查询资源信息
1168
+ */
1169
+ declare function queryAssetInfo(urlOrUUIDOrPath: string, dataKeys?: string[] | undefined): Promise<IAssetInfo | null>;
1170
+
1171
+ /**
1172
+ * Batch Query Asset Info // 批量查询资源信息
1173
+ */
1174
+ declare function queryAssetInfos(options?: QueryAssetsOption): Promise<IAssetInfo[]>;
1175
+
1176
+ /**
1177
+ * Query Asset Metadata // 查询资源元数据
1178
+ */
1179
+ declare function queryAssetMeta(urlOrUUIDOrPath: string): Promise<IAssetMeta<'unknown'> | null>;
1180
+
1181
+ declare interface QueryAssetsOption {
1182
+ ccType?: string | string[], // 'cc.ImageAsset' 这类,多个用数组
1183
+ isBundle?: boolean, // 筛选 asset bundle 信息,搜索子包只能与 pattern 选项共存
1184
+ importer?: string | string[], // 导入名称,多个用数组
1185
+ pattern?: string, // 路径匹配,globs 格式
1186
+ extname?: string | string[], // 扩展名匹配,多个用数组
1187
+
1188
+ // 筛选一些符合 userData 配置的资源
1189
+ userData?: Record<string, boolean | string | number>;
1190
+
1191
+ /**
1192
+ * @deprecated use ccType instead
1193
+ */
1194
+ type?: string;
1195
+ }
1196
+
1197
+ declare type QueryAssetType = 'asset' | 'script' | 'all';
1198
+
1199
+ /**
1200
+ * Query Asset User Data Config // 查询资源用户数据配置
1201
+ */
1202
+ declare function queryAssetUserDataConfig(urlOrUuidOrPath: string): Promise<false | Record<string, IUerDataConfigItem> | undefined>;
1203
+
1204
+ /**
1205
+ * Query Asset Users // 查询资源使用者
1206
+ */
1207
+ declare function queryAssetUsers(uuidOrUrl: string, type?: QueryAssetType): Promise<string[]>;
1208
+
1209
+ /**
1210
+ * Query Creatable Asset Map // 查询可创建资源映射表
1211
+ */
1212
+ declare function queryCreateMap(): Promise<ICreateMenuInfo[]>;
1213
+
1214
+ /**
1215
+ * Query Asset Path // 查询资源路径
1216
+ */
1217
+ declare function queryPath(urlOrUuid: string): Promise<string>;
1218
+
1219
+ /**
1220
+ * Query Sorted Plugin Scripts // 查询排序后的插件脚本
1221
+ */
1222
+ declare function querySortedPlugins(filterOptions?: FilterPluginOptions): Promise<IPluginScriptInfo[]>;
1223
+
1224
+ /**
1225
+ * Query Asset URL // 查询资源 URL
1226
+ */
1227
+ declare function queryUrl(uuidOrPath: string): Promise<string>;
1228
+
1229
+ /**
1230
+ * Query Asset UUID // 查询资源 UUID
1231
+ */
1232
+ declare function queryUUID(urlOrPath: string): Promise<string | null>;
1233
+
1234
+ /**
1235
+ * Refresh Asset Directory // 刷新资源目录
1236
+ */
1237
+ declare function refresh(dir: string): Promise<number>;
1238
+
1239
+ /**
1240
+ * Reimport Asset // 重新导入资源
1241
+ */
1242
+ declare function reimportAsset(pathOrUrlOrUUID: string): Promise<IAssetInfo>;
1243
+
1244
+ declare function reload(): Promise<void>;
1245
+
1246
+ /**
1247
+ * Rename Asset // 重命名资源
1248
+ */
1249
+ declare function renameAsset(source: string, target: string, options?: AssetOperationOption): Promise<any>;
1250
+
1251
+ /** 渲染纹理资源的 userData */
1252
+ declare interface RenderTextureAssetUserData extends TextureBaseAssetUserData {
1253
+ width: number;
1254
+ height: number;
1255
+ }
1256
+
1257
+ /** 渲染纹理精灵帧的 userData */
1258
+ declare interface RtSpriteFrameAssetUserData {
1259
+ /** 图片 UUID 或数据库 URI */
1260
+ imageUuidOrDatabaseUri: string;
1261
+ /** 宽度 */
1262
+ width?: number;
1263
+ /** 高度 */
1264
+ height?: number;
1265
+ }
1266
+
1267
+ /**
1268
+ * Save Asset // 保存资源
1269
+ */
1270
+ declare function saveAsset(pathOrUrlOrUUID: string, data: string | Buffer): Promise<IAssetInfo>;
1271
+
1272
+ export declare namespace Scripting {
1273
+ export {
1274
+ init_6 as init
1275
+ };
1276
+ }
1277
+
1278
+ /** JavaScript 脚本模块的 userData */
1279
+ declare interface ScriptModuleUserData {
1280
+ isPlugin: false;
1281
+ }
1282
+
1283
+ declare interface SerializedAssetFinder {
1284
+ meshes?: Array<string | null>;
1285
+ animations?: Array<string | null>;
1286
+ skeletons?: Array<string | null>;
1287
+ textures?: Array<string | null>;
1288
+ materials?: Array<string | null>;
1289
+ scenes?: Array<string | null>;
1290
+ }
1291
+
1292
+ declare interface SimplifyOptions {
1293
+ // 压缩比例
1294
+ targetRatio?: number;
1295
+ // 防止破面
1296
+ enableSmartLink?: boolean;
1297
+ // 误差距离
1298
+ agressiveness?: number;
1299
+ // 计算迭代次数
1300
+ maxIterationCount?: number;
1301
+ }
1302
+
1303
+ /** Spine 资源的 userData */
1304
+ declare interface SpineAssetUserData {
1305
+ /** 图集资源的 UUID */
1306
+ atlasUuid: string;
1307
+ }
1308
+
1309
+ /** 精灵图集资源的 userData */
1310
+ declare interface SpriteAtlasAssetUserData {
1311
+ /** 图集纹理名称 */
1312
+ atlasTextureName: string;
1313
+ /** 纹理 UUID */
1314
+ textureUuid: string | null;
1315
+ /** 精灵帧列表 */
1316
+ frames: SpriteFrameAssetUserData[];
1317
+ /** 资源 UUID */
1318
+ uuid: string;
1319
+ /** 格式版本 */
1320
+ format: number;
1321
+ }
1322
+
1323
+ declare interface SpriteFrameAssetUserData extends SpriteFrameBaseAssetUserData {
1324
+ isUuid?: boolean;
1325
+ imageUuidOrDatabaseUri: string;
1326
+ }
1327
+
1328
+ declare interface SpriteFrameBaseAssetUserData {
1329
+ trimType?: string;
1330
+ trimThreshold: number;
1331
+ rotated: boolean;
1332
+ offsetX: number;
1333
+ offsetY: number;
1334
+ trimX: number;
1335
+ trimY: number;
1336
+ width: number;
1337
+ height: number;
1338
+ rawWidth: number;
1339
+ rawHeight: number;
1340
+ borderTop: number;
1341
+ borderBottom: number;
1342
+ borderLeft: number;
1343
+ borderRight: number;
1344
+ packable?: boolean;
1345
+ pixelsToUnit: number;
1346
+ pivotX: number;
1347
+ pivotY: number;
1348
+ meshType: number;
1349
+ vertices: SpriteFrameVertices;
1350
+ }
1351
+
1352
+ declare interface SpriteFrameVertices {
1353
+ rawPosition: number[];
1354
+ indexes: number[];
1355
+ uv: number[];
1356
+ nuv: number[];
1357
+ triangles?: number[];
1358
+ minPos: number[];
1359
+ maxPos: number[];
1360
+ }
1361
+
1362
+ /** 支持创建的资源类型常量数组(用于 Zod enum 和 TypeScript type) */
1363
+ declare const SUPPORT_CREATE_TYPES: readonly ['animation-clip', 'typescript', 'auto-atlas', 'effect', 'scene', 'prefab', 'material', 'terrain', 'physics-material', 'label-atlas', 'render-texture', 'directory', 'effect-header'];
1364
+
1365
+ declare enum TangentImportSetting {
1366
+ /**
1367
+ * 不在导出的网格中包含正切信息。
1368
+ */
1369
+ exclude = 0,
1370
+ /**
1371
+ * 如果模型文件中包含正切信息则导出正切,否则不导出正切。
1372
+ */
1373
+ optional = 1,
1374
+ /**
1375
+ * 如果模型文件中包含正切信息则导出正切,否则若纹理坐标存在则重新计算并导出正切。
1376
+ */
1377
+ require = 2,
1378
+ /**
1379
+ * 不管模型文件中是否包含正切信息,直接重新计算并导出正切。
1380
+ */
1381
+ recalculate = 3
1382
+ }
1383
+
1384
+ declare interface Texture2DAssetUserData extends TextureBaseAssetUserData {
1385
+ isUuid?: boolean;
1386
+ imageUuidOrDatabaseUri?: string;
1387
+ }
1388
+
1389
+ declare interface TextureBaseAssetUserData {
1390
+ wrapModeS: WrapMode;
1391
+ wrapModeT: WrapMode;
1392
+ minfilter: Filter;
1393
+ magfilter: Filter;
1394
+ mipfilter: Filter;
1395
+ anisotropy: number;
1396
+ }
1397
+
1398
+ declare interface TextureCubeAssetUserData extends TextureBaseAssetUserData {
1399
+ imageDatabaseUri?: string;
1400
+ isRGBE: boolean;
1401
+
1402
+ mipBakeMode: number;
1403
+ /**
1404
+ * `0` 意味着默认。见 https://github.com/cocos-creator/3d-tasks/issues/2253
1405
+ */
1406
+ faceSize?: number;
1407
+ // 符号资源 uuid
1408
+ sign?: string;
1409
+
1410
+ // 六个面的 UUID
1411
+ front?: string;
1412
+ back?: string;
1413
+ left?: string;
1414
+ right?: string;
1415
+ top?: string;
1416
+ bottom?: string;
1417
+ }
1418
+
1419
+ declare interface ThumbnailInfo {
1420
+ type: 'icon' | 'image',
1421
+ value: string; // 具体 icon 名字或者 image 路径,image 路径支持绝对路径、 db:// 、 project:// 、和 packages:// 下的路径
1422
+ }
1423
+
1424
+ /**
1425
+ * Update Asset User Data // 更新资源用户数据
1426
+ */
1427
+ declare function updateAssetUserData(urlOrUuidOrPath: string, path: string, value: any): Promise<any>;
1428
+
1429
+ /**
1430
+ * Update Default User Data // 更新默认用户数据
1431
+ */
1432
+ declare function updateDefaultUserData(handler: string, path: string, value: any): Promise<void>;
1433
+
1434
+ declare type WrapMode = 'repeat' | 'clamp-to-edge' | 'mirrored-repeat';
1435
+
1436
+ export { };