import { Deprecate, DistTagAdd, DistTagRm, Package, Ping, WhoAmI } from "trm-registry-types";
import { AbstractRegistry } from "./AbstractRegistry";
import { RegistryType } from "./RegistryType";
import { TrmArtifact } from "../trmPackage";
export declare const LOCAL_RESERVED_KEYWORD = "local";
export declare class FileSystem implements AbstractRegistry {
    private _filePath?;
    endpoint: string;
    name: string;
    private _artifact;
    constructor(_filePath?: string);
    compare(registry: AbstractRegistry): boolean;
    getRegistryType(): RegistryType;
    authenticate(defaultData: any): Promise<AbstractRegistry>;
    getAuthData(): any;
    ping(): Promise<Ping>;
    whoAmI(): Promise<WhoAmI>;
    getPackage(fullName: string, version: string): Promise<Package>;
    downloadArtifact(fullName: string, version: string): Promise<TrmArtifact>;
    getArtifact(name: string, version?: string): Promise<TrmArtifact>;
    validatePublish(fullName: string, version: string): Promise<void>;
    publish(fullName: string, version: string, artifact: TrmArtifact, readme?: string): Promise<Package>;
    unpublish(fullName: string, version: string): Promise<void>;
    deprecate(fullName: string, version: string, deprecate: Deprecate): Promise<void>;
    addDistTag(fullName: string, distTag: DistTagAdd): Promise<void>;
    rmDistTag(fullName: string, distTag: DistTagRm): Promise<void>;
    contents(fullName: string, version: string): Promise<any>;
}
