Files
mercadodevida/project/src/modules/inventory/index.ts
2026-08-21 21:55:43 +02:00

23 lines
915 B
TypeScript

/** Public API of the inventory module. */
import type pg from 'pg';
import { InventoryService } from './application/inventory-service.js';
import { PgInventoryRepository } from './infrastructure/pg-inventory-repository.js';
export { registerInventoryRoutes, type InventoryRoutesDeps } from './api/inventory.routes.js';
export { InventoryService } from './application/inventory-service.js';
export {
InsufficientReservedStockError,
InsufficientStockError,
InvalidStockQuantityError,
} from './domain/errors.js';
export type {
InventoryRepository,
InventoryService as InventoryServicePort,
} from './domain/ports.js';
export type { Availability, StockCommand, StockItem, StockState } from './domain/stock.js';
export { DEFAULT_STORE_ID } from './domain/stock.js';
export function createInventoryService(pool: pg.Pool): InventoryService {
return new InventoryService(new PgInventoryRepository(pool));
}