export interface ReleaseChainOptions {
    metaRepoUrl: string;
    branch: string;
    currentRepo?: string;
    packageName: string;
    workspace?: string;
    token?: string;
    submoduleFile?: string;
    submodulePath?: string;
    targetBaseBranch?: string;
}
export interface ReleaseChainDispatchOptions {
    metaRepoUrl: string;
    branch: string;
    workflowFile?: string;
    repoSlug?: string;
    currentRepo?: string;
    token?: string;
    ref?: string;
    targetBaseBranch?: string;
}
export declare class ReleaseChainRunner {
    private readonly options;
    private readonly workspace;
    private readonly clonesRoot;
    private readonly token?;
    private readonly metaRepoSlug;
    private readonly currentRepo?;
    constructor(options: ReleaseChainOptions);
    run(): Promise<void>;
    private evaluateModule;
    private cloneRepository;
    private checkoutTargetBranch;
    private loadSubmodules;
    private runCommand;
    private githubRequest;
    private findExistingPr;
    private acceptPullRequest;
    private createPullRequest;
    private getDefaultBranch;
}
export declare function runReleaseChain(options: ReleaseChainOptions): Promise<void>;
export declare function dispatchReleaseChainWorkflow(options: ReleaseChainDispatchOptions): Promise<void>;
