import { GraphQLClient } from 'graphql-request';
import { AnyValue } from '../types/auto.js';
export declare class GitLabApi implements IGitApi, IProjectApi {
    repoVar: {
        owner: string;
        repo: string;
    };
    projectNumber: number | undefined;
    graphqlAuth: GraphQLClient;
    constructor(token: string, owner: string, repo: string, projectNumber?: number);
    getLabels(): Promise<never[]>;
    getMilestones(): Promise<never[]>;
    getIssue(issueNumber: string): Promise<{}>;
    getIssues(): Promise<never[]>;
    getIssuesWithFilter(filter: string): Promise<never[]>;
    createLabel(name: string, color?: string): Promise<{
        id: string;
        name: string;
        color: string;
    }>;
    createMilestone(title: string, state?: string, description?: string, dueOn?: string): Promise<{
        id: string;
        title: string;
        state: string;
        url: string;
    }>;
    searchIssues(title: string): Promise<IIssueObject[]>;
    updateMilestone(title: string, state?: string, description?: string, dueOn?: string): Promise<{
        id: string;
        title: string;
        state: string;
        url: string;
    }>;
    createIssue(title: string, state?: string, label?: string, body?: string, milestone?: string): Promise<{
        number: number;
    }>;
    moveIssue(issueNumber: string, state: string): Promise<boolean>;
    assignIssueToMe(issueNumber: string): Promise<boolean>;
    getUser(): Promise<{
        login: string;
        id: number;
    }>;
    graphqlQuery(query: string, vars: Record<string, AnyValue>): Promise<unknown>;
    getRepository(): Promise<void>;
    createPullRequest(branchName: string, title: string, body: string): Promise<boolean>;
    assignBranchToIssue(issueNumber: string, branchName: string, commitSha: string): Promise<boolean>;
}
