import * as cfn from 'aws-cdk-lib/aws-cloudformation'; import * as cloudfront from 'aws-cdk-lib/aws-cloudfront'; import * as acm from 'aws-cdk-lib/aws-certificatemanager'; import * as appstream from 'aws-cdk-lib/aws-appstream'; import * as route53 from 'aws-cdk-lib/aws-route53'; import * as origins from 'aws-cdk-lib/aws-cloudfront-origins'; import * as customresources from 'aws-cdk-lib/custom-resources'; import * as iam from 'aws-cdk-lib/aws-iam'; import * as lambda from 'aws-cdk-lib/aws-lambda'; import * as sns from 'aws-cdk-lib/aws-sns'; import * as sqs from 'aws-cdk-lib/aws-sqs'; import * as s3 from 'aws-cdk-lib/aws-s3'; import { App, Aws, CfnCondition, CfnDynamicReference, CfnDynamicReferenceService, CfnInclude, CfnJson, CfnMapping, CfnOutput, CfnParameter, CfnResource, CfnResourceProps, CustomResource, CustomResourceProvider, CustomResourceProviderRuntime, DefaultStackSynthesizer, Duration, Fn, ITaggable, PermissionsBoundary, RemovalPolicy, Resource, SecretValue, Size, SizeRoundingBehavior, Stack, StackProps, Stage, TagManager, TagType, Token, } from 'aws-cdk-lib'; import { IConstruct, Construct, DependencyGroup, } from 'constructs'; declare const app: App; declare const arn: 'arn:partition:service:region:account-id:resource-id'; declare const cfnResource: CfnResource; declare const construct: Construct; declare const constructA: Construct; declare const constructB: Construct; declare const constructC: Construct; declare const functionProps: lambda.FunctionProps; declare const isCompleteHandler: lambda.Function; declare const myBucket: s3.IBucket; declare const myFunction: lambda.IFunction; declare const myTopic: sns.ITopic; declare const onEventHandler: lambda.Function; declare const resourceProps: CfnResourceProps; declare class MyStack extends Stack {} declare class YourStack extends Stack {} class StackThatProvidesABucket extends Stack { public readonly bucket!: s3.IBucket; } interface StackThatExpectsABucketProps extends StackProps { readonly bucket: s3.IBucket; } class StackThatExpectsABucket extends Stack { constructor(scope: Construct, id: string, props: StackThatExpectsABucketProps) { super(scope, id, props); } } class fixture$construct extends Construct { public constructor(scope: Construct, id: string) { super(scope, id); /// here } }