You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
248 lines
5.4 KiB
248 lines
5.4 KiB
/// <reference types="node"/> |
|
import {LiteralUnion} from 'type-fest'; |
|
|
|
declare namespace ansiEscapes { |
|
interface ImageOptions { |
|
/** |
|
The width is given as a number followed by a unit, or the word `'auto'`. |
|
|
|
- `N`: N character cells. |
|
- `Npx`: N pixels. |
|
- `N%`: N percent of the session's width or height. |
|
- `auto`: The image's inherent size will be used to determine an appropriate dimension. |
|
*/ |
|
readonly width?: LiteralUnion<'auto', number | string>; |
|
|
|
/** |
|
The height is given as a number followed by a unit, or the word `'auto'`. |
|
|
|
- `N`: N character cells. |
|
- `Npx`: N pixels. |
|
- `N%`: N percent of the session's width or height. |
|
- `auto`: The image's inherent size will be used to determine an appropriate dimension. |
|
*/ |
|
readonly height?: LiteralUnion<'auto', number | string>; |
|
|
|
readonly preserveAspectRatio?: boolean; |
|
} |
|
|
|
interface AnnotationOptions { |
|
/** |
|
Nonzero number of columns to annotate. |
|
|
|
Default: The remainder of the line. |
|
*/ |
|
readonly length?: number; |
|
|
|
/** |
|
Starting X coordinate. |
|
|
|
Must be used with `y` and `length`. |
|
|
|
Default: The cursor position |
|
*/ |
|
readonly x?: number; |
|
|
|
/** |
|
Starting Y coordinate. |
|
|
|
Must be used with `x` and `length`. |
|
|
|
Default: Cursor position. |
|
*/ |
|
readonly y?: number; |
|
|
|
/** |
|
Create a "hidden" annotation. |
|
|
|
Annotations created this way can be shown using the "Show Annotations" iTerm command. |
|
*/ |
|
readonly isHidden?: boolean; |
|
} |
|
} |
|
|
|
declare const ansiEscapes: { |
|
/** |
|
Set the absolute position of the cursor. `x0` `y0` is the top left of the screen. |
|
*/ |
|
cursorTo(x: number, y?: number): string; |
|
|
|
/** |
|
Set the position of the cursor relative to its current position. |
|
*/ |
|
cursorMove(x: number, y?: number): string; |
|
|
|
/** |
|
Move cursor up a specific amount of rows. |
|
|
|
@param count - Count of rows to move up. Default is `1`. |
|
*/ |
|
cursorUp(count?: number): string; |
|
|
|
/** |
|
Move cursor down a specific amount of rows. |
|
|
|
@param count - Count of rows to move down. Default is `1`. |
|
*/ |
|
cursorDown(count?: number): string; |
|
|
|
/** |
|
Move cursor forward a specific amount of rows. |
|
|
|
@param count - Count of rows to move forward. Default is `1`. |
|
*/ |
|
cursorForward(count?: number): string; |
|
|
|
/** |
|
Move cursor backward a specific amount of rows. |
|
|
|
@param count - Count of rows to move backward. Default is `1`. |
|
*/ |
|
cursorBackward(count?: number): string; |
|
|
|
/** |
|
Move cursor to the left side. |
|
*/ |
|
cursorLeft: string; |
|
|
|
/** |
|
Save cursor position. |
|
*/ |
|
cursorSavePosition: string; |
|
|
|
/** |
|
Restore saved cursor position. |
|
*/ |
|
cursorRestorePosition: string; |
|
|
|
/** |
|
Get cursor position. |
|
*/ |
|
cursorGetPosition: string; |
|
|
|
/** |
|
Move cursor to the next line. |
|
*/ |
|
cursorNextLine: string; |
|
|
|
/** |
|
Move cursor to the previous line. |
|
*/ |
|
cursorPrevLine: string; |
|
|
|
/** |
|
Hide cursor. |
|
*/ |
|
cursorHide: string; |
|
|
|
/** |
|
Show cursor. |
|
*/ |
|
cursorShow: string; |
|
|
|
/** |
|
Erase from the current cursor position up the specified amount of rows. |
|
|
|
@param count - Count of rows to erase. |
|
*/ |
|
eraseLines(count: number): string; |
|
|
|
/** |
|
Erase from the current cursor position to the end of the current line. |
|
*/ |
|
eraseEndLine: string; |
|
|
|
/** |
|
Erase from the current cursor position to the start of the current line. |
|
*/ |
|
eraseStartLine: string; |
|
|
|
/** |
|
Erase the entire current line. |
|
*/ |
|
eraseLine: string; |
|
|
|
/** |
|
Erase the screen from the current line down to the bottom of the screen. |
|
*/ |
|
eraseDown: string; |
|
|
|
/** |
|
Erase the screen from the current line up to the top of the screen. |
|
*/ |
|
eraseUp: string; |
|
|
|
/** |
|
Erase the screen and move the cursor the top left position. |
|
*/ |
|
eraseScreen: string; |
|
|
|
/** |
|
Scroll display up one line. |
|
*/ |
|
scrollUp: string; |
|
|
|
/** |
|
Scroll display down one line. |
|
*/ |
|
scrollDown: string; |
|
|
|
/** |
|
Clear the terminal screen. (Viewport) |
|
*/ |
|
clearScreen: string; |
|
|
|
/** |
|
Clear the whole terminal, including scrollback buffer. (Not just the visible part of it) |
|
*/ |
|
clearTerminal: string; |
|
|
|
/** |
|
Output a beeping sound. |
|
*/ |
|
beep: string; |
|
|
|
/** |
|
Create a clickable link. |
|
|
|
[Supported terminals.](https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda) Use [`supports-hyperlinks`](https://github.com/jamestalmage/supports-hyperlinks) to detect link support. |
|
*/ |
|
link(text: string, url: string): string; |
|
|
|
/** |
|
Display an image. |
|
|
|
_Currently only supported on iTerm2 >=3_ |
|
|
|
See [term-img](https://github.com/sindresorhus/term-img) for a higher-level module. |
|
|
|
@param buffer - Buffer of an image. Usually read in with `fs.readFile()`. |
|
*/ |
|
image(buffer: Buffer, options?: ansiEscapes.ImageOptions): string; |
|
|
|
iTerm: { |
|
/** |
|
[Inform iTerm2](https://www.iterm2.com/documentation-escape-codes.html) of the current directory to help semantic history and enable [Cmd-clicking relative paths](https://coderwall.com/p/b7e82q/quickly-open-files-in-iterm-with-cmd-click). |
|
|
|
@param cwd - Current directory. Default: `process.cwd()`. |
|
*/ |
|
setCwd(cwd?: string): string; |
|
|
|
/** |
|
An annotation looks like this when shown: |
|
|
|
![screenshot of iTerm annotation](https://user-images.githubusercontent.com/924465/64382136-b60ac700-cfe9-11e9-8a35-9682e8dc4b72.png) |
|
|
|
See the [iTerm Proprietary Escape Codes documentation](https://iterm2.com/documentation-escape-codes.html) for more information. |
|
|
|
@param message - The message to display within the annotation. The `|` character is disallowed and will be stripped. |
|
@returns An escape code which will create an annotation when printed in iTerm2. |
|
*/ |
|
annotation(message: string, options?: ansiEscapes.AnnotationOptions): string; |
|
}; |
|
|
|
// TODO: remove this in the next major version |
|
default: typeof ansiEscapes; |
|
}; |
|
|
|
export = ansiEscapes;
|
|
|