namespace AIStudio.Tools; public readonly record struct ButtonData(string Text, string Icon, Color Color, string Tooltip, Func AsyncAction, Func? DisabledActionParam) : IButtonData { public ButtonTypes Type => ButtonTypes.BUTTON; public Func DisabledAction { get { var data = this; return () => { if (data.DisabledActionParam is null) return false; return data.DisabledActionParam(); }; } } }