@toolpath/api 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +29 -0
  3. package/dist/client.d.ts +14 -0
  4. package/dist/client.js +15 -0
  5. package/dist/generated/apis/FeaturesApi.d.ts +50 -0
  6. package/dist/generated/apis/FeaturesApi.js +102 -0
  7. package/dist/generated/apis/JobsApi.d.ts +79 -0
  8. package/dist/generated/apis/JobsApi.js +165 -0
  9. package/dist/generated/apis/KeysApi.d.ts +32 -0
  10. package/dist/generated/apis/KeysApi.js +58 -0
  11. package/dist/generated/apis/PartsApi.d.ts +76 -0
  12. package/dist/generated/apis/PartsApi.js +157 -0
  13. package/dist/generated/apis/ServiceApi.d.ts +43 -0
  14. package/dist/generated/apis/ServiceApi.js +79 -0
  15. package/dist/generated/apis/index.d.ts +5 -0
  16. package/dist/generated/apis/index.js +7 -0
  17. package/dist/generated/index.d.ts +3 -0
  18. package/dist/generated/index.js +5 -0
  19. package/dist/generated/models/AnalyzeJobResponse.d.ts +51 -0
  20. package/dist/generated/models/AnalyzeJobResponse.js +59 -0
  21. package/dist/generated/models/ComputeFeatureDatasheetsRequest.d.ts +32 -0
  22. package/dist/generated/models/ComputeFeatureDatasheetsRequest.js +43 -0
  23. package/dist/generated/models/ComputeFeatureDatasheetsResponse.d.ts +51 -0
  24. package/dist/generated/models/ComputeFeatureDatasheetsResponse.js +59 -0
  25. package/dist/generated/models/CreatePartResponse.d.ts +50 -0
  26. package/dist/generated/models/CreatePartResponse.js +55 -0
  27. package/dist/generated/models/DirectionZBounds.d.ts +45 -0
  28. package/dist/generated/models/DirectionZBounds.js +52 -0
  29. package/dist/generated/models/FeatureDatasheetEntry.d.ts +52 -0
  30. package/dist/generated/models/FeatureDatasheetEntry.js +53 -0
  31. package/dist/generated/models/FeatureDatasheetsResponse.d.ts +39 -0
  32. package/dist/generated/models/FeatureDatasheetsResponse.js +48 -0
  33. package/dist/generated/models/HealthResponse.d.ts +54 -0
  34. package/dist/generated/models/HealthResponse.js +61 -0
  35. package/dist/generated/models/JobDetail.d.ts +84 -0
  36. package/dist/generated/models/JobDetail.js +80 -0
  37. package/dist/generated/models/JobSummary.d.ts +72 -0
  38. package/dist/generated/models/JobSummary.js +72 -0
  39. package/dist/generated/models/KeyValidationResponse.d.ts +48 -0
  40. package/dist/generated/models/KeyValidationResponse.js +56 -0
  41. package/dist/generated/models/ListJobsResponse.d.ts +51 -0
  42. package/dist/generated/models/ListJobsResponse.js +56 -0
  43. package/dist/generated/models/OpenApiDocument.d.ts +33 -0
  44. package/dist/generated/models/OpenApiDocument.js +45 -0
  45. package/dist/generated/models/PartFeature.d.ts +64 -0
  46. package/dist/generated/models/PartFeature.js +65 -0
  47. package/dist/generated/models/PartFeatureAxis.d.ts +44 -0
  48. package/dist/generated/models/PartFeatureAxis.js +51 -0
  49. package/dist/generated/models/PartReportResponse.d.ts +139 -0
  50. package/dist/generated/models/PartReportResponse.js +120 -0
  51. package/dist/generated/models/ProblemDetails.d.ts +62 -0
  52. package/dist/generated/models/ProblemDetails.js +59 -0
  53. package/dist/generated/models/Region.d.ts +56 -0
  54. package/dist/generated/models/Region.js +59 -0
  55. package/dist/generated/models/ReportUnits.d.ts +52 -0
  56. package/dist/generated/models/ReportUnits.js +63 -0
  57. package/dist/generated/models/Vec3.d.ts +44 -0
  58. package/dist/generated/models/Vec3.js +51 -0
  59. package/dist/generated/models/index.d.ts +20 -0
  60. package/dist/generated/models/index.js +22 -0
  61. package/dist/generated/runtime.d.ts +185 -0
  62. package/dist/generated/runtime.js +351 -0
  63. package/dist/index.d.ts +3 -0
  64. package/dist/index.js +3 -0
  65. package/dist/upload.d.ts +5 -0
  66. package/dist/upload.js +13 -0
  67. package/package.json +48 -0
