UNPKG

nestjs-azure-storage-blob

Version:

Azure Blob Storage module for Nest.js

35 lines (34 loc) 2.29 kB
import { AccountSASPermissionsLike, AccountSASResourceTypes, BlobGenerateSasUrlOptions, BlobItem, BlobSASPermissionsLike, BlobServiceClient, ContainerGenerateSasUrlOptions, ContainerSASPermissionsLike, ServiceGenerateAccountSasUrlOptions } from '@azure/storage-blob'; import { GetAccountSasUrlResponse, GetBlockBlobSasUrlResponse, GetContainerSasUrlResponse } from './azure-storage-blob.interface'; /** * request headers * https://learn.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types */ export declare class AzureStorageBlobService { private readonly blobServiceClient; private containerName?; constructor(blobServiceClient: BlobServiceClient); getClient(): BlobServiceClient; getContainerName(): string | undefined; convertToResourceTypes(resourceTypeMap?: Omit<AccountSASResourceTypes, 'toString'>): string; getAccountSasUrl(expiresOn?: Date, permissions?: AccountSASPermissionsLike, resourceTypeMap?: Omit<AccountSASResourceTypes, 'toString'>, options?: ServiceGenerateAccountSasUrlOptions): GetAccountSasUrlResponse; getContainerSasUrl(containerName: string, permissions?: ContainerSASPermissionsLike, options?: Omit<ContainerGenerateSasUrlOptions, 'permissions'>): Promise<GetContainerSasUrlResponse>; getBlockBlobSasUrl(containerName: string, blobName: string, permissions?: BlobSASPermissionsLike, options?: Omit<BlobGenerateSasUrlOptions, 'permissions'>): Promise<GetBlockBlobSasUrlResponse>; getUploadable(containerName: string, blobName: string, expiresIn?: number): Promise<{ upload: { method: string; url: string; headers: Record<string, string | number>; expiresIn: number; }; download: { method: string; url: string; expiresIn: number; }; }>; listFiles(destination: string, containerName: string): Promise<BlobItem[]>; deleteFile(container: string, blob: string): Promise<import("@azure/storage-blob").BlobDeleteResponse>; deleteFileIfExists(container: string, blob: string): Promise<import("@azure/storage-blob").BlobDeleteIfExistsResponse>; downloadStream(container: string, blob: string): Promise<import("@azure/storage-blob").BlobDownloadResponseParsed>; }