Merge pull request #16666 from dolanmiu/timer-machine

Timer-machine types
This commit is contained in:
Daniel Rosenwasser
2017-05-22 13:49:48 -07:00
committed by GitHub
4 changed files with 106 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
// Type definitions for timer-machine 1.1
// Project: https://github.com/brentburg/timer-machine
// Definitions by: Dolan Miu <https://github.com/dolanmiu>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
export as namespace Timer;
export = Timer;
declare namespace Timer {
type TimerEvent = "start" | "stop" | "time";
}
declare class Timer {
static get(reference: string): Timer;
static destroy(reference: string): Timer;
constructor(started?: boolean);
isStarted(): boolean;
isStopped(): boolean;
start(): void;
timeFromStart(): number;
stop(): void;
time(): number;
toggle(): void;
emitTime(): void;
valueOf(): number;
on(event: Timer.TimerEvent, callback?: () => void): void;
}
@@ -0,0 +1,54 @@
import * as Timer from "timer-machine";
let myTimer = new Timer();
myTimer.start();
myTimer.stop();
myTimer.time();
Timer.get('my').start();
Timer.get('my').time();
Timer.destroy('my');
myTimer = Timer.get('my');
let timer1 = new Timer();
timer1.start();
let timer2 = new Timer(true);
timer2.start();
let timer = new Timer();
timer.stop();
timer.start();
timer.stop();
timer = new Timer();
timer.isStarted();
timer.toggle();
timer.isStarted();
timer.toggle();
timer.isStarted();
timer = new Timer();
timer.start();
timer.timeFromStart() === timer.time();
timer = new Timer();
timer.isStarted();
timer.start();
timer.isStarted();
timer = new Timer();
timer.isStopped();
timer.start();
timer.isStopped();
timer.on('start', () => {
});
timer.on('stop', () => {
});
timer.on('time', () => {
});
+22
View File
@@ -0,0 +1,22 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6"
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"timer-machine-tests.ts"
]
}
+1
View File
@@ -0,0 +1 @@
{ "extends": "dtslint/dt.json" }