using System;
using System.Collections;
namespace System.ComponentModel
{
/// Provides the features required to support both complex and simple scenarios when binding to a data source.
// Token: 0x02000084 RID: 132
public interface IBindingList : ICollection, IEnumerable, IList
{
/// Occurs when the list changes or an item in the list changes.
// Token: 0x14000014 RID: 20
// (add) Token: 0x060004AF RID: 1199
// (remove) Token: 0x060004B0 RID: 1200
event ListChangedEventHandler ListChanged;
/// Adds the to the indexes used for searching.
/// The to add to the indexes used for searching.
// Token: 0x060004B1 RID: 1201
void AddIndex(PropertyDescriptor property);
/// Adds a new item to the list.
/// The item added to the list.
///
/// is false.
// Token: 0x060004B2 RID: 1202
object AddNew();
/// Sorts the list based on a and a .
/// The to sort by.
/// One of the values.
///
/// is false.
// Token: 0x060004B3 RID: 1203
void ApplySort(PropertyDescriptor property, ListSortDirection direction);
/// Returns the index of the row that has the given .
/// The index of the row that has the given .
/// The to search on.
/// The value of the parameter to search for.
///
/// is false.
// Token: 0x060004B4 RID: 1204
int Find(PropertyDescriptor property, object key);
/// Removes the from the indexes used for searching.
/// The to remove from the indexes used for searching.
// Token: 0x060004B5 RID: 1205
void RemoveIndex(PropertyDescriptor property);
/// Removes any sort applied using .
///
/// is false.
// Token: 0x060004B6 RID: 1206
void RemoveSort();
/// Gets whether you can update items in the list.
/// true if you can update the items in the list; otherwise, false.
// Token: 0x17000138 RID: 312
// (get) Token: 0x060004B7 RID: 1207
bool AllowEdit { get; }
/// Gets whether you can add items to the list using .
/// true if you can add items to the list using ; otherwise, false.
// Token: 0x17000139 RID: 313
// (get) Token: 0x060004B8 RID: 1208
bool AllowNew { get; }
/// Gets whether you can remove items from the list, using or .
/// true if you can remove items from the list; otherwise, false.
// Token: 0x1700013A RID: 314
// (get) Token: 0x060004B9 RID: 1209
bool AllowRemove { get; }
/// Gets whether the items in the list are sorted.
/// true if has been called and has not been called; otherwise, false.
///
/// is false.
// Token: 0x1700013B RID: 315
// (get) Token: 0x060004BA RID: 1210
bool IsSorted { get; }
/// Gets the direction of the sort.
/// One of the values.
///
/// is false.
// Token: 0x1700013C RID: 316
// (get) Token: 0x060004BB RID: 1211
ListSortDirection SortDirection { get; }
/// Gets the that is being used for sorting.
/// The that is being used for sorting.
///
/// is false.
// Token: 0x1700013D RID: 317
// (get) Token: 0x060004BC RID: 1212
PropertyDescriptor SortProperty { get; }
/// Gets whether a event is raised when the list changes or an item in the list changes.
/// true if a event is raised when the list changes or when an item changes; otherwise, false.
// Token: 0x1700013E RID: 318
// (get) Token: 0x060004BD RID: 1213
bool SupportsChangeNotification { get; }
/// Gets whether the list supports searching using the method.
/// true if the list supports searching using the method; otherwise, false.
// Token: 0x1700013F RID: 319
// (get) Token: 0x060004BE RID: 1214
bool SupportsSearching { get; }
/// Gets whether the list supports sorting.
/// true if the list supports sorting; otherwise, false.
// Token: 0x17000140 RID: 320
// (get) Token: 0x060004BF RID: 1215
bool SupportsSorting { get; }
}
}