Files
puaros/packages/guardian/examples/good-architecture/domain/repositories/IOrderRepository.ts
imfozilbek 03705b5264 feat(guardian): add guardian package - code quality analyzer
Add @puaros/guardian package v0.1.0 - code quality guardian for vibe coders and enterprise teams.

Features:
- Hardcode detection (magic numbers, magic strings)
- Circular dependency detection
- Naming convention enforcement (Clean Architecture)
- Architecture violation detection
- CLI tool with comprehensive reporting
- 159 tests with 80%+ coverage
- Smart suggestions for fixes
- Built for AI-assisted development

Built with Clean Architecture and DDD principles.
Works with Claude, GPT, Copilot, Cursor, and any AI coding assistant.
2025-11-24 02:54:39 +05:00

49 lines
972 B
TypeScript

import { Order } from "../aggregates/Order"
import { OrderId } from "../value-objects/OrderId"
import { UserId } from "../value-objects/UserId"
/**
* Order Repository Interface
*
* DDD Pattern: Repository
* - Aggregate-oriented persistence
* - Collection metaphor
* - No business logic (that's in Order aggregate)
*/
export interface IOrderRepository {
/**
* Save order (create or update)
*/
save(order: Order): Promise<void>
/**
* Find order by ID
*/
findById(id: OrderId): Promise<Order | null>
/**
* Find orders by user
*/
findByUserId(userId: UserId): Promise<Order[]>
/**
* Find orders by status
*/
findByStatus(status: string): Promise<Order[]>
/**
* Find all orders
*/
findAll(): Promise<Order[]>
/**
* Delete order
*/
delete(id: OrderId): Promise<void>
/**
* Check if order exists
*/
exists(id: OrderId): Promise<boolean>
}