import Canvas2D, { Canvas2DConstructor } from './Canvas2D'; export type KeydownCallbackMap = { [key: string]: { callback: (e: KeyboardEvent) => void; options: { preventDefault?: boolean; }; }; }; export interface AnimateCanvas2DConstructor extends Canvas2DConstructor { frameRenderCallback: (tick: number, renderer: Canvas2D) => void; keydownCallbackMap?: KeydownCallbackMap; } export default class AnimateCanvas2D extends Canvas2D { private frameRenderCallback; private runState; tick: number; private defaultKeydownCallbackMap; constructor(opts: AnimateCanvas2DConstructor); step(): void; play(): void; pause(): void; toggle(): void; stepForward(): void; }