diff options
author | Minteck <contact@minteck.org> | 2021-12-21 16:52:28 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2021-12-21 16:52:28 +0100 |
commit | 46e43f4bde4a35785b4997b81e86cd19f046b69b (patch) | |
tree | c53c2f826f777f9d6b2d249dab556feb72a6c3a6 /node_modules/ora/index.d.ts | |
download | langdetect-46e43f4bde4a35785b4997b81e86cd19f046b69b.tar.gz langdetect-46e43f4bde4a35785b4997b81e86cd19f046b69b.tar.bz2 langdetect-46e43f4bde4a35785b4997b81e86cd19f046b69b.zip |
Commit
Diffstat (limited to 'node_modules/ora/index.d.ts')
-rw-r--r-- | node_modules/ora/index.d.ts | 278 |
1 files changed, 278 insertions, 0 deletions
diff --git a/node_modules/ora/index.d.ts b/node_modules/ora/index.d.ts new file mode 100644 index 0000000..dc58717 --- /dev/null +++ b/node_modules/ora/index.d.ts @@ -0,0 +1,278 @@ +/// <reference types="node"/> +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'; + + type PrefixTextGenerator = () => string; + + interface Options { + /** + Text to display after the spinner. + */ + readonly text?: string; + + /** + Text or a function that returns text to display before the spinner. No prefix text will be displayed if set to an empty string. + */ + readonly prefixText?: string | PrefixTextGenerator; + + /** + 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: 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; + + /** + Disable the spinner and all log text. All output is suppressed and `isEnabled` will be considered `false`. + + @default false + */ + readonly isSilent?: boolean; + + /** + Discard stdin input (except Ctrl+C) while running if it's TTY. This prevents the spinner from twitching on input, outputting broken lines on `Enter` key presses, and prevents buffering of input while the spinner is running. + + This has no effect on Windows as there's no good way to implement discarding stdin properly there. + + @default true + */ + readonly discardStdin?: 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 or a function that returns text to be persisted before the symbol. No prefix text will be displayed if set to an empty string. + + Default: Current `prefixText`. + */ + readonly prefixText?: string | PrefixTextGenerator; + } + + 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 or function that returns text before the spinner. No prefix text will be displayed if set to an empty string. + */ + prefixText: string | PrefixTextGenerator; + + /** + 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 text. + */ + frame(): string; + } +} + +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<unknown>, + options?: ora.Options | string + ): ora.Ora; +}; + +export = ora; |