@lightningjs/renderer
Version:
Lightning 3 Renderer
39 lines (38 loc) • 1.44 kB
TypeScript
import type { CoreNode } from '../CoreNode.js';
import type { StopMethodOptions } from './Playback.js';
import type { TimingFunction } from './utils.js';
export type TransitionTarget = CoreNode | Record<string, number | string>;
export interface TransitionSettings {
duration: number;
delay: number;
easing?: string | TimingFunction;
stopMethod?: StopMethodOptions;
}
export type TransitionProps = TransitionSettings & {
to: number | string;
from?: number | string;
start: number;
end: number;
};
export interface Transition {
to: number;
from: number;
current: number;
startTime: number | null;
endTime: number | null;
progress: number;
duration: number;
delay: number;
easing?: TimingFunction;
update: (animationTime: number) => number;
progressFn: (p: number) => number;
}
export type RunningTransition = Omit<TransitionProps, 'startTime' | 'endTime'> & {
startTime: number;
endTime: number;
};
export type TransitionTypes = TransitionProps | number | string | (TransitionProps | number | string)[];
export declare function easedProgressFn(this: Required<Transition>, p: number): number;
export declare function linearProgressFn(this: Required<Transition>, p: number): number;
export declare function updateTransition(this: Required<Transition>, animationTime: number): number;
export declare function createTransition(props: TransitionProps): Transition;