import { AfterViewInit, EventEmitter, Injector, OnDestroy, OnInit } from '@angular/core';
import { SnapInExtensionInstance } from '@microsoft/windows-admin-center-sdk/core/data/extension-broker/model/extension-instance';
import { ExtensionBrokerService } from '../../service/extension-broker.service';
import { CoreBaseComponent } from '../common/base.component';
import * as i0 from "@angular/core";
export declare class SnapInExtensionComponent extends CoreBaseComponent implements AfterViewInit, OnDestroy, OnInit {
    private extensionBrokerService;
    /**
    * Injected @see Layout parent instance bound to this component.
    */
    private layout;
    placeholder: any;
    extensionId: string;
    input: any;
    output: EventEmitter<any>;
    instance: SnapInExtensionInstance;
    loading: boolean;
    overflowElement: HTMLElement;
    scrollEventHandler: () => void;
    onScroll(): void;
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    constructor(injector: Injector, extensionBrokerService: ExtensionBrokerService);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    /**
     * On layout changed event handler, occurs every time the layout has been changed.
     */
    private onLayoutChanged;
    private processEventOutput;
    private handleFocusEvent;
    static ɵfac: i0.ɵɵFactoryDeclaration<SnapInExtensionComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SnapInExtensionComponent, "sme-snap-in-extension", never, { "extensionId": "extensionId"; "input": "input"; }, { "output": "output"; }, never, never, false, never>;
}
