///
import { IComponentContext, IRequireInitialization } from "@walmartlabs/cookie-cutter-core";
import { SpanContext } from "opentracing";
import { IBlobStorageConfiguration, IBlobClient } from "..";
export declare class BlobClient implements IBlobClient, IRequireInitialization {
private client;
private containerName;
private storageAccount;
private tracer;
private metrics;
private spanOperationName;
constructor(config: IBlobStorageConfiguration);
initialize(context: IComponentContext): Promise;
createContainerIfNotExists(context?: SpanContext): Promise;
deleteContainerIfExists(context?: SpanContext): Promise;
write(context: SpanContext, blobId: string, content: Buffer | string): Promise;
readAsText(context: SpanContext, blobId: string): Promise;
exists(context: SpanContext, blobId: string): Promise;
listBlobs(context: SpanContext, prefix: string): AsyncIterableIterator;
deleteFolderIfExists(context: SpanContext, folderId: string): Promise;
deleteBlobIfExists(context: SpanContext, blobId: string): Promise;
private generateMetricTags;
private spanLogAndSetTags;
}
export declare enum BlobOpenTracingTagKeys {
ContainerName = "blob.container_name"
}