carbon-components-angular
Version:
Next generation components
106 lines (102 loc) • 3.39 kB
TypeScript
/**
*
* carbon-angular v0.0.0 | tabs.component.d.ts
*
* Copyright 2014, 2024 IBM
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { QueryList, AfterContentInit, OnChanges, SimpleChanges } from "@angular/core";
import { Tab } from "./tab.component";
import * as i0 from "@angular/core";
/**
* Build out your application's tabs using this component.
* This is the parent of the `Tab` and `TabHeader` components.
*
* [See demo](../../?path=/story/components-tabs--basic)
*
* `Tabs` expects a set of `n-tab` elements
*
* ```html
* <cds-tabs>
* <cds-tab heading='tab1'>
* tab 1 content
* </cds-tab>
* <cds-tab heading='tab1'>
* tab 2 content
* </cds-tab>
* <!-- ... -->
* <cds-tab heading='tab1'>
* tab n content
* </cds-tab>
* </cds-tabs>
* ```
*/
export declare class Tabs implements AfterContentInit, OnChanges {
/**
* Takes either the string value 'top' or 'bottom' to place TabHeader
* relative to the `TabPanel`s.
*/
position: "top" | "bottom";
/**
* Set to 'true' to have `Tab` items cached and not reloaded on tab switching.
*/
cacheActive: boolean;
/**
* Set to 'true' to have tabs automatically activated and have their content displayed when they receive focus.
*/
followFocus: boolean;
/**
* Set to `true` to have the tabIndex of the all tabpanels be -1.
*/
isNavigation: boolean;
/**
* Sets the aria label on the `TabHeader`s nav element.
*/
ariaLabel: string;
/**
* Sets the aria labelledby on the `TabHeader`s nav element.
*/
ariaLabelledby: string;
/**
* Sets the type of the `TabHeader`s
*/
type: "line" | "contained";
/**
* Sets the theme of `TabHeader`s
*/
theme: "light" | "dark";
/**
* Set state of tabs to skeleton
*/
skeleton: boolean;
/**
* Maintains a `QueryList` of the `Tab` elements and updates if `Tab`s are added or removed.
*/
tabs: QueryList<Tab>;
/**
* Content child of the projected header component
*/
tabHeaders: any;
/**
* After content is initialized update `Tab`s to cache (if turned on) and set the initial
* selected Tab item.
*/
ngAfterContentInit(): void;
ngOnChanges(changes: SimpleChanges): void;
/**
* true if the n-tab's are passed directly to the component as children
*/
hasTabHeaders(): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration<Tabs, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<Tabs, "cds-tabs, ibm-tabs", never, { "position": "position"; "cacheActive": "cacheActive"; "followFocus": "followFocus"; "isNavigation": "isNavigation"; "ariaLabel": "ariaLabel"; "ariaLabelledby": "ariaLabelledby"; "type": "type"; "theme": "theme"; "skeleton": "skeleton"; }, {}, ["tabHeaders", "tabs"], ["*", "[before]", "[after]"], false>;
}