gdc-sdk-node-ts 2.3.4 → 2.3.5

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 CHANGED
@@ -647,6 +647,10 @@ modules below.
647
647
  - [`NodeHttpClient.ingestCommunicationAndUpdateIndex(...)`](src/node-runtime-client.ts)
648
648
  - [`NodeHttpClient.submitCommunicationAndPoll(...)`](src/node-runtime-client.ts)
649
649
  - [`NodeHttpClient.searchClinicalBundle(...)`](src/node-runtime-client.ts)
650
+ - [`NodeHttpClient.updateClinicalSection(...)`](src/node-runtime-client.ts) for
651
+ one explicit section carried by a batch/collection Communication
652
+ - [`NodeHttpClient.updateClinicalSummary(...)`](src/node-runtime-client.ts) for
653
+ a Composition-first multi-section document
650
654
  - [`NodeHttpClient.searchLatestIps(...)`](src/node-runtime-client.ts)
651
655
  - [`NodeHttpClient.grantProfessionalAccess(...)`](src/node-runtime-client.ts)
652
656
  - [`NodeHttpClient.requestSmartToken(...)`](src/node-runtime-client.ts)
@@ -11,7 +11,7 @@ import { type SmartTokenRequestInput } from './smart-token.js';
11
11
  import { type EmployeeDeviceActivationRequestInput, type EmployeeDeviceActivationResult } from './device-activation.js';
12
12
  import { type OrganizationLicenseOrderConfirmInput } from './organization-license-order.js';
13
13
  import { type IndividualOrganizationBootstrapInput, type IndividualOrganizationStartResult } from './individual-start.js';
14
- import { type CommunicationIngestionInput, type BlockchainArtifactRegistrationInput, type VitalSignBatchCommunicationFromSearchResponseInput, type CommunicationParticipantRuntimeSearchInput, type ClinicalBundleSearchInput, type ClinicalSummaryReadResult, type ClinicalSummaryRequestInput, type GrantProfessionalAccessInput, type GrantProfessionalAccessResult, type IndividualMemberLifecycleInput, type IndividualMemberLicenseAddInput, type IndividualMemberLicenseInvitationInput, type IndividualMemberLicenseTransitionInput, type LicenseListRuntimeSearchInput, type LicenseOfferRuntimeSearchInput, type LicenseOrderRuntimeSearchInput, type OrganizationEmployeeCreationInput, type OrganizationEmployeeLifecycleInput, type OrganizationEmployeeSearchInput, type RevokeProfessionalAccessInput, type RevokeProfessionalAccessResult, type RelatedPersonUpsertInput } from './resource-operations.js';
14
+ import { type CommunicationIngestionInput, type BlockchainArtifactRegistrationInput, type VitalSignBatchCommunicationFromSearchResponseInput, type CommunicationParticipantRuntimeSearchInput, type ClinicalBundleSearchInput, type ClinicalSectionUpdateInput, type ClinicalSummaryReadResult, type ClinicalSummaryRequestInput, type ClinicalSummaryUpdateInput, type GrantProfessionalAccessInput, type GrantProfessionalAccessResult, type IndividualMemberLifecycleInput, type IndividualMemberLicenseAddInput, type IndividualMemberLicenseInvitationInput, type IndividualMemberLicenseTransitionInput, type LicenseListRuntimeSearchInput, type LicenseOfferRuntimeSearchInput, type LicenseOrderRuntimeSearchInput, type OrganizationEmployeeCreationInput, type OrganizationEmployeeLifecycleInput, type OrganizationEmployeeSearchInput, type RevokeProfessionalAccessInput, type RevokeProfessionalAccessResult, type RelatedPersonUpsertInput } from './resource-operations.js';
15
15
  import type { LegalOrganizationOrderInput } from './host-onboarding.js';
16
16
  import type { SmartTokenExchangeResult } from './smart-token.js';
17
17
  import type { NodeRuntimeClient, PollOptions, PollResult, SubmitAndPollResult, SubmitPayload, SubmitResponse } from './orchestration/client-port.js';
