import {FieldStatus, EventMessage, FieldOptions} from '../common/types'; import {Events, ComponentMountStatus, IDeal} from '../common/enums'; import CbIframe from './cb-iframe'; import IDealComponent from './ideal-component'; export default class IDealField { mountStatus: ComponentMountStatus; status: FieldStatus; fieldType: IDeal.ComponentFieldType; id: string; parent: IDealComponent; cbIframe: CbIframe; container: HTMLElement; options: FieldOptions; focused: boolean; listeners: { focus?: Function; blur?: Function; change?: Function; ready?: Function; }; constructor(fieldType: IDeal.ComponentFieldType, component: IDealComponent, fieldOptions?: FieldOptions); at(domElement: string | HTMLElement): IDealField; update(fieldOptions: FieldOptions): this; isMounted(): boolean; focus(): void; blur(): void; clear(): void; on(eventType: Events, eventCallback: Function): this; mount(domElement?: string | HTMLElement): Promise; setComponentOnChange(callback: Function): void; destroy(): Promise; applyCSSClass(): void; _handleEvent(data: EventMessage): void; }