From d25e11bee6ca5ca523884da132d18e1400e077b9 Mon Sep 17 00:00:00 2001 From: Minteck Date: Tue, 24 Aug 2021 14:41:48 +0200 Subject: Initial commit --- node_modules/ora/index.d.ts | 257 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 257 insertions(+) create mode 100644 node_modules/ora/index.d.ts (limited to 'node_modules/ora/index.d.ts') diff --git a/node_modules/ora/index.d.ts b/node_modules/ora/index.d.ts new file mode 100644 index 0000000..e1d4f18 --- /dev/null +++ b/node_modules/ora/index.d.ts @@ -0,0 +1,257 @@ +/// +import {SpinnerName} from 'cli-spinners'; + +declare namespace ora { + interface Spinner { + readonly interval?: number; + readonly frames: string[]; + } + + type Color = + | 'black' + | 'red' + | 'green' + | 'yellow' + | 'blue' + | 'magenta' + | 'cyan' + | 'white' + | 'gray'; + + interface Options { + /** + Text to display after the spinner. + */ + readonly text?: string; + + /** + Text to display before the spinner. + */ + readonly prefixText?: string; + + /** + Name of one of the provided spinners. See [`example.js`](https://github.com/BendingBender/ora/blob/master/example.js) in this repo if you want to test out different spinners. On Windows, it will always use the line spinner as the Windows command-line doesn't have proper Unicode support. + + @default 'dots' + + Or an object like: + + @example + ``` + { + interval: 80, // Optional + frames: ['-', '+', '-'] + } + ``` + */ + readonly spinner?: SpinnerName | Spinner; + + /** + Color of the spinner. + + @default 'cyan' + */ + readonly color?: Color; + + /** + Set to `false` to stop Ora from hiding the cursor. + + @default true + */ + readonly hideCursor?: boolean; + + /** + Indent the spinner with the given number of spaces. + + @default 0 + */ + readonly indent?: number; + + /** + Interval between each frame. + + Spinners provide their own recommended interval, so you don't really need to specify this. Default value: Provided by the spinner or `100`. + */ + readonly interval?: number; + + /** + Stream to write the output. + + You could for example set this to `process.stdout` instead. + + @default process.stderr + */ + readonly stream?: NodeJS.WritableStream; + + /** + Force enable/disable the spinner. If not specified, the spinner will be enabled if the `stream` is being run inside a TTY context (not spawned or piped) and/or not in a CI environment. + + Note that `{isEnabled: false}` doesn't mean it won't output anything. It just means it won't output the spinner, colors, and other ansi escape codes. It will still log text. + */ + readonly isEnabled?: boolean; + } + + interface PersistOptions { + /** + Symbol to replace the spinner with. + + @default ' ' + */ + readonly symbol?: string; + + /** + Text to be persisted after the symbol. Default: Current `text`. + */ + readonly text?: string; + + /** + Text to be persisted before the symbol. Default: Current `prefixText`. + */ + readonly prefixText?: string; + } + + interface Ora { + /** + A boolean of whether the instance is currently spinning. + */ + readonly isSpinning: boolean; + + /** + Change the text after the spinner. + */ + text: string; + + /** + Change the text before the spinner. + */ + prefixText: string; + + /** + Change the spinner color. + */ + color: Color; + + /** + Change the spinner. + */ + spinner: SpinnerName | Spinner; + + /** + Change the spinner indent. + */ + indent: number; + + /** + Start the spinner. + + @param text - Set the current text. + @returns The spinner instance. + */ + start(text?: string): Ora; + + /** + Stop and clear the spinner. + + @returns The spinner instance. + */ + stop(): Ora; + + /** + Stop the spinner, change it to a green `✔` and persist the current text, or `text` if provided. + + @param text - Will persist text if provided. + @returns The spinner instance. + */ + succeed(text?: string): Ora; + + /** + Stop the spinner, change it to a red `✖` and persist the current text, or `text` if provided. + + @param text - Will persist text if provided. + @returns The spinner instance. + */ + fail(text?: string): Ora; + + /** + Stop the spinner, change it to a yellow `⚠` and persist the current text, or `text` if provided. + + @param text - Will persist text if provided. + @returns The spinner instance. + */ + warn(text?: string): Ora; + + /** + Stop the spinner, change it to a blue `ℹ` and persist the current text, or `text` if provided. + + @param text - Will persist text if provided. + @returns The spinner instance. + */ + info(text?: string): Ora; + + /** + Stop the spinner and change the symbol or text. + + @returns The spinner instance. + */ + stopAndPersist(options?: PersistOptions): Ora; + + /** + Clear the spinner. + + @returns The spinner instance. + */ + clear(): Ora; + + /** + Manually render a new frame. + + @returns The spinner instance. + */ + render(): Ora; + + /** + Get a new frame. + + @returns The spinner instance. + */ + frame(): Ora; + } +} + +declare const ora: { + /** + Elegant terminal spinner. + + @param options - If a string is provided, it is treated as a shortcut for `options.text`. + + @example + ``` + import ora = require('ora'); + + const spinner = ora('Loading unicorns').start(); + + setTimeout(() => { + spinner.color = 'yellow'; + spinner.text = 'Loading rainbows'; + }, 1000); + ``` + */ + (options?: ora.Options | string): ora.Ora; + + /** + Starts a spinner for a promise. The spinner is stopped with `.succeed()` if the promise fulfills or with `.fail()` if it rejects. + + @param action - The promise to start the spinner for. + @param options - If a string is provided, it is treated as a shortcut for `options.text`. + @returns The spinner instance. + */ + promise( + action: PromiseLike, + options?: ora.Options | string + ): ora.Ora; + + // TODO: Remove this for the next major release + default: typeof ora; +}; + +export = ora; -- cgit