@nativescript-community/ui-material-tabs
Version:
Material Design Tabs organize content across different screens, data sets, and other interactions.
39 lines (38 loc) • 1.65 kB
TypeScript
import { NativeScriptProps } from 'react-nativescript';
import { PropertyChangeData } from '@nativescript/core';
import { Tabs } from '..';
import { TabNavigationBaseAttributes } from '@nativescript-community/ui-material-core-tabs/react';
import { SelectedIndexChangedEventData } from '@nativescript-community/ui-material-core-tabs/tab-navigation-base';
import { TabStrip } from '@nativescript-community/ui-material-core-tabs/tab-strip';
import { TabContentItem } from '@nativescript-community/ui-material-core-tabs/tab-content-item';
export type TabsAttributes = TabNavigationBaseAttributes & {
android?: any;
iOSTabBarItemsAlignment?: 'center' | 'leading' | 'justified' | 'centerSelected';
ios?: any;
items?: TabContentItem[];
offscreenTabLimit?: string | number;
onIOsTabBarItemsAlignmentChange?: (args: PropertyChangeData) => void;
onOffscreenTabLimitChange?: (args: PropertyChangeData) => void;
onSelectedIndexChanged?: (args: SelectedIndexChangedEventData) => void;
onSwipeEnabledChange?: (args: PropertyChangeData) => void;
onTabsPositionChange?: (args: PropertyChangeData) => void;
selectedIndex?: number;
swipeEnabled?: string | false | true;
tabStrip?: TabStrip;
tabsPosition?: 'top' | 'bottom';
};
declare global {
namespace JSX {
interface IntrinsicElements {
tabs: NativeScriptProps<TabsAttributes, Tabs>;
}
interface ElementChildrenAttribute {
children: {};
}
}
}
interface RegisterTabsOptions {
enableDebugLogging?: boolean;
}
export declare function registerTabs(opts?: RegisterTabsOptions): void;
export {};