import { QueryList, TemplateRef, AfterContentChecked, EventEmitter } from '@angular/core'; import { FishTabsetConfig } from './tabset-config'; /** * This directive should be used to wrap tab titles that need to contain HTML markup or other directives. */ export declare class FishTabTitle { templateRef: TemplateRef; constructor(templateRef: TemplateRef); } /** * This directive must be used to wrap content to be displayed in a tab. */ export declare class FishTabContent { templateRef: TemplateRef; constructor(templateRef: TemplateRef); } /** * A directive representing an individual tab. */ export declare class FishTab { /** * Unique tab identifier. Must be unique for the entire document for proper accessibility support. */ id: string; /** * Simple (string only) title. Use the "FishTabTitle" directive for more complex use-cases. */ title: string; /** * Allows toggling disabled state of a given state. Disabled tabs can't be selected. */ disabled: boolean; contentTpl: FishTabContent; titleTpl: FishTabTitle; } /** * The payload of the change event fired right before the tab change */ export interface FishTabChangeEvent { /** * Id of the currently active tab */ activeId: string; /** * Id of the newly selected tab */ nextId: string; /** * Function that will prevent tab switch if called */ preventDefault: () => void; } /** * A component that makes it easy to create tabbed interface. */ export declare class FishTabset implements AfterContentChecked { tabs: QueryList; /** * An identifier of an initially selected (active) tab. Use the "select" method to switch a tab programmatically. */ activeId: string; /** * Whether the closed tabs should be hidden without destroying them */ destroyOnHide: boolean; /** * The horizontal alignment of the nav with flexbox utilities. Can be one of 'start', 'center' or 'end' */ justify: 'start' | 'center' | 'end'; /** * Type of navigation to be used for tabs. Can be one of 'tabs' or 'pills'. */ type: 'tabs' | 'pills'; /** * A tab change event fired right before the tab selection happens. See FishTabChangeEvent for payload details */ tabChange: EventEmitter; constructor(config: FishTabsetConfig); /** * Selects the tab with the given id and shows its associated pane. * Any other tab that was previously selected becomes unselected and its associated pane is hidden. */ select(tabId: string): void; ngAfterContentChecked(): void; private _getTabById(id); }