import { Form } from './form'; import { ButtonOptions } from './interfaces'; import { ButtonEvents } from './constants'; export declare class Button { options: ButtonOptions; containerElement: HTMLElement | null; buttonElement: HTMLElement | null; private _id; private _parent; private _form; private _isMounted; private _isVisible; private _type; private _parsedConditions; constructor(parent: HTMLElement, form: Form, options: ButtonOptions); initializeOptions(options: ButtonOptions): void; initialize(): Promise; private parseStringConditions; getId(): string; getContainer(): HTMLElement | null; getType(): string; getButtonType(): string; getVisibility(): boolean; createContainerElement(): void; createButtonElement(): void; onGui(): void; private mount; private unmount; destroy(): void; handleVisibility(): void; onClick(event: MouseEvent): void; reset(): Promise; update(): Promise; private updateVisibilityBasedOnConditions; dispatchEvent(event: ButtonEvents, data?: boolean | null | MouseEvent): void; on(event: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions): void; off(event: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions): void; }