@aws/pdk
Version:
All documentation is located at: https://aws.github.io/aws-pdk
49 lines (48 loc) • 1.89 kB
TypeScript
/*! Copyright [Amazon.com](http://amazon.com/), Inc. or its affiliates. All Rights Reserved.
SPDX-License-Identifier: Apache-2.0 */
import { AwsAsset } from "../../generated/assets";
import { CfnSpec } from "../../generated/cfnspec";
import { DrawioSpec } from "../../generated/drawio-spec";
import { PricingManifest } from "../pricing-manifest";
/**
* AwsService represents the inferred normalization between [@aws-cdk/cfnspec](https://github.com/aws/aws-cdk/blob/main/packages/%40aws-cdk/cfnspec)
* and [AWS Architecture Icons](https://aws.amazon.com/architecture/icons/) systems
* for a given AWS "service".
* @struct
* @internal
*/
export interface CfnMappedService {
readonly provider: string;
readonly pricingServiceCode?: PricingManifest.ServiceCode;
readonly assetKey?: AwsAsset.Service;
readonly drawioShape?: DrawioSpec.Aws4.ShapeNames;
}
/**
* AwsResource represents the inferred normalization between [@aws-cdk/cfnspec](https://github.com/aws/aws-cdk/blob/main/packages/%40aws-cdk/cfnspec)
* and [AWS Architecture Icons](https://aws.amazon.com/architecture/icons/) systems
* for a given AWS "resource".
* @struct
* @internal
*/
export interface CfnMappedResource {
readonly service: CfnSpec.ServiceName;
readonly serviceAssetKey?: AwsAsset.Service;
readonly assetKey?: AwsAsset.Resource;
readonly generalIconKey?: AwsAsset.GeneralIcon;
readonly drawioShape?: DrawioSpec.Aws4.ShapeNames;
readonly drawioGeneralShape?: DrawioSpec.Aws4.ShapeNames;
}
/**
* Record of all {@link CfnMappedService}s keyed by {@link CfnSpec.ServiceName}
* @internal
*/
export type CfnServiceMapping = {
[K in CfnSpec.ServiceName]: CfnMappedService;
};
/**
* Record of all {@link CfnMappedResource}s keyed by {@link CfnSpec.ResourceType}
* @internal
*/
export type CfnResourceMapping = {
[K in CfnSpec.ResourceType]: CfnMappedResource;
};