using System.Collections.Generic; using System.Runtime.Serialization; namespace Amazon.Lambda.CognitoEvents { /// /// https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-token-generation.html /// [DataContract] public class ClaimOverrideDetails { /// /// A map of one or more key-value pairs of claims to add or override. For group related claims, use groupOverrideDetails instead. /// [DataMember(Name = "claimsToAddOrOverride")] #if NETCOREAPP3_1 [System.Text.Json.Serialization.JsonPropertyName("claimsToAddOrOverride")] # endif public Dictionary ClaimsToAddOrOverride { get; set; } = new Dictionary(); /// /// A list that contains claims to be suppressed from the identity token. /// [DataMember(Name = "claimsToSuppress")] #if NETCOREAPP3_1 [System.Text.Json.Serialization.JsonPropertyName("claimsToSuppress")] # endif public List ClaimsToSuppress { get; set; } = new List(); /// /// The output object containing the current group configuration. It includes groupsToOverride, iamRolesToOverride, and preferredRole. /// [DataMember(Name = "groupOverrideDetails")] #if NETCOREAPP3_1 [System.Text.Json.Serialization.JsonPropertyName("groupOverrideDetails")] # endif public GroupConfiguration GroupOverrideDetails { get; set; } = new GroupConfiguration(); } }