supertokens-node/recipe/emailpassword/types
References documentation for the supertokens-node/recipe/emailpassword/types package
Type Aliases
APIInterface
type APIInterface = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
emailExistsGET |
| undefined | (input) => Promise< | { exists: boolean; status: "OK"; } | GeneralErrorResponse> |
recipe/emailpassword/types.ts |
generatePasswordResetTokenPOST |
| undefined | (input) => Promise< | { status: "OK"; } | { reason: string; status: "PASSWORD_RESET_NOT_ALLOWED"; } | GeneralErrorResponse> |
recipe/emailpassword/types.ts |
passwordResetPOST |
| undefined | (input) => Promise< | { email: string; status: "OK"; user: User; } | { status: "RESET_PASSWORD_INVALID_TOKEN_ERROR"; } | { failureReason: string; status: "PASSWORD_POLICY_VIOLATED_ERROR"; } | GeneralErrorResponse> |
recipe/emailpassword/types.ts |
signInPOST |
| undefined | (input) => Promise< | { session: SessionContainerInterface; status: "OK"; user: User; } | { reason: string; status: "SIGN_IN_NOT_ALLOWED"; } | { status: "WRONG_CREDENTIALS_ERROR"; } | GeneralErrorResponse> |
recipe/emailpassword/types.ts |
signUpPOST |
| undefined | (input) => Promise< | { session: SessionContainerInterface; status: "OK"; user: User; } | { reason: string; status: "SIGN_UP_NOT_ALLOWED"; } | { status: "EMAIL_ALREADY_EXISTS_ERROR"; } | GeneralErrorResponse> |
recipe/emailpassword/types.ts |
APIOptions
type APIOptions = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
appInfo |
NormalisedAppinfo |
recipe/emailpassword/types.ts |
config |
TypeNormalisedInput |
recipe/emailpassword/types.ts |
emailDelivery |
EmailDeliveryIngredient<TypeEmailPasswordEmailDeliveryInput> |
recipe/emailpassword/types.ts |
isInServerlessEnv |
boolean |
recipe/emailpassword/types.ts |
recipeId |
string |
recipe/emailpassword/types.ts |
recipeImplementation |
RecipeInterface |
recipe/emailpassword/types.ts |
req |
BaseRequest |
recipe/emailpassword/types.ts |
res |
BaseResponse |
recipe/emailpassword/types.ts |
NormalisedFormField
type NormalisedFormField = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
id |
string |
recipe/emailpassword/types.ts |
optional |
boolean |
recipe/emailpassword/types.ts |
validate |
(value, tenantId, userContext) => Promise<string | undefined> |
recipe/emailpassword/types.ts |
RecipeInterface
type RecipeInterface = object;
Defined in: recipe/emailpassword/types.ts
Methods
consumePasswordResetToken()
consumePasswordResetToken(input): Promise<
| {
email: string;
status: "OK";
userId: string;
}
| {
status: "RESET_PASSWORD_INVALID_TOKEN_ERROR";
}>;
Defined in: recipe/emailpassword/types.ts
Parameters
| Parameter | Type |
|---|---|
input |
{ tenantId: string; token: string; userContext: UserContext; } |
input.tenantId |
string |
input.token |
string |
input.userContext |
UserContext |
Returns
Promise<
| {
email: string;
status: "OK";
userId: string;
}
| {
status: "RESET_PASSWORD_INVALID_TOKEN_ERROR";
}>
createNewRecipeUser()
createNewRecipeUser(input): Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "EMAIL_ALREADY_EXISTS_ERROR";
}>;
Defined in: recipe/emailpassword/types.ts
Parameters
| Parameter | Type |
|---|---|
input |
{ email: string; password: string; tenantId: string; userContext: UserContext; } |
input.email |
string |
input.password |
string |
input.tenantId |
string |
input.userContext |
UserContext |
Returns
Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "EMAIL_ALREADY_EXISTS_ERROR";
}>
createResetPasswordToken()
createResetPasswordToken(input): Promise<
| {
status: "OK";
token: string;
}
| {
status: "UNKNOWN_USER_ID_ERROR";
}>;
Defined in: recipe/emailpassword/types.ts
We pass in the email as well to this function cause the input userId may not be associated with an emailpassword account. In this case, we need to know which email to use to create an emailpassword account later on.
Parameters
| Parameter | Type |
|---|---|
input |
{ email: string; tenantId: string; userContext: UserContext; userId: string; } |
input.email |
string |
input.tenantId |
string |
input.userContext |
UserContext |
input.userId |
string |
Returns
Promise<
| {
status: "OK";
token: string;
}
| {
status: "UNKNOWN_USER_ID_ERROR";
}>
signIn()
signIn(input): Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "WRONG_CREDENTIALS_ERROR";
}
| {
reason: | "EMAIL_VERIFICATION_REQUIRED"
| "RECIPE_USER_ID_ALREADY_LINKED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "SESSION_USER_ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR";
status: "LINKING_TO_SESSION_USER_FAILED";
}>;
Defined in: recipe/emailpassword/types.ts
Parameters
| Parameter | Type |
|---|---|
input |
{ email: string; password: string; session: SessionContainerInterface | undefined; shouldTryLinkingWithSessionUser: boolean | undefined; tenantId: string; userContext: UserContext; } |
input.email |
string |
input.password |
string |
input.session |
SessionContainerInterface | undefined |
input.shouldTryLinkingWithSessionUser |
boolean | undefined |
input.tenantId |
string |
input.userContext |
UserContext |
Returns
Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "WRONG_CREDENTIALS_ERROR";
}
| {
reason: | "EMAIL_VERIFICATION_REQUIRED"
| "RECIPE_USER_ID_ALREADY_LINKED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "SESSION_USER_ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR";
status: "LINKING_TO_SESSION_USER_FAILED";
}>
signUp()
signUp(input): Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "EMAIL_ALREADY_EXISTS_ERROR";
}
| {
reason: | "EMAIL_VERIFICATION_REQUIRED"
| "RECIPE_USER_ID_ALREADY_LINKED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "SESSION_USER_ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR";
status: "LINKING_TO_SESSION_USER_FAILED";
}>;
Defined in: recipe/emailpassword/types.ts
Parameters
| Parameter | Type |
|---|---|
input |
{ email: string; password: string; session: SessionContainerInterface | undefined; shouldTryLinkingWithSessionUser: boolean | undefined; tenantId: string; userContext: UserContext; } |
input.email |
string |
input.password |
string |
input.session |
SessionContainerInterface | undefined |
input.shouldTryLinkingWithSessionUser |
boolean | undefined |
input.tenantId |
string |
input.userContext |
UserContext |
Returns
Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "EMAIL_ALREADY_EXISTS_ERROR";
}
| {
reason: | "EMAIL_VERIFICATION_REQUIRED"
| "RECIPE_USER_ID_ALREADY_LINKED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR"
| "SESSION_USER_ACCOUNT_INFO_ALREADY_ASSOCIATED_WITH_ANOTHER_PRIMARY_USER_ID_ERROR";
status: "LINKING_TO_SESSION_USER_FAILED";
}>
updateEmailOrPassword()
updateEmailOrPassword(input): Promise<
| {
status: "OK" | "UNKNOWN_USER_ID_ERROR" | "EMAIL_ALREADY_EXISTS_ERROR";
}
| {
reason: string;
status: "EMAIL_CHANGE_NOT_ALLOWED_ERROR";
}
| {
failureReason: string;
status: "PASSWORD_POLICY_VIOLATED_ERROR";
}>;
Defined in: recipe/emailpassword/types.ts
Parameters
| Parameter | Type |
|---|---|
input |
{ applyPasswordPolicy?: boolean; email?: string; password?: string; recipeUserId: RecipeUserId; tenantIdForPasswordPolicy: string; userContext: UserContext; } |
input.applyPasswordPolicy? |
boolean |
input.email? |
string |
input.password? |
string |
input.recipeUserId |
RecipeUserId |
input.tenantIdForPasswordPolicy |
string |
input.userContext |
UserContext |
Returns
Promise<
| {
status: "OK" | "UNKNOWN_USER_ID_ERROR" | "EMAIL_ALREADY_EXISTS_ERROR";
}
| {
reason: string;
status: "EMAIL_CHANGE_NOT_ALLOWED_ERROR";
}
| {
failureReason: string;
status: "PASSWORD_POLICY_VIOLATED_ERROR";
}>
verifyCredentials()
verifyCredentials(input): Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "WRONG_CREDENTIALS_ERROR";
}>;
Defined in: recipe/emailpassword/types.ts
Parameters
| Parameter | Type |
|---|---|
input |
{ email: string; password: string; tenantId: string; userContext: UserContext; } |
input.email |
string |
input.password |
string |
input.tenantId |
string |
input.userContext |
UserContext |
Returns
Promise<
| {
recipeUserId: RecipeUserId;
status: "OK";
user: User;
}
| {
status: "WRONG_CREDENTIALS_ERROR";
}>
TypeEmailPasswordEmailDeliveryInput
type TypeEmailPasswordEmailDeliveryInput = TypeEmailPasswordPasswordResetEmailDeliveryInput;
Defined in: recipe/emailpassword/types.ts
TypeEmailPasswordPasswordResetEmailDeliveryInput
type TypeEmailPasswordPasswordResetEmailDeliveryInput = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
passwordResetLink |
string |
recipe/emailpassword/types.ts |
tenantId |
string |
recipe/emailpassword/types.ts |
type |
"PASSWORD_RESET" |
recipe/emailpassword/types.ts |
user |
object |
recipe/emailpassword/types.ts |
user.email |
string |
recipe/emailpassword/types.ts |
user.id |
string |
recipe/emailpassword/types.ts |
user.recipeUserId |
RecipeUserId | undefined |
recipe/emailpassword/types.ts |
TypeFormField
type TypeFormField = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
id |
string |
recipe/emailpassword/types.ts |
value |
any |
recipe/emailpassword/types.ts |
TypeInput
type TypeInput = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
emailDelivery? |
EmailDeliveryTypeInput<TypeEmailPasswordEmailDeliveryInput> |
recipe/emailpassword/types.ts |
override? |
object |
recipe/emailpassword/types.ts |
override.apis? |
(originalImplementation, builder) => APIInterface |
recipe/emailpassword/types.ts |
override.functions? |
(originalImplementation, builder) => RecipeInterface |
recipe/emailpassword/types.ts |
signUpFeature? |
TypeInputSignUp |
recipe/emailpassword/types.ts |
TypeInputFormField
type TypeInputFormField = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
id |
string |
recipe/emailpassword/types.ts |
optional? |
boolean |
recipe/emailpassword/types.ts |
validate? |
(value, tenantId, userContext) => Promise<string | undefined> |
recipe/emailpassword/types.ts |
TypeInputSignUp
type TypeInputSignUp = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
formFields? |
TypeInputFormField[] |
recipe/emailpassword/types.ts |
TypeNormalisedInput
type TypeNormalisedInput = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
getEmailDeliveryConfig |
(isInServerlessEnv) => EmailDeliveryTypeInputWithService<TypeEmailPasswordEmailDeliveryInput> |
recipe/emailpassword/types.ts |
override |
object |
recipe/emailpassword/types.ts |
override.apis |
(originalImplementation, builder) => APIInterface |
recipe/emailpassword/types.ts |
override.functions |
(originalImplementation, builder) => RecipeInterface |
recipe/emailpassword/types.ts |
resetPasswordUsingTokenFeature |
TypeNormalisedInputResetPasswordUsingTokenFeature |
recipe/emailpassword/types.ts |
signInFeature |
TypeNormalisedInputSignIn |
recipe/emailpassword/types.ts |
signUpFeature |
TypeNormalisedInputSignUp |
recipe/emailpassword/types.ts |
TypeNormalisedInputResetPasswordUsingTokenFeature
type TypeNormalisedInputResetPasswordUsingTokenFeature = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
formFieldsForGenerateTokenForm |
NormalisedFormField[] |
recipe/emailpassword/types.ts |
formFieldsForPasswordResetForm |
NormalisedFormField[] |
recipe/emailpassword/types.ts |
TypeNormalisedInputSignIn
type TypeNormalisedInputSignIn = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
formFields |
NormalisedFormField[] |
recipe/emailpassword/types.ts |
TypeNormalisedInputSignUp
type TypeNormalisedInputSignUp = object;
Defined in: recipe/emailpassword/types.ts
Properties
| Property | Type | Defined in |
|---|---|---|
formFields |
NormalisedFormField[] |
recipe/emailpassword/types.ts |