/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { default as PropTypes } from 'prop-types'; import { GroupedFiles } from './interfaces/FileGroup.js'; import { UploadFileInfo } from './interfaces/UploadFileInfo.js'; import { UploadFileStatus } from './interfaces/UploadFileStatus.js'; import { AxiosResponse, AxiosProgressEvent } from 'axios'; import { UploadProps } from './interfaces/UploadProps.js'; import * as React from 'react'; /** * @hidden */ interface UploadState { files: Array; } export declare class Upload extends React.Component { /** * @hidden */ static defaultProps: UploadProps; /** * @hidden */ static propTypes: { autoUpload: PropTypes.Requireable; batch: PropTypes.Requireable; withCredentials: PropTypes.Requireable; saveField: PropTypes.Requireable; saveHeaders: PropTypes.Requireable; saveMethod: PropTypes.Requireable; saveUrl: PropTypes.Requireable any) | null | undefined>>; responseType: PropTypes.Requireable; removeField: PropTypes.Requireable; removeHeaders: PropTypes.Requireable; removeMethod: PropTypes.Requireable; removeUrl: PropTypes.Requireable any) | null | undefined>>; multiple: PropTypes.Requireable; disabled: PropTypes.Requireable; showFileList: PropTypes.Requireable; showActionButtons: PropTypes.Requireable; actionsLayout: PropTypes.Requireable; tabIndex: PropTypes.Requireable; accept: PropTypes.Requireable; listItemUI: PropTypes.Requireable any) | PropTypes.InferProps<{ render: PropTypes.Validator<(...args: any[]) => any>; }> | null | undefined>>; restrictions: PropTypes.Requireable; maxFileSize: PropTypes.Requireable; minFileSize: PropTypes.Requireable; }>>; files: PropTypes.Requireable<(PropTypes.InferProps<{ uid: PropTypes.Requireable; name: PropTypes.Requireable; extension: PropTypes.Requireable; size: PropTypes.Requireable; validationErrors: PropTypes.Requireable<(string | null | undefined)[]>; status: PropTypes.Requireable; progress: PropTypes.Requireable; getRawFile: PropTypes.Requireable<(...args: any[]) => any>; }> | null | undefined)[]>; defaultFiles: PropTypes.Requireable<(PropTypes.InferProps<{ uid: PropTypes.Requireable; name: PropTypes.Requireable; extension: PropTypes.Requireable; size: PropTypes.Requireable; validationErrors: PropTypes.Requireable<(string | null | undefined)[]>; status: PropTypes.Requireable; progress: PropTypes.Requireable; getRawFile: PropTypes.Requireable<(...args: any[]) => any>; }> | null | undefined)[]>; }; private _httpSubscriptions; private get async(); private _uploadNavigation; private get files(); private get isControlled(); private get isCustomSave(); private get isCustomRemove(); private get fileStateCopy(); private readonly showLicenseWatermark; private readonly licenseMessage?; constructor(props: UploadProps); /** * @hidden */ get actionElement(): HTMLInputElement | null | undefined; /** * @hidden */ focus: () => void; /** * Upload the selected files. Usable when the upload action is triggered by external code. */ triggerUpload: () => void; /** * @hidden */ uploadFiles: (filesForUpload: GroupedFiles) => void; /** * @hidden */ removeFiles: (filesForRemove: GroupedFiles) => void; /** * @hidden */ onUpload: () => void; /** * @hidden */ onAdd: (files: FileList) => void; /** * @hidden */ setFilesProgress(filesWithProgress: UploadFileInfo[], percentComplete: number): void; /** * @hidden */ onUploadProgress: (uid: string, event: ProgressEvent | AxiosProgressEvent) => void; /** * @hidden */ onUploadSuccess: (uid: string, event?: AxiosResponse) => void; /** * @hidden */ onUploadError: (uid: string, event?: AxiosResponse) => void; /** * @hidden */ onRemove: (uid: string) => void; /** * @hidden */ onRemoveSuccess: (uid: string, event?: AxiosResponse) => void; /** * @hidden */ onRemoveError: (uid: string, event?: AxiosResponse) => void; /** * @hidden */ onRetry: (uid: string) => void; /** * @hidden */ onCancel: (uid: string) => void; /** * @hidden */ onClear: () => void; /** * @hidden */ render(): React.JSX.Element; } export {};