import { IControl } from "../core/interfaces/icontrol"; import { IFormController } from "../core/interfaces/iformcontroller"; import { IControlConfiguration } from "../core/interfaces/icontrolconfiguration"; import { IControlResources } from "../core/interfaces/icontrolresources"; import { IActionData } from "../core/interfaces/iactiondata"; import { ControlExecutionContext } from "../core/controlexecutioncontext"; import { ControlEventBaseArgs } from "../core/events/controleventbaseargs"; export declare abstract class ControlBase implements IControl { protected formController: IFormController; readonly controlTypeName: string; readonly controlName: string; protected readonly controlConfig: IControlConfiguration; protected readonly controlResources: IControlResources; protected readonly controlSelector: string; protected readonly controlContainerSelector: string; protected readonly controlSelectorCss: string; protected readonly controlContainerSelectorCss: string; protected readonly disabled: boolean; protected readonly readonly: boolean; protected readonly actionDataKey: string; protected readonly controlInstance: string; protected inputControl: boolean; protected contentChanged: boolean; private localElementEventHandlers; private generalActionData; private localActionData; private composedListener; protected constructor(controlTypeName: string, controlName: string, eventHandlers: IActionData[], controlConfig: IControlConfiguration, controlResources: IControlResources); addListener(eventName: string, listener: (eventArg: ControlEventBaseArgs) => void): void; removeListener(eventName: string, listener: (eventArg: ControlEventBaseArgs) => void): void; loadControl(formController: IFormController): void; unloadControl(formController: IFormController): void; showControl(): void; refreshControl(): void; hideControl(): void; setContentChanged(contentChanged: boolean): void; getGeneralActions(): IActionData[]; createExecutionContext(): ControlExecutionContext; protected abstract registerControlEventSourcesInternal(htmlControl: HTMLElement): void; protected abstract unregisterControlEventSourcesInternal(htmlControl: HTMLElement): void; protected createControlExecutionContext(): ControlExecutionContext; protected setElementAccessibility(elementSelector: string, visible: boolean, enabled: boolean): void; protected dispatchEvent(eventArg: ControlEventBaseArgs): void; private registerControlEventSources; private unregisterControlEventSources; prepareAddOnControlEventHandlerDefinitions(): void; private createElementEventHandlerData; private addLocalEventListener; private removeLocalEventListener; }