UNPKG

@vansite/ts-sharetribe-flex-sdk

Version:

This is a TypeScript SDK for Sharetribe Flex API. It reduces the complexity of the API and provides a more user-friendly interface.

51 lines (50 loc) 1.95 kB
/** * @fileoverview Client for password reset operations in the Sharetribe Marketplace API. * * Use this to request a password-reset email and to complete the password reset flow. * * @see https://www.sharetribe.com/api-reference/marketplace.html#password-reset */ import type { AxiosResponse } from "axios"; import MarketplaceApi from "./index"; import { ExtraParameter, PasswordResetRequestParameter, PasswordResetResetParameter, PasswordResetResponse } from "../../types"; /** * Password Reset API client */ declare class PasswordReset { private readonly axios; private readonly endpoint; private readonly headers; constructor(api: MarketplaceApi); /** * Request a password-reset email * * @template P * @template EP * @param {P & PasswordResetRequestParameter} params * @param {EP} [extraParams] * @returns {Promise<AxiosResponse<PasswordResetResponse<"request", EP>>>} * * @example * await sdk.passwordReset.request({ email: "user@example.com" }); */ request<P extends PasswordResetRequestParameter, EP extends ExtraParameter | undefined = undefined>(params: P, extraParams?: EP): Promise<AxiosResponse<PasswordResetResponse<"request", EP>>>; /** * Complete password reset using the token received by email * * @template P * @template EP * @param {P & PasswordResetResetParameter} params * @param {EP} [extraParams] * @returns {Promise<AxiosResponse<PasswordResetResponse<"reset", EP>>>} * * @example * await sdk.passwordReset.reset({ * email: "user@example.com", * passwordResetToken: "abc123...", * newPassword: "newSecurePassword123" * }); */ reset<P extends PasswordResetResetParameter, EP extends ExtraParameter | undefined = undefined>(params: P, extraParams?: EP): Promise<AxiosResponse<PasswordResetResponse<"reset", EP>>>; } export default PasswordReset;