Uecko_ERP/modules/customer-invoices/src/web/schemas/invoices.api.schema.ts
2025-11-13 12:49:36 +01:00

24 lines
950 B
TypeScript

import type { ArrayElement } from "@repo/rdx-utils";
import type { z } from "zod/v4";
import { GetIssueInvoiceByIdResponseSchema, ListIssueInvoicesResponseSchema } from "../../common";
export const IssueInvoiceSchema = GetIssueInvoiceByIdResponseSchema.omit({
metadata: true,
});
export type IssueInvoice = z.infer<typeof IssueInvoiceSchema>;
export type IssueInvoiceRecipient = IssueInvoice["recipient"];
export type IssueInvoiceItem = ArrayElement<IssueInvoice["items"]>;
// Resultado de consulta con criteria (paginado, etc.)
export const IssueInvoicesPageSchema = ListIssueInvoicesResponseSchema.omit({
metadata: true,
});
//export type PaginatedResponse = z.infer<typeof PaginationSchema>;
//export type CustomerInvoicesPage = z.infer<typeof CustomerInvoicesPageSchema>;
// Ítem simplificado dentro del listado (no toda la entidad)
//export type CustomerInvoiceSummary = Omit<ArrayElement<CustomerInvoicesPage["items"]>, "metadata">;