import type { F_E_INVOICE_MERCHANT_TYPE, FdoMyEInvoiceMarketingProfile, FdoMyEInvoiceMerchantProfile, FdoMyEInvoiceRestaurantProfile, FdoThEInvoiceMarketingProfile } from "@feedmepos/core/entity"; import type { FdoThEInvoiceMerchantProfile, FdoThEInvoiceRestaurantProfile } from "./type/thailand"; import type { FdoVnEInvoiceMarketingProfile, FdoVnEInvoiceMerchantProfile, FdoVnEInvoiceRestaurantProfile } from "./type/vietnam"; type BaseMerchantEInvoice = { id: string; name: string; code: string; thumbnail: string; customAttributes: { [key: string]: string; }; type: F_E_INVOICE_MERCHANT_TYPE; profile: FdoMyEInvoiceMerchantProfile | FdoVnEInvoiceMerchantProfile | FdoThEInvoiceMerchantProfile | null; }; export type RestaurantEInvoice = BaseMerchantEInvoice & { type: typeof F_E_INVOICE_MERCHANT_TYPE.enum.restaurant; profile: FdoMyEInvoiceRestaurantProfile | FdoVnEInvoiceRestaurantProfile | FdoThEInvoiceRestaurantProfile; }; export type MarketingEInvoice = BaseMerchantEInvoice & { type: typeof F_E_INVOICE_MERCHANT_TYPE.enum.marketing; businessId: string; profile: FdoMyEInvoiceMarketingProfile | FdoVnEInvoiceMarketingProfile | FdoThEInvoiceMarketingProfile; }; export type MerchantEInvoice = RestaurantEInvoice | MarketingEInvoice; export {};