12345678910111213141516171819202122232425262728293031323334 |
- export declare const FOLD_FLOW = "flow";
- export declare const FOLD_BLOCK = "block";
- export declare const FOLD_QUOTED = "quoted";
- /**
- * `'block'` prevents more-indented lines from being folded;
- * `'quoted'` allows for `\` escapes, including escaped newlines
- */
- export type FoldMode = 'flow' | 'block' | 'quoted';
- export interface FoldOptions {
- /**
- * Accounts for leading contents on the first line, defaulting to
- * `indent.length`
- */
- indentAtStart?: number;
- /** Default: `80` */
- lineWidth?: number;
- /**
- * Allow highly indented lines to stretch the line width or indent content
- * from the start.
- *
- * Default: `20`
- */
- minContentWidth?: number;
- /** Called once if the text is folded */
- onFold?: () => void;
- /** Called once if any line of text exceeds lineWidth characters */
- onOverflow?: () => void;
- }
- /**
- * Tries to keep input at up to `lineWidth` characters, splitting only on spaces
- * not followed by newlines or spaces unless `mode` is `'quoted'`. Lines are
- * terminated with `\n` and started with `indent`.
- */
- export declare function foldFlowLines(text: string, indent: string, mode?: FoldMode, { indentAtStart, lineWidth, minContentWidth, onFold, onOverflow }?: FoldOptions): string;
|