interface Folding {
    $foldData: FoldLine[];
    $foldMode: any;
    $foldStyle: string;
    $foldStyles: { manual: number; markbegin: number; markbeginend: number };
    $modified: boolean;
    $tokenizerUpdateFoldWidgets: any;
    $updateFoldWidgets: any;
    foldWidgets: any[];
    getFoldWidget: any;
    getFoldWidgetRange: any;
    $addFoldLine(foldLine: FoldLine): FoldLine;
    $cloneFoldData(): FoldLine[];
    $setFolding(foldMode: FoldMode): void;
    $toggleFoldWidget(row: number, options: any): any;
    addFold(placeholder: string | Fold, range?: Range): Fold;
    addFolds(folds: Fold[]): void;
    expandFold(fold: Fold): void;
    expandFolds(folds: Fold[]): void;
    foldAll(
        startRow?: number,
        endRow?: number,
        depth?: number,
        test?: Function,
    ): void;
    foldAllComments(): void;
    foldToLevel(level: number): void;
    getAllFolds(): Fold[];
    getCommentFoldRange(row: number, column: number, dir?: number): Range;
    getDisplayLine(
        row: number,
        endColumn: number,
        startRow: number,
        startColumn: number,
    ): string;
    getFoldAt(row: number, column: number, side?: number): Fold;
    getFoldDisplayLine(
        foldLine: FoldLine,
        endRow?: number,
        endColumn?: number,
        startRow?: number,
        startColumn?: number,
    ): string;
    getFoldedRowCount(first: number, last: number): number;
    getFoldLine(docRow: number, startFoldLine?: FoldLine): FoldLine;
    getFoldsInRange(range: Delta | Range): Fold[];
    getFoldsInRangeList(ranges: Range | Range[]): Fold[];
    getFoldStringAt(
        row: number,
        column: number,
        trim?: number,
        foldLine?: FoldLine,
    ): string;
    getNextFoldLine(docRow: number, startFoldLine?: FoldLine): FoldLine;
    getParentFoldRangeData(
        row: number,
        ignoreCurrent?: boolean,
    ): { firstRange?: Range; range?: Range };
    getRowFoldEnd(docRow: number, startFoldRow?: FoldLine): number;
    getRowFoldStart(docRow: number, startFoldRow?: FoldLine): number;
    isRowFolded(docRow: number, startFoldRow?: FoldLine): boolean;
    onFoldWidgetClick(row: number, e: any): void;
    removeFold(fold: Fold): void;
    removeFolds(folds: Fold[]): void;
    setFoldStyle(style: string): void;
    toggleFold(tryToUnfold?: boolean): void;
    toggleFoldWidget(toggleParent?: boolean): void;
    tokenizerUpdateFoldWidgets(e: any): void;
    unfold(
        location?: number | Point | Range | Range[],
        expandInner?: boolean,
    ): Fold[];
    updateFoldWidgets(delta: Delta): void;
}

Hierarchy (View Summary)

Properties

$foldData: FoldLine[]
$foldMode: any
$foldStyle: string
$foldStyles: { manual: number; markbegin: number; markbeginend: number }
$modified: boolean
$tokenizerUpdateFoldWidgets: any
$updateFoldWidgets: any
foldWidgets: any[]
getFoldWidget: any
getFoldWidgetRange: any

Methods

  • Parameters

    • row: number
    • options: any

    Returns any

  • Adds a new fold.

    Parameters

    • placeholder: string | Fold
    • Optionalrange: Range

    Returns Fold

    The new created Fold object or an existing fold object in case the passed in range fits an existing fold exactly.

  • Parameters

    • OptionalstartRow: number
    • OptionalendRow: number
    • Optionaldepth: number
    • Optionaltest: Function

    Returns void

  • Parameters

    • level: number

    Returns void

  • Parameters

    • row: number
    • column: number
    • Optionaldir: number

    Returns Range

  • Parameters

    • row: number
    • endColumn: number
    • startRow: number
    • startColumn: number

    Returns string

  • Looks up a fold at a given row/column. Possible values for side: -1: ignore a fold if fold.start = row/column +1: ignore a fold if fold.end = row/column

    Parameters

    • row: number
    • column: number
    • Optionalside: number

    Returns Fold

  • Parameters

    • foldLine: FoldLine
    • OptionalendRow: number
    • OptionalendColumn: number
    • OptionalstartRow: number
    • OptionalstartColumn: number

    Returns string

  • Parameters

    • first: number
    • last: number

    Returns number

  • Returns the string between folds at the given position. E.g. foob|arwolrd -> "bar" foobarwol|rd -> "world" foobar<fo|ld>wolrd ->

    where | means the position of row/column

    The trim option determs if the return string should be trimed according to the "side" passed with the trim value:

    E.g. foob|arwolrd -trim=-1> "b" foobarwol|rd -trim=+1> "rld" fo|obarwolrd -trim=00> "foo"

    Parameters

    • row: number
    • column: number
    • Optionaltrim: number
    • OptionalfoldLine: FoldLine

    Returns string

  • Parameters

    • row: number
    • OptionalignoreCurrent: boolean

    Returns { firstRange?: Range; range?: Range }

  • Checks if a given documentRow is folded. This is true if there are some folded parts such that some parts of the line is still visible.

    Parameters

    • docRow: number
    • OptionalstartFoldRow: FoldLine

    Returns boolean

  • Parameters

    • row: number
    • e: any

    Returns void

  • Parameters

    • style: string

    Returns void

  • Parameters

    • OptionaltryToUnfold: boolean

    Returns void

  • Parameters

    • OptionaltoggleParent: boolean

    Returns void

  • Parameters

    • e: any

    Returns void