import { ForwardRefExoticComponent } from 'rax';
import ActionSheet, {
  ActionSheetProps,
  ActionSheetItemProps,
  ActionSheetButtonProps,
} from './action-sheet';
import funcs, { ActionSheetCurrent, ActionSheetWrapperProps } from './funcs';

export interface ActionSheetComponent extends ForwardRefExoticComponent<ActionSheetProps> {
  current?: ActionSheetCurrent;
  show?: (props: ActionSheetWrapperProps, callback: (i: any) => void) => void;
  hide?: (e: any) => void;
}

const ExpanedActionSheet: ActionSheetComponent = ActionSheet;

ExpanedActionSheet.current = funcs.current;
ExpanedActionSheet.show = funcs.show;
ExpanedActionSheet.hide = funcs.hide;

export {
  ActionSheetProps,
  ActionSheetItemProps,
  ActionSheetButtonProps,
};

export default ExpanedActionSheet;
