import cdk = require('@aws-cdk/cdk'); export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html */ interface AccessKeyResourceProps { /** * ``AWS::IAM::AccessKey.UserName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-username */ userName: string | cdk.Token; /** * ``AWS::IAM::AccessKey.Serial`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-serial */ serial?: number | cdk.Token; /** * ``AWS::IAM::AccessKey.Status`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-status */ status?: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html */ class AccessKeyResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute SecretAccessKey */ readonly accessKeySecretAccessKey: AccessKeySecretAccessKey; /** * Creates a new ``AWS::IAM::AccessKey``. * * @param parent the ``cdk.Construct`` this ``AccessKeyResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``AccessKeyResource`` */ constructor(parent: cdk.Construct, name: string, properties: AccessKeyResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare class AccessKeySecretAccessKey extends cdk.Token { } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html */ interface GroupResourceProps { /** * ``AWS::IAM::Group.GroupName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-groupname */ groupName?: string | cdk.Token; /** * ``AWS::IAM::Group.ManagedPolicyArns`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-managepolicyarns */ managedPolicyArns?: Array | cdk.Token; /** * ``AWS::IAM::Group.Path`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-path */ path?: string | cdk.Token; /** * ``AWS::IAM::Group.Policies`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-policies */ policies?: Array | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html */ class GroupResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute Arn */ readonly groupArn: GroupArn; /** * Creates a new ``AWS::IAM::Group``. * * @param parent the ``cdk.Construct`` this ``GroupResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``GroupResource`` */ constructor(parent: cdk.Construct, name: string, properties?: GroupResourceProps); protected renderProperties(): { [key: string]: any; }; } namespace GroupResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html */ interface PolicyProperty { /** * ``GroupResource.PolicyProperty.PolicyDocument`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument */ policyDocument: object | cdk.Token; /** * ``GroupResource.PolicyProperty.PolicyName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname */ policyName: string | cdk.Token; } } } export declare class GroupArn extends cdk.Arn { } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html */ interface InstanceProfileResourceProps { /** * ``AWS::IAM::InstanceProfile.Roles`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-roles */ roles: Array | cdk.Token; /** * ``AWS::IAM::InstanceProfile.InstanceProfileName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-instanceprofilename */ instanceProfileName?: string | cdk.Token; /** * ``AWS::IAM::InstanceProfile.Path`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-path */ path?: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html */ class InstanceProfileResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute Arn */ readonly instanceProfileArn: InstanceProfileArn; /** * Creates a new ``AWS::IAM::InstanceProfile``. * * @param parent the ``cdk.Construct`` this ``InstanceProfileResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``InstanceProfileResource`` */ constructor(parent: cdk.Construct, name: string, properties: InstanceProfileResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare class InstanceProfileArn extends cdk.Arn { } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html */ interface ManagedPolicyResourceProps { /** * ``AWS::IAM::ManagedPolicy.PolicyDocument`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-policydocument */ policyDocument: object | cdk.Token; /** * ``AWS::IAM::ManagedPolicy.Description`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-description */ description?: string | cdk.Token; /** * ``AWS::IAM::ManagedPolicy.Groups`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-groups */ groups?: Array | cdk.Token; /** * ``AWS::IAM::ManagedPolicy.ManagedPolicyName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-managedpolicyname */ managedPolicyName?: string | cdk.Token; /** * ``AWS::IAM::ManagedPolicy.Path`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-ec2-dhcpoptions-path */ path?: string | cdk.Token; /** * ``AWS::IAM::ManagedPolicy.Roles`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-roles */ roles?: Array | cdk.Token; /** * ``AWS::IAM::ManagedPolicy.Users`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-users */ users?: Array | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html */ class ManagedPolicyResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * Creates a new ``AWS::IAM::ManagedPolicy``. * * @param parent the ``cdk.Construct`` this ``ManagedPolicyResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``ManagedPolicyResource`` */ constructor(parent: cdk.Construct, name: string, properties: ManagedPolicyResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html */ interface PolicyResourceProps { /** * ``AWS::IAM::Policy.PolicyDocument`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policydocument */ policyDocument: object | cdk.Token; /** * ``AWS::IAM::Policy.PolicyName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policyname */ policyName: string | cdk.Token; /** * ``AWS::IAM::Policy.Groups`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-groups */ groups?: Array | cdk.Token; /** * ``AWS::IAM::Policy.Roles`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-roles */ roles?: Array | cdk.Token; /** * ``AWS::IAM::Policy.Users`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-users */ users?: Array | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html */ class PolicyResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * Creates a new ``AWS::IAM::Policy``. * * @param parent the ``cdk.Construct`` this ``PolicyResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``PolicyResource`` */ constructor(parent: cdk.Construct, name: string, properties: PolicyResourceProps); protected renderProperties(): { [key: string]: any; }; } } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html */ interface RoleResourceProps { /** * ``AWS::IAM::Role.AssumeRolePolicyDocument`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument */ assumeRolePolicyDocument: object | cdk.Token; /** * ``AWS::IAM::Role.ManagedPolicyArns`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-managepolicyarns */ managedPolicyArns?: Array | cdk.Token; /** * ``AWS::IAM::Role.MaxSessionDuration`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-maxsessionduration */ maxSessionDuration?: number | cdk.Token; /** * ``AWS::IAM::Role.Path`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path */ path?: string | cdk.Token; /** * ``AWS::IAM::Role.Policies`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies */ policies?: Array | cdk.Token; /** * ``AWS::IAM::Role.RoleName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-rolename */ roleName?: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html */ class RoleResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute Arn */ readonly roleArn: RoleArn; /** * @cloudformation_attribute RoleId */ readonly roleId: RoleId; /** * Creates a new ``AWS::IAM::Role``. * * @param parent the ``cdk.Construct`` this ``RoleResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``RoleResource`` */ constructor(parent: cdk.Construct, name: string, properties: RoleResourceProps); protected renderProperties(): { [key: string]: any; }; } namespace RoleResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html */ interface PolicyProperty { /** * ``RoleResource.PolicyProperty.PolicyDocument`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument */ policyDocument: object | cdk.Token; /** * ``RoleResource.PolicyProperty.PolicyName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname */ policyName: string | cdk.Token; } } } export declare class RoleArn extends cdk.Arn { } export declare class RoleId extends cdk.Token { } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html */ interface UserResourceProps { /** * ``AWS::IAM::User.Groups`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-groups */ groups?: Array | cdk.Token; /** * ``AWS::IAM::User.LoginProfile`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-loginprofile */ loginProfile?: UserResource.LoginProfileProperty | cdk.Token; /** * ``AWS::IAM::User.ManagedPolicyArns`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-managepolicyarns */ managedPolicyArns?: Array | cdk.Token; /** * ``AWS::IAM::User.Path`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-path */ path?: string | cdk.Token; /** * ``AWS::IAM::User.Policies`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-policies */ policies?: Array | cdk.Token; /** * ``AWS::IAM::User.UserName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-username */ userName?: string | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html */ class UserResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * @cloudformation_attribute Arn */ readonly userArn: UserArn; /** * Creates a new ``AWS::IAM::User``. * * @param parent the ``cdk.Construct`` this ``UserResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``UserResource`` */ constructor(parent: cdk.Construct, name: string, properties?: UserResourceProps); protected renderProperties(): { [key: string]: any; }; } namespace UserResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html */ interface LoginProfileProperty { /** * ``UserResource.LoginProfileProperty.Password`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-password */ password: string | cdk.Token; /** * ``UserResource.LoginProfileProperty.PasswordResetRequired`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-passwordresetrequired */ passwordResetRequired?: boolean | cdk.Token; } } namespace UserResource { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html */ interface PolicyProperty { /** * ``UserResource.PolicyProperty.PolicyDocument`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument */ policyDocument: object | cdk.Token; /** * ``UserResource.PolicyProperty.PolicyName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname */ policyName: string | cdk.Token; } } } export declare class UserArn extends cdk.Arn { } export declare namespace cloudformation { /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html */ interface UserToGroupAdditionResourceProps { /** * ``AWS::IAM::UserToGroupAddition.GroupName`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-groupname */ groupName: string | cdk.Token; /** * ``AWS::IAM::UserToGroupAddition.Users`` * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-users */ users: Array | cdk.Token; } /** * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html */ class UserToGroupAdditionResource extends cdk.Resource { /** * The CloudFormation resource type name for this resource class. */ static readonly resourceTypeName: string; /** * Creates a new ``AWS::IAM::UserToGroupAddition``. * * @param parent the ``cdk.Construct`` this ``UserToGroupAdditionResource`` is a part of * @param name the name of the resource in the ``cdk.Construct`` tree * @param properties the properties of this ``UserToGroupAdditionResource`` */ constructor(parent: cdk.Construct, name: string, properties: UserToGroupAdditionResourceProps); protected renderProperties(): { [key: string]: any; }; } }