import { Logger } from '@flxbl-io/sfp-logger';
export declare class PackageDiffOptions {
    skipPackageDescriptorChange?: boolean;
    useLatestGitTags?: boolean;
    packagesMappedToLastKnownCommitId?: {
        [p: string]: string;
    };
    pathToReplacementForceIgnore?: string;
    useBranchCompare?: boolean;
    branch?: string;
    baseBranch?: string;
    fallBackToNoTag?: boolean;
}
export default class PackageDiffImpl {
    private logger;
    private sfdx_package;
    private project_directory;
    private diffOptions?;
    constructor(logger: Logger, sfdx_package: string, project_directory: string | null, diffOptions?: PackageDiffOptions);
    exec(): Promise<{
        isToBeBuilt: boolean;
        reason: string;
        tag?: string;
    }>;
    private applyForceIgnoreToModifiedFiles;
    private getLatestTagFromGit;
    private isPackageDescriptorChanged;
    private getLatestCommitFromMap;
}
