import { OnDestroy, OnInit } from '@angular/core';
import { Router, ActivatedRoute } from '@angular/router';
import { BreadcrumbLink } from '../../models/breadcrumb.model';
import * as i0 from "@angular/core";
export declare class BreadcrumbComponent implements OnInit, OnDestroy {
    private router;
    private activatedRoute;
    /** Lista de breadcrumbs gerados */
    links: BreadcrumbLink[];
    /** Limite de caracteres para truncamento */
    readonly maxLength = 25;
    /** Inscrição para monitorar mudanças na rota */
    private routeSubscription?;
    constructor(router: Router, activatedRoute: ActivatedRoute);
    /** Inicializa o componente e observa mudanças de rota */
    ngOnInit(): void;
    /** Atualiza os breadcrumbs com base na rota ativa */
    private updateBreadcrumbs;
    /**
     * Constrói os breadcrumbs recursivamente com base nas rotas ativadas.
     * @param route Rota ativa.
     * @param breadcrumbs Lista de breadcrumbs acumulada.
     * @returns Lista de BreadcrumbLink atualizada.
     */
    private buildBreadcrumbs;
    /**
     * Verifica se o texto deve ser truncado
     * @param text Texto para verificar
     * @returns true se o texto deve ser truncado
     */
    shouldTruncate(text: string): boolean;
    /**
     * Trunca o texto para o tamanho máximo definido
     * @param text Texto para truncar
     * @returns Texto truncado
     */
    truncateText(text: string): string;
    /**
     * Obtém o texto original para exibição no tooltip
     * @param link Item do breadcrumb
     * @returns Texto original ou undefined se não houver tooltip
     */
    getOriginalText(link: BreadcrumbLink): string | undefined;
    /**
     * Obtém o segmento da URL da rota atual.
     * @param route Rota atual.
     * @returns Segmento da URL ou string vazia.
     */
    private getRouteURL;
    /**
     * Constrói o caminho completo concatenando segmentos anteriores.
     * @param routeSegment Segmento atual da rota.
     * @param breadcrumbs Lista de breadcrumbs acumulada.
     * @returns Caminho completo da URL.
     */
    private buildFullPath;
    /**
     * Obtém o rótulo do breadcrumb a partir dos dados da rota.
     * @param data Dados da rota.
     * @returns Rótulo do breadcrumb ou null.
     */
    private getBreadcrumbLabel;
    /**
     * Remove a URL do último breadcrumb para evitar que seja clicável.
     * @param breadcrumbs Lista de breadcrumbs.
     */
    private removeLastBreadcrumbUrl;
    /**
     * Verifica se um breadcrumb já existe na lista para evitar duplicatas.
     * @param breadcrumbs Lista de breadcrumbs acumulada.
     * @param label Nome do breadcrumb a verificar.
     * @returns Verdadeiro se o breadcrumb já existir, falso caso contrário.
     */
    private isDuplicateBreadcrumb;
    /** Cancela a inscrição ao destruir o componente */
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbComponent, "cfc-breadcrumb", never, {}, {}, never, never, false, never>;
}
