import { SortEnd } from 'react-sortable-hoc';
import { YUploadFile } from '../common/interface';
import { YUploadProps, ChangeType, UploadType } from '../upload.interface';

export type ModalSize = 'large' | 'small' | 'fullScreen';

export interface SortableContainerProps extends YUploadProps {
  securityType: 'public' | 'private';
  uploadType: UploadType;

  refreshValue: number;
  fileListRef: React.MutableRefObject<YUploadFile[]>;
  axis: string;
  distance: number;
  helperClass: string;
  items: YUploadFile[];
  setFileList: (
    fileList: YUploadFile[],
    changeFileList?: YUploadFile[],
    type?: ChangeType,
  ) => void;
  onSortEnd: (sortObj: SortEnd) => void;
}

export interface WrapStyleProps {
  uploadType: UploadType;
  hidePreview: boolean;
  disabled: boolean;
  column?: number;
  isMax: boolean;
}
