@medusajs/file-local
Version:
Local filesystem file storage for Medusa
31 lines • 1.6 kB
TypeScript
import { FileTypes, LocalFileServiceOptions } from "@medusajs/framework/types";
import { AbstractFileProviderService } from "@medusajs/framework/utils";
import type { Readable, Writable } from "stream";
export declare class LocalFileService extends AbstractFileProviderService {
static identifier: string;
protected uploadDir_: string;
protected privateUploadDir_: string;
protected backendUrl_: string;
constructor(_: any, options: LocalFileServiceOptions);
upload(file: FileTypes.ProviderUploadFileDTO): Promise<FileTypes.ProviderFileResultDTO>;
getUploadStream(fileData: FileTypes.ProviderUploadStreamDTO): Promise<{
writeStream: Writable;
promise: Promise<FileTypes.ProviderFileResultDTO>;
url: string;
fileKey: string;
}>;
delete(files: FileTypes.ProviderDeleteFileDTO | FileTypes.ProviderDeleteFileDTO[]): Promise<void>;
getDownloadStream(file: FileTypes.ProviderGetFileDTO): Promise<Readable>;
getAsBuffer(file: FileTypes.ProviderGetFileDTO): Promise<Buffer>;
getPresignedDownloadUrl(file: FileTypes.ProviderGetFileDTO): Promise<string>;
/**
* Returns the pre-signed URL that the client (frontend) can use to trigger
* a file upload. In this case, the Medusa backend will implement the
* "/upload" endpoint to perform the file upload.
*/
getPresignedUploadUrl(fileData: FileTypes.ProviderGetPresignedUploadUrlDTO): Promise<FileTypes.ProviderFileResultDTO>;
private getUploadFilePath;
private getUploadFileUrl;
private ensureDirExists;
}
//# sourceMappingURL=local-file.d.ts.map