aboutsummaryrefslogtreecommitdiff
path: root/timeline.ts
blob: 8bb4d98606cb4996a1b6ed1bd0e8cf6c897ac615 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
export type keyframeTypes = 'default' | 'delay' | 'speedChange' | 'loop';

export interface slide {
	frame: number;
	clickThroughBehaviour: 'ImmediatelySkip' | 'PlayOut';
	type: keyframeTypes;
}

export interface delaySlide extends slide {
	delay: number;
}

export interface speedChangeSlide extends slide {
	newFramerate: number;
}

export interface loopSlide extends slide {
	beginFrame: number;
	playbackType: 'PingPong' | 'Normal';
}

export default interface timeline {
	slides: Array<slide | delaySlide | speedChangeSlide | loopSlide>;
	framecount: number;
	framerate: number;
}