import { EventEmitter } from '@angular/core';
import { NavigationExtras } from '@angular/router';
import { DsfrLinkTarget, I18nService } from '../../shared';
import { DsfrFinality } from './consent-banner.model';
import * as i0 from "@angular/core";
export declare class DsfrConsentBannerComponent {
    i18n: I18nService;
    /**
     * URL de présentation des données personnelles. Utilisé si welcome n'est pas renseigné
     * RGPD : Règlement Général sur la Protection des Données
     */
    rgpdLink: string;
    /** @since 1.7 Target du lien. Target par défaut de l'application si la propriété est non renseignée. */
    rgpdLinkTarget?: DsfrLinkTarget | undefined;
    /** @since 1.7 Path interne. Exclusif avec link et routerLink */
    rgpdRoute?: string;
    /** @since 1.7 Path angular géré en tant que directive routerLink. Exclusif avec link et route. */
    rgpdRouterLink?: string | string[];
    /** @since 1.7 RouterLink : classe utilisée pour la directive routerLink active. */
    rgpdRouterLinkActive?: string | string[];
    /** @since 1.7 RouterLink : valeurs additionnelles de navigation pour le routerLink (queryParams, state etc.) */
    rgpdRouterLinkExtras?: NavigationExtras;
    /** Titre de la bannière */
    heading: string;
    /**
     * Modèle de présentation des finalités.
     */
    finalities: DsfrFinality[];
    /** Sélection bouton Tout accepter*/
    acceptAllSelect: EventEmitter<void>;
    /** Sélection bouton Tout refuser */
    refuseAllSelect: EventEmitter<void>;
    /** Sélection bouton Personnaliser */
    customizeSelect: EventEmitter<void>;
    /** Validation de la personnalisation */
    confirmCustomizeSelect: EventEmitter<DsfrFinality[]>;
    /** Sélection de Accepter ou Refuser pour une finalité */
    finalityChange: EventEmitter<DsfrFinality>;
    /** @since 1.7 Signale quand la route rgdp est sélectionnée. */
    rgpdRouteSelect: EventEmitter<string>;
    /** Description de bienvenue. Utilisation du texte par défaut si non renseigné */
    welcome: string;
    /** @internal */ modalId: string;
    /** @internal */
    constructor(i18n: I18nService);
    /** @deprecated (@since 1.7) utiliser `rgdpLink` à la place. */
    get rgpdUrl(): string;
    /** @deprecated (@since 1.7) utiliser 'heading' à la place. */
    get title(): string;
    /** @deprecated (@since 1.7) utiliser `rgdpLink` à la place. */
    set rgpdUrl(value: string);
    /** @deprecated (@since 1.7) utiliser `heading` à la place. */
    set title(value: string);
    /**
     * Accepter tout
     * @internal
     */
    onAcceptAll(): void;
    /**
     * Refuser tout
     * @internal
     */
    onRefuseAll(): void;
    /**
     * Changement de sélection accept/refuse d'une finalité ou sous-finalité.
     * @internal
     */
    onFinalityChange(finality: DsfrFinality): void;
    /**
     * Ouverture du panneau de personnalisation des finalités.
     * @internal
     */
    onCustomizeSelect(): void;
    /**
     * Confirmation de la personnalisation des finalités.
     * @param finalities liste des finalités
     * @internal
     */
    onConfirmCustomize(finalities: DsfrFinality[]): void;
    /** @since 1.7 Emet un événement lors de la sélection du lien RGPD si l'accès aux RGPD est fait via la propriété 'route'. */
    /** @internal */
    onRgpdSelect(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DsfrConsentBannerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DsfrConsentBannerComponent, "dsfr-consent-banner", never, { "rgpdLink": { "alias": "rgpdLink"; "required": false; }; "rgpdLinkTarget": { "alias": "rgpdLinkTarget"; "required": false; }; "rgpdRoute": { "alias": "rgpdRoute"; "required": false; }; "rgpdRouterLink": { "alias": "rgpdRouterLink"; "required": false; }; "rgpdRouterLinkActive": { "alias": "rgpdRouterLinkActive"; "required": false; }; "rgpdRouterLinkExtras": { "alias": "rgpdRouterLinkExtras"; "required": false; }; "heading": { "alias": "heading"; "required": false; }; "finalities": { "alias": "finalities"; "required": false; }; "welcome": { "alias": "welcome"; "required": false; }; "rgpdUrl": { "alias": "rgpdUrl"; "required": false; }; "title": { "alias": "title"; "required": false; }; }, { "acceptAllSelect": "acceptAllSelect"; "refuseAllSelect": "refuseAllSelect"; "customizeSelect": "customizeSelect"; "confirmCustomizeSelect": "confirmCustomizeSelect"; "finalityChange": "finalityChange"; "rgpdRouteSelect": "rgpdRouteSelect"; }, never, never, false, never>;
}
