extra-asciinema
Version:
asciinema is a terminal screen recorder.
118 lines (116 loc) • 3.64 kB
TypeScript
/**
* Callback function.
* [📘](https://github.com/nodef/extra-asciinema/wiki/Callback)
*/
type Callback = (err: any, ans?: any) => void;
/**
* Record options.
* [📘](https://github.com/nodef/extra-asciinema/wiki/RecOptions)
*/
interface RecOptions {
/** Input javascript file. */
input?: string;
/** Append to file? (false) */
append?: boolean;
/** Save in raw format? (false) */
raw?: boolean;
/** Overwrite existing file? (true) */
overwrite?: boolean;
/** Command to record. (cat ${input} | node -i) */
command?: string;
/** Environment variables. */
env?: string;
/** File title. */
title?: string;
/** Maximum idle tile. */
idleTimeLimit?: number;
}
/**
* Retime options.
* [📘](https://github.com/nodef/extra-asciinema/wiki/RetimeOptions)
*/
interface RetimeOptions {
/** Input text. */
input?: string;
/** Input rate. (0.1s) */
inputRate?: number;
/** Input delay. (1s) */
inputDelay?: number;
/** Output rate. (0.1s) */
outputRate?: number;
/** Output delay. (0.1s) */
outputDelay?: number;
/** Initial delay. (0s) */
delay?: number;
}
/**
* Record terminal session.
* [📘](https://github.com/nodef/extra-asciinema/wiki/rec)
* @param f output filename
* @param o options
* @param fn callback function (err, asciicast file)
* @returns asciicast file (promise)
*/
declare function rec(f?: string, o?: RecOptions, fn?: Callback): Promise<any>;
/**
* Record terminal session.
* [📘](https://github.com/nodef/extra-asciinema/wiki/recSync)
* @param f output filename
* @param o options
* @returns asciicast file
*/
declare function recSync(f: string, o?: RecOptions): string;
/**
* Print full output of recorded asciicast to a terminal.
* [📘](https://github.com/nodef/extra-asciinema/wiki/cat)
* @param f filename
* @param fn callback (err, full output)
* @returns full output (including all escape sequences)
*/
declare function cat(f: string, fn?: Callback): Promise<any>;
/**
* Print full output of recorded asciicast to a terminal.
* [📘](https://github.com/nodef/extra-asciinema/wiki/catSync)
* @param f filename
* @returns full output (including all escape sequences)
*/
declare function catSync(f: string): string;
/**
* Update time in asciicast data.
* [📘](https://github.com/nodef/extra-asciinema/wiki/retimeData)
* @param d asciicast data
* @param o options
* @returns updated asciicast data
*/
declare function retimeData(d: string, o?: RetimeOptions): string;
/**
* Update time in asciicast file.
* [📘](https://github.com/nodef/extra-asciinema/wiki/retime)
* @param f filename
* @param o options
* @returns promise
*/
declare function retime(f: string, o?: RetimeOptions): Promise<any>;
/**
* Update time in asciicast file.
* [📘](https://github.com/nodef/extra-asciinema/wiki/retimeSync)
* @param f filename
* @param o options
*/
declare function retimeSync(f: string, o?: RetimeOptions): void;
/**
* Upload recorded asciicast to asciinema.org site.
* [📘](https://github.com/nodef/extra-asciinema/wiki/upload)
* @param f filename
* @param fn callback (err, asciicast URL)
* @returns asciicast URL (promise)
*/
declare function upload(f: string, fn?: Callback): Promise<any>;
/**
* Upload recorded asciicast to asciinema.org site.
* [📘](https://github.com/nodef/extra-asciinema/wiki/uploadSync)
* @param f filename
* @returns asciicast URL
*/
declare function uploadSync(f: string): string;
export { Callback, RecOptions, RetimeOptions, cat, catSync, rec, recSync, retime, retimeData, retimeSync, upload, uploadSync };