nestjs-minio-backend
Version:
NestJS module for MinIO integration
23 lines (22 loc) • 910 B
TypeScript
import { OnModuleInit } from '@nestjs/common';
import * as Minio from 'minio';
import { IFileUpload } from './interfaces/file.interface';
import { IMinioModuleOptions } from './interfaces/minio-options.interface';
export declare class MinioService implements OnModuleInit {
private readonly config;
private minioClient;
private bucketInitialized;
constructor(config: IMinioModuleOptions);
onModuleInit(): Promise<void>;
private initializeBuckets;
private sha256;
private hmacSha256;
private getSigningKey;
private getAmzDate;
private getDateStamp;
private calculatePresignedGetUrl;
uploadFile(file: IFileUpload, bucketName: string, objectName?: string): Promise<string>;
getPresignedUrl(bucketName: string, objectName: string): Promise<string>;
deleteFile(bucketName: string, objectName: string): Promise<void>;
getMinioClient(): Minio.Client;
}