using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using AyaNova.Biz;
namespace AyaNova.DataList
{
    internal interface IAyaDataList
    {

        //sql query from fragment with table joins et
        string SQLFrom { get; set; }

        //List of fields for this object
        List<AyaDataListFieldDefinition> FieldDefinitions { get; set; }

        //allowed roles to access this list
        AuthorizationRoles AllowedRoles { get; set; }

        //Default object type to open for rows of this list (use no object if no)
        AyaType DefaultListObjectType { get; set; }

        //Default / STOCK DataListView when none is specified
        string DefaultListView { get; set; }

        Newtonsoft.Json.Linq.JArray GenerateListColumnsJSONFromListView(JArray listViewArray);
        List<string> GetFieldListFromListView(JArray listViewArray);


    }

}