UNPKG

@tweedegolf/sab-adapter-azure-blob

Version:

Provides an abstraction layer for interacting with Microsoft Azure Blob Storage cloud service.

62 lines (61 loc) 4.59 kB
import { AdapterConfig, IAdapter, Options, Provider, StreamOptions } from "./types/general"; import { FileBufferParams, FilePathParams, FileStreamParams } from "./types/add_file_params"; import { ResultObject, ResultObjectBoolean, ResultObjectBuckets, ResultObjectFiles, ResultObjectNumber, ResultObjectObject, ResultObjectStream } from "./types/result"; export declare abstract class AbstractAdapter implements IAdapter { protected _provider: Provider; protected _config: AdapterConfig; protected _client: any; protected _configError: null | string; protected _bucketName: null | string; constructor(config: string | AdapterConfig); get provider(): Provider; getProvider(): Provider; get config(): AdapterConfig; getConfig(): AdapterConfig; get configError(): null | string; getConfigError(): null | string; get serviceClient(): any; getServiceClient(): any; setSelectedBucket(bucketName: null | string): void; getSelectedBucket(): null | string; set selectedBucket(bucketName: null | string); get selectedBucket(): null | string; set bucketName(bucketName: null | string); get bucketName(): null | string; private getFileAndBucketAndOptions; private checkBucket; private checkFile; protected abstract _listBuckets(): Promise<ResultObjectBuckets>; protected abstract _createBucket(name: string, options: Options): Promise<ResultObject>; protected abstract _clearBucket(name: string): Promise<ResultObject>; protected abstract _deleteBucket(name: string): Promise<ResultObject>; protected abstract _bucketExists(name: string): Promise<ResultObjectBoolean>; protected abstract _bucketIsPublic(name: string): Promise<ResultObjectBoolean>; protected abstract _listFiles(bucketName: string, numFiles: number): Promise<ResultObjectFiles>; protected abstract _sizeOf(bucketName: string, fileName: string): Promise<ResultObjectNumber>; protected abstract _addFile(params: FilePathParams | FileBufferParams | FileStreamParams): Promise<ResultObject>; protected abstract _fileExists(bucketName: string, fileName: string): Promise<ResultObjectBoolean>; protected abstract _getFileAsStream(bucketName: string, fileName: string, options: StreamOptions): Promise<ResultObjectStream>; protected abstract _getPublicURL(bucketName: string, fileName: string, options: Options): Promise<ResultObject>; protected abstract _getSignedURL(bucketName: string, fileName: string, options: Options): Promise<ResultObject>; protected abstract _removeFile(bucketName: string, fileName: string): Promise<ResultObject>; protected abstract _getPresignedUploadURL(bucketName: string, fileName: string, options: Options): Promise<ResultObjectObject>; listBuckets(): Promise<ResultObjectBuckets>; createBucket(...args: [bucketName?: string, options?: Options] | [options?: Options]): Promise<ResultObject>; clearBucket(name?: string): Promise<ResultObject>; deleteBucket(name?: string): Promise<ResultObject>; bucketExists(name?: string): Promise<ResultObjectBoolean>; bucketIsPublic(name?: string): Promise<ResultObjectBoolean>; listFiles(...args: [bucketName?: string, numFiles?: number] | [numFiles?: number] | [bucketName?: string]): Promise<ResultObjectFiles>; addFileFromPath(params: FilePathParams): Promise<ResultObject>; addFileFromBuffer(params: FileBufferParams): Promise<ResultObject>; addFileFromStream(params: FileStreamParams): Promise<ResultObject>; addFile(params: FilePathParams | FileBufferParams | FileStreamParams): Promise<ResultObject>; getFileAsStream(...args: [bucketName: string, fileName: string, options?: StreamOptions] | [fileName: string, options?: StreamOptions]): Promise<ResultObjectStream>; getPublicURL(...args: [bucketName: string, fileName: string, options?: Options] | [fileName: string, options?: Options]): Promise<ResultObject>; getSignedURL(...args: [bucketName: string, fileName: string, options?: Options] | [fileName: string, options?: Options]): Promise<ResultObject>; sizeOf(...args: [bucketName: string, fileName: string] | [fileName: string]): Promise<ResultObjectNumber>; fileExists(...args: [bucketName: string, fileName: string] | [fileName: string]): Promise<ResultObjectBoolean>; removeFile(...args: [bucketName: string, fileName: string] | [fileName: string]): Promise<ResultObject>; getPresignedUploadURL(...args: [bucketName: string, fileName: string, options?: Options] | [fileName: string, options?: Options]): Promise<ResultObjectObject>; }