import React, { HTMLAttributes, ReactNode } from 'react'; import { HasPlatform } from '../../types'; import { ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext'; import { SplitColContextProps } from '../SplitCol/SplitCol'; export declare const transitionStartEventName = "VKUI:View:transition-start"; export declare const transitionEndEventName = "VKUI:View:transition-end"; declare enum SwipeBackResults { fail = 1, success = 2 } interface Scrolls { [index: string]: number; } export declare type TransitionStartEventDetail = { scrolls: Scrolls; from: string; to: string; }; export interface ViewProps extends HTMLAttributes, HasPlatform { activePanel: string; popout?: ReactNode; modal?: ReactNode; onTransition?(params: { isBack: boolean; from: string; to: string; }): void; /** * callback свайпа назад */ onSwipeBack?(): void; /** * callback начала анимации свайпа назад. */ onSwipeBackStart?(): void; /** * callback завершения анимации отмененного пользователем свайпа */ onSwipeBackCancel?(): void; history?: string[]; id?: string; /** * @ignore */ splitCol?: SplitColContextProps; /** * @ignore */ configProvider?: ConfigProviderContextInterface; } export interface ViewState { scrolls: Scrolls; animated: boolean; startT?: Date; visiblePanels: string[]; activePanel: string; isBack: boolean; prevPanel: string; nextPanel: string; swipingBack: boolean; swipebackStartX: number; swipeBackShift: number; swipeBackNextPanel: string; swipeBackPrevPanel: string; swipeBackResult: SwipeBackResults; browserSwipe: boolean; } declare const _default: React.ComponentType; export default _default;