/**
 * @param {T} event
 * @template T
 */
export function makeEventTemplate<T>(event: T): Partial<Record<keyof T, any>>;
/**
 * Creates some inertia, mainly for zooming with a mechanical mouse wheel
 */
export default class Inertia {
    /**
     * @param {import("./animator.js").default} animator
     * @param {boolean} [disabled] Just call the callback directly
     */
    constructor(animator: import("./animator.js").default, disabled?: boolean);
    animator: import("./animator.js").default;
    disabled: boolean;
    maxDistance: number;
    /** @type {function(number):void} */
    callback: (arg0: number) => void;
    targetValue: number;
    lastValue: number;
    smoother: ((target: {
        x: number;
    }) => void) & {
        stop: () => void;
    };
    cancel(): void;
    /**
     *
     * @param {number} value
     * @param {function(number):void} callback
     */
    setMomentum(value: number, callback: (arg0: number) => void): void;
}
//# sourceMappingURL=inertia.d.ts.map