17 lines
606 B
TypeScript
17 lines
606 B
TypeScript
/**
|
|
* Repository Interface: ITransactionRepository
|
|
*
|
|
* Defines operations for Transaction entity persistence
|
|
*/
|
|
|
|
import type { Transaction, TransactionType } from '../entities/Transaction';
|
|
|
|
export interface ITransactionRepository {
|
|
findById(id: string): Promise<Transaction | null>;
|
|
findByWalletId(walletId: string): Promise<Transaction[]>;
|
|
findByType(type: TransactionType): Promise<Transaction[]>;
|
|
create(transaction: Transaction): Promise<Transaction>;
|
|
update(transaction: Transaction): Promise<Transaction>;
|
|
delete(id: string): Promise<void>;
|
|
exists(id: string): Promise<boolean>;
|
|
} |