import { ViewsArray } from "./SceneRenderer" ; import Mayer , { Props as MayerProps } from "./Mayer" ; import Sidepanel , { SidepanelProps } from "./Sidepanel" ; import Scene , { SceneProps , SceneState , ViewConfig } from "./Scene" ; import View from "./View" ; import { doTransitionAnimation , doVerticalScrollAnimation } from "./FX" ; import { supportPassive , isMobileDevice } from "./eventHelpers" ; import { ReactNode } from "react" ; import { ViewProps } from "./ViewRenderer" ; import { TSValidateViewsConfig , TSValidateSidepanelConfig } from "./Scene/Helpers" ; export type Placement = "top" | "bottom" | "left" | "right" ; function isPlacement ( val ? ) { if ( val && ( val === "top" || val === "bottom" || val === "let" || val === "right" ) ) { return true ; } return false ; } export type AnimationType = "slide" | "overlay" | "fade" ; function isAnimation ( val ? ) { if ( val && ( val === "slide" || val === "overlay" || val === "fade" ) ) { return true ; } return false ; } export type NavbarMenu = "toggleSidepanel" | ReactNode [ ] ; export interface TouchPosition { [ index ] : number ; clientX : number ; clientY : number ; } export interface SidepanelConfig < T extends SidepanelProps = SidepanelProps , S = { } > { /**
     * Reference to class or function that will render AirrSidepanel. Might be AirrSidepanel itself.
     */ type : React . ComponentClass < T , S > ; /**
     * Special properties of AirrSidepanel class. Go to class declaration for further properties documenation.
     */ props : T ; } export type Direction = 1 | - 1 ; export const Helpers = { supportPassive , isMobileDevice } ; export { ViewProps , SceneProps , SidepanelProps , SceneState , ViewConfig , MayerProps , ViewsArray , TSValidateViewsConfig , TSValidateSidepanelConfig , isPlacement , isAnimation } ; export { doTransitionAnimation , doVerticalScrollAnimation } ; export { Mayer , Sidepanel , Scene , View } ;