You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
1.1 KiB

namespace Model;
public interface IDataManager
{
Task<IEnumerable<Book>> GetBooks(int index, int count);
Task<IEnumerable<Book>> GetBooksByTitle(string title, int index, int count);
Task<IEnumerable<Book>> GetBooksByAuthor(string author, int index, int count);
Task<IEnumerable<Book>> GetBooksByIsbn(string isbn, int index, int count);
Task<Book?> GetBookById(long id);
Task<IEnumerable<Person>> GetPersons(int index, int count);
Task<IEnumerable<Person>> GetPersonsByName(string name, int index, int count);
Task<Person?> GetPersonById(long id);
Task<IEnumerable<Book>> GetBooksBorrowedBy(Person person, int index, int count);
Task<Book> CreateBook(string title, string author, string isbn);
Task<Book?> UpdateBook(long id, Book book);
Task<bool> DeleteBook(long id);
Task<Person> CreatePerson(string firstName, string lastName);
Task<Person?> UpdatePerson(long id, Person person);
Task<bool> DeletePerson(long id);
Task<bool> BorrowBook(Book book, Person person);
Task<bool> ReturnBook(Book book, Person person);
}