nativescript-material-bottomnavigationbar
Version:
NativeScript plugin to add a bottom navigation bar component for Android & iOS
63 lines (62 loc) • 2.5 kB
TypeScript
import { EventData } from '@nativescript/core/data/observable';
import { ImageSource } from '@nativescript/core/image-source';
import { Color, CssProperty, Property, Style, View } from '@nativescript/core/ui/core/view';
export interface TabPressedEventData extends EventData {
index: number;
}
export interface TabSelectedEventData extends EventData {
oldIndex: number;
newIndex: number;
}
export interface TabReselectedEventData extends EventData {
index: number;
}
export declare enum TitleVisibility {
Selected = 0,
Always = 1,
Never = 2
}
export declare abstract class BottomNavigationBarBase extends View {
static tabPressedEvent: string;
static tabSelectedEvent: string;
static tabReselectedEvent: string;
activeColor: Color;
inactiveColor: Color;
selectedTabIndex: number;
titleVisibility: TitleVisibility;
protected _items: BottomNavigationTabBase[];
get items(): BottomNavigationTabBase[];
onLoaded(): void;
selectTab(index: number): void;
_emitTabPressed(index: number): void;
_emitTabSelected(index: number): void;
_emitTabReselected(index: number): void;
_addChildFromBuilder(name: string, value: BottomNavigationTabBase): void;
showBadge(index: number, value?: number): void;
removeBadge(index: number): void;
protected abstract selectTabNative(index: number): void;
protected abstract createTabs(tabs: BottomNavigationTabBase[] | undefined): void;
}
export declare const tabsProperty: Property<BottomNavigationBarBase, BottomNavigationTabBase[]>;
export declare const titleVisibilityProperty: Property<BottomNavigationBarBase, TitleVisibility>;
export declare const activeColorCssProperty: CssProperty<Style, Color>;
export declare const inactiveColorCssProperty: CssProperty<Style, Color>;
interface BottomNavigationTabProps {
title: string;
icon: string | ImageSource;
isSelectable?: boolean;
}
export declare abstract class BottomNavigationTabBase extends View implements BottomNavigationTabProps {
title: string;
icon: ImageSource;
isSelectable?: boolean;
activeColor: Color;
inactiveColor: Color;
constructor(args?: BottomNavigationTabProps);
abstract getNativeIcon(): any;
abstract showBadge(value?: number): void;
abstract removeBadge(): void;
}
export declare const isSelectableProperty: Property<BottomNavigationTabBase, boolean>;
export declare const iconProperty: Property<BottomNavigationTabBase, ImageSource>;
export {};