import { Event } from './event.js'; export interface ISplice { readonly start: number; readonly deleteCount: number; readonly toInsert: readonly T[]; } export interface ISpliceable { splice(start: number, deleteCount: number, toInsert: readonly 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?: readonly T[]): void; }