import type { CreateHostRequest, UpdateHostRequest } from '@vector/shared'; import { api } from './client.js'; import { getList } from './paginated.js'; import type { Host } from './types.js'; export type HostListFilters = { page?: number; pageSize?: number; q?: string; }; export function listHosts(filters: HostListFilters = {}) { return getList('/hosts', filters); } export async function getHost(id: string): Promise { const res = await api.get(`/hosts/${id}`); return res.data; } export async function createHost(input: CreateHostRequest): Promise { const res = await api.post('/hosts', input); return res.data; } export async function updateHost(id: string, input: UpdateHostRequest): Promise { const res = await api.patch(`/hosts/${id}`, input); return res.data; } export async function deleteHost(id: string): Promise { await api.delete(`/hosts/${id}`); }