import type { FilesystemMountConfig } from '@mastra/core/workspace'; import type { MountContext } from './types.js'; /** * Azure Blob mount config for E2B (mounted via blobfuse2). * * Authentication is selected from the first applicable option: * 1. `useDefaultCredential` (managed identity, requires running in Azure) * 2. `sasToken` * 3. `accountKey` * 4. `connectionString` (parsed for AccountName/AccountKey/SharedAccessSignature/BlobEndpoint) */ export interface E2BAzureBlobMountConfig extends FilesystemMountConfig { type: 'azure-blob'; /** Azure Blob container name */ container: string; /** Storage account name (required unless supplied via connectionString) */ accountName?: string; /** Storage account access key */ accountKey?: string; /** Shared Access Signature token (without leading '?') */ sasToken?: string; /** Azure Storage connection string */ connectionString?: string; /** Use DefaultAzureCredential / managed identity (mode: msi) */ useDefaultCredential?: boolean; /** Custom blob endpoint (e.g. for sovereign clouds or Azurite) */ endpoint?: string; /** * Optional prefix (subdirectory) to mount instead of the entire container. * Uses blobfuse2 --subdirectory. Leading/trailing slashes are normalized. */ prefix?: string; /** Mount as read-only */ readOnly?: boolean; } /** * Mount an Azure Blob container using blobfuse2. */ export declare function mountAzure(mountPath: string, config: E2BAzureBlobMountConfig, ctx: MountContext): Promise; //# sourceMappingURL=azure.d.ts.map