/*! * @license * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { ChildAssociationBody, AssociationBody } from '@alfresco/js-api'; export interface FileUploadProgress { loaded: number; total: number; percent: number; } export declare class FileUploadOptions { /** * Add a version comment which will appear in version history. * Setting this parameter also enables versioning of this node, if it is not already versioned. */ comment?: string; /** * Overwrite the content of the node with a new version. */ newVersion?: boolean; /** * If true, then created node will be version 1.0 MAJOR. If false, then created node will be version 0.1 MINOR. */ majorVersion?: boolean; /** * Root folder id. */ parentId?: string; /** * Defines the **relativePath** value. * The relativePath specifies the folder structure to create relative to the node nodeId. * Folders in the relativePath that do not exist are created before the node is created. */ path?: string; /** * You can use the nodeType field to create a specific type. The default is **cm:content**. */ nodeType?: string; /** * You can set multi-value properties when you create a new node which supports properties of type multiple. */ properties?: any; /** * If the content model allows then it is also possible to create primary children with a different assoc type. */ association?: any; /** * You can optionally specify an array of **secondaryChildren** to create one or more secondary child associations, * such that the newly created node acts as a parent node. */ secondaryChildren?: ChildAssociationBody[]; /** * You can optionally specify an array of **targets** to create one or more peer associations such that the newly created node acts as a source node. */ targets?: AssociationBody[]; /** * If true, then created node will be versioned. If false, then created node will be unversioned and auto-versioning disabled. */ versioningEnabled?: boolean; } export declare const FileUploadStatus: { readonly Pending: 0; readonly Complete: 1; readonly Starting: 2; readonly Progress: 3; readonly Cancelled: 4; readonly Aborted: 5; readonly Error: 6; readonly Deleted: 7; }; export type FileUploadStatus = (typeof FileUploadStatus)[keyof typeof FileUploadStatus]; export declare class FileModel { readonly name: string; readonly size: number; readonly file: File; id: string; status: FileUploadStatus; errorCode: number; progress: FileUploadProgress; options: FileUploadOptions; data: any; constructor(file: File, options?: FileUploadOptions, id?: string); get extension(): string; }