import { GlobalFooterClient } from '@govflanders/vl-widget-global-footer-types';
import { GlobalHeaderClient } from '@govflanders/vl-widget-global-header-types';
import { Observable } from 'rxjs';
import { NgxAcmComponentInjectionConfiguration, NgxAcmHeaderComponentConfiguration } from '../types';
import * as i0 from "@angular/core";
/**
 * The `NgxAcmComponentInjectionService` is a service that provides methods to inject either a GlobalHeader or a GlobalFooter by ACM to your application.
 */
export declare class NgxAcmComponentInjectionService {
    /**
     * An instance of the RendererFactory2
     */
    private rendererFactory;
    /**
     * An instance of the Renderer2
     */
    private renderer;
    /**
     * An instance of the NgxWindowService
     */
    private windowService;
    /**
     * Initializes the VO Global Header widget and sets optional applicationMenuLinks.
     *
     * @param selector - The selector of the element where the header widget should be mounted.
     * @param configuration - The configuration object
     * @param configuration.url - The URL of the widget (e.g. 'https://<environment>.widgets.burgerprofiel.vlaanderen.be/')
     * @param configuration.id - The ID of the widget (e.g. '7502b557-5d49-4ab3-9995-168718b81be5')
     * @param configuration.profile - The profile configuration object
     * @param links - Optional application menu links
     *
     * @returns The GlobalHeaderClient object will be returned to allow for custom implementations that are not supported out of the box, see: https://test.widgets.burgerprofiel.dev-vlaanderen.be/docs/global-header/ for more information.
     */
    injectGlobalHeaderComponent({ selector, configuration, links, }: NgxAcmComponentInjectionConfiguration<NgxAcmHeaderComponentConfiguration>): Observable<GlobalHeaderClient>;
    /**
     * Initializes the VO Global Footer widget and sets optional navigation links.
     *
     * @param selector - The selector of the element where the footer widget should be mounted.
     * @param configuration - The configuration object
     * @param configuration.url - The URL of the widget (e.g. 'https://<environment>.widgets.burgerprofiel.vlaanderen.be/')
     * @param configuration.id - The ID of the widget (e.g. '7502b557-5d49-4ab3-9995-168718b81be5')
     * @param links - Optional navigation links
     *
     * @returns The GlobalFooterClient object will be returned to allow for custom implementations that are not supported out of the box, see: https://test.widgets.burgerprofiel.dev-vlaanderen.be/docs/global-footer/ for more information.
     */
    injectGlobalFooterComponent({ selector, configuration, links, }: NgxAcmComponentInjectionConfiguration): Observable<GlobalFooterClient>;
    /**
     * Creates a script tag for the ACMComponent and appends it to the browser
     *
     * @private
     * @param browserDocument - An instance of the browser document
     * @param configuration - The configuration of the ACM component
     * @param selector - The selector of the component
     * @param component - The name of the component we wish to append
     */
    private injectComponent;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgxAcmComponentInjectionService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<NgxAcmComponentInjectionService>;
}
