import { BaseService } from '@/lib/services/core'; import type { AdminUser, CreateUserRequest, ListUsersRequest, ListUsersResponse, UpdateUserStatusRequest, UpdateUserRequest, } from './types'; export class AdminUserService extends BaseService { protected static readonly basePath = '/api/v1/admin'; static async listUsers( request: ListUsersRequest, ): Promise { return this.get( '/users', request as unknown as Record, ); } static async getUser(id: string): Promise { return this.get(`/users/${id}`); } static async updateUserStatus( id: string, request: UpdateUserStatusRequest, ): Promise { return this.put(`/users/${id}/status`, request); } static async createUser(request: CreateUserRequest): Promise { return this.post('/users', request); } static async deleteUser(id: string): Promise { return this.delete(`/users/${id}`); } static async updateUser( id: string, request: UpdateUserRequest, ): Promise { return this.put(`/users/${id}`, request); } }