@openhi/constructs 0.0.115 → 0.0.116

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/lib/index.d.mts CHANGED
@@ -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}.
@@ -966,6 +967,79 @@ declare class DiscoverableStringParameter extends StringParameter {
966
967
  constructor(scope: Construct, id: string, props: DiscoverableStringParameterProps);
967
968
  }
968
969
 
970
+ /**
971
+ * @see sites/www-docs/content/packages/@openhi/constructs/components/static-hosting/static-content.md
972
+ */
973
+ /*******************************************************************************
974
+ *
975
+ * STATIC CONTENT UPLOADER
976
+ *
977
+ * This construct uploads a directory of content from a local location into S3.
978
+ *
979
+ * To support PR and branch specific builds, each S3 bucket can store content
980
+ * for multiple domains and builds, using the following format:
981
+ *
982
+ * S3-bucket/<sub-domain>.<full-domain>/*
983
+ *
984
+ * A bucket used to store content for stage.openhi.org might have the
985
+ * following directory structure (all in the same bucket):
986
+ *
987
+ * /www.stage.openhi.org/* -> serves content to www.stage.openhi.org
988
+ * /feature-7.stage.openhi.org/* -> serves content to feature-7.stage.openhi.org
989
+ * /pr-123.stage.openhi.org/* -> serves content to pr-123.stage.openhi.org
990
+ *
991
+ ******************************************************************************/
992
+ /**
993
+ * Props for the StaticContent construct.
994
+ */
995
+ interface StaticContentProps {
996
+ /**
997
+ * Absolute path to directory containing content for the website.
998
+ */
999
+ readonly contentSourceDirectory: string;
1000
+ /**
1001
+ * Directory to place content into. Should start with a slash.
1002
+ * Example: '/widget'
1003
+ *
1004
+ * @default "/"
1005
+ */
1006
+ readonly contentDestinationDirectory?: string;
1007
+ /**
1008
+ * The sub domain prefix (e.g. "feature-7"). Used as the per-branch folder
1009
+ * name in the bucket so each branch deploys to its own prefix.
1010
+ *
1011
+ * @default the current stack's branch name (kebab-cased)
1012
+ */
1013
+ readonly subDomain?: string;
1014
+ /**
1015
+ * The full domain (e.g. "stage.openhi.org"). Used together with
1016
+ * `subDomain` to form the destination prefix
1017
+ * `<sub-domain>.<full-domain>`.
1018
+ */
1019
+ readonly fullDomain: string;
1020
+ /**
1021
+ * Service type used to look up the static-hosting bucket ARN via
1022
+ * DiscoverableStringParameter.
1023
+ *
1024
+ * @default STATIC_HOSTING_SERVICE_TYPE ("website")
1025
+ */
1026
+ readonly serviceType?: string;
1027
+ }
1028
+ /**
1029
+ * Static content uploader: deploys a local directory to the static-hosting
1030
+ * S3 bucket under `<sub-domain>.<full-domain>/<dest>` so each branch
1031
+ * deploys to its own prefix without clobbering siblings. The bucket ARN is
1032
+ * looked up via DiscoverableStringParameter so the uploader can run on a
1033
+ * feature-branch stack while the bucket itself was provisioned by the
1034
+ * release-branch service stack.
1035
+ */
1036
+ declare class StaticContent extends Construct {
1037
+ constructor(scope: Construct, id: string, props: StaticContentProps);
1038
+ }
1039
+
1040
+ /**
1041
+ * @see sites/www-docs/content/packages/@openhi/constructs/components/static-hosting/static-hosting.md
1042
+ */
969
1043
  /**
970
1044
  * Service type for the website service. Used in SSM parameter paths and by
971
1045
  * OpenHiWebsiteService for fromConstruct() lookups.
@@ -980,21 +1054,61 @@ interface StaticHostingProps {
980
1054
  */
981
1055
  readonly bucketProps?: Omit<BucketProps, "bucketName">;
982
1056
  /**
983
- * Optional CloudFront distribution props. Do not enable invalidation.
984
- * Default TTL is 10 seconds via a custom cache policy.
1057
+ * Optional CloudFront distribution props. Defaults wire a custom cache
1058
+ * policy (60s/300s with gzip+brotli), `REDIRECT_TO_HTTPS`, and
1059
+ * `ALLOW_GET_HEAD_OPTIONS` on the default behavior; overrides apply on top.
985
1060
  */
986
1061
  readonly distributionProps?: Omit<DistributionProps, "defaultBehavior" | "defaultRootObject">;
