19 lines
512 B
C#
19 lines
512 B
C#
namespace BudgetApp.Domain.Interfaces;
|
|
|
|
using BudgetApp.Domain.Models;
|
|
|
|
/// <summary>
|
|
/// Repository interface for ledger persistence operations.
|
|
/// </summary>
|
|
public interface ILedgerRepository
|
|
{
|
|
Task<Ledger?> GetByIdAsync(Guid id);
|
|
Task<Ledger> GetOrCreateAsync();
|
|
Task SaveAsync(Ledger ledger);
|
|
Task<LedgerEntry?> GetEntryByIdAsync(Guid entryId);
|
|
Task<IEnumerable<LedgerEntry>> GetAllEntriesAsync();
|
|
Task SaveEntryAsync(LedgerEntry entry);
|
|
Task DeleteEntryAsync(Guid entryId);
|
|
}
|
|
|