/************
Processor: ts
************/

import __beyond_dep_def_0 from 'react';
// context.tsx
declare namespace ns_0 {
  import React = __beyond_dep_def_0;
  export interface ITabsContext {
    panes: any;
    activeTab: any;
    setActiveTab: any;
    onChange?: (event: any, index: any) => void;
  }
  export const TabsContext: React.Context<ITabsContext>;
  export const useTabsContext: () => ITabsContext;
}


// definitions.ts
declare namespace ns_1 {
  /// <reference types="react" />
  export interface IProps {
    children?: React.ReactNode;
    className?: string;
  }
  export interface ITabProps extends IProps {
    disabled?: boolean;
    index?: number;
    name?: string;
  }
  export interface ITPane {
    tab: string;
    content: React.ReactNode;
  }
  export interface TabsProps extends React.HTMLAttributes<HTMLDivElement> {
    children: React.ReactNode;
  }
  export interface ITabsContainerProps extends IProps {
    active?: number;
    onChange?: (event: any, index?: any) => void;
    className?: string;
    setURL?: boolean;
    panes?: ITPane[];
  }
}


// index.tsx
declare namespace ns_2 {
  import React = __beyond_dep_def_0;
  import ITabsContainerProps = ns_1.ITabsContainerProps;
  export function TabsContainer({
    active,
    onChange,
    className,
    children,
    panes
  }: ITabsContainerProps): React.JSX.Element;
}


// panes.tsx
declare namespace ns_3 {
  import React = __beyond_dep_def_0;
  import IProps = ns_1.IProps;
  export function Panes({
    children,
    className
  }: IProps): React.JSX.Element;
}


// tab.tsx
declare namespace ns_4 {
  import React = __beyond_dep_def_0;
  import ITabProps = ns_1.ITabProps;
  export function Tab(props: ITabProps): React.JSX.Element;
}


// tabs.tsx
declare namespace ns_5 {
  import React = __beyond_dep_def_0;
  import IProps = ns_1.IProps;
  export const Tabs: ({
    children,
    className
  }: IProps) => React.JSX.Element;
}


// use-scroll.tsx
declare namespace ns_6 {
  import React = __beyond_dep_def_0;
  export function useScroll(tabRef: React.RefObject<HTMLDivElement>, activeTab: number): void;
}


export import TabsContainer = ns_2.TabsContainer;
export import Panes = ns_3.Panes;
export import Tab = ns_4.Tab;
export import Tabs = ns_5.Tabs;

export declare const hmr: {on: (event: string, listener: any) => void, off: (event: string, listener: any) => void };