import { AfterViewInit, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { DsfrSeverity, DsfrSeverityConst } from '@edugouvfr/ngx-dsfr';
import { DsfrToast } from '../toast.model';
import * as i0 from "@angular/core";
export declare const DEFAULT_DURATION: number;
export declare class ToastItemComponent implements DsfrToast, OnInit, AfterViewInit, OnDestroy {
    /** Identifiant de la notification. */
    toastId: string | undefined;
    /** Titre de la notification. */
    heading: string | undefined;
    /** Contenu de la notification. */
    content: string | undefined;
    /** Sévérité de la notification (info par défaut). */
    severity: DsfrSeverity;
    /** La durée en ms avant qu'une notification soit fermée. */
    duration: number;
    /**
     * Notifie la fermeture d'une notification (que la fermeture soit automatique ou manuelle).
     */
    itemClose: EventEmitter<string>;
    protected headingTemplate: string;
    protected contentTemplate: string;
    protected readonly severityConst: typeof DsfrSeverityConst;
    private i18n;
    /** Id du timer */
    private timeoutId;
    constructor();
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    /**
     * Fermeture du toast (suppression)
     * Informe les observateurs de la fermeture du toast.
     */
    protected onClose(): void;
    protected onMouseOut(): void;
    protected onMouseOver(): void;
    protected onTouchEnd(): void;
    protected onTouchStart(): void;
    protected isError(): boolean;
    private startTimeout;
    private stopTimeout;
    static ɵfac: i0.ɵɵFactoryDeclaration<ToastItemComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ToastItemComponent, "edu-toast-item", never, { "toastId": { "alias": "toastId"; "required": false; }; "heading": { "alias": "heading"; "required": false; }; "content": { "alias": "content"; "required": false; }; "severity": { "alias": "severity"; "required": false; }; "duration": { "alias": "duration"; "required": false; }; }, { "itemClose": "itemClose"; }, never, never, true, never>;
}
