FactuGES_ERP/modules/supplier/src/web/shared/api/delete-supplier-by-id.api.ts
2026-04-05 14:01:52 +02:00

31 lines
936 B
TypeScript

import type { IDataSource } from "@erp/core/client";
/**
* Elimina un proveedor existente en el sistema utilizando la fuente de datos proporcionada.
*
* @param dataSource - La fuente de datos para interactuar con la API.
* @param params - Los parámetros necesarios para eliminar el proveedor.
* @returns Una promesa que se resuelve cuando el proveedor ha sido eliminado exitosamente.
* @throws Error si el ID del proveedor no es proporcionado o si la eliminación falla.
*/
export interface DeleteSupplierByIdParams {
id: string;
signal?: AbortSignal;
}
export type DeleteSupplierByIdResult = void;
export function deleteSupplierById(
dataSource: IDataSource,
params: DeleteSupplierByIdParams
): Promise<DeleteSupplierByIdResult> {
const { id, signal } = params;
if (!id) throw new Error("supplierId is required");
return dataSource.deleteOne<DeleteSupplierByIdResult>("suppliers", id, {
signal,
});
}