import { Config } from './Config.js';
import { ConfigInterface } from '../types/Config.js';
import { Package } from './Package.js';
import { PackageVersion } from '../types/Package.js';
import { RegistryPackages, RegistryType } from '../types/Registry.js';
import { Base } from './Base.js';
export declare class Manager extends Base {
    protected config: Config;
    protected packages: Map<string, Package>;
    type: RegistryType;
    constructor(type: RegistryType, config?: ConfigInterface);
    addPackage(pkg: Package): void;
    filter(method: (pkgVersion: PackageVersion, pkg: Package) => boolean): Package[];
    getPackage(slug: string): Package | undefined;
    getReport(): any;
    listPackages(installed?: boolean): Package[];
    removePackage(slug: string): void;
    reset(): void;
    search(query: string): Package[];
    sync(): Promise<void>;
    toJSON(): RegistryPackages;
}
