import ComponentField from './component-field'; import IDealField from './ideal-field'; export interface CbIframeElement extends HTMLIFrameElement { instance?: CbIframe; } export default class CbIframe { name: string; loaded: boolean; ref: HTMLIFrameElement; componentField: ComponentField | IDealField; iframeLoad: Promise; initialize: Promise; initializeSuccess: Function; initializeFailed: Function; protected MASTER_IFRAME_TIMEOUT: number; protected MAX_RETRIES_MASTER_IFRAME: number; constructor(); masterFrame(name: string, srcUrl: string): CbIframe; componentFrame(name: string, srcUrl: string): CbIframe; insertInside( id: string, container: HTMLElement, componentField?: ComponentField | IDealField, styles?: any ): Promise; insert(): Promise; destroy(): Promise; }