export async function createGroup(name: string) {
  const res = await fetch('/api/groups', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ name }),
  });
  const data = await res.json();
  if (!res.ok || data.error) throw new Error(data.error || 'Fehler beim Erstellen der Gruppe');
  return data;
}

export async function fetchGroups() {
  const res = await fetch('/api/groups');
  const data = await res.json();
  if (!res.ok || data.error) throw new Error(data.error || 'Fehler beim Laden der Gruppen');
  return data;
}

export async function deleteGroup(groupName: string) {
  const res = await fetch(`/api/groups/byname/${encodeURIComponent(groupName)}`, {
    method: 'DELETE',
  });
  const data = await res.json();
  if (!res.ok || data.error) throw new Error(data.error || 'Fehler beim Löschen der Gruppe');
  return data;
}

export async function renameGroup(oldName: string, newName: string) {
  const res = await fetch(`/api/groups/byname/${encodeURIComponent(oldName)}`, {
    method: 'PUT',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ newName: newName }),
  });
  const data = await res.json();
  if (!res.ok || data.error) throw new Error(data.error || 'Fehler beim Umbenennen der Gruppe');
  return data;
}

// Hier kannst du später weitere Funktionen ergänzen:
// export async function updateGroup(id: number, name: string) { ... }
