import { CommonPullRequestInfo, PullRequestMessageRequest, PullRequestMessageResult } from "./index.js";
export declare abstract class GitProviderRoot {
    serverUrl: string | null;
    token: string;
    getLabel(): string;
    getBranchDeploymentCheckId(gitBranch: string): Promise<string | null>;
    getPullRequestDeploymentCheckId(): Promise<string | null>;
    getCurrentJobUrl(): Promise<string | null>;
    getCurrentBranchUrl(): Promise<string | null>;
    supportsMermaidInPrMarkdown(): Promise<boolean>;
    supportsSvgAttachments(): Promise<boolean>;
    getPullRequestInfo(): Promise<CommonPullRequestInfo | null>;
    uploadImage(image: string): Promise<any>;
    listPullRequests(filters?: {
        status?: string;
        targetBranch?: string;
        minDate?: Date;
    }, options?: {
        formatted?: boolean;
    }): Promise<any | null>;
    postPullRequestMessage(prMessage: PullRequestMessageRequest): Promise<PullRequestMessageResult>;
    tryPostPullRequestMessage(prMessage: PullRequestMessageRequest): Promise<PullRequestMessageResult>;
    uploadAndReplaceImageReferences(markdownBody: string, sourceFile?: string | null): Promise<string>;
    protected completeWithCustomBehaviors(pullRequestInfo: CommonPullRequestInfo): CommonPullRequestInfo;
}
