@toolpath/api 0.1.0 → 0.2.2

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 (114) hide show
  1. package/README.md +1 -1
  2. package/dist/generated/apis/FeaturesApi.d.ts +22 -20
  3. package/dist/generated/apis/FeaturesApi.js +41 -33
  4. package/dist/generated/apis/JobsApi.d.ts +1 -1
  5. package/dist/generated/apis/JobsApi.js +1 -1
  6. package/dist/generated/apis/KeysApi.d.ts +1 -1
  7. package/dist/generated/apis/KeysApi.js +1 -1
  8. package/dist/generated/apis/PartsApi.d.ts +28 -28
  9. package/dist/generated/apis/PartsApi.js +49 -49
  10. package/dist/generated/apis/ServiceApi.d.ts +1 -1
  11. package/dist/generated/apis/ServiceApi.js +1 -1
  12. package/dist/generated/models/BevelFacts.d.ts +62 -0
  13. package/dist/generated/models/BevelFacts.js +58 -0
  14. package/dist/generated/models/BossFacts.d.ts +64 -0
  15. package/dist/generated/models/BossFacts.js +68 -0
  16. package/dist/generated/models/CdBounds.d.ts +41 -0
  17. package/dist/generated/models/CdBounds.js +47 -0
  18. package/dist/generated/models/CdData.d.ts +52 -0
  19. package/dist/generated/models/CdData.js +56 -0
  20. package/dist/generated/models/ChamferFacts.d.ts +55 -0
  21. package/dist/generated/models/ChamferFacts.js +61 -0
  22. package/dist/generated/models/CreatePartResponse.d.ts +5 -5
  23. package/dist/generated/models/CreatePartResponse.js +1 -1
  24. package/dist/generated/models/DirectionZBounds.d.ts +6 -6
  25. package/dist/generated/models/DirectionZBounds.js +4 -4
  26. package/dist/generated/models/DirectionZBoundsDirection.d.ts +44 -0
  27. package/dist/generated/models/DirectionZBoundsDirection.js +51 -0
  28. package/dist/generated/models/DovetailFacts.d.ts +98 -0
  29. package/dist/generated/models/DovetailFacts.js +84 -0
  30. package/dist/generated/models/FaceFacts.d.ts +70 -0
  31. package/dist/generated/models/FaceFacts.js +72 -0
  32. package/dist/generated/models/FeatureDatasheet.d.ts +110 -0
  33. package/dist/generated/models/FeatureDatasheet.js +94 -0
  34. package/dist/generated/models/FeatureDatasheetFacts.d.ts +51 -0
  35. package/dist/generated/models/FeatureDatasheetFacts.js +89 -0
  36. package/dist/generated/models/FeatureType.d.ts +58 -0
  37. package/dist/generated/models/FeatureType.js +76 -0
  38. package/dist/generated/models/HealthResponse.d.ts +3 -3
  39. package/dist/generated/models/HealthResponse.js +1 -1
  40. package/dist/generated/models/HoleFacts.d.ts +109 -0
  41. package/dist/generated/models/HoleFacts.js +96 -0
  42. package/dist/generated/models/HoleProcess.d.ts +26 -0
  43. package/dist/generated/models/HoleProcess.js +44 -0
  44. package/dist/generated/models/JobDetail.d.ts +9 -9
  45. package/dist/generated/models/JobDetail.js +1 -1
  46. package/dist/generated/models/JobSummary.d.ts +7 -7
  47. package/dist/generated/models/JobSummary.js +1 -1
  48. package/dist/generated/models/KeyValidationResponse.d.ts +1 -1
  49. package/dist/generated/models/KeyValidationResponse.js +1 -1
  50. package/dist/generated/models/ListJobsResponse.d.ts +5 -5
  51. package/dist/generated/models/ListJobsResponse.js +1 -1
  52. package/dist/generated/models/OpenApiDocument.d.ts +2 -2
  53. package/dist/generated/models/OpenApiDocument.js +1 -1
  54. package/dist/generated/models/PartFeature.d.ts +8 -8
  55. package/dist/generated/models/PartFeature.js +4 -4
  56. package/dist/generated/models/PartFeatureAxis.d.ts +5 -5
  57. package/dist/generated/models/PartFeatureAxis.js +1 -1
  58. package/dist/generated/models/PartFeatureEntry.d.ts +51 -0
  59. package/dist/generated/models/{FeatureDatasheetEntry.js → PartFeatureEntry.js} +16 -11
  60. package/dist/generated/models/PartFeatureMachiningDirection.d.ts +44 -0
  61. package/dist/generated/models/PartFeatureMachiningDirection.js +51 -0
  62. package/dist/generated/models/PartFeaturesResponse.d.ts +39 -0
  63. package/dist/generated/models/{FeatureDatasheetsResponse.js → PartFeaturesResponse.js} +12 -12
  64. package/dist/generated/models/PartReportResponse.d.ts +21 -21
  65. package/dist/generated/models/PartReportResponse.js +4 -4
  66. package/dist/generated/models/PartReportResponseUnits.d.ts +52 -0
  67. package/dist/generated/models/PartReportResponseUnits.js +63 -0
  68. package/dist/generated/models/PocketFacts.d.ts +65 -0
  69. package/dist/generated/models/PocketFacts.js +68 -0
  70. package/dist/generated/models/ProblemDetails.d.ts +1 -1
  71. package/dist/generated/models/ProblemDetails.js +1 -1
  72. package/dist/generated/models/ProfileFacts.d.ts +58 -0
  73. package/dist/generated/models/ProfileFacts.js +64 -0
  74. package/dist/generated/models/Region.d.ts +12 -6
  75. package/dist/generated/models/Region.js +5 -1
  76. package/dist/generated/models/ReportUnits.d.ts +3 -3
  77. package/dist/generated/models/ReportUnits.js +1 -1
  78. package/dist/generated/models/SinkFacts.d.ts +47 -0
  79. package/dist/generated/models/SinkFacts.js +52 -0
  80. package/dist/generated/models/SurfaceFacts.d.ts +97 -0
  81. package/dist/generated/models/SurfaceFacts.js +89 -0
  82. package/dist/generated/models/ThreadProcess.d.ts +26 -0
  83. package/dist/generated/models/ThreadProcess.js +44 -0
  84. package/dist/generated/models/ThreadSpec.d.ts +62 -0
  85. package/dist/generated/models/ThreadSpec.js +63 -0
  86. package/dist/generated/models/Threading.d.ts +40 -0
  87. package/dist/generated/models/Threading.js +49 -0
  88. package/dist/generated/models/ToleranceBand.d.ts +45 -0
  89. package/dist/generated/models/ToleranceBand.js +51 -0
  90. package/dist/generated/models/ToolFitResult.d.ts +44 -0
  91. package/dist/generated/models/ToolFitResult.js +51 -0
  92. package/dist/generated/models/TslotFacts.d.ts +81 -0
  93. package/dist/generated/models/TslotFacts.js +76 -0
  94. package/dist/generated/models/{ComputeFeatureDatasheetsRequest.d.ts → UpdatePartFeaturesRequest.d.ts} +11 -11
  95. package/dist/generated/models/{ComputeFeatureDatasheetsRequest.js → UpdatePartFeaturesRequest.js} +9 -9
  96. package/dist/generated/models/UpdatePartFeaturesResponse.d.ts +51 -0
  97. package/dist/generated/models/{ComputeFeatureDatasheetsResponse.js → UpdatePartFeaturesResponse.js} +10 -10
  98. package/dist/generated/models/UpdatePartResponse.d.ts +51 -0
  99. package/dist/generated/models/{AnalyzeJobResponse.js → UpdatePartResponse.js} +10 -10
  100. package/dist/generated/models/Vec2.d.ts +38 -0
  101. package/dist/generated/models/Vec2.js +47 -0
  102. package/dist/generated/models/Vec3.d.ts +4 -4
  103. package/dist/generated/models/Vec3.js +1 -1
  104. package/dist/generated/models/WallFacts.d.ts +46 -0
  105. package/dist/generated/models/WallFacts.js +56 -0
  106. package/dist/generated/models/index.d.ts +32 -5
  107. package/dist/generated/models/index.js +32 -5
  108. package/dist/generated/runtime.d.ts +1 -1
  109. package/dist/generated/runtime.js +1 -1
  110. package/package.json +3 -3
  111. package/dist/generated/models/AnalyzeJobResponse.d.ts +0 -51
  112. package/dist/generated/models/ComputeFeatureDatasheetsResponse.d.ts +0 -51
  113. package/dist/generated/models/FeatureDatasheetEntry.d.ts +0 -52
  114. package/dist/generated/models/FeatureDatasheetsResponse.d.ts +0 -39
