aboutsummaryrefslogtreecommitdiffstats
path: root/svg.js.d.ts
diff options
context:
space:
mode:
authorpragdave <dave@pragdave.me>2020-05-07 13:51:16 -0500
committerpragdave <dave@pragdave.me>2020-05-07 13:51:16 -0500
commitd5097965aa2cc2726e241333d8d6d0fa090717eb (patch)
tree35b57230a852cbaf498654210104fa10d7816564 /svg.js.d.ts
parentc8cb22863bf8c3ac157f6098be9154908aea9ec2 (diff)
downloadsvg.js-d5097965aa2cc2726e241333d8d6d0fa090717eb.tar.gz
svg.js-d5097965aa2cc2726e241333d8d6d0fa090717eb.zip
It was difficult to use the zero-parameter form of Timeline.schedule() with TypeScript. The .d.ts file didn't include the retuen type for a list of runner infos, and adding it still m,ade it harder than it should be to iterate over it type safely. In this commit I
1. Added the type information for `ScheduledRunnerInfo`, and updated the Timeline types to include it as a retuen type for `schedule` 2. Added a new function to Timeline, `getSchedule`, that simply returns the runner list. This seems to be cleaner than having the original `schedule` that can return two wildly different things. I didn't remove the old functionality.
Diffstat (limited to 'svg.js.d.ts')
-rw-r--r--svg.js.d.ts10
1 files changed, 9 insertions, 1 deletions
diff --git a/svg.js.d.ts b/svg.js.d.ts
index e397e05..02dd6df 100644
--- a/svg.js.d.ts
+++ b/svg.js.d.ts
@@ -772,11 +772,19 @@ declare module "@svgdotjs/svg.js" {
}
// Timeline.js
+ interface ScheduledRunnerInfo {
+ start: number
+ duration: number
+ end: number
+ runner: Runner
+ }
+
class Timeline extends EventTarget {
constructor()
constructor(fn: Function)
- schedule(runner?: Runner, delay?: number, when?: string): this
+ getSchedule(): ScheduledRunnerInfo[]
+ schedule(runner?: Runner, delay?: number, when?: string): ( this | ScheduledRunnerInfo[] )
unschedule(runner: Runner): this
getEndTime(): number
updateTime(): this