typed-aws
Version:
Helps you write AWS CloudFormation in TypeScript
87 lines (86 loc) • 3.16 kB
TypeScript
import { CfnResource, Resolvable } from '../../base';
export declare type Role_Type = 'AWS::IAM::Role';
export declare const Role_Type = "AWS::IAM::Role";
/**
* Resource Type definition for AWS::IAM::Role {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html}
*/
export default function Role(props: Role_Properties): CfnResource<Role_Properties>;
/**
* Resource Type definition for AWS::IAM::Role {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html}
*/
export declare type Role_Properties = {
Arn?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument}
*/
AssumeRolePolicyDocument: {
[k: string]: unknown;
} | Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-description}
*/
Description?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-managepolicyarns}
*/
ManagedPolicyArns?: Resolvable<string>[];
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-maxsessionduration}
*/
MaxSessionDuration?: Resolvable<number>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path}
*/
Path?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary}
*/
PermissionsBoundary?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies}
*/
Policies?: Policy[];
RoleId?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-rolename}
*/
RoleName?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-tags}
*/
Tags?: Tag[];
};
/**
* The inline policy document that is embedded in the specified IAM role.
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html}
*/
export declare type Policy = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument}
*/
PolicyDocument: Resolvable<string> | {
[k: string]: unknown;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname}
*/
PolicyName: Resolvable<string>;
};
export declare type Tag = {
Key: Resolvable<string>;
Value: Resolvable<string>;
};