declare class JQueryLike { private elements; constructor(selector?: string | Element | Element[] | JQueryLike); private chainable; find(selector: string): JQueryLike; filter(selector: string | ((index: number, element: Element) => boolean)): JQueryLike; first(): JQueryLike; last(): JQueryLike; eq(index: number): JQueryLike; html(content?: string): string | JQueryLike; text(content?: string): string | JQueryLike; val(value?: string | number): string | JQueryLike; attr(name: string, value?: string): string | JQueryLike; removeAttr(name: string): JQueryLike; data(key: string, value?: any): any | JQueryLike; addClass(className: string): JQueryLike; removeClass(className?: string): JQueryLike; toggleClass(className: string): JQueryLike; hasClass(className: string): boolean; css(property: string | Record, value?: string | number): string | JQueryLike; show(): JQueryLike; hide(): JQueryLike; toggle(): JQueryLike; on(event: string, handler: (event: Event) => void): JQueryLike; on(event: string, selector: string, handler: (event: Event) => void): JQueryLike; off(event: string, handler?: (event: Event) => void): JQueryLike; click(handler?: (event: Event) => void): JQueryLike; append(content: string | Element | JQueryLike): JQueryLike; prepend(content: string | Element | JQueryLike): JQueryLike; remove(): JQueryLike; empty(): JQueryLike; each(callback: (index: number, element: Element) => void | false): JQueryLike; length(): number; get(index?: number): Element | Element[]; static ajax(options: { url: string; method?: string; data?: any; success?: (data: any) => void; error?: (error: Error) => void; }): Promise; static ready(callback: () => void): void; } declare function $(selector?: string | Element | Element[] | JQueryLike | (() => void)): JQueryLike; declare namespace $ { var ajax: typeof JQueryLike.ajax; var ready: typeof JQueryLike.ready; } export { $, JQueryLike };