import React, { type ChangeEvent, Component, type KeyboardEvent, type DragEvent } from 'react'; import PropTypes from 'prop-types'; import type { SelecterProps } from '../types'; /** * Upload.Selecter * [底层能力] 可自定义样式的文件选择器 */ export default class Selecter extends Component { static propTypes: { id: PropTypes.Requireable; style: PropTypes.Requireable; className: PropTypes.Requireable; disabled: PropTypes.Requireable; multiple: PropTypes.Requireable; webkitdirectory: PropTypes.Requireable; capture: PropTypes.Requireable; dragable: PropTypes.Requireable; accept: PropTypes.Requireable; onSelect: PropTypes.Requireable<(...args: any[]) => any>; onDragOver: PropTypes.Requireable<(...args: any[]) => any>; onDragLeave: PropTypes.Requireable<(...args: any[]) => any>; onDrop: PropTypes.Requireable<(...args: any[]) => any>; children: PropTypes.Requireable; name: PropTypes.Requireable; }; static defaultProps: { name: string; multiple: boolean; onSelect: () => void; onDragOver: () => void; onDragLeave: () => void; onDrop: () => void; }; fileRef: HTMLInputElement; onSelect: (e: ChangeEvent) => void; /** * 点击上传按钮 * */ onClick: () => void; /** * 键盘事件 * e * */ onKeyDown: (e: KeyboardEvent) => void; /** * 拖拽 * e * */ onDrop: (e: DragEvent) => void; onDragOver: (e: DragEvent) => void; saveFileRef: (ref: HTMLInputElement) => void; render(): React.JSX.Element; }