import { OnInit } from '@angular/core';
import { Router } from '@angular/router';
import * as i0 from "@angular/core";
export declare class Params {
    paramName: string;
    paramValue: string;
}
export declare class NavItem {
    caminho: string;
    label: string;
    params?: Params[];
    isTargetSelf?: boolean;
}
/**
 * @description Componente que exibe opções de navegação entre produtos.
 * O usuário precisa apenas informar quais são as opções de navegação e o componente se encarrega de exibir.
 *
 * @param isProduction Indica se o ambiente é de produção ou não. Dentro dos projetos, deve ser buscado do arquivo 'environment'.
 * @param hostname Hostname do ambiente atual ou de produção (depende do que foi informado na isProduction).
 * @param navItems Lista de itens de navegação que serão exibidos. Cada NavItem tem a seguinte estrutura:
 * ```typescript
 * export class NavItem {
 *    caminho: string = '';
 *    label: string = '';
 *    params?: Params[];
 *    isTargetSelf?: boolean;
 * }
 * ```
 *
 * @example ```html
 * <!-- Recomenda-se utilizar desta forma direta no HTML apenas se não houverem paramêtros da URL com a propriedade params. Caso contrário utilize uma variável do .ts -->
 * <lib-navigation [navItems]="[
 *    {caminho: '/SisproErpCloud/Corporativo/empresas/editar/' + this.infraEmpresaID , label: 'Empresa' },
 *    {caminho: '/SisproErpCloud/Contabilidade/perfilDaEmpresa', params: [ {paramName :'InfraEmpresaId', paramValue : infraEmpresaID} ] , label: 'Contábil'  },
 *    {caminho: '/SisproErpCloud/Corporativo/home' , label: 'Estoque'  },
 * ]"/>
 * ```
 *
 * Para criar a variável via .ts declare-a assim:
 * ```typescript
 * public navItems: NavItems[] = [];  // Pode popular a lista na própria declaração ou utilizar um método que faz isso
 * ```
 *
 * E utilize-a assim:
 * ```html
 * <lib-navigation [navItems]="navItems"/>
 * ```
 */
export declare class LibNavProdutosComponent implements OnInit {
    private router;
    /** Lista de itens de navegação que serão exibidos */
    navItems: NavItem[];
    /** Indica se o ambiente é de produção ou não. Dentro dos projetos, deve ser buscado do arquivo 'environment'. */
    isProduction: boolean;
    /** Hostname do ambiente atual ou de produção (depende do que foi informado na isProduction). */
    hostname: string;
    activeItem: string;
    constructor(router: Router);
    ngOnInit(): void;
    onNavigate(item: NavItem): void;
    normalizeParams(params: Params[] | undefined): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<LibNavProdutosComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<LibNavProdutosComponent, "lib-navigation", never, { "navItems": { "alias": "navItems"; "required": false; }; "isProduction": { "alias": "isProduction"; "required": false; }; "hostname": { "alias": "hostname"; "required": false; }; }, {}, never, never, true, never>;
}
