Helpers: { getElementById: ((id: undefined | null | string) => HTMLElement | null); querySelector: ((selector: string,
parent?: ParentNode) => Element | null); querySelectorAll: ((selector: string,
parent?: ParentNode) => Element[]); createElement: ((tag: string,
options?: CreateElementOptions) => HTMLElement); addClass: ((element: undefined | null | Element,
...classNames: string[]) => void); removeClass: ((element: undefined | null | Element,
...classNames: string[]) => void); toggleClass: ((element: undefined | null | Element,
className: string,
force?: boolean) => boolean); hasClass: ((element: undefined | null | Element,
className: string) => boolean); removeElement: ((element: undefined | null | Node) => void); requestFrame: ((callback: FrameRequestCallback) => number); cancelFrame: ((id: number) => void); createAbortController: ((timeout?: number) => AbortController); lazyLoadImage: ((img: HTMLImageElement,
options?: { threshold?: number; }) => void); lazyExecute: ((callback: (() => void),
timeout?: number) => void); clearObject: ((obj: undefined | null | Record<string, unknown>) => void); createFragment: ((children?: HTMLElement[]) => DocumentFragment); addEventListener: ((element: undefined | null | EventTarget,
event: string,
handler: EventListenerOrEventListenerObject,
options?: boolean | AddEventListenerOptions) => (() => void)); addEventListeners: ((element: undefined | null | EventTarget,
events: Record<string, EventListenerOrEventListenerObject>,
options?: boolean | AddEventListenerOptions) => (() => void)); delegateEvent: ((parent: undefined | null | EventTarget,
event: string,
selector: string,
handler: ((this: Element,
e: Event) => void)) => (() => void)); deepClone: (<T>(obj: T,
seen?: WeakMap<object, unknown>) => T); isEmpty: ((value: unknown) => boolean); wait: ((ms: number) => Promise<void>); retryWithBackoff: (<T>(fn: (() => Promise<T>),
maxRetries?: number,
delay?: number) => Promise<T>); } = ...