import { Base } from '@studiometa/js-toolkit'; import type { BaseProps, BaseConfig, ScrollInViewProps } from '@studiometa/js-toolkit'; import { animate } from '@studiometa/js-toolkit/utils'; import type { Keyframe } from '@studiometa/js-toolkit/utils'; export interface AbstractScrollAnimationProps extends BaseProps { $options: { playRange: [number, number] | [number, number, number]; from: Keyframe; to: Keyframe; keyframes: Keyframe[]; easing: [number, number, number, number]; }; } declare const AbstractScrollAnimation_base: import("@studiometa/js-toolkit").BaseDecorator>; /** * AbstractScrollAnimation class. */ export declare class AbstractScrollAnimation extends AbstractScrollAnimation_base { /** * Config. */ static config: BaseConfig; /** * Current animation progress (0 to 1). */ progress: number; /** * Constructor. */ constructor(element: HTMLElement); /** * Get the target element for the animation. */ get target(): HTMLElement; /** * Lazily get animation. */ get animation(): ReturnType; get playRange(): [number, number]; scrolledInView({ dampedProgress }: ScrollInViewProps): void; /** * Render the animation for the given progress. */ render(progress: number): void; } export {};