export declare type CloudFormationParameter = { Type: string; Description?: string; Default?: string | number; }; export declare type CloudFormationFnIf = { 'Fn::If': [string, CloudFormationIntrinsicFunction, CloudFormationIntrinsicFunction]; }; export declare type CloudFormationFnAnd = { 'Fn::And': CloudFormationIntrinsicFunction[]; }; export declare type CloudFormationFnEqual = { 'Fn::Equals': [CloudFormationIntrinsicFunction, CloudFormationIntrinsicFunction]; }; export declare type CloudFormationFnNot = { 'Fn::Not': [CloudFormationIntrinsicFunction]; }; export declare type CloudFormationFnOr = { 'Fn::Or': CloudFormationIntrinsicFunction[]; }; export declare type CloudFormationFnFindInMap = { 'Fn::FindInMap': [string, CloudFormationIntrinsicFunction, CloudFormationIntrinsicFunction]; }; export declare type CloudFormationRef = { Ref: string; }; export declare type CloudFormationFnGetAtt = { 'Fn::GetAtt': [string, CloudFormationRef | string]; }; export declare type CloudFormationFnBase64 = { 'Fn::Base64': string; }; export declare type CloudFormationFnImportValue = { 'Fn::ImportValue': CloudFormationIntrinsicFunction; }; export declare type CloudFormationFnJoin = { 'Fn::Join': [string, CloudFormationIntrinsicFunction[]]; }; export declare type CloudFormationFnSelect = { 'Fn::Select': [number, ...CloudFormationIntrinsicFunction[]]; }; export declare type CloudFormationFnSplit = { 'Fn::Split': [string, ...CloudFormationIntrinsicFunction[]]; }; export declare type CloudFormationFnSub = { 'Fn::Sub': [string, ...CloudFormationIntrinsicFunction[]]; }; export declare type CloudFormationIntrinsicConditionFunction = CloudFormationFnIf | CloudFormationFnAnd | CloudFormationFnEqual | CloudFormationFnNot | CloudFormationFnOr; export declare type CloudFormationIntrinsicFunction = string | CloudFormationIntrinsicConditionFunction | CloudFormationFnFindInMap | CloudFormationRef | CloudFormationFnGetAtt | CloudFormationFnImportValue | CloudFormationFnJoin | CloudFormationFnSelect | CloudFormationFnSplit | CloudFormationFnSub; export declare type CloudFormationProperty = string | CloudFormationIntrinsicFunction; export interface CloudFormationResourceProperty { [name: string]: CloudFormationIntrinsicFunction | CloudFormationResourceProperty; } export declare type CloudFormationResource = { Type: string; Properties: CloudFormationResourceProperty; DependsOn?: string[]; Condition?: string; }; export declare type CloudFormationResources = Record; export declare type CloudFormationOutput = { Value: CloudFormationIntrinsicFunction; Description?: string; Export?: { Name: string | CloudFormationIntrinsicFunction; }; }; export declare type CloudFormationOutputs = Record; export declare type CloudFormationConditions = Record; export declare type CloudFormationParameters = Record; export declare type CloudFormationTemplate = { Parameters?: CloudFormationParameters; Resources: CloudFormationResources; Conditions?: CloudFormationConditions; Outputs?: CloudFormationOutputs; }; export declare type CloudFormationProcessedResourceResult = { cfnExposedAttributes: Record; arn?: string; ref?: string; }; export declare type CloudFormationProcessedResource = { Type: string; result: CloudFormationProcessedResourceResult; }; export declare type CloudFormationTemplateFetcher = { getCloudFormationStackTemplate: (templateName: string) => CloudFormationTemplate; }; export declare type ProcessedLambdaFunction = CloudFormationProcessedResourceResult & { name: string; handler: string; environment: Record; }; export declare type ProcessedLambdaEventSource = CloudFormationProcessedResourceResult & { batchSize: number; eventSourceArn: string; functionName: string; startingPosition: string; }; export declare type ProcessedOpenSearchDomain = CloudFormationProcessedResourceResult & { endpoint: string; }; //# sourceMappingURL=types.d.ts.map