UNPKG

@selfcommunity/api-services

Version:
515 lines (507 loc) • 29.3 kB
import { SCAvatarType, SCCategoryType, SCFeedUnitType, SCLiveStreamType, SCPaymentOrder, SCPlatformType, SCTagType, SCUserAutocompleteType, SCUserAvatarType, SCUserChangeEmailType, SCUserConnectionRequestType, SCUserConnectionStatusType, SCUserCounterType, SCUserEmailTokenType, SCUserFollowedStatusType, SCUserFollowerStatusType, SCUserHiddenByStatusType, SCUserHiddenStatusType, SCUserLoyaltyPointsType, SCUserPermissionType, SCUserProviderAssociationType, SCUserSettingsType, SCUserType } from '@selfcommunity/types'; import { BaseGetParams, SCPaginatedResponse, UserAutocompleteParams, UserGetParams, UserSearchParams } from '../../types'; import { AxiosRequestConfig } from 'axios'; import { DeleteProviderAssociation } from '../../types/user'; export interface UserApiClientInterface { getAllUsers(params?: any, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; getHiddenUsers(params?: any, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; getHiddenUsersId(params?: any, config?: AxiosRequestConfig): Promise<number[]>; userAutocomplete(params: UserAutocompleteParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserAutocompleteType>>; userSearch(params: UserSearchParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; getSpecificUser(id: number | string, config?: AxiosRequestConfig): Promise<SCUserType>; getUserCounters(id: number | string, config?: AxiosRequestConfig): Promise<SCUserCounterType>; userUpdate(id: number | string, data?: SCUserType, config?: AxiosRequestConfig): Promise<SCUserType>; userPatch(id: number | string, data?: SCUserType, config?: AxiosRequestConfig): Promise<SCUserType>; userDelete(id: number | string, hard?: number, config?: AxiosRequestConfig): Promise<any>; changeUserMail(id: number | string, new_email: string, confirm?: boolean, send_email?: boolean, config?: AxiosRequestConfig): Promise<any | SCUserChangeEmailType>; confirmChangeUserMail(id: number | string, new_email: string, validation_code?: string, config?: AxiosRequestConfig): Promise<any>; changeUserPassword(id: number | string, password: string, new_password: string, config?: AxiosRequestConfig): Promise<any>; userSettings(id: number | string, config?: AxiosRequestConfig): Promise<SCUserSettingsType>; userSettingsPatch(id: number | string, data?: SCUserSettingsType, config?: AxiosRequestConfig): Promise<SCUserSettingsType>; getCurrentUser(config?: AxiosRequestConfig): Promise<SCUserType>; getCurrentUserAvatar(config?: AxiosRequestConfig): Promise<SCUserAvatarType>; getCurrentUserPermission(config?: AxiosRequestConfig): Promise<SCUserPermissionType>; getCurrentUserPlatform(next?: string, config?: AxiosRequestConfig): Promise<SCPlatformType>; getUserFollowedCategories(id: number | string, mutual?: number, config?: AxiosRequestConfig): Promise<SCCategoryType[]>; getUserFeed(id: number | string, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCFeedUnitType>>; getUserFollowers(id: number | string, mutual?: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; getUserFollowings(id: number | string, mutual?: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; followUser(id: number | string, config?: AxiosRequestConfig): Promise<any>; checkUserFollowed(id: number | string, config?: AxiosRequestConfig): Promise<SCUserFollowedStatusType>; checkUserFollower(id: number | string, config?: AxiosRequestConfig): Promise<SCUserFollowerStatusType>; getUserConnections(id: number | string, params?: UserGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; checkUserConnections(id: number | string, config?: AxiosRequestConfig): Promise<SCUserConnectionStatusType>; getUserConnectionRequests(params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserConnectionRequestType>>; getUserRequestConnectionsSent(params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserConnectionRequestType>>; userAcceptRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; userRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; userRemoveConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; userCancelRejectConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; userCancelRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; userRejectConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; userMarkSeenConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; showHideUser(id: number | string, config?: AxiosRequestConfig): Promise<any>; checkUserHidden(id: number | string, config?: AxiosRequestConfig): Promise<SCUserHiddenStatusType>; checkUserHiddenBy(id: number | string, config?: AxiosRequestConfig): Promise<SCUserHiddenByStatusType>; getUserLoyaltyPoints(id: number | string, config?: AxiosRequestConfig): Promise<SCUserLoyaltyPointsType>; getUserConnectionStatuses(users: number[], config?: AxiosRequestConfig): Promise<any>; userTagToAddressContribution(config?: AxiosRequestConfig): Promise<SCTagType>; checkUserEmailToken(id: number | string, email_token: string, config?: AxiosRequestConfig): Promise<SCUserEmailTokenType>; addUserAvatar(data: FormData, config?: AxiosRequestConfig): Promise<SCAvatarType>; getUserAvatars(config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCAvatarType>>; removeUserAvatar(avatar_id: number | string, config?: AxiosRequestConfig): Promise<any>; setUserPrimaryAvatar(avatar_id: number | string, config?: AxiosRequestConfig): Promise<any>; getProviderAssociations(userId: string | number, config?: AxiosRequestConfig): Promise<SCUserProviderAssociationType[]>; createProviderAssociation(data: SCUserProviderAssociationType, config?: AxiosRequestConfig): Promise<SCUserProviderAssociationType>; deleteProviderAssociation(data: DeleteProviderAssociation, config?: AxiosRequestConfig): Promise<any>; getUserLiveStream(id: number | string, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCLiveStreamType>>; getOrderHistory(id: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaymentOrder[]>; getOrderDetail(id: number, order: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaymentOrder>; matchUsernames(usernames: string[], config?: AxiosRequestConfig): Promise<SCUserAutocompleteType[]>; } /** * Contains all the endpoints needed to manage users. */ export declare class UserApiClient { /** * This endpoint retrieves the list of all users * @param params * @param config */ static getAllUsers(params?: any, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; /** * This endpoint retrieves the list of all users hidden by the authenticated user * @param params * @param config */ static getHiddenUsers(params?: any, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; /** * This endpoint retrieves the list of all users hidden id by the authenticated user * @param params * @param config */ static getHiddenUsersId(params?: any, config?: AxiosRequestConfig): Promise<number[]>; /** * This endpoint retrieves the list of all users that meet the search criteria. The user object returned will contain only the following attributes: id, username, real_name, ext_id and avatar. * This endpoint is recommended for implementing an autocomplete input field. * @param params * @param config */ static userAutocomplete(params: UserAutocompleteParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserAutocompleteType>>; /** * This endpoint performs users search. * @param params * @param config */ static userSearch(params: UserSearchParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; /** * This endpoint retrieves a specific user's profile identified by ID. * @param id * @param config */ static getSpecificUser(id: number | string, config?: AxiosRequestConfig): Promise<SCUserType>; /** * This endpoint retrieves the counters of a specific user identified by ID. * @param id * @param config */ static getUserCounters(id: number | string, config?: AxiosRequestConfig): Promise<SCUserCounterType>; /** * This endpoint updates the profile of a user identified by ID. A user can only update their personal data. * If the request is willing to update the avatar or the cover the 'Content-Type' request header must be set as 'multipart/form-data', otherwise it can be 'application/x-www-form-urlencoded'. * @param id * @param data * @param config */ static userUpdate(id: number | string, data?: SCUserType, config?: AxiosRequestConfig): Promise<SCUserType>; /** * This endpoint patches a specific user identified by ID. * @param id * @param data * @param config */ static userPatch(id: number | string, data?: SCUserType, config?: AxiosRequestConfig): Promise<SCUserType>; /** * This endpoint deletes a specific user identified by ID. * @param id * @param hard * @param config */ static userDelete(id: number | string, hard?: number, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint changes the email of the authenticated user. * @param id * @param new_email * @param confirm * @param send_email * @param config */ static changeUserMail(id: number | string, new_email: string, confirm?: boolean, send_email?: boolean, config?: AxiosRequestConfig): Promise<any | SCUserChangeEmailType>; /** * This endpoint confirms email change. * @param id * @param new_email * @param validation_code * @param config */ static confirmChangeUserMail(id: number | string, new_email: string, validation_code?: string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint changes the password of the authenticated user. * @param id * @param password * @param new_password * @param config */ static changeUserPassword(id: number | string, password: string, new_password: string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint retrieves all current user's settings for the authenticated user. * @param id * @param config */ static userSettings(id: number | string, config?: AxiosRequestConfig): Promise<SCUserSettingsType>; /** * This endpoint changes the user settings for the authenticated user. * @param id * @param data * @param config */ static userSettingsPatch(id: number | string, data?: SCUserSettingsType, config?: AxiosRequestConfig): Promise<SCUserSettingsType>; /** * This endpoint returns the user identified by the authentication token. * @param config */ static getCurrentUser(config?: AxiosRequestConfig): Promise<SCUserType>; /** * This endpoint returns the url to the user's current avatar. * @param config */ static getCurrentUserAvatar(config?: AxiosRequestConfig): Promise<SCUserAvatarType>; /** * This endpoint returns a list of permissions for the user identified by the authentication token. Some permissions in the list depend on global community settings. * @param config */ static getCurrentUserPermission(config?: AxiosRequestConfig): Promise<SCUserPermissionType>; /** * This endpoint retrieves the platform url starting from the Authorization user token. Using this url, the logged user (must be a staff member) can access the platform to manage the community. * @param next * @param config */ static getCurrentUserPlatform(next?: string, config?: AxiosRequestConfig): Promise<SCPlatformType>; /** * This endpoint gets the list of categories followed by the user. * @param id * @param mutual * @param config */ static getUserFollowedCategories(id: number | string, mutual?: number, config?: AxiosRequestConfig): Promise<SCCategoryType[]>; /** * This endpoint retrieves the list of posts of the user identified by ID. * @param id * @param params * @param config */ static getUserFeed(id: number | string, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCFeedUnitType>>; /** * This endpoint retrieves the list of followers of a specific user identified by ID. * @param id * @param params * @param config */ static getUserFollowers(id: number | string, params?: UserGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; /** * This endpoint retrieves the list of following of a specific user identified by ID. * @param id * @param params * @param config */ static getUserFollowings(id: number | string, params?: UserGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; /** * This endpoint allows a user to follow another user identified by ID. * @param id * @param config */ static followUser(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint returns is_followed = true if the user (identified in path) is followed by me. * @param id * @param config */ static checkUserFollowed(id: number | string, config?: AxiosRequestConfig): Promise<SCUserFollowedStatusType>; /** * This endpoint returns is_follower = true if the user (identified in path) follow me * @param id * @param config */ static checkUserFollower(id: number | string, config?: AxiosRequestConfig): Promise<SCUserFollowerStatusType>; /** * This endpoint retrieves the list of connections of a specific user identified by ID. * @param id * @param params * @param config */ static getUserConnections(id: number | string, params?: UserGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; /** * This endpoint returns is_connection = true if the user (identified in path) is connected with me. * @param id * @param config */ static checkUserConnections(id: number | string, config?: AxiosRequestConfig): Promise<SCUserConnectionStatusType>; /** * This endpoint retrieves the list of connection requests received by a specific user identified by ID. * @param params * @param config */ static getUserConnectionRequests(params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserConnectionRequestType>>; /** * This endpoint retrieves a specific user's list of connection requests sent by user. * @param params * @param config */ static getUserRequestConnectionsSent(params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserConnectionRequestType>>; /** * This endpoint accepts a request connection of the user identified by ID. * @param id * @param config */ static userAcceptRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint requests a connection to the user identified by ID. * @param id * @param config */ static userRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint removes connection with the user identified by ID. * @param id * @param config */ static userRemoveConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint cancels reject connection to a user identified by ID. * @param id * @param config */ static userCancelRejectConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint cancels a request connection for a user. * @param id * @param config */ static userCancelRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint rejects a connection request sent from user identified by ID. * @param id * @param config */ static userRejectConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint marks seen a connection request of user identified by ID. for the authenticated user. * @param id * @param config */ static userMarkSeenConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint shows/hides a user (and its posts) identified by ID. for the authenticated user. * @param id * @param config */ static showHideUser(id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint returns true if the user (identified in path) is hidden by the authenticated user. * @param id * @param config */ static checkUserHidden(id: number | string, config?: AxiosRequestConfig): Promise<SCUserHiddenStatusType>; /** * This endpoint returns true if the user (identified in path) has hidden by the authenticated user. * @param id * @param config */ static checkUserHiddenBy(id: number | string, config?: AxiosRequestConfig): Promise<SCUserHiddenByStatusType>; /** * This endpoint returns user's loyalty points. * @param id * @param config */ static getUserLoyaltyPoints(id: number | string, config?: AxiosRequestConfig): Promise<SCUserLoyaltyPointsType>; /** * This endpoint lists the connection/follow statuses of the logged user starting from a users array. * @param users * @param config */ static getUserConnectionStatuses(users: number[], config?: AxiosRequestConfig): Promise<any>; /** * This endpoint returns user's tags to address a contribution. * @param config */ static userTagToAddressContribution(config?: AxiosRequestConfig): Promise<SCTagType>; /** * This endpoint checks an email token. * @param id * @param email_token * @param config */ static checkUserEmailToken(id: any, email_token: any, config?: AxiosRequestConfig): Promise<SCUserEmailTokenType>; /** * This endpoint adds an avatar to my avatars. * @param data * @param config */ static addUserAvatar(data: FormData, config?: AxiosRequestConfig): Promise<SCAvatarType>; /** * This endpoint retrieves all user avatars. * @param config */ static getUserAvatars(config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCAvatarType>>; /** * This endpoint removes/deletes an avatar from the authenticated user avatars. * @param avatar_id * @param config */ static removeUserAvatar(avatar_id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint sets the primary avatar for the authenticated user. * @param avatar_id * @param config */ static setUserPrimaryAvatar(avatar_id: number | string, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint retrieve all provider associations owned by a user * * @param userId * @param config */ static getProviderAssociations(userId: string | number, config?: AxiosRequestConfig): Promise<SCUserProviderAssociationType[]>; /** * This endpoint creates a provider association for a given account. * * @param data * @param config */ static createProviderAssociation(data: SCUserProviderAssociationType, config?: AxiosRequestConfig): Promise<SCUserProviderAssociationType>; /** * This endpoint deletes a provider association for a given account. * * It requires an administration token. * * @param data * @param config */ static deleteProviderAssociation(data: DeleteProviderAssociation, config?: AxiosRequestConfig): Promise<any>; /** * This endpoint retrieves the list of live stream currently started by user identified by ID. * @param id * @param params * @param config */ static getUserLiveStream(id: number | string, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCLiveStreamType>>; /** * This endpoint retrieve all order history of authenticated user * * @param id * @param params * @param config */ static getOrderHistory(id: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCPaymentOrder>>; /** * This endpoint retrieve detail of an order * @param id * @param order * @param params * @param config */ static getOrderDetail(id: number, order: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaymentOrder>; /** * This endpoint retrieve the users corresponding to the sent usernames * @param usernames * @param config */ static matchUsernames(usernames: string[], config?: AxiosRequestConfig): Promise<SCUserAutocompleteType[]>; } /** * :::tip User service can be used in the following way: ```jsx 1. Import the service from our library: import {UserService} from "@selfcommunity/api-services"; ``` ```jsx 2. Create a function and put the service inside it! The async function `getAllUsers` will return the paginated list of users. async getAllUsers() { return await UserService.getAllUsers(); } ``` ```jsx In case of required `params`, just add them inside the brackets. async getSpecificUser(userId) { return await UserService.getSpecificUser(userId); } ``` ```jsx If you need to customize the request, you can add optional config params (`AxiosRequestConfig` type). Ex: If the async function `userUpdate` is willing to update the avatar or the cover the 'Content-Type' request header must be set as 'multipart/form-data'. async getSpecificUser(userId, data, config) { const headers = {headers: {'Content-Type': 'multipart/form-data'}} return await UserService.getSpecificUser(userId, {avatar: avatar}, headers); } ``` ::: */ export default class UserService { static getAllUsers(params?: any, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; static getHiddenUsers(params?: any, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; static getHiddenUsersId(params?: any, config?: AxiosRequestConfig): Promise<number[]>; static userAutocomplete(params: UserAutocompleteParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserAutocompleteType>>; static userSearch(params: UserSearchParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; static getSpecificUser(id: number | string, config?: AxiosRequestConfig): Promise<SCUserType>; static getUserCounters(id: number | string, config?: AxiosRequestConfig): Promise<SCUserCounterType>; static userUpdate(id: number | string, data?: SCUserType, config?: AxiosRequestConfig): Promise<SCUserType>; static userPatch(id: number | string, data?: SCUserType, config?: AxiosRequestConfig): Promise<SCUserType>; static userDelete(id: number | string, hard?: number, config?: AxiosRequestConfig): Promise<any>; static changeUserMail(id: number | string, new_email: string, confirm?: boolean, send_email?: boolean, config?: AxiosRequestConfig): Promise<any | SCUserChangeEmailType>; static confirmChangeUserMail(id: number | string, new_email: string, validation_code?: string, config?: AxiosRequestConfig): Promise<any>; static changeUserPassword(id: number | string, password: string, new_password: string, config?: AxiosRequestConfig): Promise<any>; static userSettings(id: number | string, config?: AxiosRequestConfig): Promise<SCUserSettingsType>; static userSettingsPatch(id: number | string, data?: SCUserSettingsType, config?: AxiosRequestConfig): Promise<SCUserSettingsType>; static getCurrentUser(config?: AxiosRequestConfig): Promise<SCUserType>; static getCurrentUserAvatar(config?: AxiosRequestConfig): Promise<SCUserAvatarType>; static getCurrentUserPermission(config?: AxiosRequestConfig): Promise<SCUserPermissionType>; static getCurrentUserPlatform(next?: string, config?: AxiosRequestConfig): Promise<SCPlatformType>; static getUserFollowedCategories(id: number | string, mutual?: number, config?: AxiosRequestConfig): Promise<SCCategoryType[]>; static getUserFeed(id: number | string, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCFeedUnitType>>; static getUserFollowers(id: number | string, params?: UserGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; static getUserFollowings(id: number | string, params?: UserGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; static followUser(id: number | string, config?: AxiosRequestConfig): Promise<any>; static checkUserFollowed(id: number | string, config?: AxiosRequestConfig): Promise<SCUserFollowedStatusType>; static checkUserFollower(id: number | string, config?: AxiosRequestConfig): Promise<SCUserFollowerStatusType>; static getUserConnections(id: number | string, params?: UserGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserType>>; static checkUserConnections(id: number | string, config?: AxiosRequestConfig): Promise<SCUserConnectionStatusType>; static getUserConnectionRequests(params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserConnectionRequestType>>; static getUserRequestConnectionsSent(params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserConnectionRequestType>>; static userAcceptRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; static userRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; static userRemoveConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; static userCancelRejectConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; static userCancelRequestConnection(id: number | string, config?: AxiosRequestConfig): Promise<any>; static userRejectConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; static userMarkSeenConnectionRequest(id: number | string, config?: AxiosRequestConfig): Promise<any>; static showHideUser(id: number | string, config?: AxiosRequestConfig): Promise<any>; static checkUserHidden(id: number | string, config?: AxiosRequestConfig): Promise<SCUserHiddenStatusType>; static checkUserHiddenBy(id: number | string, config?: AxiosRequestConfig): Promise<SCUserHiddenByStatusType>; static getUserLoyaltyPoints(id: number | string, config?: AxiosRequestConfig): Promise<SCUserLoyaltyPointsType>; static getUserConnectionStatuses(users: number[], config?: AxiosRequestConfig): Promise<any>; static userTagToAddressContribution(config?: AxiosRequestConfig): Promise<SCTagType>; static checkUserEmailToken(id: number | string, email_token: any, config?: AxiosRequestConfig): Promise<SCUserEmailTokenType>; static addUserAvatar(data: FormData, config?: AxiosRequestConfig): Promise<SCAvatarType>; static getUserAvatars(config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCAvatarType>>; static removeUserAvatar(avatar_id: number | string, config?: AxiosRequestConfig): Promise<any>; static setUserPrimaryAvatar(avatar_id: number | string, config?: AxiosRequestConfig): Promise<any>; static getProviderAssociations(userId: string | number, config?: AxiosRequestConfig): Promise<SCUserProviderAssociationType[]>; static createProviderAssociation(data: SCUserProviderAssociationType, config?: AxiosRequestConfig): Promise<SCUserProviderAssociationType>; static deleteProviderAssociation(data: DeleteProviderAssociation, config?: AxiosRequestConfig): Promise<any>; static getUserLiveStream(id: number | string, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCLiveStreamType>>; static getOrderHistory(id: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCPaymentOrder>>; static getOrderDetail(id: number, order: number, params?: BaseGetParams, config?: AxiosRequestConfig): Promise<SCPaymentOrder>; static matchUsernames(usernames: string[], config?: AxiosRequestConfig): Promise<SCUserAutocompleteType[]>; }