| declare module "tty" { |
| import * as net from "net"; |
| |
| function isatty(fd: number): boolean; |
| class ReadStream extends net.Socket { |
| constructor(fd: number, options?: net.SocketConstructorOpts); |
| isRaw: boolean; |
| setRawMode(mode: boolean): void; |
| isTTY: boolean; |
| } |
| /** |
| * -1 - to the left from cursor |
| * 0 - the entire line |
| * 1 - to the right from cursor |
| */ |
| type Direction = -1 | 0 | 1; |
| class WriteStream extends net.Socket { |
| constructor(fd: number); |
| addListener(event: string, listener: (...args: any[]) => void): this; |
| addListener(event: "resize", listener: () => void): this; |
| |
| emit(event: string | symbol, ...args: any[]): boolean; |
| emit(event: "resize"): boolean; |
| |
| on(event: string, listener: (...args: any[]) => void): this; |
| on(event: "resize", listener: () => void): this; |
| |
| once(event: string, listener: (...args: any[]) => void): this; |
| once(event: "resize", listener: () => void): this; |
| |
| prependListener(event: string, listener: (...args: any[]) => void): this; |
| prependListener(event: "resize", listener: () => void): this; |
| |
| prependOnceListener(event: string, listener: (...args: any[]) => void): this; |
| prependOnceListener(event: "resize", listener: () => void): this; |
| |
| /** |
| * Clears the current line of this WriteStream in a direction identified by `dir`. |
| */ |
| clearLine(dir: Direction, callback?: () => void): boolean; |
| /** |
| * Clears this `WriteStream` from the current cursor down. |
| */ |
| clearScreenDown(callback?: () => void): boolean; |
| /** |
| * Moves this WriteStream's cursor to the specified position. |
| */ |
| cursorTo(x: number, y?: number, callback?: () => void): boolean; |
| cursorTo(x: number, callback: () => void): boolean; |
| /** |
| * Moves this WriteStream's cursor relative to its current position. |
| */ |
| moveCursor(dx: number, dy: number, callback?: () => void): boolean; |
| /** |
| * @default `process.env` |
| */ |
| getColorDepth(env?: {}): number; |
| hasColors(depth?: number): boolean; |
| hasColors(env?: {}): boolean; |
| hasColors(depth: number, env?: {}): boolean; |
| getWindowSize(): [number, number]; |
| columns: number; |
| rows: number; |
| isTTY: boolean; |
| } |
| } |