@@ -402,6 +402,22 @@ export declare class HttpRuntimeClient implements NodeRuntimeClient {
402
402
  * @param input Communication payload plus route/format options.
403
403
  */
404
404
  ingestCommunicationAndUpdateIndex(ctx: RouteContext, input: CommunicationIngestionInput): Promise<SubmitAndPollResult>;
405
+ /**
406
+ * Updates exactly one clinical section.
407
+ *
408
+ * The attached payload must be a `Bundle.type=batch|collection`, and the
409
+ * exact section is carried on the outer Communication. This flow is suitable
410
+ * for vital-sign or other explicitly section-scoped updates; it does not
411
+ * replace a multi-section IPS document.
412
+ */
413
+ updateClinicalSection(ctx: RouteContext, input: ClinicalSectionUpdateInput): Promise<SubmitAndPollResult>;
414
+ /**
415
+ * Updates several clinical sections as one Composition-first document.
416
+ *
417
+ * The attached payload must be `Bundle.type=document` with `Composition` in
418
+ * `entry[0]`; its `section[].entry[]` references delimit the updated data.
419
+ */
420
+ updateClinicalSummary(ctx: RouteContext, input: ClinicalSummaryUpdateInput): Promise<SubmitAndPollResult>;
405
421
  /**
406
422
  * Reads the authoritative clinical document currently available for one
407
423
  * subject through an auditable `Communication` request to `Subject/$summary`.
@@ -12,7 +12,7 @@ import { activateEmployeeDeviceWithActivationCodeWithDeps, activateEmployeeDevic
12
12
  import { extractOfferIdFromResponseBody, extractOfferPreviewFromResponseBody, } from './order-offer-summary.js';
13
13
  import { confirmOrganizationLicenseOrderWithDeps } from './organization-license-order.js';
14
14
  import { startIndividualOrganizationWithDeps } from './individual-start.js';
15
- import { createOrganizationEmployeeWithDeps, disableIndividualMemberWithDeps, disableIndividualOrganizationWithDeps, disableOrganizationEmployeeWithDeps, listIndividualLicenseOffersWithDeps, listIndividualLicenseOrdersWithDeps, listIndividualLicensesWithDeps, addFreeIndividualMemberLicensesWithDeps, issueIndividualMemberLicenseWithDeps, transitionIndividualMemberLicenseWithDeps, listOrganizationLicenseOffersWithDeps, listOrganizationLicenseOrdersWithDeps, listOrganizationLicensesWithDeps, grantProfessionalAccessWithDeps, ingestCommunicationAndUpdateIndexWithDeps, buildVitalSignBatchCommunicationFromSearchResponse, registerBlockchainArtifactAndUpdateIndexWithDeps, requestClinicalSummaryWithDeps, revokeProfessionalAccessWithDeps, searchCommunicationParticipantsWithDeps, purgeIndividualMemberWithDeps, purgeIndividualOrganizationWithDeps, purgeOrganizationEmployeeWithDeps, searchIndividualLicensesWithDeps, searchIndividualLicenseOffersWithDeps, searchIndividualLicenseOrdersWithDeps, searchOrganizationLicensesWithDeps, searchOrganizationLicenseOffersWithDeps, searchOrganizationLicenseOrdersWithDeps, searchOrganizationEmployeesWithDeps, searchClinicalBundleWithDeps, searchLatestIpsWithDeps, upsertRelatedPersonAndPollWithDeps, normalizeCommunicationPathFormatSegment, } from './resource-operations.js';
15
+ import { createOrganizationEmployeeWithDeps, disableIndividualMemberWithDeps, disableIndividualOrganizationWithDeps, disableOrganizationEmployeeWithDeps, listIndividualLicenseOffersWithDeps, listIndividualLicenseOrdersWithDeps, listIndividualLicensesWithDeps, addFreeIndividualMemberLicensesWithDeps, issueIndividualMemberLicenseWithDeps, transitionIndividualMemberLicenseWithDeps, listOrganizationLicenseOffersWithDeps, listOrganizationLicenseOrdersWithDeps, listOrganizationLicensesWithDeps, grantProfessionalAccessWithDeps, buildClinicalSectionUpdateIngestion, buildClinicalSummaryUpdateIngestion, ingestCommunicationAndUpdateIndexWithDeps, buildVitalSignBatchCommunicationFromSearchResponse, registerBlockchainArtifactAndUpdateIndexWithDeps, requestClinicalSummaryWithDeps, revokeProfessionalAccessWithDeps, searchCommunicationParticipantsWithDeps, purgeIndividualMemberWithDeps, purgeIndividualOrganizationWithDeps, purgeOrganizationEmployeeWithDeps, searchIndividualLicensesWithDeps, searchIndividualLicenseOffersWithDeps, searchIndividualLicenseOrdersWithDeps, searchOrganizationLicensesWithDeps, searchOrganizationLicenseOffersWithDeps, searchOrganizationLicenseOrdersWithDeps, searchOrganizationEmployeesWithDeps, searchClinicalBundleWithDeps, searchLatestIpsWithDeps, upsertRelatedPersonAndPollWithDeps, normalizeCommunicationPathFormatSegment, } from './resource-operations.js';
16
16
  import { submitAndPollWithMethods } from './orchestration/client-port.js';
17
17
  import { buildRuntimeHeaders, fetchWithTimeout, parseResponseBody, pollBatchResponseWithRuntimeConfig, postJsonWithRuntimeConfig, postRenderedWithRuntimeConfig, } from './runtime-transport.js';
18
18
  import { activateOrganizationInGatewayFromIcaProofWithDeps, submitLegalOrganizationIssueWithDeps, submitLegalOrganizationVerificationTransactionWithDeps, submitOrganizationDidBindingWithDeps, } from './runtime-host-submission.js';
@@ -743,6 +743,26 @@ export class HttpRuntimeClient {
743
743
  submitAndPoll: this.submitAndPoll.bind(this),
744
744
  });
745
745
  }
746
+ /**
747
+ * Updates exactly one clinical section.
748
+ *
749
+ * The attached payload must be a `Bundle.type=batch|collection`, and the
750
+ * exact section is carried on the outer Communication. This flow is suitable
751
+ * for vital-sign or other explicitly section-scoped updates; it does not
752
+ * replace a multi-section IPS document.
753
+ */
754
+ async updateClinicalSection(ctx, input) {
755
+ return this.ingestCommunicationAndUpdateIndex(ctx, buildClinicalSectionUpdateIngestion(input));
756
+ }
757
+ /**
758
+ * Updates several clinical sections as one Composition-first document.
759
+ *
760
+ * The attached payload must be `Bundle.type=document` with `Composition` in
761
+ * `entry[0]`; its `section[].entry[]` references delimit the updated data.
762
+ */
763
+ async updateClinicalSummary(ctx, input) {
764
+ return this.ingestCommunicationAndUpdateIndex(ctx, buildClinicalSummaryUpdateIngestion(input));
765
+ }
746
766
  /**
747
767
  * Reads the authoritative clinical document currently available for one
748
768
  * subject through an auditable `Communication` request to `Subject/$summary`.
@@ -13,7 +13,7 @@ import type { FamilyOrganizationSearchInput } from '../family-organization-searc
13
13
  import type { EnsureFamilyOrganizationRegistrationInput, EnsureFamilyOrganizationRegistrationResult } from '../family-organization-registration.js';
14
14
  import type { OrganizationLicenseOrderConfirmInput } from '../organization-license-order.js';
15
15
  import type { SmartTokenExchangeResult, SmartTokenRequestInput } from '../smart-token.js';
16
- import type { CommunicationIngestionInput, BlockchainArtifactRegistrationInput, CommunicationParticipantRuntimeSearchInput, ClinicalBundleSearchInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, VitalSignBatchCommunicationFromSearchResponseInput, DigitalTwinGenerationInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, IndividualMemberLifecycleInput, IndividualMemberLicenseAddInput, IndividualMemberLicenseInvitationInput, IndividualMemberLicenseTransitionInput, IpsOrFhirImportInput, OrganizationEmployeeCreationInput, OrganizationEmployeeLifecycleInput, OrganizationEmployeeSearchInput, RevokeProfessionalAccessInput, RevokeProfessionalAccessResult, RelatedPersonUpsertInput } from '../resource-operations.js';
16
+ import type { CommunicationIngestionInput, BlockchainArtifactRegistrationInput, CommunicationParticipantRuntimeSearchInput, ClinicalBundleSearchInput, ClinicalSectionUpdateInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, ClinicalSummaryUpdateInput, VitalSignBatchCommunicationFromSearchResponseInput, DigitalTwinGenerationInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, IndividualMemberLifecycleInput, IndividualMemberLicenseAddInput, IndividualMemberLicenseInvitationInput, IndividualMemberLicenseTransitionInput, IpsOrFhirImportInput, OrganizationEmployeeCreationInput, OrganizationEmployeeLifecycleInput, OrganizationEmployeeSearchInput, RevokeProfessionalAccessInput, RevokeProfessionalAccessResult, RelatedPersonUpsertInput } from '../resource-operations.js';
17
17
  /**
18
18
  * Shared node-runtime activation input.
19
19
  *
@@ -89,6 +89,8 @@ export type RuntimeClient = {
89
89
  disableIndividualOrganization?: (ctx: RouteContext, input: IndividualOrganizationLifecycleInput, pollOptions?: PollOptions) => Promise<SubmitAndPollResult>;
90
90
  purgeIndividualOrganization?: (ctx: RouteContext, input: IndividualOrganizationLifecycleInput, pollOptions?: PollOptions) => Promise<SubmitAndPollResult>;
91
91
  ingestCommunicationAndUpdateIndex?: (ctx: RouteContext, input: CommunicationIngestionInput) => Promise<SubmitAndPollResult>;
92
+ updateClinicalSection?: (ctx: RouteContext, input: ClinicalSectionUpdateInput) => Promise<SubmitAndPollResult>;
93
+ updateClinicalSummary?: (ctx: RouteContext, input: ClinicalSummaryUpdateInput) => Promise<SubmitAndPollResult>;
92
94
  requestClinicalSummary?: (ctx: RouteContext, input: ClinicalSummaryRequestInput) => Promise<ClinicalSummaryReadResult>;
93
95
  registerBlockchainArtifactAndUpdateIndex?: (ctx: RouteContext, input: BlockchainArtifactRegistrationInput) => Promise<SubmitAndPollResult>;
94
96
  searchCommunicationParticipants?: (ctx: RouteContext, input: CommunicationParticipantRuntimeSearchInput) => Promise<SubmitAndPollResult>;
@@ -7,7 +7,7 @@ import type { IndividualOrganizationConfirmOrderInput, RouteContext } from '../i
7
7
  import type { IndividualOrganizationBootstrapInput, IndividualOrganizationStartResult } from '../individual-start.js';
8
8
  import type { NodeCapability } from '../session.js';
9
9
  import type { IndividualOrganizationLifecycleInput } from 'gdc-sdk-core-ts';
10
- import type { BlockchainArtifactRegistrationInput, ClinicalBundleSearchInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, CommunicationIngestionInput, CommunicationParticipantRuntimeSearchInput, DigitalTwinGenerationInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, IndividualMemberLifecycleInput, IndividualMemberLicenseAddInput, IndividualMemberLicenseInvitationInput, IndividualMemberLicenseTransitionInput, IpsOrFhirImportInput, LicenseListRuntimeSearchInput, LicenseOfferRuntimeSearchInput, LicenseOrderRuntimeSearchInput, RevokeProfessionalAccessInput, RevokeProfessionalAccessResult, RelatedPersonUpsertInput } from '../resource-operations.js';
10
+ import type { BlockchainArtifactRegistrationInput, ClinicalBundleSearchInput, ClinicalSectionUpdateInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, ClinicalSummaryUpdateInput, CommunicationIngestionInput, CommunicationParticipantRuntimeSearchInput, DigitalTwinGenerationInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, IndividualMemberLifecycleInput, IndividualMemberLicenseAddInput, IndividualMemberLicenseInvitationInput, IndividualMemberLicenseTransitionInput, IpsOrFhirImportInput, LicenseListRuntimeSearchInput, LicenseOfferRuntimeSearchInput, LicenseOrderRuntimeSearchInput, RevokeProfessionalAccessInput, RevokeProfessionalAccessResult, RelatedPersonUpsertInput } from '../resource-operations.js';
11
11
  import type { SmartTokenExchangeResult, SmartTokenRequestInput } from '../smart-token.js';
12
12
  /**
13
13
  * Individual-controller oriented facade over a `NodeRuntimeClient`.
@@ -90,6 +90,10 @@ export declare class IndividualControllerSdk {
90
90
  * Ingests a FHIR `Communication` and waits for indexing.
91
91
  */
92
92
  ingestCommunicationAndUpdateIndex(ctx: RouteContext, input: CommunicationIngestionInput): Promise<SubmitAndPollResult>;
93
+ /** Updates one exact clinical section through a section-scoped batch/collection. */
94
+ updateClinicalSection(ctx: RouteContext, input: ClinicalSectionUpdateInput): Promise<SubmitAndPollResult>;
95
+ /** Updates the multi-section summary through a Composition-first document. */
96
+ updateClinicalSummary(ctx: RouteContext, input: ClinicalSummaryUpdateInput): Promise<SubmitAndPollResult>;
93
97
  /**
94
98
  * Reads the subject's available clinical document through
95
99
  * `Communication -> Subject/$summary -> FHIR Parameters`.
@@ -128,6 +128,16 @@ export class IndividualControllerSdk {
128
128
  assertFacadeCapability(this.capabilities, ActorCapabilities.IndividualIngestCommunication, ActorKinds.IndividualController, 'ingestCommunicationAndUpdateIndex');
129
129
  return requireClientMethod(this.client, 'ingestCommunicationAndUpdateIndex')(ctx, input);
130
130
  }
131
+ /** Updates one exact clinical section through a section-scoped batch/collection. */
132
+ updateClinicalSection(ctx, input) {
133
+ assertFacadeCapability(this.capabilities, ActorCapabilities.IndividualIngestCommunication, ActorKinds.IndividualController, 'updateClinicalSection');
134
+ return requireClientMethod(this.client, 'updateClinicalSection')(ctx, input);
135
+ }
136
+ /** Updates the multi-section summary through a Composition-first document. */
137
+ updateClinicalSummary(ctx, input) {
138
+ assertFacadeCapability(this.capabilities, ActorCapabilities.IndividualIngestCommunication, ActorKinds.IndividualController, 'updateClinicalSummary');
139
+ return requireClientMethod(this.client, 'updateClinicalSummary')(ctx, input);
140
+ }
131
141
  /**
132
142
  * Reads the subject's available clinical document through
133
143
  * `Communication -> Subject/$summary -> FHIR Parameters`.
@@ -2,7 +2,7 @@ import { type IndividualMemberCredentialInput, type IndividualMemberVpPayloadInp
2
2
  import { type NodeRuntimeClient } from './client-port.js';
3
3
  import type { SmartTokenExchangeResult, SmartTokenRequestInput } from '../smart-token.js';
4
4
  import type { RouteContext } from '../individual-onboarding.js';
5
- import type { ClinicalBundleSearchInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, CommunicationIngestionInput, RelatedPersonUpsertInput } from '../resource-operations.js';
5
+ import type { ClinicalBundleSearchInput, ClinicalSectionUpdateInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, ClinicalSummaryUpdateInput, CommunicationIngestionInput, RelatedPersonUpsertInput } from '../resource-operations.js';
6
6
  export declare class IndividualMemberSdk {
7
7
  private readonly client;
8
8
  constructor(client: NodeRuntimeClient);
@@ -23,6 +23,10 @@ export declare class IndividualMemberSdk {
23
23
  * SMART token and accepted RelatedPerson/Consent relationship.
24
24
  */
25
25
  ingestCommunicationAndUpdateIndex(ctx: RouteContext, input: CommunicationIngestionInput): Promise<import("gdc-sdk-core-ts/polling-model.js").SubmitAndPollResult>;
26
+ /** Updates one authorized clinical section through a scoped batch/collection. */
27
+ updateClinicalSection(ctx: RouteContext, input: ClinicalSectionUpdateInput): Promise<import("gdc-sdk-core-ts/polling-model.js").SubmitAndPollResult>;
28
+ /** Updates an authorized multi-section summary document. */
29
+ updateClinicalSummary(ctx: RouteContext, input: ClinicalSummaryUpdateInput): Promise<import("gdc-sdk-core-ts/polling-model.js").SubmitAndPollResult>;
26
30
  /** Reads the member-authorized `$summary` document without mutating the subject index. */
27
31
  requestClinicalSummary(ctx: RouteContext, input: ClinicalSummaryRequestInput): Promise<ClinicalSummaryReadResult>;
28
32
  /** Reads subject-scoped clinical documents permitted to this member. */
@@ -28,6 +28,14 @@ export class IndividualMemberSdk {
28
28
  ingestCommunicationAndUpdateIndex(ctx, input) {
29
29
  return requireClientMethod(this.client, 'ingestCommunicationAndUpdateIndex')(ctx, input);
30
30
  }
31
+ /** Updates one authorized clinical section through a scoped batch/collection. */
32
+ updateClinicalSection(ctx, input) {
33
+ return requireClientMethod(this.client, 'updateClinicalSection')(ctx, input);
34
+ }
35
+ /** Updates an authorized multi-section summary document. */
36
+ updateClinicalSummary(ctx, input) {
37
+ return requireClientMethod(this.client, 'updateClinicalSummary')(ctx, input);
38
+ }
31
39
  /** Reads the member-authorized `$summary` document without mutating the subject index. */
32
40
  requestClinicalSummary(ctx, input) {
33
41
  return requireClientMethod(this.client, 'requestClinicalSummary')(ctx, input);
@@ -1,7 +1,7 @@
1
1
  import { type NodeRuntimeClient, type PollOptions, type SubmitAndPollResult, type SubmitPayload } from './client-port.js';
2
2
  import type { IndividualOrganizationBootstrapInput, IndividualOrganizationStartResult } from '../individual-start.js';
3
3
  import type { RouteContext } from '../individual-onboarding.js';
4
- import type { BlockchainArtifactRegistrationInput, ClinicalBundleSearchInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, CommunicationIngestionInput, CommunicationParticipantRuntimeSearchInput, DigitalTwinGenerationInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, IpsOrFhirImportInput, LicenseListRuntimeSearchInput, LicenseOfferRuntimeSearchInput, LicenseOrderRuntimeSearchInput } from '../resource-operations.js';
4
+ import type { BlockchainArtifactRegistrationInput, ClinicalBundleSearchInput, ClinicalSectionUpdateInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, ClinicalSummaryUpdateInput, CommunicationIngestionInput, CommunicationParticipantRuntimeSearchInput, DigitalTwinGenerationInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, IpsOrFhirImportInput, LicenseListRuntimeSearchInput, LicenseOfferRuntimeSearchInput, LicenseOrderRuntimeSearchInput } from '../resource-operations.js';
5
5
  import type { SmartTokenExchangeResult, SmartTokenRequestInput } from '../smart-token.js';
6
6
  export declare class PersonalSdk {
7
7
  private readonly client;
@@ -14,6 +14,10 @@ export declare class PersonalSdk {
14
14
  importIpsOrFhirAndUpdateIndex(ctx: RouteContext, input: IpsOrFhirImportInput): Promise<SubmitAndPollResult>;
15
15
  /** Ingests canonical Communication and waits for projection completion. */
16
16
  ingestCommunicationAndUpdateIndex(ctx: RouteContext, input: CommunicationIngestionInput): Promise<SubmitAndPollResult>;
17
+ /** Updates one exact clinical section through a section-scoped batch/collection. */
18
+ updateClinicalSection(ctx: RouteContext, input: ClinicalSectionUpdateInput): Promise<SubmitAndPollResult>;
19
+ /** Updates the multi-section clinical summary through a Composition-first document. */
20
+ updateClinicalSummary(ctx: RouteContext, input: ClinicalSummaryUpdateInput): Promise<SubmitAndPollResult>;
17
21
  /** Reads the current subject through Communication `$summary`; it performs no ingestion. */
18
22
  requestClinicalSummary(ctx: RouteContext, input: ClinicalSummaryRequestInput): Promise<ClinicalSummaryReadResult>;
19
23
  /** Registers one FHIR resource or raw artifact on blockchain before communication. */
@@ -20,6 +20,14 @@ export class PersonalSdk {
20
20
  ingestCommunicationAndUpdateIndex(ctx, input) {
21
21
  return requireClientMethod(this.client, 'ingestCommunicationAndUpdateIndex')(ctx, input);
22
22
  }
23
+ /** Updates one exact clinical section through a section-scoped batch/collection. */
24
+ updateClinicalSection(ctx, input) {
25
+ return requireClientMethod(this.client, 'updateClinicalSection')(ctx, input);
26
+ }
27
+ /** Updates the multi-section clinical summary through a Composition-first document. */
28
+ updateClinicalSummary(ctx, input) {
29
+ return requireClientMethod(this.client, 'updateClinicalSummary')(ctx, input);
30
+ }
23
31
  /** Reads the current subject through Communication `$summary`; it performs no ingestion. */
24
32
  requestClinicalSummary(ctx, input) {
25
33
  return requireClientMethod(this.client, 'requestClinicalSummary')(ctx, input);
@@ -2,7 +2,7 @@ import { type ProfessionalEmployeeCredentialInput, type ProfessionalSmartVpPaylo
2
2
  import { type NodeRuntimeClient, type PollOptions, type SubmitAndPollResult, type SubmitPayload } from './client-port.js';
3
3
  import type { RouteContext } from '../individual-onboarding.js';
4
4
  import type { SmartTokenExchangeResult, SmartTokenRequestInput } from '../smart-token.js';
5
- import type { BlockchainArtifactRegistrationInput, CommunicationIngestionInput, CommunicationParticipantRuntimeSearchInput, ClinicalBundleSearchInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, VitalSignBatchCommunicationFromSearchResponseInput } from '../resource-operations.js';
5
+ import type { BlockchainArtifactRegistrationInput, CommunicationIngestionInput, CommunicationParticipantRuntimeSearchInput, ClinicalBundleSearchInput, ClinicalSectionUpdateInput, ClinicalSummaryReadResult, ClinicalSummaryRequestInput, ClinicalSummaryUpdateInput, GrantProfessionalAccessInput, GrantProfessionalAccessResult, VitalSignBatchCommunicationFromSearchResponseInput } from '../resource-operations.js';
6
6
  /**
7
7
  * Professional-oriented facade for runtime actions that belong to the
8
8
  * professional actor itself after tenant and employee provisioning have already
@@ -70,6 +70,10 @@ export declare class ProfessionalSdk {
70
70
  * Ingests a FHIR `Communication` and waits for indexing.
71
71
  */
72
72
  ingestCommunicationAndUpdateIndex(ctx: RouteContext, input: CommunicationIngestionInput): Promise<SubmitAndPollResult>;
73
+ /** Updates one consent-authorized clinical section through a scoped batch/collection. */
74
+ updateClinicalSection(ctx: RouteContext, input: ClinicalSectionUpdateInput): Promise<SubmitAndPollResult>;
75
+ /** Updates a consent-authorized multi-section summary document. */
76
+ updateClinicalSummary(ctx: RouteContext, input: ClinicalSummaryUpdateInput): Promise<SubmitAndPollResult>;
73
77
  /**
74
78
  * Registers one FHIR resource or raw document artifact on blockchain before
75
79
  * the artifact is attached to a Communication.
@@ -84,6 +84,14 @@ export class ProfessionalSdk {
84
84
  ingestCommunicationAndUpdateIndex(ctx, input) {
85
85
  return requireClientMethod(this.client, 'ingestCommunicationAndUpdateIndex')(ctx, input);
86
86
  }
87
+ /** Updates one consent-authorized clinical section through a scoped batch/collection. */
88
+ updateClinicalSection(ctx, input) {
89
+ return requireClientMethod(this.client, 'updateClinicalSection')(ctx, input);
90
+ }
91
+ /** Updates a consent-authorized multi-section summary document. */
92
+ updateClinicalSummary(ctx, input) {
93
+ return requireClientMethod(this.client, 'updateClinicalSummary')(ctx, input);
94
+ }
87
95
  /**
88
96
  * Registers one FHIR resource or raw document artifact on blockchain before
89
97
  * the artifact is attached to a Communication.
@@ -1,5 +1,5 @@
1
1
  import type { DeviceAppType } from 'gdc-common-utils-ts/constants/device';
2
- import { type ClinicalSummaryReadResult, type ClinicalSummaryRequestInput } from 'gdc-sdk-core-ts';
2
+ import { type ClinicalSectionUpdateCommunicationInput, type ClinicalUpdateCommunicationInput, type ClinicalSummaryReadResult, type ClinicalSummaryRequestInput } from 'gdc-sdk-core-ts';
3
3
  import type { LicenseOfferSearchState, LicenseOrderSearchState } from 'gdc-common-utils-ts/utils/license-commercial-search';
4
4
  import type { LicenseListSearchState } from 'gdc-common-utils-ts/utils/license-list-search';
5
5
  import type { BundleSearchQuery, CommMsgExtendedCommunicationOutboxJob, CommunicationOutboxJob, CommunicationInput, DateRange, EmployeeSearchValue, IndividualOrganizationLifecycleInput, TransportProfile } from 'gdc-sdk-core-ts';
@@ -232,6 +232,20 @@ export type CommunicationIngestionInput = {
232
232
  intervalMs?: number;
233
233
  };
234
234
  };
235
+ type ClinicalUpdateRuntimeOptions = Readonly<{
236
+ transportProfile?: TransportProfile;
237
+ clinicalFormat?: string;
238
+ pollOptions?: {
239
+ timeoutMs?: number;
240
+ intervalMs?: number;
241
+ };
242
+ }>;
243
+ /** Updates exactly one clinical section through a scoped batch/collection. */
244
+ export type ClinicalSectionUpdateInput = ClinicalSectionUpdateCommunicationInput & ClinicalUpdateRuntimeOptions;
245
+ /** Updates one complete multi-section clinical summary document. */
246
+ export type ClinicalSummaryUpdateInput = ClinicalUpdateCommunicationInput & ClinicalUpdateRuntimeOptions;
247
+ export declare function buildClinicalSectionUpdateIngestion(input: ClinicalSectionUpdateInput): CommunicationIngestionInput;
248
+ export declare function buildClinicalSummaryUpdateIngestion(input: ClinicalSummaryUpdateInput): CommunicationIngestionInput;
235
249
  export type BlockchainArtifactRegistrationInput = {
236
250
  subject: string;
237
251
  resource?: Record<string, unknown>;
@@ -3,9 +3,25 @@ import { HealthcareBasicSections, ResourceTypesFhirR4 } from 'gdc-common-utils-t
3
3
  import { Format } from 'gdc-common-utils-ts/constants/Schemas';
4
4
  import { RelatedPersonClaim } from 'gdc-common-utils-ts/models/interoperable-claims/related-person-claims';
5
5
  import { buildCommunicationParticipantSearchBundle, buildBlockchainArtifactDocumentReference, BundleQuery, createInteroperableResourceOperationEditor, IndividualOrganizationLifecycleEditor, LicenseOfferSearchEditor, LicenseOrderSearchEditor, InteroperableLifecycleStatuses, LicenseListSearchEditor, buildLicenseIssueEntry, buildLicensePurchaseEntry, } from 'gdc-common-utils-ts';
6
- import { addFhirResourceToCommunication, createCommunicationResource, buildClinicalSummaryCommunicationJob, readClinicalSummaryOperationResult, } from 'gdc-sdk-core-ts';
6
+ import { addFhirResourceToCommunication, createCommunicationResource, buildClinicalSummaryCommunicationJob, createClinicalSectionUpdateOutboxJob, createClinicalSummaryUpdateOutboxJob, readClinicalSummaryOperationResult, } from 'gdc-sdk-core-ts';
7
7
  import { GwCoreLifecycleRequestMethod, GwCoreLifecycleRequestType, GwCoreLifecycleTodo, } from './constants/lifecycle.js';
8
8
  import { buildEmployeeBatchEntry, buildEmployeeSearchBundle, ConsentClaims, } from 'gdc-sdk-core-ts';
9
+ export function buildClinicalSectionUpdateIngestion(input) {
10
+ return {
11
+ communicationJob: createClinicalSectionUpdateOutboxJob(input),
12
+ clinicalFormat: input.clinicalFormat,
13
+ transportProfile: input.transportProfile,
14
+ pollOptions: input.pollOptions,
15
+ };
16
+ }
17
+ export function buildClinicalSummaryUpdateIngestion(input) {
18
+ return {
19
+ communicationJob: createClinicalSummaryUpdateOutboxJob(input),
20
+ clinicalFormat: input.clinicalFormat,
21
+ transportProfile: input.transportProfile,
22
+ pollOptions: input.pollOptions,
23
+ };
24
+ }
9
25
  export async function createOrganizationEmployeeWithDeps(routeCtx, input, options, deps) {
10
26
  const payload = buildEmployeeLifecyclePayload({
11
27
  routeCtx,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gdc-sdk-node-ts",
3
- "version": "2.3.4",
3
+ "version": "2.3.5",
4
4
  "description": "Next-generation Node runtime package for the GDC SDK family",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Antifraud Services Inc.",
@@ -36,8 +36,8 @@
36
36
  "test:e2e:live-gw:clean": "bash ./scripts/run-live-gw-clean.sh"
37
37
  },
38
38
  "dependencies": {
39
- "gdc-common-utils-ts": "^2.3.2",
40
- "gdc-sdk-core-ts": "~2.3.2"
39
+ "gdc-common-utils-ts": "^2.3.6",
40
+ "gdc-sdk-core-ts": "~2.3.4"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/node": "^20.14.10",