import { Clipboard } from '@angular/cdk/clipboard';
import { ComponentFactoryResolver, ComponentRef, ElementRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
import { I18nInterface, I18nService } from 'ng-devui/i18n';
import { OverlayContainerRef } from 'ng-devui/overlay-container';
import { PopoverComponent } from 'ng-devui/popover';
import { PositionType } from 'ng-devui/tooltip';
import { Subscription } from 'rxjs';
import * as i0 from "@angular/core";
export declare class ClipboardDirective implements OnInit, OnDestroy {
    private elm;
    private clipboard;
    private i18n;
    private overlayContainerRef;
    private componentFactoryResolver;
    private doc;
    devuiTargetElm: HTMLInputElement | HTMLTextAreaElement | undefined | '';
    container: HTMLElement;
    content: string | undefined;
    position: PositionType;
    sticky: boolean;
    tipContent: string | HTMLElement | TemplateRef<any>;
    copyResultEvent: EventEmitter<any>;
    popoverComponentRef: ComponentRef<PopoverComponent>;
    i18nCommonText: I18nInterface['common'];
    i18nSubscription: Subscription;
    document: Document;
    constructor(elm: ElementRef, clipboard: Clipboard, i18n: I18nService, overlayContainerRef: OverlayContainerRef, componentFactoryResolver: ComponentFactoryResolver, doc: any);
    ngOnInit(): void;
    setI18nText(): void;
    onClickEvent(): void;
    createPopover(): void;
    destroy(): void;
    onDocumentClick: (event: any) => void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ClipboardDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<ClipboardDirective, "[dClipboard]", never, { "devuiTargetElm": { "alias": "dClipboard"; "required": false; }; "container": { "alias": "container"; "required": false; }; "content": { "alias": "content"; "required": false; }; "position": { "alias": "position"; "required": false; }; "sticky": { "alias": "sticky"; "required": false; }; "tipContent": { "alias": "tipContent"; "required": false; }; }, { "copyResultEvent": "copyResultEvent"; }, never, never, false, never>;
}
