import { get, post, put, del } from '@/api/request' import type { AxiosRequestConfig } from 'axios' export function getRolesByPage(params: any) { return get('/api/roles/page', params) } export function getAllRoles() { return get('/api/roles') } export function getRoleById(id: number) { return get(`/api/roles/${id}`) } export function createRole(data: any) { return post('/api/roles', data) } export function updateRole(id: number, data: any, config?: AxiosRequestConfig) { return put(`/api/roles/${id}`, data, config) } export function deleteRole(id: number, config?: AxiosRequestConfig) { return del(`/api/roles/${id}`, config) } export function checkRoleName(name: string) { return get('/api/roles/check-name', { name }) } export function getRolePermissions(id: number) { return get(`/api/roles/${id}/permissions`) } export function assignPermissionsToRole(id: number, permissionIds: number[], config?: AxiosRequestConfig) { return post(`/api/roles/${id}/permissions`, { permissionIds }, config) } export function getAllPermissions() { return get('/api/permissions') }