import { MetadataType } from '../metadataType';
import { TypeDefObj } from '../typeDefObj';
import { WorkspaceElement } from '../workspaceElement';
import { DecompositionConfig } from '../decompositionStrategy/decompositionConfig';
/**
 * Default type obj is any atomic (non-decomposed) metadata type
 */
export declare class DefaultMetadataType implements MetadataType {
    protected typeDefObj: TypeDefObj;
    private _debug;
    constructor(typeDefObj: TypeDefObj);
    getAggregateMetadataName(): string;
    getMetadataName(): string;
    getBaseTypeName(): string;
    isAddressable(): boolean;
    getDecompositionConfig(): DecompositionConfig;
    resolveSourcePath(sourcePath: string): string;
    getFullNameFromFilePath(filePath: string): string;
    getAggregateFullNameFromFilePath(filePath: string): string;
    getAggregateMetadataFilePathFromWorkspacePath(filePath: any): string;
    getDefaultAggregateMetadataPath(fullName: string, defaultSourceDir: string, bundleFileProperties: any): string;
    getAggregateMetadataPathInDir(dirName: string, fullName: string): string;
    getAggregateFullNameFromSourceMemberName(sourceMemberName: string): string;
    getAggregateFullNameFromWorkspaceFullName(workspaceFullName: string): string;
    getAggregateFullNameFromFileProperty(fileProperty: any, namespace: string): string;
    getMdapiMetadataPath(metadataFilePath: string, aggregateFullName: string, mdDir: string): string;
    protected getPathToMdapiSourceDir(aggregateFullName: string, mdDir: string): string;
    private static getPathWithMetadataExtension;
    protected getMdapiFormattedMetadataFileName(metadataFilePath: string): string;
    hasIndividuallyAddressableChildWorkspaceElements(): boolean;
    requiresIndividuallyAddressableMembersInPackage(): boolean;
    isStandardMember(workspaceFullName: string): boolean;
    getWorkspaceElementsToDelete(aggregateMetadataPath: string, fileProperty: any): WorkspaceElement[];
    getRetrievedMetadataPath(fileProperty: any, retrieveRoot: string, bundlefileProperties: any): string;
    protected validateRetrievedMetadataPathExists(retrievedMetadataPath: string): string;
    protected getRetrievedMetadataPathFromFileProperty(fileProperty: any, retrieveRoot: string): string;
    getRetrievedContentPath(fileProperty: any, retrieveRoot: string): string;
    getWorkspaceContentFilePath(metadataFilePath: any, retrievedContentFilePath: any): string;
    getOriginContentPathsForSourceConvert(metadataFilePath: string, workspaceVersion: string, unsupportedMimeTypes: string[], forceIgnore: any): Promise<string[]>;
    getMdapiContentPathForSourceConvert(originContentPath: string, aggregateFullName: string, mdDir: string): string;
    protected getMdapiFormattedContentPath(mdapiSourceDir: string, contentFileName: string): string;
    protected getMdapiFormattedContentFileName(originContentPath: string, aggregateFullName: string): string;
    isFolderType(): boolean;
    /**
     * @param {string} metadataFilePath
     * @returns {boolean}
     */
    mainContentFileExists(metadataFilePath: string): boolean;
    displayAggregateRemoteChangesOnly(): boolean;
    getExt(): string;
    sourceMemberFullNameCorrespondsWithWorkspaceFullName(sourceMemberFullName: string, workspaceFullName: string): boolean;
    protected sourceMemberFullNameConflictsWithWorkspaceFullName(sourceMemberFullName: string, workspaceFullName: string): boolean;
    handleSlashesForSourceMemberName(sourceMemberFullName: string): string;
    conflictDetected(remoteChangeType: string, remoteChangeFullName: string, workspaceFullName: string): boolean;
    trackRemoteChangeForSourceMemberName(sourceMemberName: string): boolean;
    onlyDisplayOneConflictPerAggregate(): boolean;
    getDisplayPathForLocalConflict(workspaceFilePath: string): string;
    hasContent(): boolean;
    hasParent(): boolean;
    getAggregateFullNameFromComponentFailure(componentFailure: any): string;
    getAggregateFullNameFromMdapiPackagePath(mdapiPackagePath: string): string;
    getDisplayNameForRemoteChange(sourceMemberType: string): string;
    deleteSupported(workspaceFullName: string): boolean;
    getChildMetadataTypes(): string[];
    entityExistsInWorkspace(metadataFilePath: string): boolean;
    validateDeletedContentPath(deletedContentPath: string, contentPaths: string[], metadataRegistry: any): void;
    isContentPath(sourcePath: string): boolean;
    getComponentFailureWorkspaceContentPath(metadataFilePath: string, workspaceContentPaths: string[]): string;
    getWorkspaceFullNameFromComponentFailure(componentFailure: any): string;
    getDeprecationMessage(fullName?: string): string;
    componentFailureIsInMetadataFile(componentFileName: string): boolean;
    parseSourceMemberForMetadataRetrieve(sourceMemberName: string, sourceMemberType: string, isNameObsolete: boolean): any;
    isContainerValid(container: any): boolean;
    shouldGetMetadataTranslation(): boolean;
    shouldDeleteWorkspaceAggregate(metadataType: string): boolean;
    protected debug(message: () => string): void;
}
