class ReceiptTableActionAlterations extends StubTableActionAlterations<Receipt> {

    @NonNull
    @Override
    public Single<Receipt> postDelete(@Nullable final Receipt receipt) {
        return Single.fromCallable(() -> {
            if (receipt == null) {
                throw new Exception("Post delete failed due to a null receipt");
            }

            if (receipt.getFile() != null) {
                storageManager.delete(receipt.getFile());
            }
            return receipt;
        });
    }

    public  ReceiptTableActionAlterations(@NonNull Context context,
                                         @NonNull ReceiptsTable receiptsTable,
                                         @NonNull StorageManager storageManager,
                                         @NonNull Lazy<Picasso> picasso);
      ReceiptTableActionAlterations(@NonNull Context context,
                                  @NonNull ReceiptsTable receiptsTable,
                                  @NonNull StorageManager storageManager,
                                  @NonNull BuilderFactory1<Receipt, ReceiptBuilderFactory> receiptBuilderFactoryFactory,
                                  @NonNull Lazy<Picasso> picasso);

}