@ignos/api-client 20250612.0.11891 → 20250619.0.11933

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.
@@ -1206,6 +1206,8 @@ export interface ICncSetupClient {
1206
1206
  deleteCncMachineToolImage(machineId: string, id: number, filename: string): Promise<void>;
1207
1207
  importOperationWithTools(request: ImportOperationWithTool): Promise<void>;
1208
1208
  copyTool(command: CopyCncTool): Promise<CncToolDto>;
1209
+ getKeepSettings(): Promise<KeepSettingsDto>;
1210
+ updateKeepSettings(request: UpdateKeepSettings): Promise<KeepSettingsDto>;
1209
1211
  }
1210
1212
  export declare class CncSetupClient extends AuthorizedApiBase implements ICncSetupClient {
1211
1213
  private http;
@@ -1320,6 +1322,10 @@ export declare class CncSetupClient extends AuthorizedApiBase implements ICncSet
1320
1322
  protected processImportOperationWithTools(response: Response): Promise<void>;
1321
1323
  copyTool(command: CopyCncTool): Promise<CncToolDto>;
1322
1324
  protected processCopyTool(response: Response): Promise<CncToolDto>;
1325
+ getKeepSettings(): Promise<KeepSettingsDto>;
1326
+ protected processGetKeepSettings(response: Response): Promise<KeepSettingsDto>;
1327
+ updateKeepSettings(request: UpdateKeepSettings): Promise<KeepSettingsDto>;
1328
+ protected processUpdateKeepSettings(response: Response): Promise<KeepSettingsDto>;
1323
1329
  }
