@types/aws-lambda
Version:
TypeScript definitions for AWS Lambda
46 lines (36 loc) • 1.91 kB
TypeScript
import { Handler } from '../../handler';
import { BaseTriggerEvent, StringMap } from './_common';
export interface GroupOverrideDetails {
groupsToOverride?: string[] | undefined;
iamRolesToOverride?: string[] | undefined;
preferredRole?: string | undefined;
}
export interface BasePreTokenGenerationTriggerEvent<T extends string> extends BaseTriggerEvent<T> {
request: {
userAttributes: StringMap;
groupConfiguration: GroupOverrideDetails;
clientMetadata?: StringMap | undefined;
};
response: {
claimsOverrideDetails: {
claimsToAddOrOverride?: StringMap | undefined;
claimsToSuppress?: string[] | undefined;
groupOverrideDetails?: GroupOverrideDetails | undefined;
};
};
}
export type PreTokenGenerationHostedAuthTriggerEvent = BasePreTokenGenerationTriggerEvent<'TokenGeneration_HostedAuth'>;
export type PreTokenGenerationAuthenticationTriggerEvent = BasePreTokenGenerationTriggerEvent<'TokenGeneration_Authentication'>;
export type PreTokenGenerationNewPasswordChallengeTriggerEvent = BasePreTokenGenerationTriggerEvent<'TokenGeneration_NewPasswordChallenge'>;
export type PreTokenGenerationAuthenticateDeviceTriggerEvent = BasePreTokenGenerationTriggerEvent<'TokenGeneration_AuthenticateDevice'>;
export type PreTokenGenerationRefreshTokensTriggerEvent = BasePreTokenGenerationTriggerEvent<'TokenGeneration_RefreshTokens'>;
/**
* @see https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-token-generation.html
*/
export type PreTokenGenerationTriggerEvent =
| PreTokenGenerationHostedAuthTriggerEvent
| PreTokenGenerationAuthenticationTriggerEvent
| PreTokenGenerationNewPasswordChallengeTriggerEvent
| PreTokenGenerationAuthenticateDeviceTriggerEvent
| PreTokenGenerationRefreshTokensTriggerEvent;
export type PreTokenGenerationTriggerHandler = Handler<PreTokenGenerationTriggerEvent>;