import type { Container } from '../container'; import type { ContentElement } from './content-element'; import { BaseLayout } from './base-layout'; /** * Embedded layout configuration */ export interface EmbedLayoutConfig { /** Spinner HTML template */ spinner?: string; } /** * Embedded layout * * @event destroy Destroy layout */ export declare class EmbedLayout extends BaseLayout { private spinner; private contentId; private loaderId; private contentElement; private loaderElement; private destroyed; /** * Creating a new layout * * @param config Layout configuration */ constructor(config?: EmbedLayoutConfig); /** * Add current object to container * @param container Container to which the current element is added */ addToDOM(container: Container): void; /** * Show loader */ showLoading(): void; /** * Hide loader */ hideLoading(): void; /** * Hide layout */ hide(): void; /** * Show layout */ show(): void; /** * Show/hide loader * @param show Flag to hide/show loader */ toggleLoading(show: boolean): void; /** * Set content in the layout * @param content Layout content */ setContent(content: ContentElement): void; /** * Remove element from DOM */ destroy: () => void; }