import { AbstractStartedContainer, GenericContainer, PortWithOptionalBinding, StartedTestContainer } from "testcontainers"; type Protocol = "http" | "https"; export declare class AzuriteContainer extends GenericContainer { constructor(image: string); private blobPort; private queuePort; private tablePort; private accountName; private accountKey; private skipApiVersionCheck; private inMemoryPersistence; private extentMemoryLimitInMegaBytes?; private cert?; private certPath?; private key?; private password?; private oauthEnabled; /** * Sets a custom storage account name (default account will be disabled). * @param accountName Storage account names must be between 3 and 24 characters in length and may contain numbers and lowercase letters only. */ withAccountName(accountName: string): this; /** * Sets a custom storage account key (default account will be disabled). Note: MUST be a base64-encoded string. * @param accountKey The account keys must be base64 encoded string. */ withAccountKey(accountKey: string): this; /** * Sets the port to expose the Blob service on. * @param port The port to expose the Blob service on. Default is 10000. */ withBlobPort(blobPort: PortWithOptionalBinding): this; /** * Sets the port to expose the Queue service on. * @param port The port to expose the Queue service on. Default is 10001. */ withQueuePort(queuePort: PortWithOptionalBinding): this; /** * Sets the port to expose the Table service on. * @param port The port to expose the Table service on. Default is 10002. */ withTablePort(tablePort: PortWithOptionalBinding): this; /** * Disable persisting any data to disk and only store data in-memory. If the Azurite process is terminated, all data is lost. */ withInMemoryPersistence(): this; /** * By default, the in-memory extent store (for blob and queue content) is limited to 50% of the total memory on the host machine. This is evaluated to using os.totalmem(). This limit can be overridden using the extentMemoryLimit option. This can only be used if in-memory persistence is enabled first. * @param megabyte The extent memory limit in megabytes. */ withExtentMemoryLimitInMegaBytes(megabyte: number): this; /** * By default Azurite will check the request API version is valid API version. This can be disabled by with this option. */ withSkipApiVersionCheck(): this; /** * Configure SSL with a custom certificate and private key. * * @param cert The PEM certificate file content. * @param key The PEM key file content. */ withSsl(cert: string, key: string): this; /** * Configure SSL with a custom certificate and password. * * @param cert The PFX certificate file content. * @param password The password securing the certificate. */ withSslPfx(cert: string, password: string): this; /** * Enable OAuth authentication with basic mode. */ withOAuth(): this; start(): Promise; } export declare class StartedAzuriteContainer extends AbstractStartedContainer { private readonly accountName; private readonly accountKey; private readonly blobPort; private readonly queuePort; private readonly tablePort; private readonly protocol; constructor(startedTestContainer: StartedTestContainer, accountName: string, accountKey: string, blobPort: PortWithOptionalBinding, queuePort: PortWithOptionalBinding, tablePort: PortWithOptionalBinding, protocol: Protocol); getAccountName(): string; getAccountKey(): string; getBlobPort(): number; getQueuePort(): number; getTablePort(): number; getBlobEndpoint(): string; getQueueEndpoint(): string; getTableEndpoint(): string; /** * @returns A connection string in the form of `DefaultEndpointsProtocol=[protocol];AccountName=[accountName];AccountKey=[accountKey];BlobEndpoint=[blobEndpoint];QueueEndpoint=[queueEndpoint];TableEndpoint=[tableEndpoint];` */ getConnectionString(): string; private getEndpoint; } export {};