import { Naja, Options, Payload } from '../Naja'; import { TypedEventListener } from '../utils'; export declare class UIHandler extends EventTarget { private readonly naja; selector: string; allowedOrigins: (string | URL)[]; private handler; constructor(naja: Naja); private initialize; bindUI(element: Element): void; private handleUI; clickElement(element: HTMLElement, options?: Options, event?: MouseEvent): Promise; submitForm(formOrSubmitter: HTMLFormElement | HTMLElement, options?: Options, event?: Event): Promise; processInteraction(element: HTMLElement, method: string, url: string | URL, data?: any | null, options?: Options, event?: Event): Promise; isUrlAllowed(url: string): boolean; addEventListener: (type: K, listener: TypedEventListener, options?: boolean | AddEventListenerOptions) => void; removeEventListener: (type: K, listener: TypedEventListener, options?: boolean | AddEventListenerOptions) => void; } export type InteractionEvent = CustomEvent<{ element: Element; originalEvent?: Event; options: Options; }>; interface UIHandlerEventMap { interaction: InteractionEvent; } export {};