using System.Data;

namespace Nif.Orm.Dapper.Cqs
{
    public abstract class Query<TParameters> where TParameters : class
    {
        protected Query(TParameters parameters = null)
        {
            Parameters = parameters;
        }

        public abstract string Sql { get; }
        public TParameters Parameters { get; protected set; }
        public bool Buffered { get; protected set; } = true;
        public int? CommandTimeout { get; protected set; }
        public CommandType? CommandType { get; protected set; }
    }
}