import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { BottomNavMetadata, BottomNavTab, BottomNavClickEvent } from './types';
import * as i0 from "@angular/core";
/**
* val-bottom-nav
*
* A modern bottom navigation bar component with support for tabs,
* optional central FAB button, badges, and route-based active state detection.
*
* @example Basic usage
* ```html
*
* ```
*
* @example With i18n and translucent theme
* ```html
*
* ```
*/
export declare class BottomNavComponent implements OnInit, OnDestroy {
private router;
private navigation;
private i18n;
private routerSubscription?;
/** Component configuration */
readonly props: import("@angular/core").InputSignal;
/** Event emitted when a tab is clicked */
tabClick: EventEmitter;
/** Event emitted when the FAB button is clicked */
fabClick: EventEmitter;
/** Current active route signal for reactive updates */
private currentRoute;
/** Merged configuration with defaults */
config: import("@angular/core").Signal<{
theme: {
background: string;
activeColor: string | (string & Record);
inactiveColor: string | (string & Record);
borderRadius: string;
elevated: boolean;
translucent: boolean;
floating: boolean;
};
tabs: BottomNavTab[];
fab?: import("./types").BottomNavFab;
i18nNamespace?: string;
hideLabels: boolean;
safeArea: boolean;
animation: "none" | "slide" | "fade" | "scale";
maxWidth: string;
}>;
/** Computed tabs with FAB inserted if present */
displayTabs: import("@angular/core").Signal;
/** Check if a tab is currently active */
isActive(tab: BottomNavTab): boolean;
/** Get the appropriate icon for a tab based on active state */
getIcon(tab: BottomNavTab): string;
/** Get translated label for a tab */
getLabel(tab: BottomNavTab): string;
/** Get CSS variables for theming */
getThemeStyles(): Record;
/** Resolve maxWidth token (sm|md|lg|xl|full) to CSS var or raw value */
resolveMaxWidth(v?: string): string;
ngOnInit(): void;
ngOnDestroy(): void;
/** Handle tab click */
onTabClick(tab: BottomNavTab): void;
/** Handle FAB click */
onFabClick(): void;
/** Resolve Ionic color name to CSS variable */
resolveColor(color?: string): string;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}