import { Logger } from 'winston';
import { ExecutionContext } from '@dolittle/sdk.execution';
import { Cancellation } from '@dolittle/sdk.resilience';
import { Tenant } from '@dolittle/sdk.tenancy';
import { ResourcesClient } from '@dolittle/contracts/Runtime/Resources/Resources_grpc_pb';
import { IResourcesBuilder } from '../IResourcesBuilder';
import { IFetchResources } from './IFetchResources';
/**
 * Represents an implementation of {@link IFetchResources}.
 */
export declare class ResourcesFetcher extends IFetchResources {
    private readonly _mongoDB;
    /**
     * Initialises a new instance of the {@link ResourcesFetcher} class.
     * @param {ResourcesClient} client - The resources client to make requests to the Runtime with.
     * @param {ExecutionContext} executionContext - The base execution context for the client.
     * @param {Logger} logger - The logger to use for logging.
     */
    constructor(client: ResourcesClient, executionContext: ExecutionContext, logger: Logger);
    /** @inheritdoc */
    fetchResourcesFor(tenants: readonly Tenant[], cancellation?: Cancellation): Promise<IResourcesBuilder>;
}
//# sourceMappingURL=ResourcesFetcher.d.ts.map