1062
+ /**
1063
+ * Optional cache policy overrides. Defaults: `defaultTtl=60s`, `maxTtl=300s`,
1064
+ * `minTtl=0s`, gzip+brotli enabled, no headers/cookies/query strings cached.
1065
+ */
1066
+ readonly cachePolicyProps?: Omit<CachePolicyProps, "cachePolicyName">;
1067
+ /**
1068
+ * Wildcard certificate to attach to the CloudFront distribution. When
1069
+ * supplied together with `hostedZone` and `domainNames`, CloudFront serves
1070
+ * the listed domains and Route53 ARecords are created in the zone.
1071
+ *
1072
+ * @default - no custom certificate; CloudFront default domain is served
1073
+ */
1074
+ readonly certificate?: ICertificate;
1075
+ /**
1076
+ * Hosted zone to create Route53 ARecords in. Required together with
1077
+ * `certificate` and `domainNames` to attach a custom domain.
1078
+ */
1079
+ readonly hostedZone?: IHostedZone;
1080
+ /**
1081
+ * Domain names to attach to the CloudFront distribution. Each name also
1082
+ * gets an ARecord in `hostedZone`.
1083
+ */
1084
+ readonly domainNames?: ReadonlyArray<string>;
1085
+ /**
1086
+ * Selects how path-like URIs are rewritten by the viewer-request
1087
+ * Lambda@Edge handler.
1088
+ *
1089
+ * - `spa` (default): path-like URIs rewrite to `/index.html`.
1090
+ * - `static`: path-like URIs append `/index.html`.
1091
+ *
1092
+ * @default "spa"
1093
+ */
1094
+ readonly hostingMode?: HostingMode;
987
1095
  /**
988
1096
  * Service type for SSM parameter paths.
1097
+ *
989
1098
  * @default STATIC_HOSTING_SERVICE_TYPE ("website")
990
1099
  */
991
1100
  readonly serviceType?: string;
1101
+ /**
1102
+ * Optional human-readable description used in distribution comment and
1103
+ * SSM parameter descriptions.
1104
+ */
1105
+ readonly description?: string;
992
1106
  }
993
1107
  /**
994
1108
  * 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.
1109
+ * Access Control (OAC) + Lambda@Edge viewer-request handler. Publishes
1110
+ * bucket ARN, distribution ARN, distribution domain, and distribution ID
1111
+ * via DiscoverableStringParameter for cross-stack lookup.
998
1112
  */
999
1113
  declare class StaticHosting extends Construct {
1000
1114
  /**
@@ -1005,8 +1119,18 @@ declare class StaticHosting extends Construct {
1005
1119
  * SSM parameter name for the CloudFront distribution ARN.
1006
1120
  */
1007
1121
  static readonly SSM_PARAM_NAME_DISTRIBUTION_ARN = "STATIC_HOSTING_DISTRIBUTION_ARN";
1122
+ /**
1123
+ * SSM parameter name for the CloudFront distribution domain
1124
+ * (e.g. dXXXXX.cloudfront.net).
1125
+ */
1126
+ static readonly SSM_PARAM_NAME_DISTRIBUTION_DOMAIN = "STATIC_HOSTING_DISTRIBUTION_DOMAIN";
1127
+ /**
1128
+ * SSM parameter name for the CloudFront distribution ID.
1129
+ */
1130
+ static readonly SSM_PARAM_NAME_DISTRIBUTION_ID = "STATIC_HOSTING_DISTRIBUTION_ID";
1008
1131
  readonly bucket: IBucket;
1009
1132
  readonly distribution: Distribution;
1133
+ readonly viewerRequestHandler: NodejsFunction;
1010
1134
  constructor(scope: Construct, id: string, props?: StaticHostingProps);
1011
1135
  }
1012
1136
 
@@ -1783,6 +1907,141 @@ declare class OpenHiGraphqlService extends OpenHiService {
1783
1907
  protected createRootGraphqlApi(): RootGraphqlApi;
1784
1908
  }
1785
1909
 
