UNPKG

3.05 kBTypeScriptView Raw
1import type { Export, StackResourceSummary } from '@aws-sdk/client-cloudformation';
2import type { SDK } from './aws-auth';
3import type { NestedStackTemplates } from './deployments';
4export interface ListStackResources {
5 listStackResources(): Promise<StackResourceSummary[]>;
6}
7export declare class LazyListStackResources implements ListStackResources {
8 private readonly sdk;
9 private readonly stackName;
10 private stackResources;
11 constructor(sdk: SDK, stackName: string);
12 listStackResources(): Promise<StackResourceSummary[]>;
13}
14export interface LookupExport {
15 lookupExport(name: string): Promise<Export | undefined>;
16}
17export declare class LookupExportError extends Error {
18}
19export declare class LazyLookupExport implements LookupExport {
20 private readonly sdk;
21 private cachedExports;
22 constructor(sdk: SDK);
23 lookupExport(name: string): Promise<Export | undefined>;
24 private listExports;
25}
26export declare class CfnEvaluationException extends Error {
27}
28export interface ResourceDefinition {
29 readonly LogicalId: string;
30 readonly Type: string;
31 readonly Properties: {
32 [p: string]: any;
33 };
34}
35export interface EvaluateCloudFormationTemplateProps {
36 readonly stackName: string;
37 readonly template: Template;
38 readonly parameters: {
39 [parameterName: string]: string;
40 };
41 readonly account: string;
42 readonly region: string;
43 readonly partition: string;
44 readonly sdk: SDK;
45 readonly nestedStacks?: {
46 [nestedStackLogicalId: string]: NestedStackTemplates;
47 };
48}
49export declare class EvaluateCloudFormationTemplate {
50 private readonly stackName;
51 private readonly template;
52 private readonly context;
53 private readonly account;
54 private readonly region;
55 private readonly partition;
56 private readonly sdk;
57 private readonly nestedStacks;
58 private readonly stackResources;
59 private readonly lookupExport;
60 private cachedUrlSuffix;
61 constructor(props: EvaluateCloudFormationTemplateProps);
62 createNestedEvaluateCloudFormationTemplate(stackName: string, nestedTemplate: Template, nestedStackParameters: {
63 [parameterName: string]: any;
64 }): Promise<EvaluateCloudFormationTemplate>;
65 establishResourcePhysicalName(logicalId: string, physicalNameInCfnTemplate: any): Promise<string | undefined>;
66 findPhysicalNameFor(logicalId: string): Promise<string | undefined>;
67 findLogicalIdForPhysicalName(physicalName: string): Promise<string | undefined>;
68 findReferencesTo(logicalId: string): Array<ResourceDefinition>;
69 evaluateCfnExpression(cfnExpression: any): Promise<any>;
70 getResourceProperty(logicalId: string, propertyName: string): any;
71 private references;
72 private parseIntrinsic;
73 private findRefTarget;
74 private findGetAttTarget;
75 private findNestedStack;
76 private formatResourceAttribute;
77 private getServiceOfResource;
78 private getResourceTypeArnPartOfResource;
79}
80export type Template = {
81 [section: string]: {
82 [headings: string]: any;
83 };
84};