@jlceda/pro-api-types 0.2.25 → 0.2.26

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 (2) hide show
  1. package/index.d.ts +400 -42
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -383,6 +383,8 @@ declare global {
383
383
  type: ELIB_SymbolType;
384
384
  /** 描述 */
385
385
  description?: string;
386
+ /** 子部件名称数组 */
387
+ subPartNames: [];
386
388
  }
387
389
  /**
388
390
  * 搜索到的符号属性
@@ -515,6 +517,7 @@ declare global {
515
517
  getRenderImage(source: {
516
518
  symbolUuid: string;
517
519
  libraryUuid: string;
520
+ subPartName?: string;
518
521
  }): Promise<Blob | undefined>;
519
522
  }
520
523
 
@@ -957,7 +960,7 @@ declare global {
957
960
  * @beta
958
961
  * @param libraryUuid - 库 UUID,可以使用 {@link LIB_LibrariesList} 内的接口获取
959
962
  * @param libraryType - 库类型,支持符号和封装
960
- * @param uuid - 符号、封装 UUID
963
+ * @param uuid - 符号、��装 UUID
961
964
  * @param splitScreenId - 分屏 ID,即 {@link DMT_EditorControl.getSplitScreenTree} 方法获取到的 {@link IDMT_EditorSplitScreenItem.id}
962
965
  * @returns 标签页 ID,如若为 `undefined`,则打开文档失败
963
966
  */