1910
+ /**
1911
+ * @see sites/www-docs/content/packages/@openhi/constructs/services/open-hi-website-service.md
1912
+ */
1913
+ interface OpenHiWebsiteServiceProps extends OpenHiServiceProps {
1914
+ /**
1915
+ * Sub-domain prefix attached to the child zone (e.g. "www" -> "www.<zone>").
1916
+ *
1917
+ * @default "www"
1918
+ */
1919
+ readonly domainPrefix?: string;
1920
+ /**
1921
+ * Absolute path to the local directory whose contents should be uploaded
1922
+ * to the static-hosting bucket. Required.
1923
+ */
1924
+ readonly contentSourceDirectory: string;
1925
+ /**
1926
+ * Path under the per-branch destination prefix to upload into. Should start
1927
+ * with a slash.
1928
+ *
1929
+ * @default "/"
1930
+ */
1931
+ readonly contentDestinationDirectory?: string;
1932
+ /**
1933
+ * Force the `StaticHosting` infrastructure (bucket + distribution +
1934
+ * Lambda@Edge + DNS + 4 SSM params) to be created on this branch even when
1935
+ * it is not the release branch. Useful for one-off bootstraps and tests.
1936
+ *
1937
+ * When omitted, hosting infrastructure is created only on
1938
+ * `defaultReleaseBranch`. The `StaticContent` uploader is always
1939
+ * created so feature branches can publish their content under their own
1940
+ * sub-domain folder against the release-branch bucket.
1941
+ *
1942
+ * @default - true on release branch, false otherwise
1943
+ */
1944
+ readonly createHostingInfrastructure?: boolean;
1945
+ }
1946
+ /**
1947
+ * SSM parameter name suffix for the website's full domain
1948
+ * (e.g. www.example.com).
1949
+ */
1950
+ declare const SSM_PARAM_NAME_FULL_DOMAIN = "WEBSITE_FULL_DOMAIN";
1951
+ /**
1952
+ * Website service stack: composes StaticHosting (only on release-branch
1953
+ * deploys) and StaticContent (always) so feature branches can ship their
1954
+ * content to a per-branch sub-domain folder against the release-branch
1955
+ * bucket without provisioning duplicate infrastructure.
1956
+ *
1957
+ * Resources are created in protected methods; subclasses may override to
1958
+ * customize.
1959
+ */
1960
+ declare class OpenHiWebsiteService extends OpenHiService {
1961
+ static readonly SERVICE_TYPE: "website";
1962
+ /**
1963
+ * Looks up the static-hosting bucket ARN published by the release-branch
1964
+ * deploy of this service.
1965
+ */
1966
+ static bucketArnFromConstruct(scope: Construct): string;
1967
+ /**
1968
+ * Looks up the CloudFront distribution ARN published by the release-branch
1969
+ * deploy of this service.
1970
+ */
1971
+ static distributionArnFromConstruct(scope: Construct): string;
1972
+ /**
1973
+ * Looks up the CloudFront distribution domain
1974
+ * (e.g. dXXXXX.cloudfront.net) published by the release-branch deploy.
1975
+ */
1976
+ static distributionDomainFromConstruct(scope: Construct): string;
1977
+ /**
1978
+ * Looks up the CloudFront distribution ID published by the release-branch
1979
+ * deploy of this service.
1980
+ */
1981
+ static distributionIdFromConstruct(scope: Construct): string;
1982
+ /**
1983
+ * Looks up the website's full domain (e.g. www.example.com) published by
1984
+ * the release-branch deploy of this service.
1985
+ */
1986
+ static fullDomainFromConstruct(scope: Construct): string;
1987
+ get serviceType(): string;
1988
+ /** Override so this.props is typed with this service's options. */
1989
+ props: OpenHiWebsiteServiceProps;
1990
+ /**
1991
+ * Full domain served by this website (e.g. www.example.com). Derived from
1992
+ * `domainPrefix` and the child hosted zone name.
1993
+ */
1994
+ readonly fullDomain: string;
1995
+ /**
1996
+ * The hosting construct, only created on release-branch deploys (or when
1997
+ * `createHostingInfrastructure` is true).
1998
+ */
1999
+ readonly staticHosting?: StaticHosting;
2000
+ /**
2001
+ * The content uploader, always created.
2002
+ */
2003
+ readonly staticContent: StaticContent;
2004
+ constructor(ohEnv: OpenHiEnvironment, props: OpenHiWebsiteServiceProps);
2005
+ /**
2006
+ * Validates that config required for the website stack is present.
2007
+ */
2008
+ protected validateConfig(props: OpenHiWebsiteServiceProps): void;
2009
+ /**
2010
+ * Looks up the child hosted zone published by the Global service.
2011
+ * Override to customize.
2012
+ */
2013
+ protected createHostedZone(): IHostedZone;
2014
+ /**
2015
+ * Returns the wildcard certificate looked up from the Global service.
2016
+ * Override to customize.
2017
+ */
2018
+ protected createCertificate(): ICertificate;
2019
+ /**
2020
+ * Computes the full website domain from `domainPrefix` and the child
2021
+ * zone name.
2022
+ */
2023
+ protected computeFullDomain(hostedZone: IHostedZone): string;
2024
+ /**
2025
+ * Creates the StaticHosting infrastructure (bucket + distribution +
2026
+ * Lambda@Edge + 4 SSM params + DNS).
2027
+ */
2028
+ protected createStaticHosting(deps: {
2029
+ certificate: ICertificate;
2030
+ hostedZone: IHostedZone;
2031
+ }): StaticHosting;
2032
+ /**
2033
+ * Creates the SSM parameter that publishes the website's full domain.
2034
+ * Look up via {@link OpenHiWebsiteService.fullDomainFromConstruct}.
2035
+ */
2036
+ protected createFullDomainParameter(): void;
2037
+ /**
2038
+ * Creates the StaticContent uploader. Always created so feature-branch
2039
+ * deploys can publish content to their own sub-domain folder against the
2040
+ * release-branch bucket.
2041
+ */
2042
+ protected createStaticContent(): StaticContent;
2043
+ }
2044
+
1786
2045
  interface OwningDeleteCascadeLambdasProps {
1787
2046
  /** Data-store table the cascade reads (Query) and writes (DeleteItem / TransactWriteItems) against. */
1788
2047
  readonly dataStoreTable: ITable;
@@ -1967,4 +2226,4 @@ declare class RenameCascadeWorkflow extends Construct {
1967
2226
  constructor(scope: Construct, props: RenameCascadeWorkflowProps);
1968
2227
  }
1969
2228
 
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 };
2229
+ 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, 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 };