Uecko_ERP/modules/customer-invoices/src/api/domain/services/customer-invoice-service.interface.ts

24 lines
969 B
TypeScript
Raw Normal View History

2025-06-11 15:13:44 +00:00
import { Criteria } from "@repo/rdx-criteria/server";
import { UniqueID } from "@repo/rdx-ddd";
import { Collection, Result } from "@repo/rdx-utils";
import { ICustomerInvoiceProps, CustomerInvoice } from "../aggregates";
export interface ICustomerInvoiceService {
findCustomerInvoices(criteria: Criteria, transaction?: any): Promise<Result<Collection<CustomerInvoice>, Error>>;
findCustomerInvoiceById(customerCustomerInvoiceId: UniqueID, transaction?: any): Promise<Result<CustomerInvoice>>;
updateCustomerInvoiceById(
customerCustomerInvoiceId: UniqueID,
data: Partial<ICustomerInvoiceProps>,
transaction?: any
): Promise<Result<CustomerInvoice, Error>>;
createCustomerInvoice(
customerCustomerInvoiceId: UniqueID,
data: ICustomerInvoiceProps,
transaction?: any
): Promise<Result<CustomerInvoice, Error>>;
deleteCustomerInvoiceById(customerCustomerInvoiceId: UniqueID, transaction?: any): Promise<Result<boolean, Error>>;
}