import * as _angular_core from '@angular/core'; import { AfterViewInit, ElementRef, OnInit, AfterContentInit, AfterContentChecked, OnChanges, OnDestroy, WritableSignal, Signal, TemplateRef, QueryList, SimpleChanges, PipeTransform } from '@angular/core'; import * as i5 from '@angular/router'; import { RouterLinkActive } from '@angular/router'; import * as i3 from 'ngx-tethys/popover'; import { ThyPopoverConfig } from 'ngx-tethys/popover'; import { Observable } from 'rxjs'; import { ThyNavLocale } from 'ngx-tethys/i18n'; import * as i1 from '@angular/common'; import * as i2 from 'ngx-tethys/icon'; import * as i4 from 'ngx-tethys/dropdown'; /** * @private */ declare class ThyIconNavLink { readonly thyIconNavLinkIcon: _angular_core.InputSignal; readonly thyIconNavLinkActive: _angular_core.InputSignalWithTransform; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } type IconNavTypes = 'primary' | 'secondary' | 'individual' | ''; /** * @private */ declare class ThyIconNav { private hostRenderer; isIconNav: boolean; readonly thyType: _angular_core.InputSignal; private updateClasses; constructor(); static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } type ThyNavLink = '' | 'active'; /** * 导航项 * @name thyNavItem * @order 20 */ declare class ThyNavItemDirective implements AfterViewInit { elementRef: ElementRef; private routerLinkActive; private ngZone; /** * 唯一标识 */ id: _angular_core.InputSignal; /** * 是否激活状态 * @default false */ readonly thyNavItemActive: _angular_core.InputSignalWithTransform; /** * 已经废弃,请使用 thyNavItemActive * @deprecated please use thyNavItemActive * @default false */ readonly thyNavLinkActive: _angular_core.InputSignalWithTransform; /** * 是否禁用 * @default false */ readonly thyNavItemDisabled: _angular_core.InputSignalWithTransform; /** * @private */ readonly links: _angular_core.Signal; /** * @private */ readonly routers: _angular_core.Signal; offset: { width: number; height: number; left: number; top: number; }; content: HTMLElement; isActive: boolean; private hostRenderer; private readonly destroyRef; ngAfterViewInit(): void; setOffset(): void; linkIsActive(): boolean; setNavLinkHidden(value: boolean): void; addClass(className: string): void; removeClass(className: string): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵdir: _angular_core.ɵɵDirectiveDeclaration; } /** * @internal */ declare class ThyNavInkBarDirective { private elementRef; private ngZone; animationMode?: "NoopAnimations" | "BrowserAnimations" | null | undefined; readonly isVertical: _angular_core.InputSignalWithTransform; readonly showInkBar: _angular_core.InputSignalWithTransform; readonly animated: _angular_core.Signal; alignToElement(element: HTMLElement): void; private setStyles; private getLeftPosition; private getElementWidth; private getTopPosition; private getElementHeight; private show; hide(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵdir: _angular_core.ɵɵDirectiveDeclaration; } type ThyNavType = 'pulled' | 'tabs' | 'pills' | 'lite' | 'card' | 'primary' | 'secondary' | 'thirdly' | 'secondary-divider'; type ThyNavSize = 'lg' | 'md' | 'sm'; type ThyNavHorizontal = '' | 'start' | 'center' | 'end'; /** * 导航组件 * @name thy-nav * @order 10 */ declare class ThyNav implements OnInit, AfterViewInit, AfterContentInit, AfterContentChecked, OnChanges, OnDestroy { private elementRef; private ngZone; private changeDetectorRef; private popover; private readonly destroyRef; initialized: boolean; wrapperOffset: { height: number; width: number; left: number; top: number; }; hiddenItems: ThyNavItemDirective[]; moreActive?: boolean; readonly showMore: WritableSignal; private moreBtnOffset; private hostRenderer; private innerLinks; locale: Signal; /** * 导航类型 * @type pulled | tabs | pills | lite | primary | secondary | thirdly | secondary-divider * @default pulled */ readonly thyType: _angular_core.InputSignal; /** * 导航大小 * @type lg | md | sm * @default md */ readonly thySize: _angular_core.InputSignal; /** * 水平排列 * @type '' | 'start' | 'center' | 'end' * @default false */ readonly thyHorizontal: _angular_core.InputSignal; /** * 是否垂直排列 * @default false */ readonly thyVertical: _angular_core.InputSignalWithTransform; /** * 是否是填充模式 */ readonly thyFill: _angular_core.InputSignalWithTransform; /** * 是否响应式,自动计算宽度存放 thyNavItem,并添加更多弹框 * @default false */ readonly thyResponsive: _angular_core.InputSignalWithTransform; /** * 支持暂停自适应计算 */ thyPauseReCalculate: _angular_core.InputSignal; /** * 更多操作的菜单点击内部是否可关闭 * @deprecated please use thyPopoverOptions */ readonly thyInsideClosable: _angular_core.InputSignalWithTransform; /** * 更多菜单弹出框的参数,底层使用 Popover 组件 * @type ThyPopoverConfig */ thyPopoverOptions: _angular_core.InputSignal | null>; /** * 右侧额外区域模板 * @type TemplateRef */ readonly thyExtra: _angular_core.InputSignal | undefined>; /** * @private */ set links(value: QueryList); get links(): QueryList; /** * @private */ readonly routers: Signal; /** * 响应式模式下更多操作模板 * @type TemplateRef */ readonly moreOperation: Signal | undefined>; /** * 响应式模式下更多弹框模板 * @type TemplateRef */ readonly morePopover: Signal | undefined>; /** * 右侧额外区域模板,支持 thyExtra 传参和 模板 * @name extra * @type TemplateRef */ readonly extra: Signal | undefined>; readonly defaultMoreOperation: Signal | undefined>; readonly inkBar: Signal; readonly horizontal: Signal; get showInkBar(): boolean; private updateClasses; private curActiveIndex?; private prevActiveIndex; private navSubscription; readonly type: Signal; constructor(); ngOnInit(): void; ngAfterViewInit(): void; ngAfterContentInit(): void; ngAfterContentChecked(): void; private setMoreBtnOffset; private setNavItemDivider; createResizeObserver(element: HTMLElement): Observable; private calculateMoreIsActive; private setHiddenItems; private getShowItemsEndIndexWhenHorizontal; private getShowItemsEndIndexWhenVertical; private resetSizes; openMoreMenu(event: Event, template: TemplateRef): void; navItemClick(item: ThyNavItemDirective): void; private alignInkBarToSelectedTab; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * @private */ declare class BypassSecurityTrustHtmlPipe implements PipeTransform { private sanitizer; transform(format: string): any; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵpipe: _angular_core.ɵɵPipeDeclaration; } declare class ThyNavModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { BypassSecurityTrustHtmlPipe, ThyIconNav, ThyIconNavLink, ThyNav, ThyNavItemDirective, ThyNavModule }; export type { ThyNavHorizontal, ThyNavLink, ThyNavSize, ThyNavType };