import { ElementRef } from '@angular/core';
import { LayoutComponentMetadata } from '@anglr/dynamic/layout';
import { LayoutEditorMetadataExtractor } from '../../services';
import * as i0 from "@angular/core";
/**
 * Copies designer styles that should be applied to element
 */
export declare class CopyDesignerStylesSADirective<TOptions = any> {
    protected _element: ElementRef<HTMLElement>;
    protected _metadataExtractor: LayoutEditorMetadataExtractor;
    /**
     * Designed component metadata
     */
    _metadata: LayoutComponentMetadata<TOptions> | undefined | null;
    /**
     * Designed component metadata
     */
    get metadata(): LayoutComponentMetadata<TOptions> | undefined | null;
    set metadata(value: LayoutComponentMetadata<TOptions> | undefined | null);
    constructor(_element: ElementRef<HTMLElement>, _metadataExtractor: LayoutEditorMetadataExtractor);
    /**
     * Copies designer styles if necessary
     */
    protected _copyDesignerStyles(): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<CopyDesignerStylesSADirective<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<CopyDesignerStylesSADirective<any>, "[copyDesignerStyles]", ["copyDesignerStyles"], { "metadata": { "alias": "copyDesignerStyles"; "required": false; }; }, {}, never, never, true, never>;
}
//# sourceMappingURL=copyDesignerStyles.directive.d.ts.map