55 * and run json-schema-to-typescript to regenerate this file.
66 */
77
8- export type ErrorCode = string ;
8+ export type AwsArn = AwsArnString | AwsCfFunction ;
9+ export type AwsArnString = string ;
910export type AwsCfFunction =
1011 | AwsCfImport
1112 | AwsCfJoin
@@ -14,9 +15,8 @@ export type AwsCfFunction =
1415 | AwsCfSub
1516 | AwsCfBase64
1617 | AwsCfToJsonString ;
18+ export type ErrorCode = string ;
1719export type AwsCfInstruction = string | AwsCfFunction ;
18- export type AwsArn = AwsArnString | AwsCfFunction ;
19- export type AwsArnString = string ;
2020export type FunctionName = string ;
2121export type AwsSecretsManagerArnString = string ;
2222export type FilterPatterns = {
@@ -92,14 +92,7 @@ export type AwsLambdaTimeout = number;
9292export type AwsLambdaTracing = ( "Active" | "PassThrough" ) | boolean ;
9393export type AwsLambdaVersioning = boolean ;
9494export type AwsHttpApiPayload = "1.0" | "2.0" ;
95- export type AwsApiGatewayApiKeys = (
96- | string
97- | AwsApiGatewayApiKeysProperties
98- | {
99- [ k : string ] : ( string | AwsApiGatewayApiKeysProperties ) [ ] ;
100- }
101- ) [ ] ;
102- export type AwsResourcePolicyStatements = ( {
95+ export type AwsIamPolicyStatements = ( {
10396 [ k : string ] : unknown ;
10497} & (
10598 | {
@@ -117,8 +110,14 @@ export type AwsResourcePolicyStatements = ({
117110 [ k : string ] : unknown ;
118111 }
119112 ) ) [ ] ;
120- export type AwsS3BucketName = string ;
121- export type AwsIamPolicyStatements = ( {
113+ export type AwsApiGatewayApiKeys = (
114+ | string
115+ | AwsApiGatewayApiKeysProperties
116+ | {
117+ [ k : string ] : ( string | AwsApiGatewayApiKeysProperties ) [ ] ;
118+ }
119+ ) [ ] ;
120+ export type AwsResourcePolicyStatements = ( {
122121 [ k : string ] : unknown ;
123122} & (
124123 | {
@@ -136,6 +135,7 @@ export type AwsIamPolicyStatements = ({
136135 [ k : string ] : unknown ;
137136 }
138137 ) ) [ ] ;
138+ export type AwsS3BucketName = string ;
139139export type Stage = string ;
140140export type AwsCfArrayInstruction = AwsCfInstruction [ ] | AwsCfSplit ;
141141export type ServiceName = string ;
@@ -160,6 +160,10 @@ export interface AWS {
160160 [ k : string ] : unknown ;
161161 } ;
162162 custom ?: {
163+ "serverless-iam-roles-per-function" ?: {
164+ defaultInherit ?: boolean ;
165+ iamGlobalPermissionsBoundary ?: AwsArn ;
166+ } ;
163167 [ k : string ] : unknown ;
164168 } ;
165169 dashboard ?: {
@@ -770,6 +774,21 @@ export interface AWS {
770774 httpApi ?: {
771775 payload ?: AwsHttpApiPayload ;
772776 } ;
777+ iam ?: {
778+ inheritStatements ?: boolean ;
779+ role ?: {
780+ name ?: string ;
781+ statements ?: AwsIamPolicyStatements ;
782+ permissionsBoundary ?: AwsArn ;
783+ managedPolicies ?: AwsArn [ ] ;
784+ path ?: string ;
785+ tags ?: AwsResourceTags ;
786+ } ;
787+ } ;
788+ iamRoleStatementsInherit ?: boolean ;
789+ iamRoleStatementsName ?: string ;
790+ iamPermissionsBoundary ?: AwsArn ;
791+ iamRoleStatements ?: AwsIamPolicyStatements ;
773792 alarms ?: unknown [ ] ;
774793 } ;
775794 } ;
0 commit comments