using DigitalData.Core.Abstraction.Application.Repository;
using EnvelopeGenerator.Application.Envelopes.Queries;
using EnvelopeGenerator.Domain.Constants;
using EnvelopeGenerator.Domain.Entities;
namespace EnvelopeGenerator.Application.Common.Interfaces.Repositories;
///
///
///
[Obsolete("Use IRepository")]
public interface IEnvelopeReceiverRepository : ICRUDRepository
{
///
///
///
///
///
///
///
///
Task> ReadByUuidAsync(string uuid, bool withEnvelope = true, bool withReceiver = false, bool readOnly = true);
///
///
///
///
///
///
///
///
Task> ReadBySignatureAsync(string signature, bool withEnvelope = false, bool withReceiver = true, bool readOnly = true);
///
///
///
///
///
///
///
///
///
Task ReadByUuidSignatureAsync(string uuid, string signature, bool withEnvelope = true, bool withReceiver = true, bool readOnly = true);
///
///
///
///
///
///
///
Task ReadAccessCodeAsync(string uuid, string signature, bool readOnly = true);
///
///
///
///
///
///
Task CountAsync(string uuid, string signature);
///
///
///
///
///
///
///
Task ReadByIdAsync(int envelopeId, int receiverId, bool readOnly = true);
///
///
///
///
///
///
///
Task ReadAccessCodeByIdAsync(int envelopeId, int receiverId, bool readOnly = true);
///
///
///
///
///
///
///
///
Task> ReadByUsernameAsync(string username, EnvelopeStatus? min_status = null, EnvelopeStatus? max_status = null, params EnvelopeStatus[] ignore_statuses);
///
///
///
///
///
///
///
Task ReadLastByReceiverAsync(string? email = null, int? id = null, string? signature = null);
}