@selfcommunity/api-services
Version:
Client api for SelfCommunity.
515 lines (507 loc) • 29.3 kB
TypeScript
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[]>;
}