import { EventEmitter, Injector, OnInit } from '@angular/core';
import { ToolTipFocusEvent, ToolTipMouseEvent } from '../../../tooltip/tooltip.directive';
import { SmeInternalFormFieldComponent } from '../form-field.component';
import * as i0 from "@angular/core";
/**
 * Accessible Implementation of a readonly form field
 */
export declare class ReadonlyFormFieldComponent extends SmeInternalFormFieldComponent<string> implements OnInit {
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    /**
     * The sme icon class for MDL icons
     */
    smeIconClassName: string;
    /**
     * The sme icon class for URL icons
     */
    urlIcon: string;
    /**
     * Indicates that the copy action should be shown
     */
    showCopyAction: boolean;
    /**
     * The text for the copy action
     */
    fieldCopyText: string;
    /**
     * Indicates that the field action should be shown
     */
    showFieldAction: boolean;
    /**
     * The text for the field action
     */
    fieldActionText: string;
    /**
     * The icon class for the field action
     */
    fieldActionIconClass: string;
    /**
     * The output for when the field action is activated
     */
    fieldAction: EventEmitter<string>;
    /**
     * Timer to guarantee mouse leave time to reset context from copied to default.
     */
    protected readonly copiedTextToDefaultTimer = 2000;
    /**
     * The object to hold the setTimeout object for clearing timeout.
     */
    protected copiedTextToDefaultTimeoutObject: any;
    /**
     * The lock for dealing with clicking events that causes focus lost of the button.
     */
    protected focusEventLock: boolean;
    /**
     * The back-up parameter for the copy text;
     */
    private fieldCopyTextBackUp;
    /**
     * Initializes a new instance of the ToggleSwitchFormFieldComponent
     */
    constructor(injector: Injector);
    ngOnInit(): void;
    /**
     * Executes the field action
     */
    onFieldAction(): void;
    /**
     * On click function for copy to clipboard.
     */
    copyToClipboardInternal($event: any): void;
    /**
     * It handles the event from the tooltip about focus in/out of bound.
     * Adding debounce to only process the last signal within debounce timer.
     *
     * @param $event The tool tip focus in/out event.
     */
    onToolTipFocusEventTriggered($event: ToolTipFocusEvent): void;
    /**
     * It handles the event from the tooltip about mouse enter/leave event.
     * Adding debounce to only process the last signal within debounce timer.
     *
     * @param $event The tool tip mouse enter/leave event.
     */
    onToolTipMouseEventTriggered($event: ToolTipMouseEvent): void;
    /**
     * It updates the default copy text. Can be useful when the tooltip text will change from external.
     * @param input the string for the copy text
     */
    setFieldCopyTextBackUp(input: string): void;
    /**
     * Creates the idBag used by this component to store unique element ids.
     * id values will be assigned be the @see BaseComponent super class.
     */
    protected createIdBag(): MsftSme.StringMap<string>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ReadonlyFormFieldComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ReadonlyFormFieldComponent, "sme-form-field[type=\"readonly\"]", never, { "smeIconClassName": "smeIconClassName"; "urlIcon": "urlIcon"; "showCopyAction": "showCopyAction"; "fieldCopyText": "fieldCopyText"; "showFieldAction": "showFieldAction"; "fieldActionText": "fieldActionText"; "fieldActionIconClass": "fieldActionIconClass"; }, { "fieldAction": "fieldAction"; }, never, never, false, never>;
}
