UNPKG

@umbraco/headless-client

Version:
103 lines (102 loc) 4.59 kB
import FormData from 'form-data'; import { Client } from '../../Client'; import { ContentManagementMember, ContentManagementMemberRequest, MemberResetPasswordToken } from '../../Responses'; /** * MemberManagementClient is used to access the Member part of the Content Management API. * @public * * @example * The {@link MemberManagementClient} must be accessed through {@link Client}. * * ```typescript * import { Client } from '@umbraco/headless-client' * * const client = new Client({ * projectAlias: '<your-project-alias>', * apiKey: '<your-api-key>', * language: '<iso-code>', * }) * * const memberClient = client.management.member * ``` */ export declare class MemberManagementClient { private readonly client; /** * @internal */ constructor(client: Client); private readonly makeRequest; /** * Find member by membername. * @param username - Username for the member querying for. * @returns a `Promise` that resolves to a {@link ContentManagementMember} if found, otherwise `undefined`. */ byUsername<R extends ContentManagementMember>(username: string): Promise<R | undefined>; /** * Create a new member. * @param data - Data for creating a new member. * @returns a `Promise` that resolves to the newly created {@link ContentManagementMember}. */ create<R extends ContentManagementMember>(data: ContentManagementMemberRequest | FormData): Promise<R>; /** * Update member by username. * @param username - Username for the member to be updated. * @param data - Data for the member to be updated. * @returns a `Promise` that resolves to a {@link ContentManagementMember} of the updated Member item if found, otherwise `undefined`. */ update<R extends ContentManagementMember>(username: string, data: ContentManagementMemberRequest | FormData): Promise<R | undefined>; /** * Add member to group. * @deprecated Use {@link MemberManagementClient.addToGroup | addToGroup()} instead. * @param username - Username of the member. * @param group - Name of the group the member should be added to. */ addGroup(username: string, group: string): Promise<void>; /** * Add member to group. * @param username - Username of the member. * @param group - Name of the group the member should be added to. */ addToGroup(username: string, groupName: string): Promise<undefined>; /** * Remove member from group. * @deprecated Use {@link MemberManagementClient.removeFromGroup | removeFromGroup()} instead. * @param username - Username of the member. * @param group - Name of the group the member should be removed from. */ removeGroup(username: string, group: string): Promise<void>; /** * Remove member from group. * @param username - Username of the member. * @param group - Name of the group the member should be removed from. */ removeFromGroup(username: string, groupName: string): Promise<undefined>; /** * Delete a member. * @param username - Username for the member that needs to be deleted. */ delete(username: string): Promise<any>; /** * Change a members password. * @param username - Username for the member. * @param currentPassword - The current password. * @param newPassword - The new password. * @returns a `Promise` that resolves to a {@link ContentManagementMember} if found and password is updated, otherwise `undefined`. */ changePassword(username: string, currentPassword: string, newPassword: string): Promise<any>; /** * Create a reset tokon that can be used to reset the members password. * @param username - Username for the member. * @returns a `Promise` that resolves to a {@link MemberResetPasswordToken} if found, otherwise `undefined`. */ createResetPasswordToken<R extends MemberResetPasswordToken>(username: string): Promise<R | undefined>; /** * Resets the members password using a reset token obtained via. {@link MemberManagementClient.createResetPasswordToken | createResetPasswordToken()}. * @param username - Username for the member. * @param token - The password reset token. * @param newPassword - The new password. * @returns a `Promise` that resolves to a {@link ContentManagementMember} if found and password is updated, otherwise `undefined`. */ resetPassword<R extends ContentManagementMember>(username: string, token: string, newPassword: string): Promise<R | undefined>; }