import { Event } from '../../base/common/event'; export interface ISplice { readonly start: number; readonly deleteCount: number; readonly toInsert: T[]; } export interface ISpliceable { splice(start: number, deleteCount: number, toInsert: T[]): void; } export interface ISequence { readonly elements: T[]; readonly onDidSplice: Event>; } export declare class Sequence implements ISequence, ISpliceable { readonly elements: T[]; private readonly _onDidSplice; readonly onDidSplice: Event>; splice(start: number, deleteCount: number, toInsert?: T[]): void; } export declare class SimpleSequence implements ISequence { private _elements; get elements(): T[]; readonly onDidSplice: Event>; private disposable; constructor(elements: T[], onDidAdd: Event, onDidRemove: Event); dispose(): void; } //# sourceMappingURL=sequence.d.ts.map