UNPKG

modern-canvas

Version:

A JavaScript WebGL rendering engine. only the ESM.

32 lines (31 loc) 1.35 kB
import type { NodeEvents, NodeProperties } from './Node'; import { Node } from './Node'; export interface TimelineEvents extends NodeEvents { updateCurrentTime: [current: number, delta: number]; } export interface Timeline { on: <K extends keyof TimelineEvents & string>(event: K, listener: (...args: TimelineEvents[K]) => void) => this; once: <K extends keyof TimelineEvents & string>(event: K, listener: (...args: TimelineEvents[K]) => void) => this; off: <K extends keyof TimelineEvents & string>(event: K, listener: (...args: TimelineEvents[K]) => void) => this; emit: <K extends keyof TimelineEvents & string>(event: K, ...args: TimelineEvents[K]) => this; } export interface TimelineProperties extends NodeProperties { startTime: number; currentTime: number; endTime: number; loop: boolean; paused: boolean; } export declare class Timeline extends Node { startTime: number; currentTime: number; endTime: number; loop: boolean; paused: boolean; static from(range: number | number[], loop?: boolean): Timeline; constructor(properties?: Partial<TimelineProperties>); setProperties(properties?: Record<string, any>): this; protected _updateProperty(key: string, value: any, oldValue: any): void; addTime(delta: number): this; protected _process(delta: number): void; }