const { request: defaultRequest } = require('../request') /** * @typedef {Object} UserProfilePayload * @property {string} nickname * @property {string} mobile */ /** * @param {{ request?: (options: Record) => Promise<{ code: number, data: any, message: string }> }} [options] */ function createUserApi(options = {}) { const request = options.request || defaultRequest return { getProfile() { return request({ url: '/users/me', method: 'GET' }) }, /** * @param {UserProfilePayload} payload */ updateProfile(payload) { return request({ url: '/users/me', method: 'PUT', data: payload }) } } } const userApi = createUserApi() module.exports = { createUserApi, userApi }