@healthcloudai/hc-safe-cdx 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -26
- package/dist/index.cjs +84 -220
- package/dist/index.d.cts +26 -63
- package/dist/index.d.ts +26 -63
- package/dist/index.js +89 -230
- package/package.json +3 -3
package/dist/index.d.cts
CHANGED
|
@@ -1,28 +1,8 @@
|
|
|
1
1
|
import { HCLoginClient } from '@healthcloudai/hc-login-connector';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export { Environment } from '@healthcloudai/hc-login-connector';
|
|
3
|
+
import { HCBaseConnector, HttpClient, APIResponse } from '@healthcloudai/hc-http';
|
|
4
|
+
export { APIError, APIResponse, ConfigError, HCServiceError, NetworkError, ValidationError } from '@healthcloudai/hc-http';
|
|
4
5
|
|
|
5
|
-
type Environment = "dev" | "uat" | "prod";
|
|
6
|
-
/**
|
|
7
|
-
* Health Cloud request envelope.
|
|
8
|
-
*
|
|
9
|
-
* SDK consumers provide only method arguments or the inner payload.
|
|
10
|
-
* HCSafeCDXClient creates the Data wrapper internally.
|
|
11
|
-
*/
|
|
12
|
-
interface APIRequest<T> {
|
|
13
|
-
Data: T;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Standard Health Cloud API response envelope.
|
|
17
|
-
*
|
|
18
|
-
* Connector methods return this response without unwrapping or transforming it.
|
|
19
|
-
* Data may be null when the backend returns an unsuccessful response.
|
|
20
|
-
*/
|
|
21
|
-
interface APIResponse<T> {
|
|
22
|
-
Data: T | null;
|
|
23
|
-
IsOK: boolean;
|
|
24
|
-
ErrorMessage: string | null;
|
|
25
|
-
}
|
|
26
6
|
/**
|
|
27
7
|
* SafeCDX service response.
|
|
28
8
|
*
|
|
@@ -417,11 +397,7 @@ type GetResultDetailsRequest = UserTestResultIdRequest;
|
|
|
417
397
|
type GetResultPdfRequest = UserTestResultIdRequest;
|
|
418
398
|
type GetImageCaptureUrlRequest = UserTestResultIdRequest;
|
|
419
399
|
type FinalizeTestRequest = UserTestResultIdRequest;
|
|
420
|
-
type GetPendingResultsData = SafeAPIResponse<TestResultSummary[]>;
|
|
421
|
-
type GetLastResultsData = SafeAPIResponse<TestResultDetails>;
|
|
422
|
-
type GetTestHistoryData = SafeAPIResponse<TestResultSummary[]>;
|
|
423
400
|
type GetResultDetailsResponse = SafeAPIResponse<TestResultDetails>;
|
|
424
|
-
type GetResultPdfData = SafeAPIResponse<string>;
|
|
425
401
|
type GetImageCaptureUrlResponse = SafeAPIResponse<string>;
|
|
426
402
|
interface ResumeFlowRequest extends UserTestResultIdRequest {
|
|
427
403
|
Resumed: boolean;
|
|
@@ -434,7 +410,6 @@ interface ResumeFlowResult {
|
|
|
434
410
|
failoverTriggered: boolean;
|
|
435
411
|
showValidity: boolean;
|
|
436
412
|
}
|
|
437
|
-
type ResumeFlowData = SafeAPIResponse<ResumeFlowResult>;
|
|
438
413
|
interface AnswerResult {
|
|
439
414
|
Analyte: string;
|
|
440
415
|
ReportedValue: string;
|
|
@@ -448,21 +423,16 @@ interface AnswerResult {
|
|
|
448
423
|
interface SubmitAnswersRequest extends UserTestResultIdRequest {
|
|
449
424
|
Result: AnswerResult[];
|
|
450
425
|
}
|
|
451
|
-
type SubmitAnswersData = SafeAPIResponse<EntityReferenceData>;
|
|
452
426
|
/**
|
|
453
427
|
* The client sends only UserTestResultId
|
|
454
428
|
|
|
455
429
|
*/
|
|
456
430
|
type FinalizeTestData = unknown;
|
|
457
431
|
|
|
458
|
-
declare class HCSafeCDXClient {
|
|
459
|
-
private readonly
|
|
460
|
-
private readonly loginClient;
|
|
432
|
+
declare class HCSafeCDXClient extends HCBaseConnector {
|
|
433
|
+
private readonly auth;
|
|
461
434
|
private readonly baseUrl;
|
|
462
|
-
private apiKeyHeaderName?;
|
|
463
|
-
private apiKeyValue?;
|
|
464
435
|
constructor(httpClient: HttpClient, loginClient: HCLoginClient);
|
|
465
|
-
setApiKey(headerName: string, value: string): void;
|
|
466
436
|
/**
|
|
467
437
|
* GET gs1/:gtin
|
|
468
438
|
* Resolves the SafeCDX test profile associated with a GTIN barcode.
|
|
@@ -470,11 +440,11 @@ declare class HCSafeCDXClient {
|
|
|
470
440
|
getTestProfileByGTIN(gtin: string): Promise<APIResponse<GetTestProfileByGTINData>>;
|
|
471
441
|
/**
|
|
472
442
|
* POST test/profiles/by-account
|
|
473
|
-
|
|
474
443
|
*
|
|
444
|
+
* Returns test profiles configured for the authenticated patient's account.
|
|
475
445
|
* TenantId is resolved by the backend from the authenticated patient context.
|
|
476
446
|
*/
|
|
477
|
-
|
|
447
|
+
listTestProfilesByAccount(includeRegisterTestDetails?: boolean): Promise<APIResponse<SafeAPIResponse<TestProfileByAccountItem[]>>>;
|
|
478
448
|
/**
|
|
479
449
|
* POST upload/url
|
|
480
450
|
* Requests a pre-signed URL used to upload a test image.
|
|
@@ -484,54 +454,47 @@ declare class HCSafeCDXClient {
|
|
|
484
454
|
* PUT preSignedURL
|
|
485
455
|
* Uploads the image directly to the pre-signed storage URL.
|
|
486
456
|
*
|
|
487
|
-
* This request does
|
|
488
|
-
*
|
|
457
|
+
* This request does NOT call a SafeCDX API route and does NOT send
|
|
458
|
+
* Health Cloud auth headers — it targets the storage provider directly.
|
|
459
|
+
* The pre-signed URL embeds credentials; no Authorization header is needed.
|
|
489
460
|
*/
|
|
490
461
|
uploadImage(preSignedURL: string, image: BodyInit, contentType?: string): Promise<void>;
|
|
491
462
|
/**
|
|
492
463
|
* POST cvml/status
|
|
493
|
-
*
|
|
464
|
+
* Updates the CVML processing status for an image capture.
|
|
494
465
|
*/
|
|
495
466
|
updateCvmlStatus(imageOfCaptureId: string, cvmlStatus: string): Promise<UpdateCvmlStatusResponse>;
|
|
496
467
|
/**
|
|
497
468
|
* GET cvml/results
|
|
498
|
-
* Returns the
|
|
469
|
+
* Returns the CVML analysis results for an image capture.
|
|
499
470
|
*/
|
|
500
471
|
getCvmlResults(imageOfCaptureId: string): Promise<GetCvmlResultsResponse>;
|
|
501
|
-
/** POST test/result/pending */
|
|
502
|
-
|
|
503
|
-
/** POST test/result/last */
|
|
504
|
-
getLastResults(excludeStatus?: string): Promise<APIResponse<
|
|
505
|
-
/** POST test/result/history */
|
|
506
|
-
|
|
472
|
+
/** POST test/result/pending — returns pending test results excluding the given statuses. */
|
|
473
|
+
listPendingResults(excludeStatus?: string): Promise<APIResponse<SafeAPIResponse<TestResultSummary[]>>>;
|
|
474
|
+
/** POST test/result/last — returns the most recent test result. */
|
|
475
|
+
getLastResults(excludeStatus?: string): Promise<APIResponse<SafeAPIResponse<TestResultDetails>>>;
|
|
476
|
+
/** POST test/result/history — returns all test results excluding the given statuses. */
|
|
477
|
+
listTestHistory(excludeStatus?: string): Promise<APIResponse<SafeAPIResponse<TestResultSummary[]>>>;
|
|
507
478
|
/**
|
|
508
479
|
* POST test/result/details
|
|
509
|
-
* Returns
|
|
480
|
+
* Returns full details for a single test result.
|
|
510
481
|
*/
|
|
511
482
|
getResultDetails(userTestResultId: string): Promise<GetResultDetailsResponse>;
|
|
512
|
-
/** POST test/result/pdf */
|
|
513
|
-
getResultPdf(userTestResultId: string): Promise<APIResponse<
|
|
483
|
+
/** POST test/result/pdf — returns the PDF report for a test result. */
|
|
484
|
+
getResultPdf(userTestResultId: string): Promise<APIResponse<SafeAPIResponse<string>>>;
|
|
514
485
|
/**
|
|
515
486
|
* POST test/result/image/capture
|
|
516
|
-
* Returns
|
|
487
|
+
* Returns a URL to capture an image for the given test result.
|
|
517
488
|
*/
|
|
518
489
|
getImageCaptureUrl(userTestResultId: string): Promise<GetImageCaptureUrlResponse>;
|
|
519
490
|
/** POST test/resume */
|
|
520
|
-
resumeFlow(userTestResultId: string, resumed?: boolean): Promise<APIResponse<
|
|
491
|
+
resumeFlow(userTestResultId: string, resumed?: boolean): Promise<APIResponse<SafeAPIResponse<ResumeFlowResult>>>;
|
|
521
492
|
/** POST test/answers */
|
|
522
|
-
submitAnswers(submission: SubmitAnswersRequest): Promise<APIResponse<
|
|
493
|
+
submitAnswers(submission: SubmitAnswersRequest): Promise<APIResponse<SafeAPIResponse<EntityReferenceData>>>;
|
|
523
494
|
/** POST test/finalize */
|
|
524
|
-
finalizeTest(userTestResultId: string): Promise<APIResponse<
|
|
525
|
-
protected execute<T>(operation: string, request: () => Promise<APIResponse<T>>): Promise<APIResponse<T>>;
|
|
526
|
-
protected executeSafe<T>(operation: string, request: () => Promise<SafeAPIResponse<T>>): Promise<SafeAPIResponse<T>>;
|
|
527
|
-
private executeRaw;
|
|
528
|
-
private isApiResponse;
|
|
529
|
-
private isSafeApiResponse;
|
|
530
|
-
private requireValue;
|
|
495
|
+
finalizeTest(userTestResultId: string): Promise<APIResponse<unknown>>;
|
|
531
496
|
private getAuthHeaders;
|
|
532
|
-
private getJsonHeaders;
|
|
533
|
-
private getApiKeyHeader;
|
|
534
497
|
private url;
|
|
535
498
|
}
|
|
536
499
|
|
|
537
|
-
export { type
|
|
500
|
+
export { type AnswerResult, type CaptureState, type CreateUploadUrlData, type CreateUploadUrlRequest, type CvmlImageOfCaptureResult, type CvmlParsedResult, type CvmlResultsData, type DiagnosticProfileCta, type DiagnosticProfileData, type DiagnosticProfileDecision, type DiagnosticProfileDecisionResult, type DiagnosticProfileIndication, type DiagnosticProfileTestInfo, type DisclaimerDetail, type EntityReferenceData, type ExcludeStatusRequest, type FinalizeTestData, type FinalizeTestRequest, type GetCvmlResultsResponse, type GetImageCaptureUrlRequest, type GetImageCaptureUrlResponse, type GetLastResultsRequest, type GetPendingResultsRequest, type GetResultDetailsRequest, type GetResultDetailsResponse, type GetResultPdfRequest, type GetTestHistoryRequest, type GetTestProfileByGTINData, type GetTestProfilesByAccountData, type GetTestProfilesByAccountRequest, HCSafeCDXClient, type ImageOfCaptureResult, type ProductAssetDetail, type QuestionnaireAnalyte, type QuestionnaireAnalyteResponse, type QuestionnaireSnapshot, type QuestionnaireValidityItem, type RegisterTestDetail, type ReportedAnswerResult, type ResumeFlowRequest, type ResumeFlowResult, type SafeAPIResponse, type SubmitAnswersRequest, type TestProfileAnalyte, type TestProfileAnalyteResponse, type TestProfileArticle, type TestProfileBillingInfo, type TestProfileByAccountItem, type TestProfileInstruction, type TestProfileResult, type TestProfileScanImageDetail, type TestProfileTerritory, type TestResultDetails, type TestResultSummary, type UpdateCvmlStatusRequest, type UpdateCvmlStatusResponse, type UploadMetadata, type UserTestResultIdRequest };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,28 +1,8 @@
|
|
|
1
1
|
import { HCLoginClient } from '@healthcloudai/hc-login-connector';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export { Environment } from '@healthcloudai/hc-login-connector';
|
|
3
|
+
import { HCBaseConnector, HttpClient, APIResponse } from '@healthcloudai/hc-http';
|
|
4
|
+
export { APIError, APIResponse, ConfigError, HCServiceError, NetworkError, ValidationError } from '@healthcloudai/hc-http';
|
|
4
5
|
|
|
5
|
-
type Environment = "dev" | "uat" | "prod";
|
|
6
|
-
/**
|
|
7
|
-
* Health Cloud request envelope.
|
|
8
|
-
*
|
|
9
|
-
* SDK consumers provide only method arguments or the inner payload.
|
|
10
|
-
* HCSafeCDXClient creates the Data wrapper internally.
|
|
11
|
-
*/
|
|
12
|
-
interface APIRequest<T> {
|
|
13
|
-
Data: T;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Standard Health Cloud API response envelope.
|
|
17
|
-
*
|
|
18
|
-
* Connector methods return this response without unwrapping or transforming it.
|
|
19
|
-
* Data may be null when the backend returns an unsuccessful response.
|
|
20
|
-
*/
|
|
21
|
-
interface APIResponse<T> {
|
|
22
|
-
Data: T | null;
|
|
23
|
-
IsOK: boolean;
|
|
24
|
-
ErrorMessage: string | null;
|
|
25
|
-
}
|
|
26
6
|
/**
|
|
27
7
|
* SafeCDX service response.
|
|
28
8
|
*
|
|
@@ -417,11 +397,7 @@ type GetResultDetailsRequest = UserTestResultIdRequest;
|
|
|
417
397
|
type GetResultPdfRequest = UserTestResultIdRequest;
|
|
418
398
|
type GetImageCaptureUrlRequest = UserTestResultIdRequest;
|
|
419
399
|
type FinalizeTestRequest = UserTestResultIdRequest;
|
|
420
|
-
type GetPendingResultsData = SafeAPIResponse<TestResultSummary[]>;
|
|
421
|
-
type GetLastResultsData = SafeAPIResponse<TestResultDetails>;
|
|
422
|
-
type GetTestHistoryData = SafeAPIResponse<TestResultSummary[]>;
|
|
423
400
|
type GetResultDetailsResponse = SafeAPIResponse<TestResultDetails>;
|
|
424
|
-
type GetResultPdfData = SafeAPIResponse<string>;
|
|
425
401
|
type GetImageCaptureUrlResponse = SafeAPIResponse<string>;
|
|
426
402
|
interface ResumeFlowRequest extends UserTestResultIdRequest {
|
|
427
403
|
Resumed: boolean;
|
|
@@ -434,7 +410,6 @@ interface ResumeFlowResult {
|
|
|
434
410
|
failoverTriggered: boolean;
|
|
435
411
|
showValidity: boolean;
|
|
436
412
|
}
|
|
437
|
-
type ResumeFlowData = SafeAPIResponse<ResumeFlowResult>;
|
|
438
413
|
interface AnswerResult {
|
|
439
414
|
Analyte: string;
|
|
440
415
|
ReportedValue: string;
|
|
@@ -448,21 +423,16 @@ interface AnswerResult {
|
|
|
448
423
|
interface SubmitAnswersRequest extends UserTestResultIdRequest {
|
|
449
424
|
Result: AnswerResult[];
|
|
450
425
|
}
|
|
451
|
-
type SubmitAnswersData = SafeAPIResponse<EntityReferenceData>;
|
|
452
426
|
/**
|
|
453
427
|
* The client sends only UserTestResultId
|
|
454
428
|
|
|
455
429
|
*/
|
|
456
430
|
type FinalizeTestData = unknown;
|
|
457
431
|
|
|
458
|
-
declare class HCSafeCDXClient {
|
|
459
|
-
private readonly
|
|
460
|
-
private readonly loginClient;
|
|
432
|
+
declare class HCSafeCDXClient extends HCBaseConnector {
|
|
433
|
+
private readonly auth;
|
|
461
434
|
private readonly baseUrl;
|
|
462
|
-
private apiKeyHeaderName?;
|
|
463
|
-
private apiKeyValue?;
|
|
464
435
|
constructor(httpClient: HttpClient, loginClient: HCLoginClient);
|
|
465
|
-
setApiKey(headerName: string, value: string): void;
|
|
466
436
|
/**
|
|
467
437
|
* GET gs1/:gtin
|
|
468
438
|
* Resolves the SafeCDX test profile associated with a GTIN barcode.
|
|
@@ -470,11 +440,11 @@ declare class HCSafeCDXClient {
|
|
|
470
440
|
getTestProfileByGTIN(gtin: string): Promise<APIResponse<GetTestProfileByGTINData>>;
|
|
471
441
|
/**
|
|
472
442
|
* POST test/profiles/by-account
|
|
473
|
-
|
|
474
443
|
*
|
|
444
|
+
* Returns test profiles configured for the authenticated patient's account.
|
|
475
445
|
* TenantId is resolved by the backend from the authenticated patient context.
|
|
476
446
|
*/
|
|
477
|
-
|
|
447
|
+
listTestProfilesByAccount(includeRegisterTestDetails?: boolean): Promise<APIResponse<SafeAPIResponse<TestProfileByAccountItem[]>>>;
|
|
478
448
|
/**
|
|
479
449
|
* POST upload/url
|
|
480
450
|
* Requests a pre-signed URL used to upload a test image.
|
|
@@ -484,54 +454,47 @@ declare class HCSafeCDXClient {
|
|
|
484
454
|
* PUT preSignedURL
|
|
485
455
|
* Uploads the image directly to the pre-signed storage URL.
|
|
486
456
|
*
|
|
487
|
-
* This request does
|
|
488
|
-
*
|
|
457
|
+
* This request does NOT call a SafeCDX API route and does NOT send
|
|
458
|
+
* Health Cloud auth headers — it targets the storage provider directly.
|
|
459
|
+
* The pre-signed URL embeds credentials; no Authorization header is needed.
|
|
489
460
|
*/
|
|
490
461
|
uploadImage(preSignedURL: string, image: BodyInit, contentType?: string): Promise<void>;
|
|
491
462
|
/**
|
|
492
463
|
* POST cvml/status
|
|
493
|
-
*
|
|
464
|
+
* Updates the CVML processing status for an image capture.
|
|
494
465
|
*/
|
|
495
466
|
updateCvmlStatus(imageOfCaptureId: string, cvmlStatus: string): Promise<UpdateCvmlStatusResponse>;
|
|
496
467
|
/**
|
|
497
468
|
* GET cvml/results
|
|
498
|
-
* Returns the
|
|
469
|
+
* Returns the CVML analysis results for an image capture.
|
|
499
470
|
*/
|
|
500
471
|
getCvmlResults(imageOfCaptureId: string): Promise<GetCvmlResultsResponse>;
|
|
501
|
-
/** POST test/result/pending */
|
|
502
|
-
|
|
503
|
-
/** POST test/result/last */
|
|
504
|
-
getLastResults(excludeStatus?: string): Promise<APIResponse<
|
|
505
|
-
/** POST test/result/history */
|
|
506
|
-
|
|
472
|
+
/** POST test/result/pending — returns pending test results excluding the given statuses. */
|
|
473
|
+
listPendingResults(excludeStatus?: string): Promise<APIResponse<SafeAPIResponse<TestResultSummary[]>>>;
|
|
474
|
+
/** POST test/result/last — returns the most recent test result. */
|
|
475
|
+
getLastResults(excludeStatus?: string): Promise<APIResponse<SafeAPIResponse<TestResultDetails>>>;
|
|
476
|
+
/** POST test/result/history — returns all test results excluding the given statuses. */
|
|
477
|
+
listTestHistory(excludeStatus?: string): Promise<APIResponse<SafeAPIResponse<TestResultSummary[]>>>;
|
|
507
478
|
/**
|
|
508
479
|
* POST test/result/details
|
|
509
|
-
* Returns
|
|
480
|
+
* Returns full details for a single test result.
|
|
510
481
|
*/
|
|
511
482
|
getResultDetails(userTestResultId: string): Promise<GetResultDetailsResponse>;
|
|
512
|
-
/** POST test/result/pdf */
|
|
513
|
-
getResultPdf(userTestResultId: string): Promise<APIResponse<
|
|
483
|
+
/** POST test/result/pdf — returns the PDF report for a test result. */
|
|
484
|
+
getResultPdf(userTestResultId: string): Promise<APIResponse<SafeAPIResponse<string>>>;
|
|
514
485
|
/**
|
|
515
486
|
* POST test/result/image/capture
|
|
516
|
-
* Returns
|
|
487
|
+
* Returns a URL to capture an image for the given test result.
|
|
517
488
|
*/
|
|
518
489
|
getImageCaptureUrl(userTestResultId: string): Promise<GetImageCaptureUrlResponse>;
|
|
519
490
|
/** POST test/resume */
|
|
520
|
-
resumeFlow(userTestResultId: string, resumed?: boolean): Promise<APIResponse<
|
|
491
|
+
resumeFlow(userTestResultId: string, resumed?: boolean): Promise<APIResponse<SafeAPIResponse<ResumeFlowResult>>>;
|
|
521
492
|
/** POST test/answers */
|
|
522
|
-
submitAnswers(submission: SubmitAnswersRequest): Promise<APIResponse<
|
|
493
|
+
submitAnswers(submission: SubmitAnswersRequest): Promise<APIResponse<SafeAPIResponse<EntityReferenceData>>>;
|
|
523
494
|
/** POST test/finalize */
|
|
524
|
-
finalizeTest(userTestResultId: string): Promise<APIResponse<
|
|
525
|
-
protected execute<T>(operation: string, request: () => Promise<APIResponse<T>>): Promise<APIResponse<T>>;
|
|
526
|
-
protected executeSafe<T>(operation: string, request: () => Promise<SafeAPIResponse<T>>): Promise<SafeAPIResponse<T>>;
|
|
527
|
-
private executeRaw;
|
|
528
|
-
private isApiResponse;
|
|
529
|
-
private isSafeApiResponse;
|
|
530
|
-
private requireValue;
|
|
495
|
+
finalizeTest(userTestResultId: string): Promise<APIResponse<unknown>>;
|
|
531
496
|
private getAuthHeaders;
|
|
532
|
-
private getJsonHeaders;
|
|
533
|
-
private getApiKeyHeader;
|
|
534
497
|
private url;
|
|
535
498
|
}
|
|
536
499
|
|
|
537
|
-
export { type
|
|
500
|
+
export { type AnswerResult, type CaptureState, type CreateUploadUrlData, type CreateUploadUrlRequest, type CvmlImageOfCaptureResult, type CvmlParsedResult, type CvmlResultsData, type DiagnosticProfileCta, type DiagnosticProfileData, type DiagnosticProfileDecision, type DiagnosticProfileDecisionResult, type DiagnosticProfileIndication, type DiagnosticProfileTestInfo, type DisclaimerDetail, type EntityReferenceData, type ExcludeStatusRequest, type FinalizeTestData, type FinalizeTestRequest, type GetCvmlResultsResponse, type GetImageCaptureUrlRequest, type GetImageCaptureUrlResponse, type GetLastResultsRequest, type GetPendingResultsRequest, type GetResultDetailsRequest, type GetResultDetailsResponse, type GetResultPdfRequest, type GetTestHistoryRequest, type GetTestProfileByGTINData, type GetTestProfilesByAccountData, type GetTestProfilesByAccountRequest, HCSafeCDXClient, type ImageOfCaptureResult, type ProductAssetDetail, type QuestionnaireAnalyte, type QuestionnaireAnalyteResponse, type QuestionnaireSnapshot, type QuestionnaireValidityItem, type RegisterTestDetail, type ReportedAnswerResult, type ResumeFlowRequest, type ResumeFlowResult, type SafeAPIResponse, type SubmitAnswersRequest, type TestProfileAnalyte, type TestProfileAnalyteResponse, type TestProfileArticle, type TestProfileBillingInfo, type TestProfileByAccountItem, type TestProfileInstruction, type TestProfileResult, type TestProfileScanImageDetail, type TestProfileTerritory, type TestResultDetails, type TestResultSummary, type UpdateCvmlStatusRequest, type UpdateCvmlStatusResponse, type UploadMetadata, type UserTestResultIdRequest };
|