import * as AWS from 'aws-sdk'; interface Env { account: string; region: string; } export declare let testEnv: () => Promise; export declare const cloudFormation: (call: B, request: First, "cancelUpdateStack" | "continueUpdateRollback" | "createChangeSet" | "createStack" | "createStackInstances" | "createStackSet" | "deleteChangeSet" | "deleteStack" | "deleteStackInstances" | "deleteStackSet" | "deregisterType" | "describeAccountLimits" | "describeChangeSet" | "describeStackDriftDetectionStatus" | "describeStackEvents" | "describeStackInstance" | "describeStackResource" | "describeStackResourceDrifts" | "describeStackResources" | "describeStackSet" | "describeStackSetOperation" | "describeStacks" | "describeType" | "describeTypeRegistration" | "detectStackDrift" | "detectStackResourceDrift" | "detectStackSetDrift" | "estimateTemplateCost" | "executeChangeSet" | "getStackPolicy" | "getTemplate" | "getTemplateSummary" | "listChangeSets" | "listExports" | "listImports" | "listStackInstances" | "listStackResources" | "listStackSetOperationResults" | "listStackSetOperations" | "listStackSets" | "listStacks" | "listTypeRegistrations" | "listTypeVersions" | "listTypes" | "recordHandlerProgress" | "registerType" | "setStackPolicy" | "setTypeDefaultVersion" | "signalResource" | "stopStackSetOperation" | "updateStack" | "updateStackInstances" | "updateStackSet" | "updateTerminationProtection" | "validateTemplate">[B]>) => Promise, "cancelUpdateStack" | "continueUpdateRollback" | "createChangeSet" | "createStack" | "createStackInstances" | "createStackSet" | "deleteChangeSet" | "deleteStack" | "deleteStackInstances" | "deleteStackSet" | "deregisterType" | "describeAccountLimits" | "describeChangeSet" | "describeStackDriftDetectionStatus" | "describeStackEvents" | "describeStackInstance" | "describeStackResource" | "describeStackResourceDrifts" | "describeStackResources" | "describeStackSet" | "describeStackSetOperation" | "describeStacks" | "describeType" | "describeTypeRegistration" | "detectStackDrift" | "detectStackResourceDrift" | "detectStackSetDrift" | "estimateTemplateCost" | "executeChangeSet" | "getStackPolicy" | "getTemplate" | "getTemplateSummary" | "listChangeSets" | "listExports" | "listImports" | "listStackInstances" | "listStackResources" | "listStackSetOperationResults" | "listStackSetOperations" | "listStackSets" | "listStacks" | "listTypeRegistrations" | "listTypeVersions" | "listTypes" | "recordHandlerProgress" | "registerType" | "setStackPolicy" | "setTypeDefaultVersion" | "signalResource" | "stopStackSetOperation" | "updateStack" | "updateStackInstances" | "updateStackSet" | "updateTerminationProtection" | "validateTemplate">[B]>>; export declare const s3: (call: B, request: First, "deleteObjects" | "abortMultipartUpload" | "completeMultipartUpload" | "copyObject" | "createBucket" | "createMultipartUpload" | "deleteBucket" | "deleteBucketAnalyticsConfiguration" | "deleteBucketCors" | "deleteBucketEncryption" | "deleteBucketInventoryConfiguration" | "deleteBucketLifecycle" | "deleteBucketMetricsConfiguration" | "deleteBucketPolicy" | "deleteBucketReplication" | "deleteBucketTagging" | "deleteBucketWebsite" | "deleteObject" | "deleteObjectTagging" | "deletePublicAccessBlock" | "getBucketAccelerateConfiguration" | "getBucketAcl" | "getBucketAnalyticsConfiguration" | "getBucketCors" | "getBucketEncryption" | "getBucketInventoryConfiguration" | "getBucketLifecycle" | "getBucketLifecycleConfiguration" | "getBucketLocation" | "getBucketLogging" | "getBucketMetricsConfiguration" | "getBucketNotification" | "getBucketNotificationConfiguration" | "getBucketPolicy" | "getBucketPolicyStatus" | "getBucketReplication" | "getBucketRequestPayment" | "getBucketTagging" | "getBucketVersioning" | "getBucketWebsite" | "getObject" | "getObjectAcl" | "getObjectLegalHold" | "getObjectLockConfiguration" | "getObjectRetention" | "getObjectTagging" | "getObjectTorrent" | "getPublicAccessBlock" | "headBucket" | "headObject" | "listBucketAnalyticsConfigurations" | "listBucketInventoryConfigurations" | "listBucketMetricsConfigurations" | "listMultipartUploads" | "listObjectVersions" | "listObjects" | "listObjectsV2" | "listParts" | "putBucketAccelerateConfiguration" | "putBucketAcl" | "putBucketAnalyticsConfiguration" | "putBucketCors" | "putBucketEncryption" | "putBucketInventoryConfiguration" | "putBucketLifecycle" | "putBucketLifecycleConfiguration" | "putBucketLogging" | "putBucketMetricsConfiguration" | "putBucketNotification" | "putBucketNotificationConfiguration" | "putBucketPolicy" | "putBucketReplication" | "putBucketRequestPayment" | "putBucketTagging" | "putBucketVersioning" | "putBucketWebsite" | "putObject" | "putObjectAcl" | "putObjectLegalHold" | "putObjectLockConfiguration" | "putObjectRetention" | "putObjectTagging" | "putPublicAccessBlock" | "restoreObject" | "selectObjectContent" | "uploadPart" | "uploadPartCopy">[B]>) => Promise, "deleteObjects" | "abortMultipartUpload" | "completeMultipartUpload" | "copyObject" | "createBucket" | "createMultipartUpload" | "deleteBucket" | "deleteBucketAnalyticsConfiguration" | "deleteBucketCors" | "deleteBucketEncryption" | "deleteBucketInventoryConfiguration" | "deleteBucketLifecycle" | "deleteBucketMetricsConfiguration" | "deleteBucketPolicy" | "deleteBucketReplication" | "deleteBucketTagging" | "deleteBucketWebsite" | "deleteObject" | "deleteObjectTagging" | "deletePublicAccessBlock" | "getBucketAccelerateConfiguration" | "getBucketAcl" | "getBucketAnalyticsConfiguration" | "getBucketCors" | "getBucketEncryption" | "getBucketInventoryConfiguration" | "getBucketLifecycle" | "getBucketLifecycleConfiguration" | "getBucketLocation" | "getBucketLogging" | "getBucketMetricsConfiguration" | "getBucketNotification" | "getBucketNotificationConfiguration" | "getBucketPolicy" | "getBucketPolicyStatus" | "getBucketReplication" | "getBucketRequestPayment" | "getBucketTagging" | "getBucketVersioning" | "getBucketWebsite" | "getObject" | "getObjectAcl" | "getObjectLegalHold" | "getObjectLockConfiguration" | "getObjectRetention" | "getObjectTagging" | "getObjectTorrent" | "getPublicAccessBlock" | "headBucket" | "headObject" | "listBucketAnalyticsConfigurations" | "listBucketInventoryConfigurations" | "listBucketMetricsConfigurations" | "listMultipartUploads" | "listObjectVersions" | "listObjects" | "listObjectsV2" | "listParts" | "putBucketAccelerateConfiguration" | "putBucketAcl" | "putBucketAnalyticsConfiguration" | "putBucketCors" | "putBucketEncryption" | "putBucketInventoryConfiguration" | "putBucketLifecycle" | "putBucketLifecycleConfiguration" | "putBucketLogging" | "putBucketMetricsConfiguration" | "putBucketNotification" | "putBucketNotificationConfiguration" | "putBucketPolicy" | "putBucketReplication" | "putBucketRequestPayment" | "putBucketTagging" | "putBucketVersioning" | "putBucketWebsite" | "putObject" | "putObjectAcl" | "putObjectLegalHold" | "putObjectLockConfiguration" | "putObjectRetention" | "putObjectTagging" | "putPublicAccessBlock" | "restoreObject" | "selectObjectContent" | "uploadPart" | "uploadPartCopy">[B]>>; export declare const ecr: (call: B, request: First, "describeImages" | "deleteRepository" | "batchCheckLayerAvailability" | "batchDeleteImage" | "batchGetImage" | "completeLayerUpload" | "createRepository" | "deleteLifecyclePolicy" | "deleteRepositoryPolicy" | "describeImageScanFindings" | "describeRepositories" | "getAuthorizationToken" | "getDownloadUrlForLayer" | "getLifecyclePolicy" | "getLifecyclePolicyPreview" | "getRepositoryPolicy" | "initiateLayerUpload" | "listImages" | "listTagsForResource" | "putImage" | "putImageScanningConfiguration" | "putImageTagMutability" | "putLifecyclePolicy" | "setRepositoryPolicy" | "startImageScan" | "startLifecyclePolicyPreview" | "tagResource" | "untagResource" | "uploadLayerPart">[B]>) => Promise, "describeImages" | "deleteRepository" | "batchCheckLayerAvailability" | "batchDeleteImage" | "batchGetImage" | "completeLayerUpload" | "createRepository" | "deleteLifecyclePolicy" | "deleteRepositoryPolicy" | "describeImageScanFindings" | "describeRepositories" | "getAuthorizationToken" | "getDownloadUrlForLayer" | "getLifecyclePolicy" | "getLifecyclePolicyPreview" | "getRepositoryPolicy" | "initiateLayerUpload" | "listImages" | "listTagsForResource" | "putImage" | "putImageScanningConfiguration" | "putImageTagMutability" | "putLifecyclePolicy" | "setRepositoryPolicy" | "startImageScan" | "startLifecyclePolicyPreview" | "tagResource" | "untagResource" | "uploadLayerPart">[B]>>; export declare const sns: (call: B, request: First, "listTagsForResource" | "tagResource" | "untagResource" | "createTopic" | "addPermission" | "checkIfPhoneNumberIsOptedOut" | "confirmSubscription" | "createPlatformApplication" | "createPlatformEndpoint" | "deleteEndpoint" | "deletePlatformApplication" | "deleteTopic" | "getEndpointAttributes" | "getPlatformApplicationAttributes" | "getSMSAttributes" | "getSubscriptionAttributes" | "getTopicAttributes" | "listEndpointsByPlatformApplication" | "listPhoneNumbersOptedOut" | "listPlatformApplications" | "listSubscriptions" | "listSubscriptionsByTopic" | "listTopics" | "optInPhoneNumber" | "publish" | "removePermission" | "setEndpointAttributes" | "setPlatformApplicationAttributes" | "setSMSAttributes" | "setSubscriptionAttributes" | "setTopicAttributes" | "subscribe" | "unsubscribe">[B]>) => Promise, "listTagsForResource" | "tagResource" | "untagResource" | "createTopic" | "addPermission" | "checkIfPhoneNumberIsOptedOut" | "confirmSubscription" | "createPlatformApplication" | "createPlatformEndpoint" | "deleteEndpoint" | "deletePlatformApplication" | "deleteTopic" | "getEndpointAttributes" | "getPlatformApplicationAttributes" | "getSMSAttributes" | "getSubscriptionAttributes" | "getTopicAttributes" | "listEndpointsByPlatformApplication" | "listPhoneNumbersOptedOut" | "listPlatformApplications" | "listSubscriptions" | "listSubscriptionsByTopic" | "listTopics" | "optInPhoneNumber" | "publish" | "removePermission" | "setEndpointAttributes" | "setPlatformApplicationAttributes" | "setSMSAttributes" | "setSubscriptionAttributes" | "setTopicAttributes" | "subscribe" | "unsubscribe">[B]>>; export declare const iam: (call: B, request: First, "createRole" | "addClientIDToOpenIDConnectProvider" | "addRoleToInstanceProfile" | "addUserToGroup" | "attachGroupPolicy" | "attachRolePolicy" | "attachUserPolicy" | "changePassword" | "createAccessKey" | "createAccountAlias" | "createGroup" | "createInstanceProfile" | "createLoginProfile" | "createOpenIDConnectProvider" | "createPolicy" | "createPolicyVersion" | "createSAMLProvider" | "createServiceLinkedRole" | "createServiceSpecificCredential" | "createUser" | "createVirtualMFADevice" | "deactivateMFADevice" | "deleteAccessKey" | "deleteAccountAlias" | "deleteGroup" | "deleteGroupPolicy" | "deleteInstanceProfile" | "deleteLoginProfile" | "deleteOpenIDConnectProvider" | "deletePolicy" | "deletePolicyVersion" | "deleteRole" | "deleteRolePermissionsBoundary" | "deleteRolePolicy" | "deleteSAMLProvider" | "deleteSSHPublicKey" | "deleteServerCertificate" | "deleteServiceLinkedRole" | "deleteServiceSpecificCredential" | "deleteSigningCertificate" | "deleteUser" | "deleteUserPermissionsBoundary" | "deleteUserPolicy" | "deleteVirtualMFADevice" | "detachGroupPolicy" | "detachRolePolicy" | "detachUserPolicy" | "enableMFADevice" | "generateOrganizationsAccessReport" | "generateServiceLastAccessedDetails" | "getAccessKeyLastUsed" | "getAccountAuthorizationDetails" | "getContextKeysForCustomPolicy" | "getContextKeysForPrincipalPolicy" | "getGroup" | "getGroupPolicy" | "getInstanceProfile" | "getLoginProfile" | "getOpenIDConnectProvider" | "getOrganizationsAccessReport" | "getPolicy" | "getPolicyVersion" | "getRole" | "getRolePolicy" | "getSAMLProvider" | "getSSHPublicKey" | "getServerCertificate" | "getServiceLastAccessedDetails" | "getServiceLastAccessedDetailsWithEntities" | "getServiceLinkedRoleDeletionStatus" | "getUser" | "getUserPolicy" | "listAccessKeys" | "listAccountAliases" | "listAttachedGroupPolicies" | "listAttachedRolePolicies" | "listAttachedUserPolicies" | "listEntitiesForPolicy" | "listGroupPolicies" | "listGroups" | "listGroupsForUser" | "listInstanceProfiles" | "listInstanceProfilesForRole" | "listMFADevices" | "listOpenIDConnectProviders" | "listPolicies" | "listPoliciesGrantingServiceAccess" | "listPolicyVersions" | "listRolePolicies" | "listRoleTags" | "listRoles" | "listSAMLProviders" | "listSSHPublicKeys" | "listServerCertificates" | "listServiceSpecificCredentials" | "listSigningCertificates" | "listUserPolicies" | "listUserTags" | "listUsers" | "listVirtualMFADevices" | "putGroupPolicy" | "putRolePermissionsBoundary" | "putRolePolicy" | "putUserPermissionsBoundary" | "putUserPolicy" | "removeClientIDFromOpenIDConnectProvider" | "removeRoleFromInstanceProfile" | "removeUserFromGroup" | "resetServiceSpecificCredential" | "resyncMFADevice" | "setDefaultPolicyVersion" | "setSecurityTokenServicePreferences" | "simulateCustomPolicy" | "simulatePrincipalPolicy" | "tagRole" | "tagUser" | "untagRole" | "untagUser" | "updateAccessKey" | "updateAccountPasswordPolicy" | "updateAssumeRolePolicy" | "updateGroup" | "updateLoginProfile" | "updateOpenIDConnectProviderThumbprint" | "updateRole" | "updateRoleDescription" | "updateSAMLProvider" | "updateSSHPublicKey" | "updateServerCertificate" | "updateServiceSpecificCredential" | "updateSigningCertificate" | "updateUser" | "uploadSSHPublicKey" | "uploadServerCertificate" | "uploadSigningCertificate">[B]>) => Promise, "createRole" | "addClientIDToOpenIDConnectProvider" | "addRoleToInstanceProfile" | "addUserToGroup" | "attachGroupPolicy" | "attachRolePolicy" | "attachUserPolicy" | "changePassword" | "createAccessKey" | "createAccountAlias" | "createGroup" | "createInstanceProfile" | "createLoginProfile" | "createOpenIDConnectProvider" | "createPolicy" | "createPolicyVersion" | "createSAMLProvider" | "createServiceLinkedRole" | "createServiceSpecificCredential" | "createUser" | "createVirtualMFADevice" | "deactivateMFADevice" | "deleteAccessKey" | "deleteAccountAlias" | "deleteGroup" | "deleteGroupPolicy" | "deleteInstanceProfile" | "deleteLoginProfile" | "deleteOpenIDConnectProvider" | "deletePolicy" | "deletePolicyVersion" | "deleteRole" | "deleteRolePermissionsBoundary" | "deleteRolePolicy" | "deleteSAMLProvider" | "deleteSSHPublicKey" | "deleteServerCertificate" | "deleteServiceLinkedRole" | "deleteServiceSpecificCredential" | "deleteSigningCertificate" | "deleteUser" | "deleteUserPermissionsBoundary" | "deleteUserPolicy" | "deleteVirtualMFADevice" | "detachGroupPolicy" | "detachRolePolicy" | "detachUserPolicy" | "enableMFADevice" | "generateOrganizationsAccessReport" | "generateServiceLastAccessedDetails" | "getAccessKeyLastUsed" | "getAccountAuthorizationDetails" | "getContextKeysForCustomPolicy" | "getContextKeysForPrincipalPolicy" | "getGroup" | "getGroupPolicy" | "getInstanceProfile" | "getLoginProfile" | "getOpenIDConnectProvider" | "getOrganizationsAccessReport" | "getPolicy" | "getPolicyVersion" | "getRole" | "getRolePolicy" | "getSAMLProvider" | "getSSHPublicKey" | "getServerCertificate" | "getServiceLastAccessedDetails" | "getServiceLastAccessedDetailsWithEntities" | "getServiceLinkedRoleDeletionStatus" | "getUser" | "getUserPolicy" | "listAccessKeys" | "listAccountAliases" | "listAttachedGroupPolicies" | "listAttachedRolePolicies" | "listAttachedUserPolicies" | "listEntitiesForPolicy" | "listGroupPolicies" | "listGroups" | "listGroupsForUser" | "listInstanceProfiles" | "listInstanceProfilesForRole" | "listMFADevices" | "listOpenIDConnectProviders" | "listPolicies" | "listPoliciesGrantingServiceAccess" | "listPolicyVersions" | "listRolePolicies" | "listRoleTags" | "listRoles" | "listSAMLProviders" | "listSSHPublicKeys" | "listServerCertificates" | "listServiceSpecificCredentials" | "listSigningCertificates" | "listUserPolicies" | "listUserTags" | "listUsers" | "listVirtualMFADevices" | "putGroupPolicy" | "putRolePermissionsBoundary" | "putRolePolicy" | "putUserPermissionsBoundary" | "putUserPolicy" | "removeClientIDFromOpenIDConnectProvider" | "removeRoleFromInstanceProfile" | "removeUserFromGroup" | "resetServiceSpecificCredential" | "resyncMFADevice" | "setDefaultPolicyVersion" | "setSecurityTokenServicePreferences" | "simulateCustomPolicy" | "simulatePrincipalPolicy" | "tagRole" | "tagUser" | "untagRole" | "untagUser" | "updateAccessKey" | "updateAccountPasswordPolicy" | "updateAssumeRolePolicy" | "updateGroup" | "updateLoginProfile" | "updateOpenIDConnectProviderThumbprint" | "updateRole" | "updateRoleDescription" | "updateSAMLProvider" | "updateSSHPublicKey" | "updateServerCertificate" | "updateServiceSpecificCredential" | "updateSigningCertificate" | "updateUser" | "uploadSSHPublicKey" | "uploadServerCertificate" | "uploadSigningCertificate">[B]>>; export declare const lambda: (call: B, request: First, "tagResource" | "untagResource" | "addPermission" | "removePermission" | "getPolicy" | "invoke" | "addLayerVersionPermission" | "createAlias" | "createEventSourceMapping" | "createFunction" | "deleteAlias" | "deleteEventSourceMapping" | "deleteFunction" | "deleteFunctionConcurrency" | "deleteFunctionEventInvokeConfig" | "deleteLayerVersion" | "deleteProvisionedConcurrencyConfig" | "getAccountSettings" | "getAlias" | "getEventSourceMapping" | "getFunction" | "getFunctionConcurrency" | "getFunctionConfiguration" | "getFunctionEventInvokeConfig" | "getLayerVersion" | "getLayerVersionByArn" | "getLayerVersionPolicy" | "getProvisionedConcurrencyConfig" | "invokeAsync" | "listAliases" | "listEventSourceMappings" | "listFunctionEventInvokeConfigs" | "listFunctions" | "listLayerVersions" | "listLayers" | "listProvisionedConcurrencyConfigs" | "listTags" | "listVersionsByFunction" | "publishLayerVersion" | "publishVersion" | "putFunctionConcurrency" | "putFunctionEventInvokeConfig" | "putProvisionedConcurrencyConfig" | "removeLayerVersionPermission" | "updateAlias" | "updateEventSourceMapping" | "updateFunctionCode" | "updateFunctionConfiguration" | "updateFunctionEventInvokeConfig">[B]>) => Promise, "tagResource" | "untagResource" | "addPermission" | "removePermission" | "getPolicy" | "invoke" | "addLayerVersionPermission" | "createAlias" | "createEventSourceMapping" | "createFunction" | "deleteAlias" | "deleteEventSourceMapping" | "deleteFunction" | "deleteFunctionConcurrency" | "deleteFunctionEventInvokeConfig" | "deleteLayerVersion" | "deleteProvisionedConcurrencyConfig" | "getAccountSettings" | "getAlias" | "getEventSourceMapping" | "getFunction" | "getFunctionConcurrency" | "getFunctionConfiguration" | "getFunctionEventInvokeConfig" | "getLayerVersion" | "getLayerVersionByArn" | "getLayerVersionPolicy" | "getProvisionedConcurrencyConfig" | "invokeAsync" | "listAliases" | "listEventSourceMappings" | "listFunctionEventInvokeConfigs" | "listFunctions" | "listLayerVersions" | "listLayers" | "listProvisionedConcurrencyConfigs" | "listTags" | "listVersionsByFunction" | "publishLayerVersion" | "publishVersion" | "putFunctionConcurrency" | "putFunctionEventInvokeConfig" | "putProvisionedConcurrencyConfig" | "removeLayerVersionPermission" | "updateAlias" | "updateEventSourceMapping" | "updateFunctionCode" | "updateFunctionConfiguration" | "updateFunctionEventInvokeConfig">[B]>>; export declare const sts: (call: B, request: First, "getCallerIdentity" | "assumeRole" | "assumeRoleWithSAML" | "assumeRoleWithWebIdentity" | "decodeAuthorizationMessage" | "getAccessKeyInfo" | "getFederationToken" | "getSessionToken">[B]>) => Promise, "getCallerIdentity" | "assumeRole" | "assumeRoleWithSAML" | "assumeRoleWithWebIdentity" | "decodeAuthorizationMessage" | "getAccessKeyInfo" | "getFederationToken" | "getSessionToken">[B]>>; declare type ServiceCalls = NoNayNever>; declare type SimplifiedService = { [k in keyof T]: AwsCallIO; }; declare type NoNayNever = Pick; declare type AwsCallIO = T extends { (args: infer INPUT, callback?: ((err: AWS.AWSError, data: any) => void) | undefined): AWS.Request; (callback?: ((err: AWS.AWSError, data: {}) => void) | undefined): AWS.Request; } ? [INPUT, OUTPUT] : never; declare type First = T extends [any, any] ? T[0] : never; declare type Second = T extends [any, any] ? T[1] : never; export declare function deleteStacks(...stackNames: string[]): Promise; export declare function stackStatus(stackName: string): Promise; export declare function isStackMissingError(e: Error): boolean; export declare function isBucketMissingError(e: Error): boolean; /** * Retry an async operation until a deadline is hit. * * Use `retry.forSeconds()` to construct a deadline relative to right now. * * Exceptions will cause the operation to retry. Use `retry.abort` to annotate an exception * to stop the retry and end in a failure. */ export declare function retry(operation: string, deadline: Date, block: () => Promise): Promise; export declare namespace retry { var forSeconds: (seconds: number) => Date; var abort: (e: Error) => Error; } export declare function sleep(ms: number): Promise; export declare function emptyBucket(bucketName: string): Promise; export declare function deleteImageRepository(repositoryName: string): Promise; export declare function deleteBucket(bucketName: string): Promise; export declare function outputFromStack(key: string, stack: AWS.CloudFormation.Stack): string | undefined; export {};