using Avalonia.Controls;
using Avalonia.Media;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace InABox.Avalonia.Components;

public interface IAvaloniaDataGridColumn
{
    string ColumnName { get; set; }
    string Caption { get; set; }
    GridLength Width { get; set; }
    TextAlignment Alignment { get; set; }
    bool Searchable { get; }

    Action<IAvaloniaDataGridColumn, object?>? Tapped { get; set; }

    DataGridColumn CreateColumn();

    bool Filter(object? item, string filter);
}
