reactxp-navigation
Version:
Plugin for ReactXP that provides a navigation framework
83 lines (82 loc) • 3.04 kB
TypeScript
import * as Types from '../common/Types';
import { NavigatorSceneConfig } from './NavigatorSceneConfigFactory';
import { NavigatorDelegateSelector as DelegateSelector, NavigatorState as BaseNavigatorState, Navigator as NavigatorBase, NavigatorProps } from '../common/Types';
export interface SpringSystem {
createSpring(): any;
}
export interface Spring {
setRestSpeedThreshold?: (restSpeed: number) => void;
setCurrentValue?: (val: number) => any;
addListener?: (obj: any) => any;
getCurrentValue?(): any;
setOvershootClampingEnabled?(a: boolean): void;
getSpringConfig?(): any;
setVelocity?(velocity: any): any;
setEndValue?(endVal: number): any;
}
export declare type TransitionToCallback = () => void;
export declare type ReplaceAtIndexCallback = () => void;
export interface TransitionToQueueItem {
destIndex: number;
transitionFinished: TransitionToCallback;
velocity: number;
}
export interface NavigatorState extends BaseNavigatorState {
sceneConfigStack?: NavigatorSceneConfig[];
routeStack?: Types.NavigatorRoute[];
presentedIndex?: number;
transitionFromIndex?: number;
transitionQueue?: TransitionToQueueItem[];
transitionFinished?: TransitionToCallback;
}
export declare class NavigatorImpl extends NavigatorBase<NavigatorState> {
private _renderedSceneMap;
private _containerRef;
private _sceneRefs;
navigatorReference: Navigator;
springSystem: SpringSystem;
spring: Spring;
private _dimensions;
constructor(initialProps?: NavigatorProps);
UNSAFE_componentWillMount(): void;
componentDidMount(): void;
componentDidUpdate(): void;
render(): JSX.Element;
jumpTo(route: Types.NavigatorRoute): void;
jumpForward(): void;
jumpBack(): void;
push(route: Types.NavigatorRoute): void;
immediatelyResetRouteStack(nextRouteStack: Types.NavigatorRoute[]): void;
pop(): void;
replaceAtIndex(route: Types.NavigatorRoute, index: number): void;
replace(route: Types.NavigatorRoute): void;
replacePrevious(route: Types.NavigatorRoute): void;
popToTop(): void;
popToRoute(route: Types.NavigatorRoute): void;
replacePreviousAndPop(route: Types.NavigatorRoute): void;
getCurrentRoutes(): Types.NavigatorRoute[];
private _onMountContainer;
private _updateDimensionsCache;
private _getSceneConfigFromRoute;
private _renderNavigatorScene;
private _onMountScene;
private _disableScene;
private _enableScene;
private _transitionTo;
private _completeTransition;
private _hideScenes;
private _handleSpringUpdate;
private _transitionSceneStyle;
private _transitionBetween;
private _getDestIndexWithinBounds;
private _jumpN;
private _popN;
private _cleanScenesPastIndex;
private _getRouteID;
private _invariant;
private _setNativeStyles;
}
export default NavigatorImpl;
export declare const Navigator: typeof NavigatorImpl;
export declare const NavigatorDelegateSelector: DelegateSelector;
export { Types };