@openhi/constructs 0.0.115 → 0.0.117

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.
@@ -2,7 +2,7 @@ import {
2
2
  handler,
3
3
  parseCurrentResourceKeys,
4
4
  shouldDropAsGlobalTableReplicationRecord
5
- } from "./chunk-X5MHU7DA.mjs";
5
+ } from "./chunk-I7IIPV5X.mjs";
6
6
  import "./chunk-CEOAGPYY.mjs";
7
7
  import "./chunk-LZOMFHX3.mjs";
8
8
  export {
package/lib/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { OPEN_HI_STAGE, OPEN_HI_DEPLOYMENT_TARGET_ROLE, OpenHiEnvironmentConfig, OpenHiConfig } from '@openhi/config';
2
- import { Stage, StageProps, App, AppProps, Stack, StackProps, RemovalPolicy } from 'aws-cdk-lib';
2
+ import { Stage, StageProps, App, AppProps, Stack, StackProps, RemovalPolicy, Duration } from 'aws-cdk-lib';
3
3
  import { IConstruct, Construct } from 'constructs';
4
4
  import { Certificate, CertificateProps, ICertificate } from 'aws-cdk-lib/aws-certificatemanager';
5
5
  import { HttpApiProps, HttpApi, IHttpApi, DomainName } from 'aws-cdk-lib/aws-apigatewayv2';
@@ -9,7 +9,7 @@ import { Key, KeyProps, IKey } from 'aws-cdk-lib/aws-kms';
9
9
  import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
10
10
  import { D as DynamoDbStreamKinesisRecord } from './dynamodb-stream-record-CJtV6a1t.mjs';
11
11
  import * as events from 'aws-cdk-lib/aws-events';
12
- import { EventBus, EventBusProps, Rule, IEventBus } from 'aws-cdk-lib/aws-events';
12
+ import { EventBus, Archive, EventBusProps, Rule, IEventBus } from 'aws-cdk-lib/aws-events';
13
13
  import * as kinesis from 'aws-cdk-lib/aws-kinesis';
14
14
  import * as kinesisfirehose from 'aws-cdk-lib/aws-kinesisfirehose';
15
15
  import * as s3 from 'aws-cdk-lib/aws-s3';
@@ -20,7 +20,8 @@ import * as ec2 from 'aws-cdk-lib/aws-ec2';
20
20
  import * as rds from 'aws-cdk-lib/aws-rds';
21
21
  import { HostedZone, HostedZoneProps, IHostedZone, HostedZoneAttributes } from 'aws-cdk-lib/aws-route53';
22
22
  import { StringParameterProps, StringParameter } from 'aws-cdk-lib/aws-ssm';
23
- import { Distribution, DistributionProps } from 'aws-cdk-lib/aws-cloudfront';
23
+ import { Distribution, DistributionProps, CachePolicyProps } from 'aws-cdk-lib/aws-cloudfront';
24
+ import { HostingMode } from './static-hosting.viewer-request-handler.mjs';
24
25
  export { C as CascadeChunkInput, a as CascadeFinalizeInput, b as CascadeFinalizeOutput, c as CascadeListInput, d as CascadeListOutput, O as OWNING_DELETE_CASCADE_CONSUMER_NAME, e as OWNING_DELETE_CASCADE_DEFAULT_CONCURRENCY, f as OWNING_DELETE_CASCADE_STUCK_THRESHOLD_MINUTES, g as OWNING_DELETE_OPS_EVENT_BUS_ENV_VAR } from './events-CjS-sm0W.mjs';
25
26
  import { StateMachine } from 'aws-cdk-lib/aws-stepfunctions';
26
27
  export { B as BRIDGED_STATUSES, a as BridgedStatus, C as CLOUDFORMATION_EVENT_SOURCE, b as CLOUDFORMATION_STACK_STATUS_CHANGE_DETAIL_TYPE, c as CONTROL_EVENT_BUS_NAME_ENV_VAR, d as CloudFormationStackStatusChangeDetail, O as OPENHI_REPO_TAG_KEY_ENV_VAR, e as OPENHI_TAG_KEY_PREFIX_ENV_VAR, P as PLATFORM_DEPLOY_BRIDGE_ACTOR_SYSTEM } from './events-BfrkMoBD.mjs';
@@ -245,7 +246,7 @@ declare class OpenHiApp extends App {
245
246
  *
246
247
  * @public
247
248
  */
248
- type OpenHiServiceType = "auth" | "rest-api" | "data" | "global" | "graphql-api";
249
+ type OpenHiServiceType = "auth" | "rest-api" | "data" | "global" | "graphql-api" | "website";
249
250
  /**
250
251
  * Tag-key suffixes applied by every OpenHiService stack via Tags.of().
251
252
  * Full keys are composed `${appName}:${suffix}` — see {@link openHiTagKey}.
@@ -721,9 +722,14 @@ declare class WorkflowDedupConsumerNameInvalidError extends Error {
721
722
  constructor(message: string);
722
723
  }
723
724
 
724
- /**
725
- * @see sites/www-docs/content/packages/@openhi/constructs/components/event-bridge/data-event-bus.md
726
- */
725
+ interface DataEventBusOptions {
726
+ /**
727
+ * Retention for the bus's event archive. Defaults to 7 days. Pass
728
+ * `Duration.days(0)` (or omit and override the archive in a subclass)
729
+ * to disable archiving entirely.
730
+ */
731
+ readonly archiveRetention?: Duration;
732
+ }
727
733
  declare class DataEventBus extends EventBus {
728
734
  /*****************************************************************************
729
735
  *
@@ -733,7 +739,16 @@ declare class DataEventBus extends EventBus {
733
739
  *
734
740
  ****************************************************************************/
735
741
  static getEventBusName(scope: Construct): string;
736
- constructor(scope: Construct, props?: EventBusProps);
742
+ /**
743
+ * Replay archive of every event written to this bus, retained for the
744
+ * configured TTL (default 7 days). Enables EventBridge `StartReplay`
745
+ * for incident response and ad-hoc backfill.
746
+ *
747
+ * Named `replayArchive` rather than `archive` to avoid shadowing the
748
+ * inherited `EventBus.archive(id, options)` instance method.
749
+ */
750
+ readonly replayArchive: Archive;
751
+ constructor(scope: Construct, props?: (EventBusProps & DataEventBusOptions) | undefined);
737
752
  }
738
753
 
739
754
  /**
@@ -966,6 +981,79 @@ declare class DiscoverableStringParameter extends StringParameter {
966
981
  constructor(scope: Construct, id: string, props: DiscoverableStringParameterProps);
967
982
  }
968
983
 
984
+ /**
985
+ * @see sites/www-docs/content/packages/@openhi/constructs/components/static-hosting/static-content.md
986
+ */
987
+ /*******************************************************************************
988
+ *
989
+ * STATIC CONTENT UPLOADER
990
+ *
991
+ * This construct uploads a directory of content from a local location into S3.
992
+ *
993
+ * To support PR and branch specific builds, each S3 bucket can store content
994
+ * for multiple domains and builds, using the following format:
995
+ *
996
+ * S3-bucket/<sub-domain>.<full-domain>/*
997
+ *
998
+ * A bucket used to store content for stage.openhi.org might have the
999
+ * following directory structure (all in the same bucket):
1000
+ *
1001
+ * /www.stage.openhi.org/* -> serves content to www.stage.openhi.org
1002
+ * /feature-7.stage.openhi.org/* -> serves content to feature-7.stage.openhi.org
1003
+ * /pr-123.stage.openhi.org/* -> serves content to pr-123.stage.openhi.org
1004
+ *
1005
+ ******************************************************************************/
1006
+ /**
1007
+ * Props for the StaticContent construct.
1008
+ */
1009
+ interface StaticContentProps {
1010
+ /**
1011
+ * Absolute path to directory containing content for the website.
1012
+ */
1013
+ readonly contentSourceDirectory: string;
1014
+ /**
1015
+ * Directory to place content into. Should start with a slash.
1016
+ * Example: '/widget'
1017
+ *
1018
+ * @default "/"
1019
+ */
1020
+ readonly contentDestinationDirectory?: string;
1021
+ /**
1022
+ * The sub domain prefix (e.g. "feature-7"). Used as the per-branch folder
1023
+ * name in the bucket so each branch deploys to its own prefix.
1024
+ *
1025
+ * @default the current stack's branch name (kebab-cased)
1026
+ */
1027
+ readonly subDomain?: string;
1028
+ /**
1029
+ * The full domain (e.g. "stage.openhi.org"). Used together with
1030
+ * `subDomain` to form the destination prefix
1031
+ * `<sub-domain>.<full-domain>`.
1032
+ */
1033
+ readonly fullDomain: string;
1034
+ /**
1035
+ * Service type used to look up the static-hosting bucket ARN via
1036
+ * DiscoverableStringParameter.
1037
+ *
1038
+ * @default STATIC_HOSTING_SERVICE_TYPE ("website")
1039
+ */
1040
+ readonly serviceType?: string;
1041
+ }
1042
+ /**
1043
+ * Static content uploader: deploys a local directory to the static-hosting
1044
+ * S3 bucket under `<sub-domain>.<full-domain>/<dest>` so each branch
1045
+ * deploys to its own prefix without clobbering siblings. The bucket ARN is
1046
+ * looked up via DiscoverableStringParameter so the uploader can run on a
1047
+ * feature-branch stack while the bucket itself was provisioned by the
1048
+ * release-branch service stack.
1049
+ */
1050
+ declare class StaticContent extends Construct {
1051
+ constructor(scope: Construct, id: string, props: StaticContentProps);
1052
+ }
1053
+
1054
+ /**
1055
+ * @see sites/www-docs/content/packages/@openhi/constructs/components/static-hosting/static-hosting.md
1056
+ */
969
1057
  /**
970
1058
  * Service type for the website service. Used in SSM parameter paths and by
971
1059
  * OpenHiWebsiteService for fromConstruct() lookups.
@@ -980,21 +1068,61 @@ interface StaticHostingProps {
980
1068
  */
981
1069
  readonly bucketProps?: Omit<BucketProps, "bucketName">;
982
1070
  /**
983
- * Optional CloudFront distribution props. Do not enable invalidation.
984
- * Default TTL is 10 seconds via a custom cache policy.
1071
+ * Optional CloudFront distribution props. Defaults wire a custom cache
1072
+ * policy (60s/300s with gzip+brotli), `REDIRECT_TO_HTTPS`, and
1073
+ * `ALLOW_GET_HEAD_OPTIONS` on the default behavior; overrides apply on top.
985
1074
  */
986
1075
  readonly distributionProps?: Omit<DistributionProps, "defaultBehavior" | "defaultRootObject">;
1076
+ /**
1077
+ * Optional cache policy overrides. Defaults: `defaultTtl=60s`, `maxTtl=300s`,
1078
+ * `minTtl=0s`, gzip+brotli enabled, no headers/cookies/query strings cached.
1079
+ */
1080
+ readonly cachePolicyProps?: Omit<CachePolicyProps, "cachePolicyName">;
1081
+ /**
1082
+ * Wildcard certificate to attach to the CloudFront distribution. When
1083
+ * supplied together with `hostedZone` and `domainNames`, CloudFront serves
1084
+ * the listed domains and Route53 ARecords are created in the zone.
1085
+ *
1086
+ * @default - no custom certificate; CloudFront default domain is served
1087
+ */
1088
+ readonly certificate?: ICertificate;
1089
+ /**
1090
+ * Hosted zone to create Route53 ARecords in. Required together with
1091
+ * `certificate` and `domainNames` to attach a custom domain.
1092
+ */
1093
+ readonly hostedZone?: IHostedZone;
1094
+ /**
1095
+ * Domain names to attach to the CloudFront distribution. Each name also
1096
+ * gets an ARecord in `hostedZone`.
1097
+ */
1098
+ readonly domainNames?: ReadonlyArray<string>;
1099
+ /**
1100
+ * Selects how path-like URIs are rewritten by the viewer-request
1101
+ * Lambda@Edge handler.
1102
+ *
1103
+ * - `spa` (default): path-like URIs rewrite to `/index.html`.
1104
+ * - `static`: path-like URIs append `/index.html`.
1105
+ *
1106
+ * @default "spa"
1107
+ */
1108
+ readonly hostingMode?: HostingMode;
987
1109
  /**
988
1110
  * Service type for SSM parameter paths.
1111
+ *
989
1112
  * @default STATIC_HOSTING_SERVICE_TYPE ("website")
990
1113
  */
991
1114
  readonly serviceType?: string;
1115
+ /**
1116
+ * Optional human-readable description used in distribution comment and
1117
+ * SSM parameter descriptions.
1118
+ */
1119
+ readonly description?: string;
992
1120
  }
993
1121
  /**
994
1122
  * Static hosting: S3 bucket (private) + CloudFront distribution with Origin
995
- * Access Control (OAC). Stores bucket ARN and distribution ARN in SSM via
996
- * DiscoverableStringParameter for cross-stack lookup. No cache invalidation;
997
- * default TTL 10 seconds.
1123
+ * Access Control (OAC) + Lambda@Edge viewer-request handler. Publishes
1124
+ * bucket ARN, distribution ARN, distribution domain, and distribution ID
1125
+ * via DiscoverableStringParameter for cross-stack lookup.
998
1126
  */
999
1127
  declare class StaticHosting extends Construct {
1000
1128
  /**
@@ -1005,8 +1133,18 @@ declare class StaticHosting extends Construct {
1005
1133
  * SSM parameter name for the CloudFront distribution ARN.
1006
1134
  */
1007
1135
  static readonly SSM_PARAM_NAME_DISTRIBUTION_ARN = "STATIC_HOSTING_DISTRIBUTION_ARN";
1136
+ /**
1137
+ * SSM parameter name for the CloudFront distribution domain
1138
+ * (e.g. dXXXXX.cloudfront.net).
1139
+ */
1140
+ static readonly SSM_PARAM_NAME_DISTRIBUTION_DOMAIN = "STATIC_HOSTING_DISTRIBUTION_DOMAIN";
1141
+ /**
1142
+ * SSM parameter name for the CloudFront distribution ID.
1143
+ */
1144
+ static readonly SSM_PARAM_NAME_DISTRIBUTION_ID = "STATIC_HOSTING_DISTRIBUTION_ID";
1008
1145
  readonly bucket: IBucket;
1009
1146
  readonly distribution: Distribution;
1147
+ readonly viewerRequestHandler: NodejsFunction;
1010
1148
  constructor(scope: Construct, id: string, props?: StaticHostingProps);
1011
1149
  }
1012
1150
 
@@ -1783,6 +1921,141 @@ declare class OpenHiGraphqlService extends OpenHiService {
1783
1921
  protected createRootGraphqlApi(): RootGraphqlApi;
1784
1922
  }
1785
1923
 
1924
+ /**
1925
+ * @see sites/www-docs/content/packages/@openhi/constructs/services/open-hi-website-service.md
1926
+ */
1927
+ interface OpenHiWebsiteServiceProps extends OpenHiServiceProps {
1928
+ /**
1929
+ * Sub-domain prefix attached to the child zone (e.g. "www" -> "www.<zone>").
1930
+ *
1931
+ * @default "www"
1932
+ */
1933
+ readonly domainPrefix?: string;
1934
+ /**
1935
+ * Absolute path to the local directory whose contents should be uploaded
1936
+ * to the static-hosting bucket. Required.
1937
+ */
1938
+ readonly contentSourceDirectory: string;
1939
+ /**
1940
+ * Path under the per-branch destination prefix to upload into. Should start
1941
+ * with a slash.
1942
+ *
1943
+ * @default "/"
1944
+ */
1945
+ readonly contentDestinationDirectory?: string;
1946
+ /**
1947
+ * Force the `StaticHosting` infrastructure (bucket + distribution +
1948
+ * Lambda@Edge + DNS + 4 SSM params) to be created on this branch even when
1949
+ * it is not the release branch. Useful for one-off bootstraps and tests.
1950
+ *
1951
+ * When omitted, hosting infrastructure is created only on
1952
+ * `defaultReleaseBranch`. The `StaticContent` uploader is always
1953
+ * created so feature branches can publish their content under their own
1954
+ * sub-domain folder against the release-branch bucket.
1955
+ *
1956
+ * @default - true on release branch, false otherwise
1957
+ */
1958
+ readonly createHostingInfrastructure?: boolean;
1959
+ }
1960
+ /**
1961
+ * SSM parameter name suffix for the website's full domain
1962
+ * (e.g. www.example.com).
1963
+ */
1964
+ declare const SSM_PARAM_NAME_FULL_DOMAIN = "WEBSITE_FULL_DOMAIN";
1965
+ /**
1966
+ * Website service stack: composes StaticHosting (only on release-branch
1967
+ * deploys) and StaticContent (always) so feature branches can ship their
1968
+ * content to a per-branch sub-domain folder against the release-branch
1969
+ * bucket without provisioning duplicate infrastructure.
1970
+ *
1971
+ * Resources are created in protected methods; subclasses may override to
1972
+ * customize.
1973
+ */
1974
+ declare class OpenHiWebsiteService extends OpenHiService {
1975
+ static readonly SERVICE_TYPE: "website";
1976
+ /**
1977
+ * Looks up the static-hosting bucket ARN published by the release-branch
1978
+ * deploy of this service.
1979
+ */
1980
+ static bucketArnFromConstruct(scope: Construct): string;
1981
+ /**
1982
+ * Looks up the CloudFront distribution ARN published by the release-branch
1983
+ * deploy of this service.
1984
+ */
1985
+ static distributionArnFromConstruct(scope: Construct): string;
1986
+ /**
1987
+ * Looks up the CloudFront distribution domain
1988
+ * (e.g. dXXXXX.cloudfront.net) published by the release-branch deploy.
1989
+ */
1990
+ static distributionDomainFromConstruct(scope: Construct): string;
1991
+ /**
1992
+ * Looks up the CloudFront distribution ID published by the release-branch
1993
+ * deploy of this service.
1994
+ */
1995
+ static distributionIdFromConstruct(scope: Construct): string;
1996
+ /**
1997
+ * Looks up the website's full domain (e.g. www.example.com) published by
1998
+ * the release-branch deploy of this service.
1999
+ */
2000
+ static fullDomainFromConstruct(scope: Construct): string;
2001
+ get serviceType(): string;
2002
+ /** Override so this.props is typed with this service's options. */
2003
+ props: OpenHiWebsiteServiceProps;
2004
+ /**
2005
+ * Full domain served by this website (e.g. www.example.com). Derived from
2006
+ * `domainPrefix` and the child hosted zone name.
2007
+ */
2008
+ readonly fullDomain: string;
2009
+ /**
2010
+ * The hosting construct, only created on release-branch deploys (or when
2011
+ * `createHostingInfrastructure` is true).
2012
+ */
2013
+ readonly staticHosting?: StaticHosting;
2014
+ /**
2015
+ * The content uploader, always created.
2016
+ */
2017
+ readonly staticContent: StaticContent;
2018
+ constructor(ohEnv: OpenHiEnvironment, props: OpenHiWebsiteServiceProps);
2019
+ /**
2020
+ * Validates that config required for the website stack is present.
2021
+ */
2022
+ protected validateConfig(props: OpenHiWebsiteServiceProps): void;
2023
+ /**
2024
+ * Looks up the child hosted zone published by the Global service.
2025
+ * Override to customize.
2026
+ */
2027
+ protected createHostedZone(): IHostedZone;
2028
+ /**
2029
+ * Returns the wildcard certificate looked up from the Global service.
2030
+ * Override to customize.
2031
+ */
2032
+ protected createCertificate(): ICertificate;
2033
+ /**
2034
+ * Computes the full website domain from `domainPrefix` and the child
2035
+ * zone name.
2036
+ */
2037
+ protected computeFullDomain(hostedZone: IHostedZone): string;
2038
+ /**
2039
+ * Creates the StaticHosting infrastructure (bucket + distribution +
2040
+ * Lambda@Edge + 4 SSM params + DNS).
2041
+ */
2042
+ protected createStaticHosting(deps: {
2043
+ certificate: ICertificate;
2044
+ hostedZone: IHostedZone;
2045
+ }): StaticHosting;
2046
+ /**
2047
+ * Creates the SSM parameter that publishes the website's full domain.
2048
+ * Look up via {@link OpenHiWebsiteService.fullDomainFromConstruct}.
2049
+ */
2050
+ protected createFullDomainParameter(): void;
2051
+ /**
2052
+ * Creates the StaticContent uploader. Always created so feature-branch
2053
+ * deploys can publish content to their own sub-domain folder against the
2054
+ * release-branch bucket.
2055
+ */
2056
+ protected createStaticContent(): StaticContent;
2057
+ }
2058
+
1786
2059
  interface OwningDeleteCascadeLambdasProps {
1787
2060
  /** Data-store table the cascade reads (Query) and writes (DeleteItem / TransactWriteItems) against. */
1788
2061
  readonly dataStoreTable: ITable;
@@ -1967,4 +2240,4 @@ declare class RenameCascadeWorkflow extends Construct {
1967
2240
  constructor(scope: Construct, props: RenameCascadeWorkflowProps);
1968
2241
  }
1969
2242
 
1970
- export { type BuildParameterNameProps, ChildHostedZone, type ChildHostedZoneProps, CognitoUserPool, CognitoUserPoolClient, CognitoUserPoolDomain, CognitoUserPoolKmsKey, ControlEventBus, DATA_STORE_CHANGE_DETAIL_MAX_UTF8_BYTES, DATA_STORE_CHANGE_DETAIL_TYPE, DATA_STORE_CHANGE_EVENT_SOURCE, DEMO_DATA_PLANE_FIXTURES, DataEventBus, DataStoreHistoricalArchive, type DataStoreHistoricalArchiveProps, DataStorePostgresReplica, type DataStorePostgresReplicaProps, type DemoWorkspaceDataPlaneFixtures, DiscoverableStringParameter, type DiscoverableStringParameterProps, DynamoDbDataStore, type DynamoDbDataStoreProps, type FhirCurrentResourceChangeDetail, type GrantConsumerOptions, OPENHI_TAG_SUFFIX_BRANCH_NAME, OPENHI_TAG_SUFFIX_REPO_NAME, OPENHI_TAG_SUFFIX_SERVICE_TYPE, OPENHI_TAG_SUFFIX_STAGE_TYPE, OpenHiApp, type OpenHiAppProps, OpenHiAuthService, type OpenHiAuthServiceProps, OpenHiDataService, type OpenHiDataServiceProps, OpenHiEnvironment, type OpenHiEnvironmentProps, OpenHiGlobalService, type OpenHiGlobalServiceProps, OpenHiGraphqlService, type OpenHiGraphqlServiceProps, OpenHiRestApiService, type OpenHiRestApiServiceProps, OpenHiService, type OpenHiServiceProps, type OpenHiServiceType, OpenHiStage, type OpenHiStageProps, OpsEventBus, OwningDeleteCascadeLambdas, type OwningDeleteCascadeLambdasProps, OwningDeleteCascadeWorkflow, type OwningDeleteCascadeWorkflowProps, POSTGRES_REPLICA_CLUSTER_ARN_SSM_NAME, POSTGRES_REPLICA_DATABASE_NAME_SSM_NAME, POSTGRES_REPLICA_SECRET_ARN_SSM_NAME, PlatformDeployBridge, PlatformDeployBridgeLambda, type PlatformDeployBridgeLambdaProps, type PlatformDeployBridgeProps, PostAuthenticationLambda, PostConfirmationLambda, type PostConfirmationLambdaProps, PreTokenGenerationLambda, type PreTokenGenerationLambdaProps, ProvisionDefaultWorkspaceLambda, type ProvisionDefaultWorkspaceLambdaProps, REST_API_BASE_URL_SSM_NAME, RenameCascadeLambdas, type RenameCascadeLambdasProps, RenameCascadeWorkflow, type RenameCascadeWorkflowProps, RootGraphqlApi, type RootGraphqlApiProps, RootHostedZone, RootHttpApi, type RootHttpApiProps, RootWildcardCertificate, SEED_SYSTEM_DATA_ACTOR_SYSTEM, SEED_SYSTEM_DATA_CONSUMER_NAME, SEED_SYSTEM_DATA_CONTROL_BUS_ENV_VAR, STATIC_HOSTING_SERVICE_TYPE, SeedDemoDataLambda, type SeedDemoDataLambdaProps, SeedDemoDataWorkflow, type SeedDemoDataWorkflowProps, SeedSystemDataLambda, type SeedSystemDataLambdaProps, SeedSystemDataWorkflow, type SeedSystemDataWorkflowProps, StaticHosting, type StaticHostingProps, UserOnboardingWorkflow, type UserOnboardingWorkflowProps, WorkflowDedupConsumerNameInvalidError, WorkflowDedupTable, WorkflowDedupTableDuplicateError, type WorkflowDedupTableProps, buildFhirCurrentResourceChangeDetail, getDynamoDbDataStoreTableName, getPostgresReplicaSchemaName, getWorkflowDedupTableName, openHiTagKey };
2243
+ export { type BuildParameterNameProps, ChildHostedZone, type ChildHostedZoneProps, CognitoUserPool, CognitoUserPoolClient, CognitoUserPoolDomain, CognitoUserPoolKmsKey, ControlEventBus, DATA_STORE_CHANGE_DETAIL_MAX_UTF8_BYTES, DATA_STORE_CHANGE_DETAIL_TYPE, DATA_STORE_CHANGE_EVENT_SOURCE, DEMO_DATA_PLANE_FIXTURES, DataEventBus, type DataEventBusOptions, DataStoreHistoricalArchive, type DataStoreHistoricalArchiveProps, DataStorePostgresReplica, type DataStorePostgresReplicaProps, type DemoWorkspaceDataPlaneFixtures, DiscoverableStringParameter, type DiscoverableStringParameterProps, DynamoDbDataStore, type DynamoDbDataStoreProps, type FhirCurrentResourceChangeDetail, type GrantConsumerOptions, HostingMode, OPENHI_TAG_SUFFIX_BRANCH_NAME, OPENHI_TAG_SUFFIX_REPO_NAME, OPENHI_TAG_SUFFIX_SERVICE_TYPE, OPENHI_TAG_SUFFIX_STAGE_TYPE, OpenHiApp, type OpenHiAppProps, OpenHiAuthService, type OpenHiAuthServiceProps, OpenHiDataService, type OpenHiDataServiceProps, OpenHiEnvironment, type OpenHiEnvironmentProps, OpenHiGlobalService, type OpenHiGlobalServiceProps, OpenHiGraphqlService, type OpenHiGraphqlServiceProps, OpenHiRestApiService, type OpenHiRestApiServiceProps, OpenHiService, type OpenHiServiceProps, type OpenHiServiceType, OpenHiStage, type OpenHiStageProps, OpenHiWebsiteService, type OpenHiWebsiteServiceProps, OpsEventBus, OwningDeleteCascadeLambdas, type OwningDeleteCascadeLambdasProps, OwningDeleteCascadeWorkflow, type OwningDeleteCascadeWorkflowProps, POSTGRES_REPLICA_CLUSTER_ARN_SSM_NAME, POSTGRES_REPLICA_DATABASE_NAME_SSM_NAME, POSTGRES_REPLICA_SECRET_ARN_SSM_NAME, PlatformDeployBridge, PlatformDeployBridgeLambda, type PlatformDeployBridgeLambdaProps, type PlatformDeployBridgeProps, PostAuthenticationLambda, PostConfirmationLambda, type PostConfirmationLambdaProps, PreTokenGenerationLambda, type PreTokenGenerationLambdaProps, ProvisionDefaultWorkspaceLambda, type ProvisionDefaultWorkspaceLambdaProps, REST_API_BASE_URL_SSM_NAME, RenameCascadeLambdas, type RenameCascadeLambdasProps, RenameCascadeWorkflow, type RenameCascadeWorkflowProps, RootGraphqlApi, type RootGraphqlApiProps, RootHostedZone, RootHttpApi, type RootHttpApiProps, RootWildcardCertificate, SEED_SYSTEM_DATA_ACTOR_SYSTEM, SEED_SYSTEM_DATA_CONSUMER_NAME, SEED_SYSTEM_DATA_CONTROL_BUS_ENV_VAR, SSM_PARAM_NAME_FULL_DOMAIN, STATIC_HOSTING_SERVICE_TYPE, SeedDemoDataLambda, type SeedDemoDataLambdaProps, SeedDemoDataWorkflow, type SeedDemoDataWorkflowProps, SeedSystemDataLambda, type SeedSystemDataLambdaProps, SeedSystemDataWorkflow, type SeedSystemDataWorkflowProps, StaticContent, type StaticContentProps, StaticHosting, type StaticHostingProps, UserOnboardingWorkflow, type UserOnboardingWorkflowProps, WorkflowDedupConsumerNameInvalidError, WorkflowDedupTable, WorkflowDedupTableDuplicateError, type WorkflowDedupTableProps, buildFhirCurrentResourceChangeDetail, getDynamoDbDataStoreTableName, getPostgresReplicaSchemaName, getWorkflowDedupTableName, openHiTagKey };