diff --git a/ora/ora-tests.ts b/ora/ora-tests.ts
index bea4f29b51..4b69f2af15 100644
--- a/ora/ora-tests.ts
+++ b/ora/ora-tests.ts
@@ -1,10 +1,7 @@
///
-
import ora = require('ora');
-const spinner = ora('Loading unicorns');
-
-spinner.start();
+const spinner = ora('Loading unicorns').start();
setTimeout(() => {
spinner.color = 'yellow';
spinner.text = 'Loading rainbows';
diff --git a/ora/ora.d.ts b/ora/ora.d.ts
index 692f82b96c..6b5f652d13 100644
--- a/ora/ora.d.ts
+++ b/ora/ora.d.ts
@@ -1,24 +1,35 @@
-// Type definitions for ora
+// Type definitions for ora v0.3.0
// Project: https://github.com/sindresorhus/ora
// Definitions by: Basarat Ali Syed
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
-declare module 'ora' {
+///
+
+declare module "ora" {
type Color = 'black' | 'red' | 'green' | 'yellow' | 'blue' | 'magenta' | 'cyan' | 'white' | 'gray';
type Text = string;
interface Options {
text?: Text;
- spinner?: string | { interval?: number; frames: string[]; }
+ spinner?: string | Spinner;
color?: Color;
- stream?: any;
+ interval?: number;
+ stream?: NodeJS.WritableStream;
+ enabled?: boolean;
+ }
+ interface Spinner {
+ interval?: number;
+ frames: string[];
}
interface Instance {
- start(): void;
- stop(): void;
- clear(): void;
- frame(): void;
- render(): void;
- text: Text;
+ start(): Instance;
+ stop(): Instance;
+ succeed(): Instance;
+ fail(): Instance;
+ stopAndPersist(symbol?: string): Instance;
+ clear(): Instance;
+ render(): Instance;
+ frame(): Instance;
+ text: string;
color: Color;
}
function ora(options: Options | Text): Instance;