import { Arguments, Command, CommandConfigOptions, Conf, Package, ProjectGraphProjectNodeWithPackage } from "@lerna/core";
export declare function factory(argv: Arguments<PublishCommandConfigOptions>): PublishCommand;
interface PublishCommandConfigOptions extends CommandConfigOptions {
    bump?: string;
    exact?: boolean;
    gitHead?: string;
    gitReset?: boolean;
    tagVersionPrefix?: string;
    verifyAccess?: boolean;
    lernaVersion?: string;
    includePrivate?: string[];
    skipNpm?: boolean;
    buildMetadata?: string;
    canary?: boolean;
    requireScripts?: boolean;
    legacyAuth?: string;
    otp?: string;
    registry?: string;
    ignorePrepublish?: boolean;
    ignoreScripts?: boolean;
    preid?: string;
    ignoreChanges?: string[];
    forcePublish?: boolean | string | string[];
    includeMergedTags?: boolean;
    contents?: string;
    tempTag?: string;
    summaryFile?: string;
    yes?: boolean;
    granularPathspec?: boolean;
    rejectCycles?: boolean;
    distTag?: string;
    preDistTag?: string;
    throttle?: boolean;
    throttleSize?: number;
    throttleDelay?: number;
}
export declare class PublishCommand extends Command {
    options: PublishCommandConfigOptions;
    savePrefix?: string;
    tagPrefix?: string;
    gitReset?: boolean;
    npmSession?: string;
    verifyAccess?: boolean;
    conf?: Conf;
    otpCache?: {
        otp: string;
    };
    hasRootedLeaf?: boolean;
    runPackageLifecycle?: (pkg: unknown, script: string) => Promise<void>;
    runRootLifecycle?: (script: string) => Promise<void> | void;
    updates?: ProjectGraphProjectNodeWithPackage[];
    projectsWithPackage?: ProjectGraphProjectNodeWithPackage[];
    updatesVersions?: Map<string, string>;
    packagesToPublish?: Package[];
    publishedPackages?: Package[];
    privatePackagesToPublish?: Package[];
    packagesToBeLicensed?: Package[];
    twoFactorAuthRequired?: boolean;
    private uniqueProvenanceUrls;
    get otherCommandConfigs(): string[];
    get requiresGit(): boolean;
    configureProperties(): void;
    get userAgent(): string;
    initialize(): Promise<any>;
    execute(): Promise<void>;
    private verifyWorkingTreeClean;
    private detectFromGit;
    private detectFromPackage;
    private detectCanaryVersions;
    private confirmPublish;
    private preparePrivatePackages;
    private restorePrivatePackages;
    private prepareLicenseActions;
    private prepareRegistryActions;
    private updateCanaryVersions;
    private resolveLocalDependencyLinks;
    private resolveWorkspaceDependencyLinks;
    private annotateGitHead;
    private serializeChanges;
    private resetChanges;
    private execScript;
    private removeTempLicensesOnError;
    private requestOneTimePassword;
    private topoMapPackages;
    private packUpdated;
    private publishPacked;
    private npmUpdateAsLatest;
    private getDistTag;
    private getPreDistTag;
    private filterPrivatePkgUpdates;
    private copyAssets;
    private getSummaryFilePath;
}
declare const commonJsExport: typeof factory & {
    PublishCommand: typeof PublishCommand;
};
export default commonJsExport;
export { commonJsExport as "module.exports" };