@@ -1390,7 +1393,7 @@ declare global {
1390
1393
  * @param projectFriendlyName - 工程友好名称
1391
1394
  * @param projectName - 工程名称,不可重复,仅支持字母 `a-zA-Z`、数字 `0-9`、中划线 `-`,如若不指定,则根据工程友好名称自动生成
1392
1395
  * @param teamUuid - 团队 UUID,如若不指定,则默认为个人;在不存在个人工程的环境下必须指定团队 UUID
1393
- * @param folderUuid - 文件夹 UUID,如若不指定,则为根文��夹
1396
+ * @param folderUuid - 文件夹 UUID,如若不指定,则为根文件夹
1394
1397
  * @param description - 工程描述
1395
1398
  * @param collaborationMode - 工程协作模式,如若团队权限无需工程设置协作模式,则该参数将被忽略
1396
1399
  * @returns 工程 UUID,如若为 `undefined` 则创建失败
@@ -1879,7 +1882,7 @@ declare global {
1879
1882
  * @beta
1880
1883
  * @remarks 如希望清除某些属性,则将其的值设置为 `null`
1881
1884
  * @param cbbUuid - 复用模块 UUID
1882
- * @param libraryUuid - 库 UUID,可以使用 {@link LIB_LibrariesList} 内的接口��取
1885
+ * @param libraryUuid - 库 UUID,可以使用 {@link LIB_LibrariesList} 内的接口获取
1883
1886
  * @param cbbName - 复用模块名称
1884
1887
  * @param classification - 分类
1885
1888
  * @param description - 描述
@@ -2012,7 +2015,7 @@ declare global {
2012
2015
  supplier?: string;
2013
2016
  /** 供应商编号 */
2014
2017
  supplierId?: string;
2015
- /** 其它参数 */
2018
+ /** 其它属性 */
2016
2019
  otherProperty?: {
2017
2020
  [key: string]: boolean | number | string | undefined;
2018
2021
  };
@@ -2039,6 +2042,8 @@ declare global {
2039
2042
  description?: string;
2040
2043
  /** 扩展属性 */
2041
2044
  property: ILIB_DeviceExtendPropertyItem;
2045
+ /** 子部件名称数组 */
2046
+ subPartNames: [];
2042
2047
  }
2043
2048
  /**
2044
2049
  * 搜索到的器件属性
@@ -2168,7 +2173,7 @@ declare global {
2168
2173
  * @deprecated 在 `otherProperty` 中替代
2169
2174
  */
2170
2175
  jlcLibraryCategory?: ELIB_DeviceJlcLibraryCategory;
2171
- /** 其它参数 */
2176
+ /** 其它属性 */
2172
2177
  otherProperty?: {
2173
2178
  [key: string]: boolean | number | string | undefined;
2174
2179
  };
@@ -2213,7 +2218,7 @@ declare global {
2213
2218
  * @param classification - 分类
2214
2219
  * @param association - 关联符号、封装、图像,指定 `symbolType` 则创建新符号,无需新建符号则无需指定 `symbolType`,但请注意,如若不新建符号也不指定符号的关联信息将无法创建器件
2215
2220
  * @param description - 描述
2216
- * @param property - 其它参数,仅 `designator`、`addIntoBom`、`addIntoPcb` 存在默认值
2221
+ * @param property - 其它属性,仅 `designator`、`addIntoBom`、`addIntoPcb` 存在默认值
2217
2222
  * @returns 器件 UUID
2218
2223
  */
2219
2224
  create(libraryUuid: string, deviceName: string, classification?: ILIB_ClassificationIndex | Array<string>, association?: {
@@ -2254,7 +2259,7 @@ declare global {
2254
2259
  * @param classification - 分类
2255
2260
  * @param association - 关联符号、封装、图像
2256
2261
  * @param description - 描述
2257
- * @param property - 其它参数
2262
+ * @param property - 其它属性
2258
2263
  * @returns 操作是否成功
2259
2264
  */
2260
2265
  modify(deviceUuid: string, libraryUuid: string, deviceName?: string, classification?: ILIB_ClassificationIndex | Array<string> | null, association?: {
@@ -2878,7 +2883,7 @@ declare global {
2878
2883
  * 获取工程库的 UUID
2879
2884
  *
2880
2885
  * @public
2881
- * @remarks 在未打开工程的情况下调用将返�� `undefined`
2886
+ * @remarks 在未打开工程的情况下调用将返回 `undefined`
2882
2887
  * @returns 工程库的 UUID
2883
2888
  */
2884
2889
  getProjectLibraryUuid(): Promise<string | undefined>;
@@ -3356,7 +3361,7 @@ declare global {
3356
3361
  * 即 `setCanvasOrigin(0, 0)`;
3357
3362
  *
3358
3363
  * 此处的单位为数据层面单位,在跨度上等同于画布层面的 mil
3359
- * @param offsetX - 画布原点相对于数据原点的 X 坐标偏移
3364
+ * @param offsetX - 画布原点相对于数���原点的 X 坐标偏移
3360
3365
  * @param offsetY - 画布原点相对于数据原点的 Y 坐标偏移
3361
3366
  * @returns 操作是否成功
3362
3367
  */
@@ -4938,6 +4943,36 @@ declare global {
4938
4943
  * @param layers - 导出层,默认则按照嘉立创生产需求导出
4939
4944
  * @param objects - 导出对象,默认则按照嘉立创生产需求导出
4940
4945
  * @returns PCB 制版文件数据
4946
+ * @example
4947
+ * ```javascript
4948
+ * // 导出默认的 Gerber 文件
4949
+ * const gerberFile = await eda.pcb_ManufactureData.getGerberFile('MyBoard_Gerber');
4950
+ * if (gerberFile) {
4951
+ * console.log('Gerber 文件已生成:', gerberFile);
4952
+ * }
4953
+ *
4954
+ * // 导出并保存到本地
4955
+ * const gerberFile = await eda.pcb_ManufactureData.getGerberFile(
4956
+ * 'MyBoard_Gerber',
4957
+ * false,
4958
+ * ESYS_Unit.MILLIMETER,
4959
+ * { integerNumber: 2, decimalNumber: 6 }
4960
+ * );
4961
+ * if (gerberFile) {
4962
+ * await eda.sys_FileSystem.saveFile(gerberFile,'Gerber.zip');
4963
+ * }
4964
+ *
4965
+ * // 自定义导出层和对象
4966
+ * const gerberFile = await eda.pcb_ManufactureData.getGerberFile(
4967
+ * 'Custom_Gerber',
4968
+ * false,
4969
+ * ESYS_Unit.INCH,
4970
+ * { integerNumber: 3, decimalNumber: 5 },
4971
+ * { metallicDrillingInformation: true, nonMetallicDrillingInformation: true, drillTable: false, flyingProbeTestingFile: false },
4972
+ * [{ layerId: 1, isMirror: false }, { layerId: 2, isMirror: false }, { layerId: 11, isMirror: false }],
4973
+ * ['Pad', 'Via', 'Track', 'BoardOutline']
4974
+ * );
4975
+ * ```
4941
4976
  */
4942
4977
  getGerberFile(fileName?: string, colorSilkscreen?: boolean, unit?: ESYS_Unit.MILLIMETER | ESYS_Unit.INCH, digitalFormat?: {
4943
4978
  integerNumber: number;
@@ -4963,8 +4998,40 @@ declare global {
4963
4998
  * @param fileType - 文件类型
4964
4999
  * @param element - 导出对象
4965
5000
  * @param modelMode - 导出模式,`Outfit` = 装配体,`Parts` = 零件
4966
- * @param autoGenerateModels - 是否为未绑定 3D 模型的元件自动生成 3D 模型(根据元件的“高度”属性)
5001
+ * @param autoGenerateModels - 是否为未绑定 3D 模型的元件自动生成 3D 模型(根据元件的"高度"属性)
4967
5002
  * @returns 3D 模型文件数据
5003
+ * @example
5004
+ * ```javascript
5005
+ * // 导出装配体模式的 STEP 文件(包含元件模型)
5006
+ * const stepFile = await eda.pcb_ManufactureData.get3DFile(
5007
+ * 'MyBoard_3D',
5008
+ * 'step',
5009
+ * ['Component Model'],
5010
+ * 'Outfit',
5011
+ * true
5012
+ * );
5013
+ * if (stepFile) {
5014
+ * await eda.sys_FileSystem.saveFile(stepFile);
5015
+ * }
5016
+ *
5017
+ * // 导出包含多种对象的完整 3D 模型
5018
+ * const full3DFile = await eda.pcb_ManufactureData.get3DFile(
5019
+ * 'Complete_3D_Model',
5020
+ * 'step',
5021
+ * ['Component Model', 'Via', 'Silkscreen', 'Wire In Signal Layer'],
5022
+ * 'Outfit',
5023
+ * true
5024
+ * );
5025
+ *
5026
+ * // 导出零件模式 OBJ 文件
5027
+ * const objFile = await eda.pcb_ManufactureData.get3DFile(
5028
+ * 'MyBoard_OBJ',
5029
+ * 'obj',
5030
+ * ['Component Model'],
5031
+ * 'Parts',
5032
+ * false
5033
+ * );
5034
+ * ```
4968
5035
  */
4969
5036
  get3DFile(fileName?: string, fileType?: 'step' | 'obj', element?: Array<'Component Model' | 'Via' | 'Silkscreen' | 'Wire In Signal Layer'>, modelMode?: 'Outfit' | 'Parts', autoGenerateModels?: boolean): Promise<File | undefined>;
4970
5037
  /**
@@ -4975,6 +5042,20 @@ declare global {
4975
5042
  * @param fileName - 文件名
4976
5043
  * @param fileType - 文件类型
4977
5044
  * @returns 3D 外壳文件数据
5045
+ * @example
5046
+ * ```javascript
5047
+ * // 导出 STL 格式 3D 外壳
5048
+ * const stlFile = await eda.pcb_ManufactureData.get3DShellFile('Board_Shell', 'stl');
5049
+ * if (stlFile) {
5050
+ * await eda.sys_FileSystem.saveFile(stlFile);
5051
+ * }
5052
+ *
5053
+ * // 导出 STEP 格式 3D 外壳
5054
+ * const stepShellFile = await eda.pcb_ManufactureData.get3DShellFile('Board_Shell_STEP', 'step');
5055
+ * if (stepShellFile) {
5056
+ * await eda.sys_FileSystem.saveFile(stepShellFile);
5057
+ * }
5058
+ * ```
4978
5059
  */
4979
5060
  get3DShellFile(fileName?: string, fileType?: 'stl' | 'step' | 'obj'): Promise<File | undefined>;
4980
5061
  /**
@@ -4986,6 +5067,19 @@ declare global {
4986
5067
  * @param fileType - 文件类型
4987
5068
  * @param unit - 单位
4988
5069
  * @returns 坐标文件数据
5070
+ * @example
5071
+ * ```javascript
5072
+ * // 导出毫米单位的 Excel 格式坐标文件
5073
+ * const pnpFile = await eda.pcb_ManufactureData.getPickAndPlaceFile(
5074
+ * 'PickAndPlace',
5075
+ * 'xlsx',
5076
+ * ESYS_Unit.MILLIMETER
5077
+ * );
5078
+ * if (pnpFile) {
5079
+ * await eda.sys_FileSystem.saveFile(pnpFile);
5080
+ * }
5081
+ *
5082
+ * ```
4989
5083
  */
4990
5084
  getPickAndPlaceFile(fileName?: string, fileType?: 'xlsx' | 'csv', unit?: ESYS_Unit.MILLIMETER | ESYS_Unit.MIL): Promise<File | undefined>;
4991
5085
  /**
@@ -4994,6 +5088,14 @@ declare global {
4994
5088
  * @beta
4995
5089
  * @param fileName - 文件名
4996
5090
  * @returns 飞针测试文件数据
5091
+ * @example
5092
+ * ```javascript
5093
+ * // 保存飞针测试文件到本地
5094
+ * const flyingProbeFile = await eda.pcb_ManufactureData.getFlyingProbeTestFile('FlyingProbe_Test');
5095
+ * if (flyingProbeFile) {
5096
+ * await eda.sys_FileSystem.saveFile(flyingProbeFile);
5097
+ * }
5098
+ * ```
4997
5099
  */
4998
5100
  getFlyingProbeTestFile(fileName?: string): Promise<File | undefined>;
4999
5101
  /**
@@ -5001,6 +5103,15 @@ declare global {
5001
5103
  *
5002
5104
  * @beta
5003
5105
  * @returns BOM 模板列表
5106
+ * @example
5107
+ * ```javascript
5108
+ * // 获取所有可用的 BOM 模板
5109
+ * const templates = await eda.pcb_ManufactureData.getBomTemplates();
5110
+ * console.log('可用的 BOM 模板:', templates);
5111
+ * templates.forEach((template, index) => {
5112
+ * console.log(`${index + 1}. ${template}`);
5113
+ * });
5114
+ * ```
5004
5115
  */
5005
5116
  getBomTemplates(): Promise<Array<string>>;
5006
5117
  /**
@@ -5010,6 +5121,20 @@ declare global {
5010
5121
  * @param templateFile - BOM 模板文件
5011
5122
  * @param template - BOM 模板名称,如若为 `undefined` 则自动从 `templateFile` 中取值
5012
5123
  * @returns BOM 模板名称
5124
+ * @example
5125
+ * ```javascript
5126
+ * // 从文件选择器读取模板文件
5127
+ * const templateFile = await eda.sys_FileSystem.openReadFileDialog('.xlsx');
5128
+ * if (templateFile) {
5129
+ * const templateName = await eda.pcb_ManufactureData.uploadBomTemplateFile(
5130
+ * templateFile,
5131
+ * 'MyCustomTemplate'
5132
+ * );
5133
+ * if (templateName) {
5134
+ * console.log('模板上传成功:', templateName);
5135
+ * }
5136
+ * }
5137
+ * ```
5013
5138
  */
5014
5139
  uploadBomTemplateFile(templateFile: File, template?: string): Promise<string | undefined>;
5015
5140
  /**
@@ -5018,6 +5143,14 @@ declare global {
5018
5143
  * @beta
5019
5144
  * @param template - BOM 模板名称
5020
5145
  * @returns BOM 模板文件
5146
+ * @example
5147
+ * ```javascript
5148
+ * // 获取指定模板的文件
5149
+ * const templateFile = await eda.pcb_ManufactureData.getBomTemplateFile('MyCustomTemplate');
5150
+ * if (templateFile) {
5151
+ * await eda.sys_FileSystem.saveFile(templateFile);
5152
+ * }
5153
+ * ```
5021
5154
  */
5022
5155
  getBomTemplateFile(template: string): Promise<File | undefined>;
5023
5156
  /**
@@ -5026,6 +5159,16 @@ declare global {
5026
5159
  * @beta
5027
5160
  * @param template - BOM 模板名称
5028
5161
  * @returns 操作是否成功
5162
+ * @example
5163
+ * ```javascript
5164
+ * // 删除指定的 BOM 模板
5165
+ * const success = await eda.pcb_ManufactureData.deleteBomTemplate('MyCustomTemplate');
5166
+ * if (success) {
5167
+ * console.log('BOM 模板删除成功');
5168
+ * } else {
5169
+ * console.log('删除失败,可能是默认模板或模板不存在');
5170
+ * }
5171
+ * ```
5029
5172
  */
5030
5173
  deleteBomTemplate(template: string): Promise<boolean>;
5031
5174
  /**
@@ -5041,6 +5184,41 @@ declare global {
5041
5184
  * @param property - 属性,包含所有需要启用的属性的名称
5042
5185
  * @param columns - 列的属性及排序,`title`、`sort`、`group`、`orderWeight` 不传入则取默认值,`null` 代表 **无** 或 **空**
5043
5186
  * @returns BOM 文件数据
5187
+ * @example
5188
+ * ```javascript
5189
+ * // 使用默认配置导出 BOM
5190
+ * const bomFile = await eda.pcb_ManufactureData.getBomFile('MyBOM', 'xlsx');
5191
+ * if (bomFile) {
5192
+ * await eda.sys_FileSystem.saveFile(bomFile);
5193
+ * }
5194
+ *
5195
+ * // 自定义 BOM 过滤和列配置
5196
+ * const bomFile = await eda.pcb_ManufactureData.getBomFile(
5197
+ * 'Custom_Production_BOM',
5198
+ * 'xlsx',
5199
+ * undefined,
5200
+ * [
5201
+ * { property: 'Add into BOM', includeValue: 'yes' },
5202
+ * { property: 'Convert to PCB', includeValue: 'yes' }
5203
+ * ],
5204
+ * ['No.', 'Quantity', 'Comment'],
5205
+ * ['Name', 'Device', 'Designator', 'Supplier'],
5206
+ * [
5207
+ * { property: 'Designator', title: '位号', sort: 'asc', group: 'No', orderWeight: 10 },
5208
+ * { property: 'Quantity', title: '数量', sort: 'desc', group: 'Yes', orderWeight: 9 }
5209
+ * ]
5210
+ * );
5211
+ *
5212
+ * // 导出 CSV 格式 BOM
5213
+ * const csvBomFile = await eda.pcb_ManufactureData.getBomFile(
5214
+ * 'Simple_BOM',
5215
+ * 'csv',
5216
+ * undefined,
5217
+ * [{ property: 'Add into BOM', includeValue: 'yes' }],
5218
+ * ['No.', 'Quantity'],
5219
+ * ['Designator', 'Footprint', 'Value']
5220
+ * );
5221
+ * ```
5044
5222
  */
5045
5223
  getBomFile(fileName?: string, fileType?: 'xlsx' | 'csv', template?: string, filterOptions?: Array<{
5046
5224
  property: string;
@@ -5054,6 +5232,14 @@ declare global {
5054
5232
  * @param fileName - 文件名
5055
5233
  * @param fileType - 文件类型
5056
5234
  * @returns 测试点报告文件数据
5235
+ * @example
5236
+ * ```javascript
5237
+ * // 保存测试点报告文件到本地
5238
+ * const testPointFile = await eda.pcb_ManufactureData.getTestPointFile('Test_Point_Report', 'xlsx');
5239
+ * if (testPointFile) {
5240
+ * await eda.sys_FileSystem.saveFile(testPointFile);
5241
+ * }
5242
+ * ```
5057
5243
  */
5058
5244
  getTestPointFile(fileName?: string, fileType?: 'xlsx' | 'csv'): Promise<File | undefined>;
5059
5245
  /**
@@ -5064,6 +5250,29 @@ declare global {
5064
5250
  * @param fileName - 文件名
5065
5251
  * @param netlistType - 网表类型
5066
5252
  * @returns 网表文件数据
5253
+ * @example
5254
+ * ```javascript
5255
+ * // 导出嘉立创 EDA 专业版格式网表
5256
+ * const netlistFile = await eda.pcb_ManufactureData.getNetlistFile(
5257
+ * 'MyNetlist',
5258
+ * ESYS_NetlistType.JLCEDA_PRO
5259
+ * );
5260
+ * if (netlistFile) {
5261
+ * await eda.sys_FileSystem.saveFile(netlistFile);
5262
+ * }
5263
+ *
5264
+ * // 导出 Altium Designer 格式
5265
+ * const altiumNetlist = await eda.pcb_ManufactureData.getNetlistFile(
5266
+ * 'Netlist_Altium',
5267
+ * ESYS_NetlistType.ALTIUM_DESIGNER
5268
+ * );
5269
+ *
5270
+ * // 导出 PADS 格式
5271
+ * const padsNetlist = await eda.pcb_ManufactureData.getNetlistFile(
5272
+ * 'Netlist_PADS',
5273
+ * ESYS_NetlistType.PADS
5274
+ * );
5275
+ * ```
5067
5276
  */
5068
5277
  getNetlistFile(fileName?: string, netlistType?: ESYS_NetlistType): Promise<File | undefined>;
5069
5278
  /**
@@ -5093,6 +5302,17 @@ declare global {
5093
5302
  * @param contentConfig - 内容配置
5094
5303
  * @param watermark - 水印
5095
5304
  * @returns PDF 文件数据(或压缩包)
5305
+ * @example
5306
+ * ```javascript
5307
+ * // 导出多页 PDF(包含所有图层)
5308
+ * const pdfFile = await eda.pcb_ManufactureData.getPdfFile(
5309
+ * 'PCB_Documentation',
5310
+ * EPCB_PdfOutputMethod.MULTI_PAGE_PDF
5311
+ * );
5312
+ * if (pdfFile) {
5313
+ * await eda.sys_FileSystem.saveFile(pdfFile);
5314
+ * }
5315
+ * ```
5096
5316
  */
5097
5317
  getPdfFile(fileName?: string, outputMethod?: EPCB_PdfOutputMethod, contentConfig?: {
5098
5318
  displayAttributesAsMenu: boolean;
@@ -5121,6 +5341,13 @@ declare global {
5121
5341
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5122
5342
  * @param fileName - 文件名
5123
5343
  * @returns IPC-D-356A 文件数据
5344
+ * @example
5345
+ * ```javascript
5346
+ * const ipcFile = await eda.pcb_ManufactureData.getIpcD356AFile('IPC_D356A_Test');
5347
+ * if (ipcFile) {
5348
+ * await eda.sys_FileSystem.saveFile(ipcFile);
5349
+ * }
5350
+ * ```
5124
5351
  */
5125
5352
  getIpcD356AFile(fileName?: string): Promise<File | undefined>;
5126
5353
  /**
@@ -5143,6 +5370,23 @@ declare global {
5143
5370
  * @param layers - 导出层,默认则按照嘉立创生产需求导出
5144
5371
  * @param objects - 导出对象,默认则按照嘉立创生产需求导出
5145
5372
  * @returns ODB++ 文件数据
5373
+ * @example
5374
+ * ```javascript
5375
+ * // 导出 ODB++ 文件,自定义单位和选项
5376
+ * const odbFile = await eda.pcb_ManufactureData.getOpenDatabaseDoublePlusFile(
5377
+ * 'MyBoard_ODB',
5378
+ * ESYS_Unit.INCH,
5379
+ * {
5380
+ * metallizedDrilledHoles: true,
5381
+ * nonMetallizedDrilledHoles: true,
5382
+ * drillTable: true,
5383
+ * flyingProbeTestFile: false
5384
+ * }
5385
+ * );
5386
+ * if (odbFile) {
5387
+ * await eda.sys_FileSystem.saveFile(odbFile);
5388
+ * }
5389
+ * ```
5146
5390
  */
5147
5391
  getOpenDatabaseDoublePlusFile(fileName?: string, unit?: ESYS_Unit.INCH, otherData?: {
5148
5392
  metallizedDrilledHoles?: boolean;
@@ -5171,6 +5415,13 @@ declare global {
5171
5415
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5172
5416
  * @param fileName - 文件名
5173
5417
  * @returns 自动布线 DSN 文件数据
5418
+ * @example
5419
+ * ```javascript
5420
+ * const dsnFile = await eda.pcb_ManufactureData.getDsnFile('AutoRoute_DSN');
5421
+ * if (dsnFile) {
5422
+ * await eda.sys_FileSystem.saveFile(dsnFile);
5423
+ * }
5424
+ * ```
5174
5425
  */
5175
5426
  getDsnFile(fileName?: string): Promise<File | undefined>;
5176
5427
  /**
@@ -5180,6 +5431,13 @@ declare global {
5180
5431
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5181
5432
  * @param fileName - 文件名
5182
5433
  * @returns 自动布线 JSON 文件数据
5434
+ * @example
5435
+ * ```javascript
5436
+ * const autoRouteJson = await eda.pcb_ManufactureData.getAutoRouteJsonFile('AutoRoute_Json');
5437
+ * if (autoRouteJson) {
5438
+ * await eda.sys_FileSystem.saveFile(autoRouteJson);
5439
+ * }
5440
+ * ```
5183
5441
  */
5184
5442
  getAutoRouteJsonFile(fileName?: string): Promise<File | undefined>;
5185
5443
  /**
@@ -5189,6 +5447,13 @@ declare global {
5189
5447
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5190
5448
  * @param fileName - 文件名
5191
5449
  * @returns 自动布局 JSON 文件数据
5450
+ * @example
5451
+ * ```javascript
5452
+ * const autoLayoutJson = await eda.pcb_ManufactureData.getAutoLayoutJsonFile('AutoLayout_Json');
5453
+ * if (autoLayoutJson) {
5454
+ * await eda.sys_FileSystem.saveFile(autoLayoutJson);
5455
+ * }
5456
+ * ```
5192
5457
  */
5193
5458
  getAutoLayoutJsonFile(fileName?: string): Promise<File | undefined>;
5194
5459
  /**
@@ -5198,6 +5463,14 @@ declare global {
5198
5463
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5199
5464
  * @param fileName - 文件名
5200
5465
  * @returns Altium Designer 文件数据
5466
+ * @example
5467
+ * ```javascript
5468
+ * //获取 Altium Designer 格式文件
5469
+ * const adFile = await eda.pcb_ManufactureData.getAltiumDesignerFile('Converted_To_AD');
5470
+ * if (adFile) {
5471
+ * await eda.sys_FileSystem.saveFile(adFile);
5472
+ * }
5473
+ * ```
5201
5474
  */
5202
5475
  getAltiumDesignerFile(fileName?: string): Promise<File | undefined>;
5203
5476
  /**
@@ -5207,6 +5480,14 @@ declare global {
5207
5480
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5208
5481
  * @param fileName - 文件名
5209
5482
  * @returns PADS 文件数据
5483
+ * @example
5484
+ * ```javascript
5485
+ * // 获取 PADS 格式文件
5486
+ * const padsFile = await eda.pcb_ManufactureData.getPadsFile('Converted_To_PADS');
5487
+ * if (padsFile) {
5488
+ * await eda.sys_FileSystem.saveFile(padsFile);
5489
+ * }
5490
+ * ```
5210
5491
  */
5211
5492
  getPadsFile(fileName?: string): Promise<File | undefined>;
5212
5493
  /**
@@ -5216,6 +5497,13 @@ declare global {
5216
5497
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5217
5498
  * @param fileName - 文件名
5218
5499
  * @returns PCB 信息文件
5500
+ * @example
5501
+ * ```javascript
5502
+ * const pcbInfoFile = await eda.pcb_ManufactureData.getPcbInfoFile('Board_Information');
5503
+ * if (pcbInfoFile) {
5504
+ * await eda.sys_FileSystem.saveFile(pcbInfoFile);
5505
+ * }
5506
+ * ```
5219
5507
  */
5220
5508
  getPcbInfoFile(fileName?: string): Promise<File | undefined>;
5221
5509
  /**
@@ -5224,6 +5512,13 @@ declare global {
5224
5512
  * @beta
5225
5513
  * @remarks 可以使用 {@link SYS_FileSystem.saveFile} 接口将文件导出到本地文件系统
5226
5514
  * @returns IDX 文件
5515
+ * @example
5516
+ * ```javascript
5517
+ * const idxFile = await eda.pcb_ManufactureData.getIdxFile('Design_Exchange');
5518
+ * if (idxFile) {
5519
+ * await eda.sys_FileSystem.saveFile(idxFile);
5520
+ * }
5521
+ * ```
5227
5522
  */
5228
5523
  getIdxFile(fileName?: string): Promise<File | undefined>;
5229
5524
  /**
@@ -5233,7 +5528,7 @@ declare global {
5233
5528
  * @remarks 本接口暂时只支持交互式检查,入参暂无作用,预留后续开发
5234
5529
  * @param interactive - 是否启用交互式检查
5235
5530
  *
5236
- * 如若启用,则会存在弹窗等待用户进行交互,且无法使用 `ignoreWarning` 参数忽略警告,
5531
+ * 如���启用,则会存在弹窗等待用户进行交互,且无法使用 `ignoreWarning` 参数忽略警告,
5237
5532
  * 即 `ignoreWarning` 参数将被忽略;
5238
5533
  *
5239
5534
  * 如若禁用,则在调用后不会有任何 EDA 内部弹窗,程序执行静默检查,
@@ -5703,7 +5998,7 @@ declare global {
5703
5998
  * 更新网表
5704
5999
  *
5705
6000
  * @public
5706
- * @param type - 网表格式
6001
+ * @param type - ��表格式
5707
6002
  * @param netlist - 网表数据
5708
6003
  */
5709
6004
  setNetlist(type: ESYS_NetlistType | undefined, netlist: string): Promise<boolean>;
@@ -7815,7 +8110,7 @@ declare global {
7815
8110
  * 删除区域
7816
8111
  *
7817
8112
  * @beta
7818
- * @param primitiveIds - 区域的���元 ID 或区域图元对象
8113
+ * @param primitiveIds - 区域的图元 ID 或区域图元对象
7819
8114
  * @returns 删除操作是否成功
7820
8115
  */
7821
8116
  delete(primitiveIds: string | IPCB_PrimitiveRegion | Array<string> | Array<IPCB_PrimitiveRegion>): Promise<boolean>;
@@ -9721,7 +10016,11 @@ declare global {
9721
10016
  create(component: {
9722
10017
  libraryUuid: string;
9723
10018
  uuid: string;
9724
- } | ILIB_DeviceItem, layer: TPCB_LayersOfComponent, x: number, y: number, rotation?: number, primitiveLock?: boolean): Promise<IPCB_PrimitiveComponent | undefined>;
10019
+ } | ILIB_DeviceItem | ILIB_DeviceSearchItem | {
10020
+ libraryType: ELIB_LibraryType.FOOTPRINT;
10021
+ libraryUuid: string;
10022
+ uuid: string;
10023
+ } | ILIB_FootprintItem | ILIB_FootprintSearchItem, layer: TPCB_LayersOfComponent, x: number, y: number, rotation?: number, primitiveLock?: boolean): Promise<IPCB_PrimitiveComponent | undefined>;
9725
10024
  /**
9726
10025
  * 删除器件
9727
10026
  *
@@ -9814,7 +10113,7 @@ declare global {
9814
10113
  /**
9815
10114
  * 使用鼠标放置器件
9816
10115
  *
9817
- * @alpha
10116
+ * @beta
9818
10117
  * @remarks
9819
10118
  * 本接口模拟前端点击放置按钮,指定的器件将绑定到当前鼠标,并在用户后续点击时放置于画布
9820
10119
  *
@@ -9825,14 +10124,34 @@ declare global {
9825
10124
  placeComponentWithMouse(component: {
9826
10125
  libraryUuid: string;
9827
10126
  uuid: string;
9828
- } | ILIB_DeviceItem): Promise<boolean>;
10127
+ } | ILIB_DeviceItem | ILIB_DeviceSearchItem): Promise<boolean>;
10128
+ /**
10129
+ * 使用鼠标放置封装
10130
+ *
10131
+ * @alpha
10132
+ * @remarks
10133
+ * DEFINED since API v0.2.26
10134
+ *
10135
+ * 本接口模拟前端点击放置按钮,指定的封装将绑定到当前鼠标,并在用户后续点击时放置于画布
10136
+ *
10137
+ * 本接口的返回时机并不会等待用户的放置操作,一旦封装被绑定到鼠标,本接口将立即返回 `true` 的结果
10138
+ * @param footprint - 关联库封装
10139
+ * @param properties - 器件属性
10140
+ * @returns 是否找到封装
10141
+ */
10142
+ placeFootprintWithMouse(footprint: {
10143
+ libraryUuid: string;
10144
+ uuid: string;
10145
+ } | ILIB_FootprintItem | ILIB_FootprintSearchItem, properties?: {
10146
+ [key: string]: boolean | number | string | undefined;
10147
+ }): Promise<boolean>;
9829
10148
  /**
9830
10149
  * 获取所有器件的所有属性名称集合
9831
10150
  *
9832
10151
  * @alpha
9833
10152
  * @returns 所有器件的所有属性名称集合
9834
10153
  */
9835
- getAllPropertyNames(): Promise<string[]>;
10154
+ getAllPropertyNames(): Promise<Array<string>>;
9836
10155
  }
9837
10156
  /**
9838
10157
  * 器件图元
@@ -9847,7 +10166,7 @@ declare global {
9847
10166
  /** 图元 ID */
9848
10167
  private primitiveId?;
9849
10168
  /** 关联库器件 */
9850
- private component;
10169
+ private component?;
9851
10170
  /** 关联库封装 */
9852
10171
  private footprint?;
9853
10172
  /** 层 */
@@ -9886,14 +10205,18 @@ declare global {
9886
10205
  private _attributeVisible?;
9887
10206
  /** @internal */
9888
10207
  constructor(component: {
10208
+ libraryType?: ELIB_LibraryType.DEVICE | ELIB_LibraryType.FOOTPRINT;
9889
10209
  libraryUuid: string;
9890
10210
  uuid: string;
10211
+ name?: string;
9891
10212
  }, layer: TPCB_LayersOfComponent, x: number, y: number, rotation?: number, primitiveLock?: boolean, addIntoBom?: boolean, primitiveId?: string, footprint?: {
9892
10213
  libraryUuid: string;
9893
10214
  uuid: string;
10215
+ name?: string;
9894
10216
  }, model3D?: {
9895
10217
  libraryUuid: string;
9896
10218
  uuid: string;
10219
+ name?: string;
9897
10220
  }, designator?: string, pads?: Array<{
9898
10221
  primitiveId: string;
9899
10222
  net: string;
@@ -9931,7 +10254,8 @@ declare global {
9931
10254
  getState_Component(): {
9932
10255
  libraryUuid: string;
9933
10256
  uuid: string;
9934
- };
10257
+ name?: string;
10258
+ } | undefined;
9935
10259
  /**
9936
10260
  * 获取属性状态:关联库封装
9937
10261
  *
@@ -9941,6 +10265,7 @@ declare global {
9941
10265
  getState_Footprint(): {
9942
10266
  libraryUuid: string;
9943
10267
  uuid: string;
10268
+ name?: string;
9944
10269
  } | undefined;
9945
10270
  /**
9946
10271
  * 获取属性状态:层
@@ -9993,6 +10318,7 @@ declare global {
9993
10318
  getState_Model3D(): {
9994
10319
  libraryUuid: string;
9995
10320
  uuid: string;
10321
+ name?: string;
9996
10322
  } | undefined;
9997
10323
  /**
9998
10324
  * 获取属性状态:位号
@@ -10739,7 +11065,7 @@ declare global {
10739
11065
  */
10740
11066
  getState_X(): number;
10741
11067
  /**
10742
- * 获取属性状态:BBox 左上点坐标 Y
11068
+ * ��取属性状态:BBox 左上点坐标 Y
10743
11069
  *
10744
11070
  * @public
10745
11071
  * @returns BBox 左上点坐标 Y
@@ -12909,7 +13235,7 @@ declare global {
12909
13235
  */
12910
13236
  getState_PrimitiveType(): ESCH_PrimitiveType;
12911
13237
  /**
12912
- * 获取属性状态:图元 ID
13238
+ * 获取属性���态:图元 ID
12913
13239
  *
12914
13240
  * @public
12915
13241
  * @returns 图元 ID
@@ -14495,14 +14821,14 @@ declare global {
14495
14821
  placeComponentWithMouse(component: {
14496
14822
  libraryUuid: string;
14497
14823
  uuid: string;
14498
- } | ILIB_DeviceItem, subPartName?: string): Promise<boolean>;
14824
+ } | ILIB_DeviceItem | ILIB_DeviceSearchItem, subPartName?: string): Promise<boolean>;
14499
14825
  /**
14500
14826
  * 获取所有器件的所有属性名称集合
14501
14827
  *
14502
14828
  * @beta
14503
14829
  * @returns 所有器件的所有属性名称集合
14504
14830
  */
14505
- getAllPropertyNames(): Promise<string[]>;
14831
+ getAllPropertyNames(): Promise<Array<string>>;
14506
14832
  /**
14507
14833
  * 到 pro-ui 获取器件的详细信息
14508
14834
  *
@@ -15072,7 +15398,7 @@ declare global {
15072
15398
  *
15073
15399
  * @beta
15074
15400
  * @param component - 关联库器件
15075
- * @param subPartName - 子图块名称
15401
+ * @param subPartName - 子部件名称
15076
15402
  * @param x - 坐标 X
15077
15403
  * @param y - 坐标 Y
15078
15404
  * @param rotation - 旋转角度
@@ -15082,9 +15408,14 @@ declare global {
15082
15408
  * @returns 器件图元对象
15083
15409
  */
15084
15410
  create(component: {
15411
+ libraryType?: ELIB_LibraryType.DEVICE;
15412
+ libraryUuid: string;
15413
+ uuid: string;
15414
+ } | ILIB_DeviceItem | ILIB_DeviceSearchItem | {
15415
+ libraryType: ELIB_LibraryType.SYMBOL;
15085
15416
  libraryUuid: string;
15086
15417
  uuid: string;
15087
- } | ILIB_DeviceItem | ILIB_DeviceSearchItem, x: number, y: number, subPartName?: string, rotation?: number, mirror?: boolean, addIntoBom?: boolean, addIntoPcb?: boolean): Promise<ISCH_PrimitiveComponent | undefined>;
15418
+ } | ILIB_SymbolItem | ILIB_SymbolSearchItem, x: number, y: number, subPartName?: string, rotation?: number, mirror?: boolean, addIntoBom?: boolean, addIntoPcb?: boolean): Promise<ISCH_PrimitiveComponent | undefined>;
15088
15419
  /**
15089
15420
  * 创建网络标识
15090
15421
  *
@@ -15126,7 +15457,7 @@ declare global {
15126
15457
  * 创建复用模块符号
15127
15458
  *
15128
15459
  * @alpha
15129
- * @param cbbSymbol - 关联库复用模块符号
15460
+ * @param cbbSymbol - 关联库复用模块符号,libraryUuid 是 CBB 工程所在库的 UUID,cbbUuid 是 CBB 工程的 UUID,uuid 是 CBB 工程内符号的 UUID,name 是符号的显示名称
15130
15461
  * @param x - 坐标 X
15131
15462
  * @param y - 坐标 Y
15132
15463
  * @param rotation - 旋转角度
@@ -15136,7 +15467,7 @@ declare global {
15136
15467
  createCbbSymbol(cbbSymbol: {
15137
15468
  libraryUuid: string;
15138
15469
  cbbUuid: string;
15139
- uuid: string;
15470
+ uuid?: string;
15140
15471
  }, x: number, y: number, rotation?: number, mirror?: boolean): Promise<ISCH_PrimitiveCbbSymbolComponent | undefined>;
15141
15472
  /**
15142
15473
  * 放置复用模块原理图图页
@@ -15252,19 +15583,41 @@ declare global {
15252
15583
  *
15253
15584
  * 本接口的返回时机并不会等待用户的放置操作,一旦器件被绑定到鼠标,本接口将立即返回 `true` 的结果
15254
15585
  * @param component - 关联库器件
15586
+ * @param subPartName - 子部件名称
15255
15587
  * @returns 是否找到器件
15256
15588
  */
15257
15589
  placeComponentWithMouse(component: {
15258
15590
  libraryUuid: string;
15259
15591
  uuid: string;
15260
- } | ILIB_DeviceItem, subPartName?: string): Promise<boolean>;
15592
+ } | ILIB_DeviceItem | ILIB_DeviceSearchItem, subPartName?: string): Promise<boolean>;
15593
+ /**
15594
+ * 使用鼠标放置符号
15595
+ *
15596
+ * @alpha
15597
+ * @remarks
15598
+ * DEFINED since API v0.2.26
15599
+ *
15600
+ * 本接口模拟前端点击放置按钮,指定的符号将绑定到当前鼠标,并在用户后续点击时放置于画布
15601
+ *
15602
+ * 本接口的返回时机并不会等待用户的放置操作,一旦符号被绑定到鼠标,本接口将立即返回 `true` 的结果
15603
+ * @param symbol - 关联库符号
15604
+ * @param subPartName - 子部件名称
15605
+ * @param properties - 器件属性
15606
+ * @returns 是否找到符号
15607
+ */
15608
+ placeSymbolWithMouse(symbol: {
15609
+ libraryUuid: string;
15610
+ uuid: string;
15611
+ } | ILIB_SymbolItem | ILIB_SymbolSearchItem, subPartName?: string, properties?: {
15612
+ [key: string]: boolean | number | string | undefined;
15613
+ }): Promise<boolean>;
15261
15614
  /**
15262
15615
  * 获取所有器件的所有属性名称集合
15263
15616
  *
15264
15617
  * @alpha
15265
15618
  * @returns 所有器件的所有属性名称集合
15266
15619
  */
15267
- getAllPropertyNames(): Promise<string[]>;
15620
+ getAllPropertyNames(): Promise<Array<string>>;
15268
15621
  /**
15269
15622
  * 到 pro-ui 获取器件的详细信息
15270
15623
  *
@@ -15317,8 +15670,8 @@ declare global {
15317
15670
  /** 器件类型 */
15318
15671
  private componentType;
15319
15672
  /** 关联库器件 */
15320
- private component;
15321
- /** 子图块名称 */
15673
+ private component?;
15674
+ /** 子部件名称 */
15322
15675
  private subPartName?;
15323
15676
  /** Component 属性:是否加入 BOM */
15324
15677
  private addIntoBom?;
@@ -15350,6 +15703,7 @@ declare global {
15350
15703
  * @internal
15351
15704
  */
15352
15705
  constructor(componentType: ESCH_PrimitiveComponentType, component: {
15706
+ libraryType?: ELIB_LibraryType.DEVICE | ELIB_LibraryType.SYMBOL;
15353
15707
  libraryUuid: string;
15354
15708
  uuid: string;
15355
15709
  name?: string;
@@ -15402,7 +15756,7 @@ declare global {
15402
15756
  libraryUuid: string;
15403
15757
  uuid: string;
15404
15758
  name?: string;
15405
- };
15759
+ } | undefined;
15406
15760
  /**
15407
15761
  * 获取属性状态:坐标 X
15408
15762
  *
@@ -15418,10 +15772,10 @@ declare global {
15418
15772
  */
15419
15773
  getState_Y(): number;
15420
15774
  /**
15421
- * 获取属性状态:子图块名称
15775
+ * 获取属性状态:子部件名称
15422
15776
  *
15423
15777
  * @public
15424
- * @returns 子图块名称
15778
+ * @returns 子部件名称
15425
15779
  */
15426
15780
  getState_SubPartName(): string | undefined;
15427
15781
  /**
@@ -15712,10 +16066,10 @@ declare global {
15712
16066
  */
15713
16067
  private setState_Component;
15714
16068
  /**
15715
- * 设置属性状态:子图块名称
16069
+ * 设置属性状态:子部件名称
15716
16070
  *
15717
16071
  * @internal
15718
- * @param subPartName - 子图块名称
16072
+ * @param subPartName - 子部件名称
15719
16073
  * @returns 器件图元对象
15720
16074
  */
15721
16075
  private setState_SubPartName;
@@ -15731,7 +16085,11 @@ declare global {
15731
16085
  *
15732
16086
  */
15733
16087
  private cbb;
15734
- /** 关联复用模块符号,cbbUuid是来源工程的uuid,uuid是来源符号的uuid */
16088
+ /**
16089
+ * 关联复用模块符号
16090
+ *
16091
+ * @remarks libraryUuid 是 CBB 工程所在库的 UUID,cbbUuid 是 CBB 工程的 UUID,uuid 是 CBB 工程内符号的 UUID,name 是符号的显示名称
16092
+ */
15735
16093
  private cbbSymbol;
15736
16094
  /**
15737
16095
  * @internal
@@ -15739,7 +16097,7 @@ declare global {
15739
16097
  constructor(cbbSymbol: {
15740
16098
  libraryUuid: string;
15741
16099
  cbbUuid: string;
15742
- uuid: string;
16100
+ uuid?: string;
15743
16101
  name?: string;
15744
16102
  }, x: number, y: number, rotation?: number, mirror?: boolean, primitiveId?: string, symbol?: {
15745
16103
  libraryUuid: string;
@@ -15772,7 +16130,7 @@ declare global {
15772
16130
  getState_CbbSymbol(): {
15773
16131
  libraryUuid: string;
15774
16132
  cbbUuid: string;
15775
- uuid: string;
16133
+ uuid?: string;
15776
16134
  name?: string;
15777
16135
  };
15778
16136
  /**
@@ -17653,7 +18011,7 @@ declare global {
17653
18011
  */
17654
18012
  listFilesOfFileSystem(folderPath: string, recursive?: boolean): Promise<Array<ISYS_FileSystemFileList>>;
17655
18013
  /**
17656
- * 删除文件系统内的文件
18014
+ * 删除文件系统内���文件
17657
18015
  *
17658
18016
  * @beta
17659
18017
  * @remarks
@@ -18008,7 +18366,7 @@ declare global {
18008
18366
  *
18009
18367
  * 本接口新增的子菜单将默认排列在原菜单的结尾
18010
18368
  *
18011
- * 注意:本接口需要使用者启用扩展的外部交互权限,如若未启用将始��� `throw Error`
18369
+ * 注意:本接口需要使用者启用扩展的外部交互权限,如若未启用将始终 `throw Error`
18012
18370
  *
18013
18371
  * 非公开接口使用提醒:本接口按原样提供,不提供参数的额外文档,参数可能在任何版本出现破坏性更改并不另行通知
18014
18372
  * @param headerMenus - 顶部菜单数据
@@ -19177,7 +19535,7 @@ declare global {
19177
19535
  *
19178
19536
  * @beta
19179
19537
  * @param netlist1 - 网表 1,可以为:①当前工程内的原理图、PCB 的 UUID;②其它工程的工程 UUID 和原理图、PCB UUID;③原理图、PCB 文件数据
19180
- * @param netlist2 - 网表 2,可以为:①当前工程内的原理图、PCB 的 UUID;②其它工程的工程 UUID 和原理图、PCB UUID;③原理图、PCB 文件数据
19538
+ * @param netlist2 - ���表 2,可以为:①当前工程内的原理图、PCB 的 UUID;②其它工程的工程 UUID 和原理图、PCB UUID;③原理图、PCB 文件数据
19181
19539
  * @returns 网表对比结果
19182
19540
  */
19183
19541
  netlistComparison(netlist1: string | {
package/package.json CHANGED
@@ -1 +1 @@
1
- { "name": "@jlceda/pro-api-types", "type": "module", "version": "0.2.25", "description": "嘉立创EDA & EasyEDA 专业版扩展 API 接口类型定义", "typings": "index.d.ts", "author": "JLCEDA <support@lceda.cn>", "license": "Apache-2.0", "homepage": "https://pro.lceda.cn/", "keywords": ["jlceda", "pro-api"], "scripts": { "lint": "eslint", "fix": "eslint --fix", "build": "ts-node ./build/build.ts" }, "devDependencies": { "@antfu/eslint-config": "^5.4.1", "@types/fast-text-encoding": "^1.0.3", "@types/fs-extra": "^11.0.4", "dotenv": "^16.4.7", "eslint": "^9.37.0", "fast-text-encoding": "^1.0.6", "fs-extra": "^11.3.0", "lint-staged": "^16.2.3", "simple-git-hooks": "^2.13.1", "ts-node": "^10.9.2", "typescript": "^5.7.3" }, "simple-git-hooks": { "pre-commit": "npx lint-staged" }, "lint-staged": { "*": "eslint --fix" } }
1
+ { "name": "@jlceda/pro-api-types", "type": "module", "version": "0.2.26", "description": "嘉立创EDA & EasyEDA 专业版扩展 API 接口类型定义", "typings": "index.d.ts", "author": "JLCEDA <support@lceda.cn>", "license": "Apache-2.0", "homepage": "https://pro.lceda.cn/", "keywords": ["jlceda", "pro-api"], "scripts": { "lint": "eslint", "fix": "eslint --fix", "build": "ts-node ./build/build.ts" }, "devDependencies": { "@antfu/eslint-config": "^5.4.1", "@types/fast-text-encoding": "^1.0.3", "@types/fs-extra": "^11.0.4", "dotenv": "^16.4.7", "eslint": "^9.37.0", "fast-text-encoding": "^1.0.6", "fs-extra": "^11.3.0", "lint-staged": "^16.2.3", "simple-git-hooks": "^2.13.1", "ts-node": "^10.9.2", "typescript": "^5.7.3" }, "simple-git-hooks": { "pre-commit": "npx lint-staged" }, "lint-staged": { "*": "eslint --fix" } }