23 lines
915 B
TypeScript
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));
|
|
}
|