diff --git a/types/aws-lambda/aws-lambda-tests.ts b/types/aws-lambda/aws-lambda-tests.ts index 4da38ff8e0..1296bd54e4 100644 --- a/types/aws-lambda/aws-lambda-tests.ts +++ b/types/aws-lambda/aws-lambda-tests.ts @@ -444,6 +444,7 @@ str = cognitoUserPoolEvent.callerContext.clientId; str = cognitoUserPoolEvent.request.userAttributes["email"]; str = cognitoUserPoolEvent.request.validationData!["k1"]; strOrUndefined = cognitoUserPoolEvent.request.codeParameter; +strOrUndefined = cognitoUserPoolEvent.request.linkParameter; strOrUndefined = cognitoUserPoolEvent.request.usernameParameter; boolOrUndefined = cognitoUserPoolEvent.request.newDeviceUsed; cognitoUserPoolEvent.request.session![0].challengeName === "CUSTOM_CHALLENGE"; @@ -477,6 +478,31 @@ cognitoUserPoolEvent.response.desiredDeliveryMediums === ["EMAIL"]; cognitoUserPoolEvent.response.desiredDeliveryMediums === ["SMS"]; cognitoUserPoolEvent.response.desiredDeliveryMediums === ["SMS", "EMAIL"]; boolOrUndefined = cognitoUserPoolEvent.response.forceAliasCreation; +// From AWS examples +cognitoUserPoolEvent.response = { + claimsOverrideDetails: { + claimsToAddOrOverride: { + attribute_key2: "attribute_value2", + attribute_key: "attribute_value" + }, + claimsToSuppress: ["email"] + } +}; +cognitoUserPoolEvent.response = { + claimsOverrideDetails: { + claimsToAddOrOverride: { + attribute_key2: "attribute_value2", + attribute_key: "attribute_value" + }, + claimsToSuppress: ["email"], + groupOverrideDetails: { + groupsToOverride: ["group-A", "group-B", "group-C"], + iamRolesToOverride: ["arn:aws:iam::XXXXXXXXXXXX:role/sns_callerA", "arn:aws:iam::XXXXXXXXX:role/sns_callerB", "arn:aws:iam::XXXXXXXXXX:role/sns_callerC"], + preferredRole: "arn:aws:iam::XXXXXXXXXXX:role/sns_caller" + } + } +}; +cognitoUserPoolEvent.response.claimsOverrideDetails!.groupOverrideDetails = null; // CloudFormation Custom Resource switch (cloudformationCustomResourceEvent.RequestType) { diff --git a/types/aws-lambda/index.d.ts b/types/aws-lambda/index.d.ts index 1a17141c7a..35b07b035b 100644 --- a/types/aws-lambda/index.d.ts +++ b/types/aws-lambda/index.d.ts @@ -293,6 +293,7 @@ export interface CognitoUserPoolTriggerEvent { userAttributes: { [key: string]: string }; validationData?: { [key: string]: string }; codeParameter?: string; + linkParameter?: string; usernameParameter?: string; newDeviceUsed?: boolean; session?: Array<{ @@ -322,6 +323,15 @@ export interface CognitoUserPoolTriggerEvent { messageAction?: "SUPPRESS"; desiredDeliveryMediums?: Array<"EMAIL" | "SMS">; forceAliasCreation?: boolean; + claimsOverrideDetails?: { + claimsToAddOrOverride?: { [key: string]: string }; + claimsToSuppress?: string[]; + groupOverrideDetails?: null | { + groupsToOverride?: string[]; + iamRolesToOverride?: string[]; + preferredRole?: string; + }; + }; }; } export type CognitoUserPoolEvent = CognitoUserPoolTriggerEvent;