/**
* Copyright 2023 Kapeta Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
///
import { Task } from './taskManager';
import { SourceOfChange } from './types';
import { EventEmitter } from 'node:events';
declare class RepositoryManager extends EventEmitter {
private _registryService;
private watcher;
constructor();
listenForChanges(): void;
stopListening(): Promise;
/**
* Setting the source of change helps us know
* how to react to changes in the UI.
*/
setSourceOfChangeFor(file: string, source: SourceOfChange): Promise;
clearSourceOfChangeFor(file: string): Promise;
ensureDefaultProviders(): Promise;
/**
* Will go through all available assets and get a list of
* providers that are not referenced anywhere.
*
* It will also make sure to not include the latest version of an asset.
*
*/
getUnusedProviders(): Promise;
getUpdatableAssets(allNames: string[]): Promise;
private scheduleInstallation;
ensureAsset(handle: string, name: string, version: string, wait?: boolean): Promise;
}
export declare const repositoryManager: RepositoryManager;
export {};