import { TemplatePortal } from '@angular/cdk/portal'; import { OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core'; import { Subject } from 'rxjs'; import { TsTabLabelDirective } from './../label/tab-label.directive'; /** * An individual tab component * * @example * * My tab content! * * * https://getterminus.github.io/ui-demos-release/components/tabs */ export declare class TsTabComponent implements OnInit, OnChanges, OnDestroy { private viewContainerRef; /** * Define a unique ID for every instance */ id: number; /** * Portal that will be the hosted content of the tab */ private contentPortal; /** * Emits whenever the internal state of the tab changes */ readonly stateChanges: Subject; /** * The relatively indexed position where 0 represents the center, negative numbers are left, and positive numbers represent the right. */ position: number | null; /** * The initial relatively index origin of the tab if it was created and selected after there was already a selected tab. * Provides context of what position the tab should originate from. */ origin: number | null; /** * Whether the tab is currently active */ isActive: boolean; /** * Provides quick access to the content portal */ get content(): TemplatePortal | null; /** * Template provided in the tab content that will be used if present, used to enable lazy-loading */ explicitContent: TemplateRef | undefined; /** * Template inside the TsTabComponent view that contains an `` */ implicitContent: TemplateRef; /** * Content for the tab label given by `` */ templateLabel: TsTabLabelDirective; /** * Aria label for the tab */ ariaLabel: string | undefined; /** * Reference to the element that the tab is labelled by. * * NOTE: Will be cleared if `aria-label` is set at the same time. */ ariaLabelledby: string | undefined; /** * Define if the tab is disabled */ isDisabled: boolean; /** * Simple text label for the tab (used when there is no template label) */ label: string; constructor(viewContainerRef: ViewContainerRef); /** * Inject the tab content */ ngOnInit(): void; /** * Trigger event emitter for property changes * * @param changes */ ngOnChanges(changes: SimpleChanges): void; /** * Clean up any subscriptions */ ngOnDestroy(): void; }