ecol
Version:
Event Collections
75 lines • 2.28 kB
TypeScript
import { List } from "tstl/container/List";
import { ICollection } from "../basic/ICollection";
import { IForwardIterator } from "tstl/iterator/IForwardIterator";
import { CollectionEvent } from "../basic/CollectionEvent";
export declare class ListCollection<T> extends List<T> implements ICollection<T, List<T>, List.Iterator<T>, List.ReverseIterator<T>> {
/**
* @hidden
*/
private dispatcher_;
clear(): void;
/**
* @hidden
*/
protected _Insert_by_range<U extends T, InputIterator extends Readonly<IForwardIterator<U, InputIterator>>>(pos: List.Iterator<T>, first: InputIterator, last: InputIterator): List.Iterator<T>;
/**
* @hidden
*/
protected _Erase_by_range(first: List.Iterator<T>, last: List.Iterator<T>): List.Iterator<T>;
/**
* @inheritDoc
*/
sort(): void;
/**
* @inheritDoc
*/
sort(comp: (x: T, y: T) => boolean): void;
/**
* @inheritDoc
*/
reverse(): void;
/**
* @inheritdoc
*/
refresh(): void;
/**
* @inheritdoc
*/
refresh(it: List.Iterator<T>): void;
/**
* @inheritdoc
*/
refresh(first: List.Iterator<T>, last: List.Iterator<T>): void;
/**
* @inheritdoc
*/
dispatchEvent(event: ListCollection.Event<T>): void;
/**
* @hidden
*/
private _Notify_insert;
/**
* @hidden
*/
private _Notify_erase;
/**
* @inheritdoc
*/
hasEventListener(type: CollectionEvent.Type): boolean;
/**
* @inheritdoc
*/
addEventListener(type: CollectionEvent.Type, listener: ListCollection.Listener<T>): void;
/**
* @inheritdoc
*/
removeEventListener(type: CollectionEvent.Type, listener: ListCollection.Listener<T>): void;
}
export declare namespace ListCollection {
type Event<T> = CollectionEvent<T, List<T>, List.Iterator<T>, List.ReverseIterator<T>>;
type Listener<T> = CollectionEvent.Listener<T, List<T>, List.Iterator<T>, List.ReverseIterator<T>>;
const Event: typeof CollectionEvent;
export import Iterator = List.Iterator;
export import ReverseIterator = List.ReverseIterator;
}
//# sourceMappingURL=ListCollection.d.ts.map