import type { Dictionary, StorageClient } from '@vladfrangu-dev/crawlee-types'; import { Configuration } from '../configuration'; import type { Constructor } from '../typedefs'; export interface IStorage { id: string; name?: string; } /** * StorageManager takes care of opening remote or local storages. * @ignore */ export declare class StorageManager { private readonly config; private static readonly storageManagers; private readonly name; private readonly StorageConstructor; private readonly cache; constructor(StorageConstructor: Constructor, config?: Configuration); static openStorage(storageClass: Constructor, idOrName?: string, client?: StorageClient, config?: Configuration): Promise; static getManager(storageClass: Constructor, config?: Configuration): StorageManager; /** @internal */ static clearCache(): void; openStorage(idOrName?: string | null, client?: StorageClient): Promise; closeStorage(storage: { id: string; name?: string; }): void; /** * Helper function that first requests storage by ID and if storage doesn't exist then gets it by name. */ protected _getOrCreateStorage(storageIdOrName: string, storageConstructorName: string, apiClient: StorageClient): Promise; protected _getStorageClientFactories(client: StorageClient, storageConstructorName: string): { createStorageClient: ((id: string) => import("@vladfrangu-dev/crawlee-types").DatasetClient>) | ((id: string) => import("@vladfrangu-dev/crawlee-types").KeyValueStoreClient) | ((id: string, options?: import("@vladfrangu-dev/crawlee-types").RequestQueueOptions | undefined) => import("@vladfrangu-dev/crawlee-types").RequestQueueClient); createStorageCollectionClient: (() => import("@vladfrangu-dev/crawlee-types").DatasetCollectionClient) | (() => import("@vladfrangu-dev/crawlee-types").KeyValueStoreCollectionClient) | (() => import("@vladfrangu-dev/crawlee-types").RequestQueueCollectionClient); }; protected _addStorageToCache(storage: T): void; } export interface StorageManagerOptions { /** * SDK configuration instance, defaults to the static register. */ config?: Configuration; } //# sourceMappingURL=storage_manager.d.ts.map