using System.Threading.Tasks;

namespace Knoks.Framework.Services
{
    public class SignatureEntityInput
    {
        public string ServiceProvider { get; set; }
        public string Version { get; set; }
        public object Input { get; set; }
    }

    public class SignatureEntityOutput
    {
        public string ServiceProvider { get; set; }
        public string Version { get; set; }
        public object Output { get; set; }
    }

    public class SignatureEntityResult
    {
        public string ServiceProvider { get; set; }
        public string Version { get; set; }
        public object Result { get; set; }
    }

    public interface ISignatureService
    {
        string ServiceProvider { get; }
        string Version { get; }
        Task<SignatureEntityOutput> RequestSignature(SignatureEntityInput signatureEntityInput, object settings = null);
    }
}


