ab778aeac393ad6d06aa8327663001a0e4e699f4.svn-base
1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
/// <reference types="node"/>
declare namespace logUpdate {
interface LogUpdate {
/**
Log to `stdout` by overwriting the previous output in the terminal.
@param text - The text to log to `stdout`.
@example
```
import logUpdate = require('log-update');
const frames = ['-', '\\', '|', '/'];
let i = 0;
setInterval(() => {
const frame = frames[i = ++i % frames.length];
logUpdate(
`
♥♥
${frame} unicorns ${frame}
♥♥
`
);
}, 80);
```
*/
(...text: string[]): void;
/**
Clear the logged output.
*/
clear(): void;
/**
Persist the logged output. Useful if you want to start a new log session below the current one.
*/
done(): void;
}
interface Options {
/**
Show the cursor. This can be useful when a CLI accepts input from a user.
@example
```
import logUpdate = require('log-update');
// Write output but don't hide the cursor
const log = logUpdate.create(process.stdout, {
showCursor: true
});
```
*/
readonly showCursor?: boolean;
}
}
declare const logUpdate: logUpdate.LogUpdate & {
/**
Log to `stderr` by overwriting the previous output in the terminal.
@param text - The text to log to `stderr`.
*/
readonly stderr: logUpdate.LogUpdate;
/**
Get a `logUpdate` method that logs to the specified stream.
@param stream - The stream to log to.
*/
readonly create: (
stream: NodeJS.WritableStream,
options?: logUpdate.Options
) => logUpdate.LogUpdate;
// TODO: Remove this for the next major release
default: typeof logUpdate;
};
export = logUpdate;