import { ElementRef } from '@angular/core';
import { MatDialog } from '@angular/material/dialog';
import { SafeHtml } from '@angular/platform-browser';
import { TranslateService } from '@ngx-translate/core';
import { AttachmentsData, EmailMetadata } from '../../models/viewer.interfaces';
import { AbstractViewerComponent } from '../abstract/abstract.viewer.component';
import * as i0 from "@angular/core";
export declare class MailComponent extends AbstractViewerComponent<EmailMetadata> {
    #private;
    readonly dialog: MatDialog;
    readonly translate: TranslateService;
    messageIframe: import("@angular/core").Signal<ElementRef<HTMLIFrameElement>>;
    mailHeader: import("@angular/core").Signal<ElementRef<HTMLDivElement>>;
    showHeaderDetails: import("@angular/core").WritableSignal<boolean>;
    hasAttachments: import("@angular/core").WritableSignal<boolean>;
    showAttachments: import("@angular/core").WritableSignal<boolean>;
    attachment: import("@angular/core").WritableSignal<any>;
    selectedAttachment: import("@angular/core").ModelSignal<{
        label: string;
        index: number;
    } | undefined>;
    icons: import("@angular/core").WritableSignal<{
        arrowDown: import("@angular/core").WritableSignal<SafeHtml>;
        attachmentIcon: import("@angular/core").WritableSignal<SafeHtml>;
    }>;
    emailDetails: import("@angular/core").Signal<{
        message: string;
        subject: string;
        from: string;
        to: string[];
        cc?: string[] | undefined;
        bcc?: string[] | undefined;
        sent: Date;
    } | undefined>;
    error: import("@angular/core").Signal<string>;
    isLoading: import("@angular/core").Signal<boolean>;
    headerDetails: import("@angular/core").Signal<{
        from: string | undefined;
        to: string[] | undefined;
        cc: string[] | undefined;
        bcc: string[] | undefined;
    }>;
    attachments: import("@angular/core").WritableSignal<AttachmentsData[]>;
    constructor();
    overlayClose(): void;
    openHeaderDetails(elRef: HTMLDivElement, config?: any): void;
    openAttachmentsList(elRef: HTMLDivElement, config?: any): void;
    openAttachment(attachment: string, index: number): void;
    startCloseTimeout(): void;
    cancelCloseTimeout(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<MailComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MailComponent, "yuv-mail", never, { "selectedAttachment": { "alias": "selectedAttachment"; "required": false; "isSignal": true; }; }, { "selectedAttachment": "selectedAttachmentChange"; }, never, never, true, never>;
}
