declare module "locomotive-scroll" {
  export interface LocomotiveScrollOptions {
    el?: HTMLElement;
    name?: string;
    smooth?: boolean;
    direction?: "vertical" | "horizontal";
    gestureDirection?: "vertical" | "horizontal";
    smartphone?: { smooth: boolean };
    tablet?: { smooth: boolean };
    [key: string]: any;
  }

  export default class LocomotiveScroll {
    constructor(options?: LocomotiveScrollOptions);
    update(): void;
    start(): void;
    stop(): void;
    scrollTo(
      target: HTMLElement | string | number,
      options?: { offset?: number; duration?: number; easing?: [number, number, number, number]; disableLerp?: boolean; callback?: () => void }
    ): void;
    on(event: string, callback: (...args: any[]) => void): void;
    destroy(): void;
  }
}