@@ -0,0 +1,139 @@
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.0
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 { DirectionZBounds } from './DirectionZBounds.js';
13
+ import type { Vec3 } from './Vec3.js';
14
+ import type { Region } from './Region.js';
15
+ import type { PartFeature } from './PartFeature.js';
16
+ import type { ReportUnits } from './ReportUnits.js';
17
+ /**
18
+ *
19
+ * @export
20
+ * @interface PartReportResponse
21
+ */
22
+ export interface PartReportResponse {
23
+ /**
24
+ *
25
+ * @type {string}
26
+ * @memberof PartReportResponse
27
+ */
28
+ partId: string;
29
+ /**
30
+ *
31
+ * @type {string}
32
+ * @memberof PartReportResponse
33
+ */
34
+ reportId: string;
35
+ /**
36
+ *
37
+ * @type {string}
38
+ * @memberof PartReportResponse
39
+ */
40
+ jobId: string;
41
+ /**
42
+ *
43
+ * @type {string}
44
+ * @memberof PartReportResponse
45
+ */
46
+ kernelVersion: string;
47
+ /**
48
+ *
49
+ * @type {ReportUnits}
50
+ * @memberof PartReportResponse
51
+ */
52
+ units: ReportUnits;
53
+ /**
54
+ *
55
+ * @type {Array<Region>}
56
+ * @memberof PartReportResponse
57
+ */
58
+ regions: Array<Region>;
59
+ /**
60
+ *
61
+ * @type {Array<PartFeature>}
62
+ * @memberof PartReportResponse
63
+ */
64
+ features: Array<PartFeature>;
65
+ /**
66
+ *
67
+ * @type {Array<Vec3>}
68
+ * @memberof PartReportResponse
69
+ */
70
+ candidateDirections: Array<Vec3>;
71
+ /**
72
+ *
73
+ * @type {Array<DirectionZBounds>}
74
+ * @memberof PartReportResponse
75
+ */
76
+ directionZBounds: Array<DirectionZBounds> | null;
77
+ /**
78
+ *
79
+ * @type {number}
80
+ * @memberof PartReportResponse
81
+ */
82
+ meshPointCount: number;
83
+ /**
84
+ *
85
+ * @type {number}
86
+ * @memberof PartReportResponse
87
+ */
88
+ meshTriangleCount: number;
89
+ /**
90
+ *
91
+ * @type {string}
92
+ * @memberof PartReportResponse
93
+ */
94
+ thumbnailUrl: string | null;
95
+ /**
96
+ *
97
+ * @type {string}
98
+ * @memberof PartReportResponse
99
+ */
100
+ meshStlUrl: string | null;
101
+ /**
102
+ *
103
+ * @type {string}
104
+ * @memberof PartReportResponse
105
+ */
106
+ meshGlbUrl: string | null;
107
+ /**
108
+ *
109
+ * @type {number}
110
+ * @memberof PartReportResponse
111
+ */
112
+ downloadMs: number;
113
+ /**
114
+ *
115
+ * @type {number}
116
+ * @memberof PartReportResponse
117
+ */
118
+ recognitionMs: number;
119
+ /**
120
+ *
121
+ * @type {number}
122
+ * @memberof PartReportResponse
123
+ */
124
+ enrichmentMs: number;
125
+ /**
126
+ *
127
+ * @type {number}
128
+ * @memberof PartReportResponse
129
+ */
130
+ totalMs: number;
131
+ }
132
+ /**
133
+ * Check if a given object implements the PartReportResponse interface.
134
+ */
135
+ export declare function instanceOfPartReportResponse(value: object): value is PartReportResponse;
136
+ export declare function PartReportResponseFromJSON(json: any): PartReportResponse;
137
+ export declare function PartReportResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): PartReportResponse;
138
+ export declare function PartReportResponseToJSON(json: any): PartReportResponse;
139
+ export declare function PartReportResponseToJSONTyped(value?: PartReportResponse | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,120 @@
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.0
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 { DirectionZBoundsFromJSON, DirectionZBoundsToJSON, } from './DirectionZBounds.js';
15
+ import { Vec3FromJSON, Vec3ToJSON } from './Vec3.js';
16
+ import { RegionFromJSON, RegionToJSON } from './Region.js';
17
+ import { PartFeatureFromJSON, PartFeatureToJSON, } from './PartFeature.js';
18
+ import { ReportUnitsFromJSON, ReportUnitsToJSON, } from './ReportUnits.js';
19
+ /**
20
+ * Check if a given object implements the PartReportResponse interface.
21
+ */
22
+ export function instanceOfPartReportResponse(value) {
23
+ if (!('partId' in value) || value['partId'] === undefined)
24
+ return false;
25
+ if (!('reportId' in value) || value['reportId'] === undefined)
26
+ return false;
27
+ if (!('jobId' in value) || value['jobId'] === undefined)
28
+ return false;
29
+ if (!('kernelVersion' in value) || value['kernelVersion'] === undefined)
30
+ return false;
31
+ if (!('units' in value) || value['units'] === undefined)
32
+ return false;
33
+ if (!('regions' in value) || value['regions'] === undefined)
34
+ return false;
35
+ if (!('features' in value) || value['features'] === undefined)
36
+ return false;
37
+ if (!('candidateDirections' in value) || value['candidateDirections'] === undefined)
38
+ return false;
39
+ if (!('directionZBounds' in value) || value['directionZBounds'] === undefined)
40
+ return false;
41
+ if (!('meshPointCount' in value) || value['meshPointCount'] === undefined)
42
+ return false;
43
+ if (!('meshTriangleCount' in value) || value['meshTriangleCount'] === undefined)
44
+ return false;
45
+ if (!('thumbnailUrl' in value) || value['thumbnailUrl'] === undefined)
46
+ return false;
47
+ if (!('meshStlUrl' in value) || value['meshStlUrl'] === undefined)
48
+ return false;
49
+ if (!('meshGlbUrl' in value) || value['meshGlbUrl'] === undefined)
50
+ return false;
51
+ if (!('downloadMs' in value) || value['downloadMs'] === undefined)
52
+ return false;
53
+ if (!('recognitionMs' in value) || value['recognitionMs'] === undefined)
54
+ return false;
55
+ if (!('enrichmentMs' in value) || value['enrichmentMs'] === undefined)
56
+ return false;
57
+ if (!('totalMs' in value) || value['totalMs'] === undefined)
58
+ return false;
59
+ return true;
60
+ }
61
+ export function PartReportResponseFromJSON(json) {
62
+ return PartReportResponseFromJSONTyped(json, false);
63
+ }
64
+ export function PartReportResponseFromJSONTyped(json, ignoreDiscriminator) {
65
+ if (json == null) {
66
+ return json;
67
+ }
68
+ return {
69
+ partId: json['partId'],
70
+ reportId: json['reportId'],
71
+ jobId: json['jobId'],
72
+ kernelVersion: json['kernelVersion'],
73
+ units: ReportUnitsFromJSON(json['units']),
74
+ regions: json['regions'].map(RegionFromJSON),
75
+ features: json['features'].map(PartFeatureFromJSON),
76
+ candidateDirections: json['candidateDirections'].map(Vec3FromJSON),
77
+ directionZBounds: json['directionZBounds'] == null
78
+ ? null
79
+ : json['directionZBounds'].map(DirectionZBoundsFromJSON),
80
+ meshPointCount: json['meshPointCount'],
81
+ meshTriangleCount: json['meshTriangleCount'],
82
+ thumbnailUrl: json['thumbnailUrl'],
83
+ meshStlUrl: json['meshStlUrl'],
84
+ meshGlbUrl: json['meshGlbUrl'],
85
+ downloadMs: json['downloadMs'],
86
+ recognitionMs: json['recognitionMs'],
87
+ enrichmentMs: json['enrichmentMs'],
88
+ totalMs: json['totalMs'],
89
+ };
90
+ }
91
+ export function PartReportResponseToJSON(json) {
92
+ return PartReportResponseToJSONTyped(json, false);
93
+ }
94
+ export function PartReportResponseToJSONTyped(value, ignoreDiscriminator = false) {
95
+ if (value == null) {
96
+ return value;
97
+ }
98
+ return {
99
+ partId: value['partId'],
100
+ reportId: value['reportId'],
101
+ jobId: value['jobId'],
102
+ kernelVersion: value['kernelVersion'],
103
+ units: ReportUnitsToJSON(value['units']),
104
+ regions: value['regions'].map(RegionToJSON),
105
+ features: value['features'].map(PartFeatureToJSON),
106
+ candidateDirections: value['candidateDirections'].map(Vec3ToJSON),
107
+ directionZBounds: value['directionZBounds'] == null
108
+ ? null
109
+ : value['directionZBounds'].map(DirectionZBoundsToJSON),
110
+ meshPointCount: value['meshPointCount'],
111
+ meshTriangleCount: value['meshTriangleCount'],
112
+ thumbnailUrl: value['thumbnailUrl'],
113
+ meshStlUrl: value['meshStlUrl'],
114
+ meshGlbUrl: value['meshGlbUrl'],
115
+ downloadMs: value['downloadMs'],
116
+ recognitionMs: value['recognitionMs'],
117
+ enrichmentMs: value['enrichmentMs'],
118
+ totalMs: value['totalMs'],
119
+ };
120
+ }
@@ -0,0 +1,62 @@
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.0
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
+ *
14
+ * @export
15
+ * @interface ProblemDetails
16
+ */
17
+ export interface ProblemDetails {
18
+ /**
19
+ * A URI identifying the problem type.
20
+ * @type {string}
21
+ * @memberof ProblemDetails
22
+ */
23
+ type: string;
24
+ /**
25
+ * A short, human-readable summary of the problem.
26
+ * @type {string}
27
+ * @memberof ProblemDetails
28
+ */
29
+ title: string;
30
+ /**
31
+ * The HTTP status code for this occurrence.
32
+ * @type {number}
33
+ * @memberof ProblemDetails
34
+ */
35
+ status: number;
36
+ /**
37
+ * A human-readable explanation specific to this occurrence.
38
+ * @type {string}
39
+ * @memberof ProblemDetails
40
+ */
41
+ detail?: string;
42
+ /**
43
+ * A URI reference identifying this occurrence.
44
+ * @type {string}
45
+ * @memberof ProblemDetails
46
+ */
47
+ instance?: string;
48
+ /**
49
+ * A stable, machine-readable Toolpath error code.
50
+ * @type {string}
51
+ * @memberof ProblemDetails
52
+ */
53
+ code: string;
54
+ }
55
+ /**
56
+ * Check if a given object implements the ProblemDetails interface.
57
+ */
58
+ export declare function instanceOfProblemDetails(value: object): value is ProblemDetails;
59
+ export declare function ProblemDetailsFromJSON(json: any): ProblemDetails;
60
+ export declare function ProblemDetailsFromJSONTyped(json: any, ignoreDiscriminator: boolean): ProblemDetails;
61
+ export declare function ProblemDetailsToJSON(json: any): ProblemDetails;
62
+ export declare function ProblemDetailsToJSONTyped(value?: ProblemDetails | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,59 @@
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.0
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 ProblemDetails interface.
16
+ */
17
+ export function instanceOfProblemDetails(value) {
18
+ if (!('type' in value) || value['type'] === undefined)
19
+ return false;
20
+ if (!('title' in value) || value['title'] === undefined)
21
+ return false;
22
+ if (!('status' in value) || value['status'] === undefined)
23
+ return false;
24
+ if (!('code' in value) || value['code'] === undefined)
25
+ return false;
26
+ return true;
27
+ }
28
+ export function ProblemDetailsFromJSON(json) {
29
+ return ProblemDetailsFromJSONTyped(json, false);
30
+ }
31
+ export function ProblemDetailsFromJSONTyped(json, ignoreDiscriminator) {
32
+ if (json == null) {
33
+ return json;
34
+ }
35
+ return {
36
+ type: json['type'],
37
+ title: json['title'],
38
+ status: json['status'],
39
+ detail: json['detail'] == null ? undefined : json['detail'],
40
+ instance: json['instance'] == null ? undefined : json['instance'],
41
+ code: json['code'],
42
+ };
43
+ }
44
+ export function ProblemDetailsToJSON(json) {
45
+ return ProblemDetailsToJSONTyped(json, false);
46
+ }
47
+ export function ProblemDetailsToJSONTyped(value, ignoreDiscriminator = false) {
48
+ if (value == null) {
49
+ return value;
50
+ }
51
+ return {
52
+ type: value['type'],
53
+ title: value['title'],
54
+ status: value['status'],
55
+ detail: value['detail'],
56
+ instance: value['instance'],
57
+ code: value['code'],
58
+ };
59
+ }
@@ -0,0 +1,56 @@
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.0
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
+ *
14
+ * @export
15
+ * @interface Region
16
+ */
17
+ export interface Region {
18
+ /**
19
+ *
20
+ * @type {number}
21
+ * @memberof Region
22
+ */
23
+ idx: number;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof Region
28
+ */
29
+ shapeKind: string;
30
+ /**
31
+ *
32
+ * @type {number}
33
+ * @memberof Region
34
+ */
35
+ area: number;
36
+ /**
37
+ *
38
+ * @type {number}
39
+ * @memberof Region
40
+ */
41
+ triangleStart: number;
42
+ /**
43
+ *
44
+ * @type {number}
45
+ * @memberof Region
46
+ */
47
+ triangleEnd: number;
48
+ }
49
+ /**
50
+ * Check if a given object implements the Region interface.
51
+ */
52
+ export declare function instanceOfRegion(value: object): value is Region;
53
+ export declare function RegionFromJSON(json: any): Region;
54
+ export declare function RegionFromJSONTyped(json: any, ignoreDiscriminator: boolean): Region;
55
+ export declare function RegionToJSON(json: any): Region;
56
+ export declare function RegionToJSONTyped(value?: Region | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,59 @@
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.0
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 Region interface.
16
+ */
17
+ export function instanceOfRegion(value) {
18
+ if (!('idx' in value) || value['idx'] === undefined)
19
+ return false;
20
+ if (!('shapeKind' in value) || value['shapeKind'] === undefined)
21
+ return false;
22
+ if (!('area' in value) || value['area'] === undefined)
23
+ return false;
24
+ if (!('triangleStart' in value) || value['triangleStart'] === undefined)
25
+ return false;
26
+ if (!('triangleEnd' in value) || value['triangleEnd'] === undefined)
27
+ return false;
28
+ return true;
29
+ }
30
+ export function RegionFromJSON(json) {
31
+ return RegionFromJSONTyped(json, false);
32
+ }
33
+ export function RegionFromJSONTyped(json, ignoreDiscriminator) {
34
+ if (json == null) {
35
+ return json;
36
+ }
37
+ return {
38
+ idx: json['idx'],
39
+ shapeKind: json['shapeKind'],
40
+ area: json['area'],
41
+ triangleStart: json['triangleStart'],
42
+ triangleEnd: json['triangleEnd'],
43
+ };
44
+ }
45
+ export function RegionToJSON(json) {
46
+ return RegionToJSONTyped(json, false);
47
+ }
48
+ export function RegionToJSONTyped(value, ignoreDiscriminator = false) {
49
+ if (value == null) {
50
+ return value;
51
+ }
52
+ return {
53
+ idx: value['idx'],
54
+ shapeKind: value['shapeKind'],
55
+ area: value['area'],
56
+ triangleStart: value['triangleStart'],
57
+ triangleEnd: value['triangleEnd'],
58
+ };
59
+ }
@@ -0,0 +1,52 @@
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.0
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
+ *
14
+ * @export
15
+ * @interface ReportUnits
16
+ */
17
+ export interface ReportUnits {
18
+ /**
19
+ *
20
+ * @type {ReportUnitsLengthEnum}
21
+ * @memberof ReportUnits
22
+ */
23
+ length: ReportUnitsLengthEnum;
24
+ /**
25
+ *
26
+ * @type {ReportUnitsAngleEnum}
27
+ * @memberof ReportUnits
28
+ */
29
+ angle: ReportUnitsAngleEnum;
30
+ }
31
+ /**
32
+ * @export
33
+ */
34
+ export declare const ReportUnitsLengthEnum: {
35
+ readonly Mm: "mm";
36
+ };
37
+ export type ReportUnitsLengthEnum = (typeof ReportUnitsLengthEnum)[keyof typeof ReportUnitsLengthEnum];
38
+ /**
39
+ * @export
40
+ */
41
+ export declare const ReportUnitsAngleEnum: {
42
+ readonly Deg: "deg";
43
+ };
44
+ export type ReportUnitsAngleEnum = (typeof ReportUnitsAngleEnum)[keyof typeof ReportUnitsAngleEnum];
45
+ /**
46
+ * Check if a given object implements the ReportUnits interface.
47
+ */
48
+ export declare function instanceOfReportUnits(value: object): value is ReportUnits;
49
+ export declare function ReportUnitsFromJSON(json: any): ReportUnits;
50
+ export declare function ReportUnitsFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReportUnits;
51
+ export declare function ReportUnitsToJSON(json: any): ReportUnits;
52
+ export declare function ReportUnitsToJSONTyped(value?: ReportUnits | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,63 @@
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.0
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
+ * @export
16
+ */
17
+ export const ReportUnitsLengthEnum = {
18
+ Mm: 'mm',
19
+ };
20
+ /**
21
+ * @export
22
+ */
23
+ export const ReportUnitsAngleEnum = {
24
+ Deg: 'deg',
25
+ };
26
+ /**
27
+ * Check if a given object implements the ReportUnits interface.
28
+ */
29
+ export function instanceOfReportUnits(value) {
30
+ if (!('length' in value) || value['length'] === undefined)
31
+ return false;
32
+ if (value['length'] !== 'mm')
33
+ return false;
34
+ if (!('angle' in value) || value['angle'] === undefined)
35
+ return false;
36
+ if (value['angle'] !== 'deg')
37
+ return false;
38
+ return true;
39
+ }
40
+ export function ReportUnitsFromJSON(json) {
41
+ return ReportUnitsFromJSONTyped(json, false);
42
+ }
43
+ export function ReportUnitsFromJSONTyped(json, ignoreDiscriminator) {
44
+ if (json == null) {
45
+ return json;
46
+ }
47
+ return {
48
+ length: json['length'],
49
+ angle: json['angle'],
50
+ };
51
+ }
52
+ export function ReportUnitsToJSON(json) {
53
+ return ReportUnitsToJSONTyped(json, false);
54
+ }
55
+ export function ReportUnitsToJSONTyped(value, ignoreDiscriminator = false) {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+ return {
60
+ length: value['length'],
61
+ angle: value['angle'],
62
+ };
63
+ }
@@ -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.0
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
+ *
14
+ * @export
15
+ * @interface Vec3
16
+ */
17
+ export interface Vec3 {
18
+ /**
19
+ *
20
+ * @type {number}
21
+ * @memberof Vec3
22
+ */
23
+ x: number;
24
+ /**
25
+ *
26
+ * @type {number}
27
+ * @memberof Vec3
28
+ */
29
+ y: number;
30
+ /**
31
+ *
32
+ * @type {number}
33
+ * @memberof Vec3
34
+ */
35
+ z: number;
36
+ }
37
+ /**
38
+ * Check if a given object implements the Vec3 interface.
39
+ */
40
+ export declare function instanceOfVec3(value: object): value is Vec3;
41
+ export declare function Vec3FromJSON(json: any): Vec3;
42
+ export declare function Vec3FromJSONTyped(json: any, ignoreDiscriminator: boolean): Vec3;
43
+ export declare function Vec3ToJSON(json: any): Vec3;
44
+ export declare function Vec3ToJSONTyped(value?: Vec3 | null, ignoreDiscriminator?: boolean): any;