import '../../common/atomic-modal/atomic-modal';
import { type Result } from '@coveo/headless';
import { type CSSResultGroup, LitElement } from 'lit';
import type { Bindings } from '../atomic-search-interface/interfaces';
import type { InitializableComponent } from '../../../decorators/types';
/**
 * The `atomic-quickview-modal` component is the modal opened when clicking a quickview button.
 * Do not use this component directly; use `atomic-quickview` instead.
 *
 * @slot header - The header slot containing the result title and close button.
 * @slot body - The body slot containing the quickview sidebar and iframe content.
 * @slot footer - The footer slot containing the navigation buttons.
 *
 * @part backdrop - The transparent backdrop hiding the content behind the modal.
 * @part container - The modal's outermost container with the outline and background.
 * @part header-wrapper - The wrapper around the header.
 * @part header - The header at the top of the modal.
 * @part header-ruler - The horizontal ruler underneath the header.
 * @part body-wrapper - The wrapper around the body.
 * @part body - The body of the modal, between the header and the footer.
 * @part footer-wrapper - The wrapper with a shadow or background color around the footer.
 * @part footer - The footer at the bottom of the modal.
 * @part quickview-modal-header-icon - The close icon of the modal.
 * @part quickview-modal-header-title - The title of the modal.
 *
 * @event atomic/quickview/next - Dispatched when the next button is clicked.
 * @event atomic/quickview/previous - Dispatched when the previous button is clicked.
 */
export declare class AtomicQuickviewModal extends LitElement implements InitializableComponent<Bindings> {
    static styles: CSSResultGroup;
    bindings: Bindings;
    error: Error;
    private highlightKeywords;
    private minimizeSidebar;
    private words;
    private iframeRef?;
    private highlightStyleSheets;
    /**
     * The HTML content to display in the quickview modal.
     */
    content?: string;
    /**
     * The result object associated with the quickview.
     */
    result?: Result;
    /**
     * The current position in the result list.
     */
    current?: number;
    /**
     * The total number of results.
     */
    total?: number;
    /**
     * The sandbox attribute for the iframe.
     */
    sandbox?: string;
    /**
     * The callback function to invoke when the modal is closed.
     */
    modalCloseCallback?: () => void;
    private interactiveResult?;
    initialize(): void;
    /**
     * Resets the modal to its initial state.
     */
    reset(): Promise<void>;
    willUpdate(changedProperties: Map<string, unknown>): void;
    private renderHeader;
    private renderBody;
    private renderFooter;
    private onClose;
    private get isOpen();
    private get logger();
    private get quickviewSrc();
    private enableHighlights;
    private enableHighlightsSpecificKeyword;
    private disableHighlights;
    private disableHighlightsSpecificKeyword;
    private removeDisableHighlightStyleSheet;
    private createDisableHighlightStyleSheet;
    private get termsToHighlight();
    private get requestId();
    private get quickviewUniqueIdentifier();
    private handleHighlightsScripts;
    render(): import("lit-html").TemplateResult<1>;
}
declare global {
    interface HTMLElementTagNameMap {
        'atomic-quickview-modal': AtomicQuickviewModal;
    }
}
