export interface RolePermission {
  id: string
  name: string
  guard_name: string
  route_name: string | null
}

export interface Role {
  id: string
  name: string
  guard_name: string
  fullname: string | null
  context: string
  permissions?: RolePermission[]
  created_at?: string
  updated_at?: string
}

export interface RoleListItem {
  id: string
  name: string
  guard_name: string
  fullname: string | null
  context: string
  permissions?: RolePermission[]
  created_at?: string
  updated_at?: string
}

export interface ListRolesParams {
  search?: string
}

export interface CreateRolePayload {
  name: string
  fullname: string
  guard_name: 'api' | 'web'
  context: 'member' | 'admin'
  permissions?: string[]
}