@@ -4,14 +4,14 @@
4
4
  * Toolpath Engine API
5
5
  * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
6
6
  *
7
- * The version of the OpenAPI document: 1.0.0
7
+ * The version of the OpenAPI document: 1.0.2
8
8
  *
9
9
  *
10
10
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
- import { Vec3FromJSON, Vec3ToJSON } from './Vec3.js';
14
+ import { DirectionZBoundsDirectionFromJSON, DirectionZBoundsDirectionToJSON, } from './DirectionZBoundsDirection.js';
15
15
  /**
16
16
  * Check if a given object implements the DirectionZBounds interface.
17
17
  */
@@ -32,7 +32,7 @@ export function DirectionZBoundsFromJSONTyped(json, ignoreDiscriminator) {
32
32
  return json;
33
33
  }
34
34
  return {
35
- direction: Vec3FromJSON(json['direction']),
35
+ direction: DirectionZBoundsDirectionFromJSON(json['direction']),
36
36
  zMin: json['zMin'],
37
37
  zMax: json['zMax'],
38
38
  };
@@ -45,7 +45,7 @@ export function DirectionZBoundsToJSONTyped(value, ignoreDiscriminator = false)
45
45
  return value;
46
46
  }
47
47
  return {
48
- direction: Vec3ToJSON(value['direction']),
48
+ direction: DirectionZBoundsDirectionToJSON(value['direction']),
49
49
  zMin: value['zMin'],
50
50
  zMax: value['zMax'],
51
51
  };
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Toolpath Engine API
3
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.2
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Candidate machining direction whose tool-axis frame defines these bounds.
14
+ * @export
15
+ * @interface DirectionZBoundsDirection
16
+ */
17
+ export interface DirectionZBoundsDirection {
18
+ /**
19
+ * X coordinate or direction component.
20
+ * @type {number}
21
+ * @memberof DirectionZBoundsDirection
22
+ */
23
+ x: number;
24
+ /**
25
+ * Y coordinate or direction component.
26
+ * @type {number}
27
+ * @memberof DirectionZBoundsDirection
28
+ */
29
+ y: number;
30
+ /**
31
+ * Z coordinate or direction component.
32
+ * @type {number}
33
+ * @memberof DirectionZBoundsDirection
34
+ */
35
+ z: number;
36
+ }
37
+ /**
38
+ * Check if a given object implements the DirectionZBoundsDirection interface.
39
+ */
40
+ export declare function instanceOfDirectionZBoundsDirection(value: object): value is DirectionZBoundsDirection;
41
+ export declare function DirectionZBoundsDirectionFromJSON(json: any): DirectionZBoundsDirection;
42
+ export declare function DirectionZBoundsDirectionFromJSONTyped(json: any, ignoreDiscriminator: boolean): DirectionZBoundsDirection;
43
+ export declare function DirectionZBoundsDirectionToJSON(json: any): DirectionZBoundsDirection;
44
+ export declare function DirectionZBoundsDirectionToJSONTyped(value?: DirectionZBoundsDirection | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,51 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Toolpath Engine API
5
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.2
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the DirectionZBoundsDirection interface.
16
+ */
17
+ export function instanceOfDirectionZBoundsDirection(value) {
18
+ if (!('x' in value) || value['x'] === undefined)
19
+ return false;
20
+ if (!('y' in value) || value['y'] === undefined)
21
+ return false;
22
+ if (!('z' in value) || value['z'] === undefined)
23
+ return false;
24
+ return true;
25
+ }
26
+ export function DirectionZBoundsDirectionFromJSON(json) {
27
+ return DirectionZBoundsDirectionFromJSONTyped(json, false);
28
+ }
29
+ export function DirectionZBoundsDirectionFromJSONTyped(json, ignoreDiscriminator) {
30
+ if (json == null) {
31
+ return json;
32
+ }
33
+ return {
34
+ x: json['x'],
35
+ y: json['y'],
36
+ z: json['z'],
37
+ };
38
+ }
39
+ export function DirectionZBoundsDirectionToJSON(json) {
40
+ return DirectionZBoundsDirectionToJSONTyped(json, false);
41
+ }
42
+ export function DirectionZBoundsDirectionToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ x: value['x'],
48
+ y: value['y'],
49
+ z: value['z'],
50
+ };
51
+ }
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Toolpath Engine API
3
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.2
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { CdData } from './CdData.js';
13
+ /**
14
+ * A dovetail groove: overhanging walls leaning back at one angle over a floor, so the
15
+ * space widens with depth and a tool has to enter through an opening narrower than where
16
+ * it cuts.
17
+ *
18
+ * That inversion is why this carries widths rather than a medial-axis measurement. All
19
+ * three are clearance diameters read at their own heights, with `0.0` standing for a
20
+ * measurement that failed — which is what `isInvalidGeometry` reports.
21
+ * @export
22
+ * @interface DovetailFacts
23
+ */
24
+ export interface DovetailFacts {
25
+ /**
26
+ * Discriminator for this facts variant.
27
+ * @type {DovetailFactsKindEnum}
28
+ * @memberof DovetailFacts
29
+ */
30
+ kind: DovetailFactsKindEnum;
31
+ /**
32
+ * Between the overhanging wall and the tool axis, degrees, positive however the
33
+ * wall leans.
34
+ * @type {number}
35
+ * @memberof DovetailFacts
36
+ */
37
+ taperDeg: number;
38
+ /**
39
+ * Radius of the blend between wall and floor; 0.0 for the sharp kind.
40
+ * @type {number}
41
+ * @memberof DovetailFacts
42
+ */
43
+ filletRadius: number;
44
+ /**
45
+ * The widest clearance over the floor — the width the groove cuts at.
46
+ * @type {number}
47
+ * @memberof DovetailFacts
48
+ */
49
+ floorWidth: number;
50
+ /**
51
+ * The clearance through the opening at the top of the groove.
52
+ * @type {number}
53
+ * @memberof DovetailFacts
54
+ */
55
+ topOpeningWidth: number;
56
+ /**
57
+ * The clearance just above the floor, under the overhangs.
58
+ * @type {number}
59
+ * @memberof DovetailFacts
60
+ */
61
+ bottomOpeningWidth: number;
62
+ /**
63
+ * The groove's inner clearances vary from place to place — it runs out somewhere —
64
+ * rather than being the one constant width a closed internal dovetail has.
65
+ * @type {boolean}
66
+ * @memberof DovetailFacts
67
+ */
68
+ isExternal: boolean;
69
+ /**
70
+ * Derived from the widths and the taper, not measured off an axis, so the three
71
+ * regimes hold one answer.
72
+ * @type {CdData}
73
+ * @memberof DovetailFacts
74
+ */
75
+ cd: CdData;
76
+ /**
77
+ * A width could not be measured at all, so `cd` is arithmetic over a zero and no
78
+ * tool should be offered on its strength.
79
+ * @type {boolean}
80
+ * @memberof DovetailFacts
81
+ */
82
+ isInvalidGeometry: boolean;
83
+ }
84
+ /**
85
+ * @export
86
+ */
87
+ export declare const DovetailFactsKindEnum: {
88
+ readonly Dovetail: "Dovetail";
89
+ };
90
+ export type DovetailFactsKindEnum = (typeof DovetailFactsKindEnum)[keyof typeof DovetailFactsKindEnum];
91
+ /**
92
+ * Check if a given object implements the DovetailFacts interface.
93
+ */
94
+ export declare function instanceOfDovetailFacts(value: object): value is DovetailFacts;
95
+ export declare function DovetailFactsFromJSON(json: any): DovetailFacts;
96
+ export declare function DovetailFactsFromJSONTyped(json: any, ignoreDiscriminator: boolean): DovetailFacts;
97
+ export declare function DovetailFactsToJSON(json: any): DovetailFacts;
98
+ export declare function DovetailFactsToJSONTyped(value?: DovetailFacts | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,84 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Toolpath Engine API
5
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.2
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { CdDataFromJSON, CdDataToJSON } from './CdData.js';
15
+ /**
16
+ * @export
17
+ */
18
+ export const DovetailFactsKindEnum = {
19
+ Dovetail: 'Dovetail',
20
+ };
21
+ /**
22
+ * Check if a given object implements the DovetailFacts interface.
23
+ */
24
+ export function instanceOfDovetailFacts(value) {
25
+ if (!('kind' in value) || value['kind'] === undefined)
26
+ return false;
27
+ if (value['kind'] !== 'Dovetail')
28
+ return false;
29
+ if (!('taperDeg' in value) || value['taperDeg'] === undefined)
30
+ return false;
31
+ if (!('filletRadius' in value) || value['filletRadius'] === undefined)
32
+ return false;
33
+ if (!('floorWidth' in value) || value['floorWidth'] === undefined)
34
+ return false;
35
+ if (!('topOpeningWidth' in value) || value['topOpeningWidth'] === undefined)
36
+ return false;
37
+ if (!('bottomOpeningWidth' in value) || value['bottomOpeningWidth'] === undefined)
38
+ return false;
39
+ if (!('isExternal' in value) || value['isExternal'] === undefined)
40
+ return false;
41
+ if (!('cd' in value) || value['cd'] === undefined)
42
+ return false;
43
+ if (!('isInvalidGeometry' in value) || value['isInvalidGeometry'] === undefined)
44
+ return false;
45
+ return true;
46
+ }
47
+ export function DovetailFactsFromJSON(json) {
48
+ return DovetailFactsFromJSONTyped(json, false);
49
+ }
50
+ export function DovetailFactsFromJSONTyped(json, ignoreDiscriminator) {
51
+ if (json == null) {
52
+ return json;
53
+ }
54
+ return {
55
+ kind: json['kind'],
56
+ taperDeg: json['taperDeg'],
57
+ filletRadius: json['filletRadius'],
58
+ floorWidth: json['floorWidth'],
59
+ topOpeningWidth: json['topOpeningWidth'],
60
+ bottomOpeningWidth: json['bottomOpeningWidth'],
61
+ isExternal: json['isExternal'],
62
+ cd: CdDataFromJSON(json['cd']),
63
+ isInvalidGeometry: json['isInvalidGeometry'],
64
+ };
65
+ }
66
+ export function DovetailFactsToJSON(json) {
67
+ return DovetailFactsToJSONTyped(json, false);
68
+ }
69
+ export function DovetailFactsToJSONTyped(value, ignoreDiscriminator = false) {
70
+ if (value == null) {
71
+ return value;
72
+ }
73
+ return {
74
+ kind: value['kind'],
75
+ taperDeg: value['taperDeg'],
76
+ filletRadius: value['filletRadius'],
77
+ floorWidth: value['floorWidth'],
78
+ topOpeningWidth: value['topOpeningWidth'],
79
+ bottomOpeningWidth: value['bottomOpeningWidth'],
80
+ isExternal: value['isExternal'],
81
+ cd: CdDataToJSON(value['cd']),
82
+ isInvalidGeometry: value['isInvalidGeometry'],
83
+ };
84
+ }
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Toolpath Engine API
3
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.2
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { CdData } from './CdData.js';
13
+ /**
14
+ * A face: a plane square to the tool axis, cleared by sweeping across it.
15
+ * @export
16
+ * @interface FaceFacts
17
+ */
18
+ export interface FaceFacts {
19
+ /**
20
+ * Discriminator for this facts variant.
21
+ * @type {FaceFactsKindEnum}
22
+ * @memberof FaceFacts
23
+ */
24
+ kind: FaceFactsKindEnum;
25
+ /**
26
+ * The face is the highest surface of the part along the tool axis.
27
+ * @type {boolean}
28
+ * @memberof FaceFacts
29
+ */
30
+ isTopFace: boolean;
31
+ /**
32
+ * The face is to be faced off: a top face the fixture does not rule out.
33
+ * @type {boolean}
34
+ * @memberof FaceFacts
35
+ */
36
+ isFacing: boolean;
37
+ /**
38
+ * Sweeping the floor does not clear the face on its own — a wall pass must follow.
39
+ * @type {boolean}
40
+ * @memberof FaceFacts
41
+ */
42
+ needsSidemill: boolean;
43
+ /**
44
+ * Clearance-diameter limits for tools sweeping the face.
45
+ * @type {CdData}
46
+ * @memberof FaceFacts
47
+ */
48
+ cd: CdData;
49
+ /**
50
+ * Largest bottom diameter a terminal tool may have, in mm.
51
+ * @type {number}
52
+ * @memberof FaceFacts
53
+ */
54
+ maxBottomDiameter: number;
55
+ }
56
+ /**
57
+ * @export
58
+ */
59
+ export declare const FaceFactsKindEnum: {
60
+ readonly Face: "Face";
61
+ };
62
+ export type FaceFactsKindEnum = (typeof FaceFactsKindEnum)[keyof typeof FaceFactsKindEnum];
63
+ /**
64
+ * Check if a given object implements the FaceFacts interface.
65
+ */
66
+ export declare function instanceOfFaceFacts(value: object): value is FaceFacts;
67
+ export declare function FaceFactsFromJSON(json: any): FaceFacts;
68
+ export declare function FaceFactsFromJSONTyped(json: any, ignoreDiscriminator: boolean): FaceFacts;
69
+ export declare function FaceFactsToJSON(json: any): FaceFacts;
70
+ export declare function FaceFactsToJSONTyped(value?: FaceFacts | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,72 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Toolpath Engine API
5
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.2
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { CdDataFromJSON, CdDataToJSON } from './CdData.js';
15
+ /**
16
+ * @export
17
+ */
18
+ export const FaceFactsKindEnum = {
19
+ Face: 'Face',
20
+ };
21
+ /**
22
+ * Check if a given object implements the FaceFacts interface.
23
+ */
24
+ export function instanceOfFaceFacts(value) {
25
+ if (!('kind' in value) || value['kind'] === undefined)
26
+ return false;
27
+ if (value['kind'] !== 'Face')
28
+ return false;
29
+ if (!('isTopFace' in value) || value['isTopFace'] === undefined)
30
+ return false;
31
+ if (!('isFacing' in value) || value['isFacing'] === undefined)
32
+ return false;
33
+ if (!('needsSidemill' in value) || value['needsSidemill'] === undefined)
34
+ return false;
35
+ if (!('cd' in value) || value['cd'] === undefined)
36
+ return false;
37
+ if (!('maxBottomDiameter' in value) || value['maxBottomDiameter'] === undefined)
38
+ return false;
39
+ return true;
40
+ }
41
+ export function FaceFactsFromJSON(json) {
42
+ return FaceFactsFromJSONTyped(json, false);
43
+ }
44
+ export function FaceFactsFromJSONTyped(json, ignoreDiscriminator) {
45
+ if (json == null) {
46
+ return json;
47
+ }
48
+ return {
49
+ kind: json['kind'],
50
+ isTopFace: json['isTopFace'],
51
+ isFacing: json['isFacing'],
52
+ needsSidemill: json['needsSidemill'],
53
+ cd: CdDataFromJSON(json['cd']),
54
+ maxBottomDiameter: json['maxBottomDiameter'],
55
+ };
56
+ }
57
+ export function FaceFactsToJSON(json) {
58
+ return FaceFactsToJSONTyped(json, false);
59
+ }
60
+ export function FaceFactsToJSONTyped(value, ignoreDiscriminator = false) {
61
+ if (value == null) {
62
+ return value;
63
+ }
64
+ return {
65
+ kind: value['kind'],
66
+ isTopFace: value['isTopFace'],
67
+ isFacing: value['isFacing'],
68
+ needsSidemill: value['needsSidemill'],
69
+ cd: CdDataToJSON(value['cd']),
70
+ maxBottomDiameter: value['maxBottomDiameter'],
71
+ };
72
+ }
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Toolpath Engine API
3
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.2
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { FeatureType } from './FeatureType.js';
13
+ import type { ToleranceBand } from './ToleranceBand.js';
14
+ import type { FeatureDatasheetFacts } from './FeatureDatasheetFacts.js';
15
+ /**
16
+ * One feature as machining sees it: static, self-contained, and enough to choose a
17
+ * tool against without having the part in hand. All lengths mm and angles degrees;
18
+ * z runs up the tool axis, so `zMin` is the bottom of the feature and `zMax` its top.
19
+ * @export
20
+ * @interface FeatureDatasheet
21
+ */
22
+ export interface FeatureDatasheet {
23
+ /**
24
+ * Kernel-recognized feature type that this datasheet measures.
25
+ * @type {FeatureType}
26
+ * @memberof FeatureDatasheet
27
+ */
28
+ featureType: FeatureType;
29
+ /**
30
+ * Bottom of the feature along the tool axis, in mm.
31
+ * @type {number}
32
+ * @memberof FeatureDatasheet
33
+ */
34
+ zMin: number;
35
+ /**
36
+ * Top of the feature along the tool axis, in mm.
37
+ * @type {number}
38
+ * @memberof FeatureDatasheet
39
+ */
40
+ zMax: number;
41
+ /**
42
+ * The z range extended by adjacent geometry the tool passes over reaching the
43
+ * feature.
44
+ * @type {number}
45
+ * @memberof FeatureDatasheet
46
+ */
47
+ extendedZMin: number;
48
+ /**
49
+ * Highest z the tool passes over while reaching the feature, in mm.
50
+ * @type {number}
51
+ * @memberof FeatureDatasheet
52
+ */
53
+ extendedZMax: number;
54
+ /**
55
+ * Material intentionally left radially for a later operation, in mm.
56
+ * @type {number}
57
+ * @memberof FeatureDatasheet
58
+ */
59
+ radialStockToLeave: number;
60
+ /**
61
+ * Material intentionally left along the tool axis for a later operation, in mm.
62
+ * @type {number}
63
+ * @memberof FeatureDatasheet
64
+ */
65
+ axialStockToLeave: number;
66
+ /**
67
+ * Permitted deviation bands for the machined feature.
68
+ * @type {ToleranceBand}
69
+ * @memberof FeatureDatasheet
70
+ */
71
+ toleranceBand: ToleranceBand;
72
+ /**
73
+ * Whether the feature has a floor machined perpendicular to the tool axis.
74
+ * @type {boolean}
75
+ * @memberof FeatureDatasheet
76
+ */
77
+ hasFloor: boolean;
78
+ /**
79
+ * Whether the feature has a wall machined parallel to the tool axis.
80
+ * @type {boolean}
81
+ * @memberof FeatureDatasheet
82
+ */
83
+ hasWall: boolean;
84
+ /**
85
+ * Projected area machined floor-wise (perpendicular to the tool axis).
86
+ * @type {number}
87
+ * @memberof FeatureDatasheet
88
+ */
89
+ floorishArea: number;
90
+ /**
91
+ * Area machined wall-wise (parallel to the tool axis).
92
+ * @type {number}
93
+ * @memberof FeatureDatasheet
94
+ */
95
+ wallishArea: number;
96
+ /**
97
+ *
98
+ * @type {FeatureDatasheetFacts}
99
+ * @memberof FeatureDatasheet
100
+ */
101
+ facts: FeatureDatasheetFacts;
102
+ }
103
+ /**
104
+ * Check if a given object implements the FeatureDatasheet interface.
105
+ */
106
+ export declare function instanceOfFeatureDatasheet(value: object): value is FeatureDatasheet;
107
+ export declare function FeatureDatasheetFromJSON(json: any): FeatureDatasheet;
108
+ export declare function FeatureDatasheetFromJSONTyped(json: any, ignoreDiscriminator: boolean): FeatureDatasheet;
109
+ export declare function FeatureDatasheetToJSON(json: any): FeatureDatasheet;
110
+ export declare function FeatureDatasheetToJSONTyped(value?: FeatureDatasheet | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,94 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Toolpath Engine API
5
+ * Public REST API for Toolpath engine operations. **Units.** All dimensional values — in reports and in feature datasheets — are in millimetres; all angles are in degrees. Each report also states this in its `units` field. **Browser use.** CORS is per API key: a request only receives an `Access-Control-Allow-Origin` header when its `Origin` is in the allowlist configured on the key used (set when creating or editing the key in the portal). A key with no allowed origins is server-to-server only. A Bearer API key placed in client-side JavaScript is readable by anyone — restrict its origins, prefer a `read_only` key (read_only keys may call GET operations only; writes are rejected with 403), or proxy requests through your own server.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.2
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { FeatureTypeFromJSON, FeatureTypeToJSON, } from './FeatureType.js';
15
+ import { ToleranceBandFromJSON, ToleranceBandToJSON, } from './ToleranceBand.js';
16
+ import { FeatureDatasheetFactsFromJSON, FeatureDatasheetFactsToJSON, } from './FeatureDatasheetFacts.js';
17
+ /**
18
+ * Check if a given object implements the FeatureDatasheet interface.
19
+ */
20
+ export function instanceOfFeatureDatasheet(value) {
21
+ if (!('featureType' in value) || value['featureType'] === undefined)
22
+ return false;
23
+ if (!('zMin' in value) || value['zMin'] === undefined)
24
+ return false;
25
+ if (!('zMax' in value) || value['zMax'] === undefined)
26
+ return false;
27
+ if (!('extendedZMin' in value) || value['extendedZMin'] === undefined)
28
+ return false;
29
+ if (!('extendedZMax' in value) || value['extendedZMax'] === undefined)
30
+ return false;
31
+ if (!('radialStockToLeave' in value) || value['radialStockToLeave'] === undefined)
32
+ return false;
33
+ if (!('axialStockToLeave' in value) || value['axialStockToLeave'] === undefined)
34
+ return false;
35
+ if (!('toleranceBand' in value) || value['toleranceBand'] === undefined)
36
+ return false;
37
+ if (!('hasFloor' in value) || value['hasFloor'] === undefined)
38
+ return false;
39
+ if (!('hasWall' in value) || value['hasWall'] === undefined)
40
+ return false;
41
+ if (!('floorishArea' in value) || value['floorishArea'] === undefined)
42
+ return false;
43
+ if (!('wallishArea' in value) || value['wallishArea'] === undefined)
44
+ return false;
45
+ if (!('facts' in value) || value['facts'] === undefined)
46
+ return false;
47
+ return true;
48
+ }
49
+ export function FeatureDatasheetFromJSON(json) {
50
+ return FeatureDatasheetFromJSONTyped(json, false);
51
+ }
52
+ export function FeatureDatasheetFromJSONTyped(json, ignoreDiscriminator) {
53
+ if (json == null) {
54
+ return json;
55
+ }
56
+ return {
57
+ featureType: FeatureTypeFromJSON(json['featureType']),
58
+ zMin: json['zMin'],
59
+ zMax: json['zMax'],
60
+ extendedZMin: json['extendedZMin'],
61
+ extendedZMax: json['extendedZMax'],
62
+ radialStockToLeave: json['radialStockToLeave'],
63
+ axialStockToLeave: json['axialStockToLeave'],
64
+ toleranceBand: ToleranceBandFromJSON(json['toleranceBand']),
65
+ hasFloor: json['hasFloor'],
66
+ hasWall: json['hasWall'],
67
+ floorishArea: json['floorishArea'],
68
+ wallishArea: json['wallishArea'],
69
+ facts: FeatureDatasheetFactsFromJSON(json['facts']),
70
+ };
71
+ }
72
+ export function FeatureDatasheetToJSON(json) {
73
+ return FeatureDatasheetToJSONTyped(json, false);
74
+ }
75
+ export function FeatureDatasheetToJSONTyped(value, ignoreDiscriminator = false) {
76
+ if (value == null) {
77
+ return value;
78
+ }
79
+ return {
80
+ featureType: FeatureTypeToJSON(value['featureType']),
81
+ zMin: value['zMin'],
82
+ zMax: value['zMax'],
83
+ extendedZMin: value['extendedZMin'],
84
+ extendedZMax: value['extendedZMax'],
85
+ radialStockToLeave: value['radialStockToLeave'],
86
+ axialStockToLeave: value['axialStockToLeave'],
87
+ toleranceBand: ToleranceBandToJSON(value['toleranceBand']),
88
+ hasFloor: value['hasFloor'],
89
+ hasWall: value['hasWall'],
90
+ floorishArea: value['floorishArea'],
91
+ wallishArea: value['wallishArea'],
92
+ facts: FeatureDatasheetFactsToJSON(value['facts']),
93
+ };
94
+ }