UNPKG

sussudio

Version:

An unofficial VS Code Internal API

24 lines (23 loc) 1 kB
/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { Event } from "./event.mjs"; export interface ISplice<T> { readonly start: number; readonly deleteCount: number; readonly toInsert: readonly T[]; } export interface ISpliceable<T> { splice(start: number, deleteCount: number, toInsert: readonly T[]): void; } export interface ISequence<T> { readonly elements: T[]; readonly onDidSplice: Event<ISplice<T>>; } export declare class Sequence<T> implements ISequence<T>, ISpliceable<T> { readonly elements: T[]; private readonly _onDidSplice; readonly onDidSplice: Event<ISplice<T>>; splice(start: number, deleteCount: number, toInsert?: readonly T[]): void; }