import { ResourceBase } from '../resource'; import { Value, List } from '../dataTypes'; export declare class AccountRecoverySetting { RecoveryMechanisms?: List; constructor(properties: AccountRecoverySetting); } export declare class AdminCreateUserConfig { InviteMessageTemplate?: InviteMessageTemplate; UnusedAccountValidityDays?: Value; AllowAdminCreateUserOnly?: Value; constructor(properties: AdminCreateUserConfig); } export declare class CustomEmailSender { LambdaArn?: Value; LambdaVersion?: Value; constructor(properties: CustomEmailSender); } export declare class CustomSMSSender { LambdaArn?: Value; LambdaVersion?: Value; constructor(properties: CustomSMSSender); } export declare class DeviceConfiguration { DeviceOnlyRememberedOnUserPrompt?: Value; ChallengeRequiredOnNewDevice?: Value; constructor(properties: DeviceConfiguration); } export declare class EmailConfiguration { ReplyToEmailAddress?: Value; ConfigurationSet?: Value; EmailSendingAccount?: Value; SourceArn?: Value; From?: Value; constructor(properties: EmailConfiguration); } export declare class InviteMessageTemplate { EmailMessage?: Value; SMSMessage?: Value; EmailSubject?: Value; constructor(properties: InviteMessageTemplate); } export declare class LambdaConfig { CreateAuthChallenge?: Value; PreSignUp?: Value; KMSKeyID?: Value; UserMigration?: Value; PostAuthentication?: Value; VerifyAuthChallengeResponse?: Value; PreAuthentication?: Value; DefineAuthChallenge?: Value; PreTokenGeneration?: Value; CustomSMSSender?: CustomSMSSender; PostConfirmation?: Value; CustomMessage?: Value; CustomEmailSender?: CustomEmailSender; constructor(properties: LambdaConfig); } export declare class NumberAttributeConstraints { MinValue?: Value; MaxValue?: Value; constructor(properties: NumberAttributeConstraints); } export declare class PasswordPolicy { RequireNumbers?: Value; MinimumLength?: Value; TemporaryPasswordValidityDays?: Value; RequireUppercase?: Value; RequireLowercase?: Value; RequireSymbols?: Value; constructor(properties: PasswordPolicy); } export declare class Policies { PasswordPolicy?: PasswordPolicy; constructor(properties: Policies); } export declare class RecoveryOption { Priority?: Value; Name?: Value; constructor(properties: RecoveryOption); } export declare class SchemaAttribute { DeveloperOnlyAttribute?: Value; Mutable?: Value; AttributeDataType?: Value; StringAttributeConstraints?: StringAttributeConstraints; Required?: Value; NumberAttributeConstraints?: NumberAttributeConstraints; Name?: Value; constructor(properties: SchemaAttribute); } export declare class SmsConfiguration { SnsRegion?: Value; ExternalId?: Value; SnsCallerArn?: Value; constructor(properties: SmsConfiguration); } export declare class StringAttributeConstraints { MinLength?: Value; MaxLength?: Value; constructor(properties: StringAttributeConstraints); } export declare class UserAttributeUpdateSettings { AttributesRequireVerificationBeforeUpdate: List>; constructor(properties: UserAttributeUpdateSettings); } export declare class UserPoolAddOns { AdvancedSecurityMode?: Value; constructor(properties: UserPoolAddOns); } export declare class UsernameConfiguration { CaseSensitive?: Value; constructor(properties: UsernameConfiguration); } export declare class VerificationMessageTemplate { EmailMessageByLink?: Value; EmailMessage?: Value; SmsMessage?: Value; EmailSubject?: Value; DefaultEmailOption?: Value; EmailSubjectByLink?: Value; constructor(properties: VerificationMessageTemplate); } export interface UserPoolProperties { UserPoolTags?: { [key: string]: Value; }; Policies?: Policies; VerificationMessageTemplate?: VerificationMessageTemplate; MfaConfiguration?: Value; Schema?: List; AdminCreateUserConfig?: AdminCreateUserConfig; DeletionProtection?: Value; SmsAuthenticationMessage?: Value; UsernameConfiguration?: UsernameConfiguration; UserPoolName?: Value; SmsVerificationMessage?: Value; UserPoolAddOns?: UserPoolAddOns; UserAttributeUpdateSettings?: UserAttributeUpdateSettings; EmailConfiguration?: EmailConfiguration; SmsConfiguration?: SmsConfiguration; AliasAttributes?: List>; EnabledMfas?: List>; EmailVerificationSubject?: Value; LambdaConfig?: LambdaConfig; UsernameAttributes?: List>; AutoVerifiedAttributes?: List>; DeviceConfiguration?: DeviceConfiguration; EmailVerificationMessage?: Value; AccountRecoverySetting?: AccountRecoverySetting; } export default class UserPool extends ResourceBase { static AccountRecoverySetting: typeof AccountRecoverySetting; static AdminCreateUserConfig: typeof AdminCreateUserConfig; static CustomEmailSender: typeof CustomEmailSender; static CustomSMSSender: typeof CustomSMSSender; static DeviceConfiguration: typeof DeviceConfiguration; static EmailConfiguration: typeof EmailConfiguration; static InviteMessageTemplate: typeof InviteMessageTemplate; static LambdaConfig: typeof LambdaConfig; static NumberAttributeConstraints: typeof NumberAttributeConstraints; static PasswordPolicy: typeof PasswordPolicy; static Policies: typeof Policies; static RecoveryOption: typeof RecoveryOption; static SchemaAttribute: typeof SchemaAttribute; static SmsConfiguration: typeof SmsConfiguration; static StringAttributeConstraints: typeof StringAttributeConstraints; static UserAttributeUpdateSettings: typeof UserAttributeUpdateSettings; static UserPoolAddOns: typeof UserPoolAddOns; static UsernameConfiguration: typeof UsernameConfiguration; static VerificationMessageTemplate: typeof VerificationMessageTemplate; constructor(properties?: UserPoolProperties); }