import { IUrlShortener } from '../../tools/share/iurlshortener.js';
import GirafeHTMLElement from '../../base/GirafeHTMLElement.js';
import { ShareState } from './sharestate.js';
import IGirafePanel from '../../tools/state/igirafepanel.js';
declare class ShareComponent extends GirafeHTMLElement implements IGirafePanel {
    protected templateUrl: string | null;
    protected styleUrls: string[] | null;
    template: () => import("uhtml").Hole;
    isPanelVisible: boolean;
    panelTitle: string;
    panelTogglePath: string;
    shareLink?: string;
    qrCode?: string;
    success: boolean;
    twitterLogo: string;
    facebookLogo: string;
    linkedInLogo: string;
    mailLogo: string;
    iframeUrl?: string;
    iframeCode?: string;
    awaitingShareLink: boolean;
    awaitingIframeUrl: boolean;
    private simpleMaskManager?;
    private readonly eventsCallbacks;
    private iframeSize;
    get shareState(): ShareState;
    get urlShortener(): IUrlShortener | undefined;
    get iframeWidth(): 400 | 600 | 800;
    get iframeHeight(): 300 | 600 | 450;
    constructor();
    render(): void;
    /**
     * Renders the component by calling the necessary methods.
     * @private
     */
    private renderComponent;
    /**
     * Renders an empty component when it's not visible.
     * @private
     */
    private renderEmptyComponent;
    private clearLink;
    private registerEvents;
    private unregisterEvents;
    generateAndCopyLink(): Promise<void>;
    generateAndCopyIframeCode(): Promise<void>;
    private generateShareLink;
    private generateIframeCode;
    closeWindow(): void;
    shareFacebook(): void;
    shareTwitter(): void;
    shareLinkedIn(): void;
    shareMail(): void;
    private copyToClipboard;
    onSizeChanged(event: Event): void;
    /**
     * Displays a greyed out area in the main map indicating the size of the embedded map.
     */
    private showMapPreview;
    private hideMapPreview;
    private showCopySuccessEffect;
    togglePanel(isVisible: boolean): void;
    protected connectedCallback(): void;
}
export default ShareComponent;
