/// import { USER_DOCUMENT_DIN_SIZE, USER_DOCUMENT_ORIENTATION } from './enum'; /** * File intercepted from form submission */ export interface MulterFileInformation { fieldname: string; originalname: string; encoding: string; mimetype: string; size: number; destination: string; filename: string; path: string; buffer: Buffer; } export interface FileMetadata { mimeType?: string; encoding?: string; size?: number; isPDF?: boolean; pdfDinSize?: USER_DOCUMENT_DIN_SIZE; pdfOrientation?: USER_DOCUMENT_ORIENTATION; imageWidthInPixel?: number; imageHeightInPixel?: number; isOriginal?: boolean; /** Primarily for files that do not originate from this server * for ex. a digital signature request from dedicated documents server */ isRemoteFile?: boolean; remoteFileId?: string; remoteDeviceId?: string; isTemporary?: boolean; expiresAt?: number; signatureCount?: number; } export interface StorageProviderServiceConfig { /** Totally optionally; for non-AWS S3 hosts */ s3Host?: string; s3Bucket?: string; s3Region?: string; s3AccessKeyId?: string; RestHost?: string; RestUser?: string; SftpHost?: string; SftpUser?: string; SftpPort?: string; /** If multiple devices backup to the same S3 volume * for ex. / * * Important: The access key should be restricted to * the / path, on the S3 volume */ path?: string; }