1324
1330
  export interface ICncSetupFixturesClient {
1325
1331
  listFixtures(request: ListFixtures): Promise<FixtureListDto>;
@@ -8238,6 +8244,36 @@ export interface ICopyCncTool {
8238
8244
  originType: ToolOriginType;
8239
8245
  }
8240
8246
  export type ToolOriginType = "Operation" | "Machine";
8247
+ export declare class KeepSettingsDto implements IKeepSettingsDto {
8248
+ autoApproveFixtures?: boolean;
8249
+ created: Date;
8250
+ createdBy: string;
8251
+ createdById: string;
8252
+ updatedBy?: string | null;
8253
+ updatedById?: string | null;
8254
+ constructor(data?: IKeepSettingsDto);
8255
+ init(_data?: any): void;
8256
+ static fromJS(data: any): KeepSettingsDto;
8257
+ toJSON(data?: any): any;
8258
+ }
8259
+ export interface IKeepSettingsDto {
8260
+ autoApproveFixtures?: boolean;
8261
+ created: Date;
8262
+ createdBy: string;
8263
+ createdById: string;
8264
+ updatedBy?: string | null;
8265
+ updatedById?: string | null;
8266
+ }
8267
+ export declare class UpdateKeepSettings implements IUpdateKeepSettings {
8268
+ autoApproveFixtures: boolean;
8269
+ constructor(data?: IUpdateKeepSettings);
8270
+ init(_data?: any): void;
8271
+ static fromJS(data: any): UpdateKeepSettings;
8272
+ toJSON(data?: any): any;
8273
+ }
8274
+ export interface IUpdateKeepSettings {
8275
+ autoApproveFixtures: boolean;
8276
+ }
8241
8277
  export declare class FixtureListDto implements IFixtureListDto {
8242
8278
  results: FixtureDto[];
8243
8279
  continuationToken?: string | null;
@@ -8449,13 +8485,11 @@ export type FixtureDecimalFilterCriteriaDto = "Equals" | "NotEquals" | "GreaterT
8449
8485
  export declare class FixtureCreateDto implements IFixtureCreateDto {
8450
8486
  name?: string | null;
8451
8487
  fixtureGroupId?: string | null;
8452
- deleted?: boolean;
8453
- approved?: boolean;
8454
8488
  drawing?: string | null;
8455
8489
  drawingRev?: string | null;
8456
8490
  sourceMachineId?: string | null;
8457
8491
  location?: string | null;
8458
- type?: FixtureTypeDto;
8492
+ type: FixtureTypeDto;
8459
8493
  interface?: string | null;
8460
8494
  diameter?: number | null;
8461
8495
  outerDiameter?: number | null;
@@ -8474,13 +8508,11 @@ export declare class FixtureCreateDto implements IFixtureCreateDto {
8474
8508
  export interface IFixtureCreateDto {
8475
8509
  name?: string | null;
8476
8510
  fixtureGroupId?: string | null;
8477
- deleted?: boolean;
8478
- approved?: boolean;
8479
8511
  drawing?: string | null;
8480
8512
  drawingRev?: string | null;
8481
8513
  sourceMachineId?: string | null;
8482
8514
  location?: string | null;
8483
- type?: FixtureTypeDto;
8515
+ type: FixtureTypeDto;
8484
8516
  interface?: string | null;
8485
8517
  diameter?: number | null;
8486
8518
  outerDiameter?: number | null;
@@ -8502,7 +8534,7 @@ export declare class FixtureUpdateDto implements IFixtureUpdateDto {
8502
8534
  drawingRev?: string | null;
8503
8535
  sourceMachineId?: string | null;
8504
8536
  location?: string | null;
8505
- type?: FixtureTypeDto;
8537
+ type: FixtureTypeDto;
8506
8538
  interface?: string | null;
8507
8539
  diameter?: number | null;
8508
8540
  outerDiameter?: number | null;
@@ -8528,7 +8560,7 @@ export interface IFixtureUpdateDto {
8528
8560
  drawingRev?: string | null;
8529
8561
  sourceMachineId?: string | null;
8530
8562
  location?: string | null;
8531
- type?: FixtureTypeDto;
8563
+ type: FixtureTypeDto;
8532
8564
  interface?: string | null;
8533
8565
  diameter?: number | null;
8534
8566
  outerDiameter?: number | null;
@@ -11193,6 +11193,83 @@ export class CncSetupClient extends AuthorizedApiBase {
11193
11193
  }
11194
11194
  return Promise.resolve(null);
11195
11195
  }
11196
+ getKeepSettings() {
11197
+ let url_ = this.baseUrl + "/cncsetup/settings";
11198
+ url_ = url_.replace(/[?&]$/, "");
11199
+ let options_ = {
11200
+ method: "GET",
11201
+ headers: {
11202
+ "Accept": "application/json"
11203
+ }
11204
+ };
11205
+ return this.transformOptions(options_).then(transformedOptions_ => {
11206
+ return this.http.fetch(url_, transformedOptions_);
11207
+ }).then((_response) => {
11208
+ return this.processGetKeepSettings(_response);
11209
+ });
11210
+ }
11211
+ processGetKeepSettings(response) {
11212
+ const status = response.status;
11213
+ let _headers = {};
11214
+ if (response.headers && response.headers.forEach) {
11215
+ response.headers.forEach((v, k) => _headers[k] = v);
11216
+ }
11217
+ ;
11218
+ if (status === 200) {
11219
+ return response.text().then((_responseText) => {
11220
+ let result200 = null;
11221
+ let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
11222
+ result200 = KeepSettingsDto.fromJS(resultData200);
11223
+ return result200;
11224
+ });
11225
+ }
11226
+ else if (status !== 200 && status !== 204) {
11227
+ return response.text().then((_responseText) => {
11228
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
11229
+ });
11230
+ }
11231
+ return Promise.resolve(null);
11232
+ }
11233
+ updateKeepSettings(request) {
11234
+ let url_ = this.baseUrl + "/cncsetup/settings";
11235
+ url_ = url_.replace(/[?&]$/, "");
11236
+ const content_ = JSON.stringify(request);
11237
+ let options_ = {
11238
+ body: content_,
11239
+ method: "POST",
11240
+ headers: {
11241
+ "Content-Type": "application/json",
11242
+ "Accept": "application/json"
11243
+ }
11244
+ };
11245
+ return this.transformOptions(options_).then(transformedOptions_ => {
11246
+ return this.http.fetch(url_, transformedOptions_);
11247
+ }).then((_response) => {
11248
+ return this.processUpdateKeepSettings(_response);
11249
+ });
11250
+ }
11251
+ processUpdateKeepSettings(response) {
11252
+ const status = response.status;
11253
+ let _headers = {};
11254
+ if (response.headers && response.headers.forEach) {
11255
+ response.headers.forEach((v, k) => _headers[k] = v);
11256
+ }
11257
+ ;
11258
+ if (status === 200) {
11259
+ return response.text().then((_responseText) => {
11260
+ let result200 = null;
11261
+ let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
11262
+ result200 = KeepSettingsDto.fromJS(resultData200);
11263
+ return result200;
11264
+ });
11265
+ }
11266
+ else if (status !== 200 && status !== 204) {
11267
+ return response.text().then((_responseText) => {
11268
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
11269
+ });
11270
+ }
11271
+ return Promise.resolve(null);
11272
+ }
11196
11273
  }
11197
11274
  export class CncSetupFixturesClient extends AuthorizedApiBase {
11198
11275
  constructor(configuration, baseUrl, http) {
@@ -33739,6 +33816,68 @@ export class CopyCncTool {
33739
33816
  return data;
33740
33817
  }
33741
33818
  }
33819
+ export class KeepSettingsDto {
33820
+ constructor(data) {
33821
+ if (data) {
33822
+ for (var property in data) {
33823
+ if (data.hasOwnProperty(property))
33824
+ this[property] = data[property];
33825
+ }
33826
+ }
33827
+ }
33828
+ init(_data) {
33829
+ if (_data) {
33830
+ this.autoApproveFixtures = _data["autoApproveFixtures"];
33831
+ this.created = _data["created"] ? new Date(_data["created"].toString()) : undefined;
33832
+ this.createdBy = _data["createdBy"];
33833
+ this.createdById = _data["createdById"];
33834
+ this.updatedBy = _data["updatedBy"];
33835
+ this.updatedById = _data["updatedById"];
33836
+ }
33837
+ }
33838
+ static fromJS(data) {
33839
+ data = typeof data === 'object' ? data : {};
33840
+ let result = new KeepSettingsDto();
33841
+ result.init(data);
33842
+ return result;
33843
+ }
33844
+ toJSON(data) {
33845
+ data = typeof data === 'object' ? data : {};
33846
+ data["autoApproveFixtures"] = this.autoApproveFixtures;
33847
+ data["created"] = this.created ? this.created.toISOString() : undefined;
33848
+ data["createdBy"] = this.createdBy;
33849
+ data["createdById"] = this.createdById;
33850
+ data["updatedBy"] = this.updatedBy;
33851
+ data["updatedById"] = this.updatedById;
33852
+ return data;
33853
+ }
33854
+ }
33855
+ export class UpdateKeepSettings {
33856
+ constructor(data) {
33857
+ if (data) {
33858
+ for (var property in data) {
33859
+ if (data.hasOwnProperty(property))
33860
+ this[property] = data[property];
33861
+ }
33862
+ }
33863
+ }
33864
+ init(_data) {
33865
+ if (_data) {
33866
+ this.autoApproveFixtures = _data["autoApproveFixtures"];
33867
+ }
33868
+ }
33869
+ static fromJS(data) {
33870
+ data = typeof data === 'object' ? data : {};
33871
+ let result = new UpdateKeepSettings();
33872
+ result.init(data);
33873
+ return result;
33874
+ }
33875
+ toJSON(data) {
33876
+ data = typeof data === 'object' ? data : {};
33877
+ data["autoApproveFixtures"] = this.autoApproveFixtures;
33878
+ return data;
33879
+ }
33880
+ }
33742
33881
  export class FixtureListDto {
33743
33882
  constructor(data) {
33744
33883
  if (data) {
@@ -34137,8 +34276,6 @@ export class FixtureCreateDto {
34137
34276
  if (_data) {
34138
34277
  this.name = _data["name"];
34139
34278
  this.fixtureGroupId = _data["fixtureGroupId"];
34140
- this.deleted = _data["deleted"];
34141
- this.approved = _data["approved"];
34142
34279
  this.drawing = _data["drawing"];
34143
34280
  this.drawingRev = _data["drawingRev"];
34144
34281
  this.sourceMachineId = _data["sourceMachineId"];
@@ -34166,8 +34303,6 @@ export class FixtureCreateDto {
34166
34303
  data = typeof data === 'object' ? data : {};
34167
34304
  data["name"] = this.name;
34168
34305
  data["fixtureGroupId"] = this.fixtureGroupId;
34169
- data["deleted"] = this.deleted;
34170
- data["approved"] = this.approved;
34171
34306
  data["drawing"] = this.drawing;
34172
34307
  data["drawingRev"] = this.drawingRev;
34173
34308
  data["sourceMachineId"] = this.sourceMachineId;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ignos/api-client",
3
- "version": "20250612.0.11891",
3
+ "version": "20250619.0.11933",
4
4
  "description": "IGNOS API Client",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
@@ -9711,6 +9711,10 @@ export interface ICncSetupClient {
9711
9711
  importOperationWithTools(request: ImportOperationWithTool): Promise<void>;
9712
9712
 
9713
9713
  copyTool(command: CopyCncTool): Promise<CncToolDto>;
9714
+
9715
+ getKeepSettings(): Promise<KeepSettingsDto>;
9716
+
9717
+ updateKeepSettings(request: UpdateKeepSettings): Promise<KeepSettingsDto>;
9714
9718
  }
9715
9719
 
9716
9720
  export class CncSetupClient extends AuthorizedApiBase implements ICncSetupClient {
@@ -11929,6 +11933,82 @@ export class CncSetupClient extends AuthorizedApiBase implements ICncSetupClient
11929
11933
  }
11930
11934
  return Promise.resolve<CncToolDto>(null as any);
11931
11935
  }
11936
+
11937
+ getKeepSettings(): Promise<KeepSettingsDto> {
11938
+ let url_ = this.baseUrl + "/cncsetup/settings";
11939
+ url_ = url_.replace(/[?&]$/, "");
11940
+
11941
+ let options_: RequestInit = {
11942
+ method: "GET",
11943
+ headers: {
11944
+ "Accept": "application/json"
11945
+ }
11946
+ };
11947
+
11948
+ return this.transformOptions(options_).then(transformedOptions_ => {
11949
+ return this.http.fetch(url_, transformedOptions_);
11950
+ }).then((_response: Response) => {
11951
+ return this.processGetKeepSettings(_response);
11952
+ });
11953
+ }
11954
+
11955
+ protected processGetKeepSettings(response: Response): Promise<KeepSettingsDto> {
11956
+ const status = response.status;
11957
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
11958
+ if (status === 200) {
11959
+ return response.text().then((_responseText) => {
11960
+ let result200: any = null;
11961
+ let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
11962
+ result200 = KeepSettingsDto.fromJS(resultData200);
11963
+ return result200;
11964
+ });
11965
+ } else if (status !== 200 && status !== 204) {
11966
+ return response.text().then((_responseText) => {
11967
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
11968
+ });
11969
+ }
11970
+ return Promise.resolve<KeepSettingsDto>(null as any);
11971
+ }
11972
+
11973
+ updateKeepSettings(request: UpdateKeepSettings): Promise<KeepSettingsDto> {
11974
+ let url_ = this.baseUrl + "/cncsetup/settings";
11975
+ url_ = url_.replace(/[?&]$/, "");
11976
+
11977
+ const content_ = JSON.stringify(request);
11978
+
11979
+ let options_: RequestInit = {
11980
+ body: content_,
11981
+ method: "POST",
11982
+ headers: {
11983
+ "Content-Type": "application/json",
11984
+ "Accept": "application/json"
11985
+ }
11986
+ };
11987
+
11988
+ return this.transformOptions(options_).then(transformedOptions_ => {
11989
+ return this.http.fetch(url_, transformedOptions_);
11990
+ }).then((_response: Response) => {
11991
+ return this.processUpdateKeepSettings(_response);
11992
+ });
11993
+ }
11994
+
11995
+ protected processUpdateKeepSettings(response: Response): Promise<KeepSettingsDto> {
11996
+ const status = response.status;
11997
+ let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
11998
+ if (status === 200) {
11999
+ return response.text().then((_responseText) => {
12000
+ let result200: any = null;
12001
+ let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
12002
+ result200 = KeepSettingsDto.fromJS(resultData200);
12003
+ return result200;
12004
+ });
12005
+ } else if (status !== 200 && status !== 204) {
12006
+ return response.text().then((_responseText) => {
12007
+ return throwException("An unexpected server error occurred.", status, _responseText, _headers);
12008
+ });
12009
+ }
12010
+ return Promise.resolve<KeepSettingsDto>(null as any);
12011
+ }
11932
12012
  }
11933
12013
 
11934
12014
  export interface ICncSetupFixturesClient {
@@ -40823,6 +40903,98 @@ export interface ICopyCncTool {
40823
40903
 
40824
40904
  export type ToolOriginType = "Operation" | "Machine";
40825
40905
 
40906
+ export class KeepSettingsDto implements IKeepSettingsDto {
40907
+ autoApproveFixtures?: boolean;
40908
+ created!: Date;
40909
+ createdBy!: string;
40910
+ createdById!: string;
40911
+ updatedBy?: string | null;
40912
+ updatedById?: string | null;
40913
+
40914
+ constructor(data?: IKeepSettingsDto) {
40915
+ if (data) {
40916
+ for (var property in data) {
40917
+ if (data.hasOwnProperty(property))
40918
+ (<any>this)[property] = (<any>data)[property];
40919
+ }
40920
+ }
40921
+ }
40922
+
40923
+ init(_data?: any) {
40924
+ if (_data) {
40925
+ this.autoApproveFixtures = _data["autoApproveFixtures"];
40926
+ this.created = _data["created"] ? new Date(_data["created"].toString()) : <any>undefined;
40927
+ this.createdBy = _data["createdBy"];
40928
+ this.createdById = _data["createdById"];
40929
+ this.updatedBy = _data["updatedBy"];
40930
+ this.updatedById = _data["updatedById"];
40931
+ }
40932
+ }
40933
+
40934
+ static fromJS(data: any): KeepSettingsDto {
40935
+ data = typeof data === 'object' ? data : {};
40936
+ let result = new KeepSettingsDto();
40937
+ result.init(data);
40938
+ return result;
40939
+ }
40940
+
40941
+ toJSON(data?: any) {
40942
+ data = typeof data === 'object' ? data : {};
40943
+ data["autoApproveFixtures"] = this.autoApproveFixtures;
40944
+ data["created"] = this.created ? this.created.toISOString() : <any>undefined;
40945
+ data["createdBy"] = this.createdBy;
40946
+ data["createdById"] = this.createdById;
40947
+ data["updatedBy"] = this.updatedBy;
40948
+ data["updatedById"] = this.updatedById;
40949
+ return data;
40950
+ }
40951
+ }
40952
+
40953
+ export interface IKeepSettingsDto {
40954
+ autoApproveFixtures?: boolean;
40955
+ created: Date;
40956
+ createdBy: string;
40957
+ createdById: string;
40958
+ updatedBy?: string | null;
40959
+ updatedById?: string | null;
40960
+ }
40961
+
40962
+ export class UpdateKeepSettings implements IUpdateKeepSettings {
40963
+ autoApproveFixtures!: boolean;
40964
+
40965
+ constructor(data?: IUpdateKeepSettings) {
40966
+ if (data) {
40967
+ for (var property in data) {
40968
+ if (data.hasOwnProperty(property))
40969
+ (<any>this)[property] = (<any>data)[property];
40970
+ }
40971
+ }
40972
+ }
40973
+
40974
+ init(_data?: any) {
40975
+ if (_data) {
40976
+ this.autoApproveFixtures = _data["autoApproveFixtures"];
40977
+ }
40978
+ }
40979
+
40980
+ static fromJS(data: any): UpdateKeepSettings {
40981
+ data = typeof data === 'object' ? data : {};
40982
+ let result = new UpdateKeepSettings();
40983
+ result.init(data);
40984
+ return result;
40985
+ }
40986
+
40987
+ toJSON(data?: any) {
40988
+ data = typeof data === 'object' ? data : {};
40989
+ data["autoApproveFixtures"] = this.autoApproveFixtures;
40990
+ return data;
40991
+ }
40992
+ }
40993
+
40994
+ export interface IUpdateKeepSettings {
40995
+ autoApproveFixtures: boolean;
40996
+ }
40997
+
40826
40998
  export class FixtureListDto implements IFixtureListDto {
40827
40999
  results!: FixtureDto[];
40828
41000
  continuationToken?: string | null;
@@ -41425,13 +41597,11 @@ export type FixtureDecimalFilterCriteriaDto = "Equals" | "NotEquals" | "GreaterT
41425
41597
  export class FixtureCreateDto implements IFixtureCreateDto {
41426
41598
  name?: string | null;
41427
41599
  fixtureGroupId?: string | null;
41428
- deleted?: boolean;
41429
- approved?: boolean;
41430
41600
  drawing?: string | null;
41431
41601
  drawingRev?: string | null;
41432
41602
  sourceMachineId?: string | null;
41433
41603
  location?: string | null;
41434
- type?: FixtureTypeDto;
41604
+ type!: FixtureTypeDto;
41435
41605
  interface?: string | null;
41436
41606
  diameter?: number | null;
41437
41607
  outerDiameter?: number | null;
@@ -41456,8 +41626,6 @@ export class FixtureCreateDto implements IFixtureCreateDto {
41456
41626
  if (_data) {
41457
41627
  this.name = _data["name"];
41458
41628
  this.fixtureGroupId = _data["fixtureGroupId"];
41459
- this.deleted = _data["deleted"];
41460
- this.approved = _data["approved"];
41461
41629
  this.drawing = _data["drawing"];
41462
41630
  this.drawingRev = _data["drawingRev"];
41463
41631
  this.sourceMachineId = _data["sourceMachineId"];
@@ -41487,8 +41655,6 @@ export class FixtureCreateDto implements IFixtureCreateDto {
41487
41655
  data = typeof data === 'object' ? data : {};
41488
41656
  data["name"] = this.name;
41489
41657
  data["fixtureGroupId"] = this.fixtureGroupId;
41490
- data["deleted"] = this.deleted;
41491
- data["approved"] = this.approved;
41492
41658
  data["drawing"] = this.drawing;
41493
41659
  data["drawingRev"] = this.drawingRev;
41494
41660
  data["sourceMachineId"] = this.sourceMachineId;
@@ -41511,13 +41677,11 @@ export class FixtureCreateDto implements IFixtureCreateDto {
41511
41677
  export interface IFixtureCreateDto {
41512
41678
  name?: string | null;
41513
41679
  fixtureGroupId?: string | null;
41514
- deleted?: boolean;
41515
- approved?: boolean;
41516
41680
  drawing?: string | null;
41517
41681
  drawingRev?: string | null;
41518
41682
  sourceMachineId?: string | null;
41519
41683
  location?: string | null;
41520
- type?: FixtureTypeDto;
41684
+ type: FixtureTypeDto;
41521
41685
  interface?: string | null;
41522
41686
  diameter?: number | null;
41523
41687
  outerDiameter?: number | null;
@@ -41540,7 +41704,7 @@ export class FixtureUpdateDto implements IFixtureUpdateDto {
41540
41704
  drawingRev?: string | null;
41541
41705
  sourceMachineId?: string | null;
41542
41706
  location?: string | null;
41543
- type?: FixtureTypeDto;
41707
+ type!: FixtureTypeDto;
41544
41708
  interface?: string | null;
41545
41709
  diameter?: number | null;
41546
41710
  outerDiameter?: number | null;
@@ -41629,7 +41793,7 @@ export interface IFixtureUpdateDto {
41629
41793
  drawingRev?: string | null;
41630
41794
  sourceMachineId?: string | null;
41631
41795
  location?: string | null;
41632
- type?: FixtureTypeDto;
41796
+ type: FixtureTypeDto;
41633
41797
  interface?: string | null;
41634
41798
  diameter?: number | null;
41635
41799
  outerDiameter?: number | null;