import { type TModule } from "../core";
declare const resources: {
    users: import("../core").TResourceConfig<{
        getUser: {
            path: string;
        };
        getUserProjects: {
            path: string;
        };
        getUserSnippets: {
            path: string;
        };
        getUserEvents: {
            path: string;
        };
        getUserContributedProjects: {
            path: string;
        };
        getUserStarredProjects: {
            path: string;
        };
        getUserMemberships: {
            path: string;
        };
        getUserFollowers: {
            path: string;
        };
        getUserFollowing: {
            path: string;
        };
        getCurrentUser: {
            path: string;
        };
        searchUsers: {
            path: string;
            method: "GET";
        };
    }>;
    projects: import("../core").TResourceConfig<{
        getProject: {
            path: string;
        };
        getProjectCommits: {
            path: string;
        };
        getProjectCommit: {
            path: string;
        };
        getProjectBranches: {
            path: string;
        };
        getProjectTags: {
            path: string;
        };
        getProjectReleases: {
            path: string;
        };
        getProjectMembers: {
            path: string;
        };
        getProjectIssues: {
            path: string;
        };
        getProjectIssue: {
            path: string;
        };
        getProjectMergeRequests: {
            path: string;
        };
        getProjectMergeRequest: {
            path: string;
        };
        getProjectContributors: {
            path: string;
        };
        getProjectLanguages: {
            path: string;
        };
        getProjectRepository: {
            path: string;
        };
        getProjectFile: {
            path: string;
        };
        getProjectReadme: {
            path: string;
        };
        getProjectVariables: {
            path: string;
        };
        getProjectPipelines: {
            path: string;
        };
        getProjectJobs: {
            path: string;
        };
        getProjectEnvironments: {
            path: string;
        };
        createProject: {
            path: string;
            method: "POST";
        };
        updateProject: {
            path: string;
            method: "PUT";
        };
        deleteProject: {
            path: string;
            method: "DELETE";
        };
        createProjectIssue: {
            path: string;
            method: "POST";
        };
        updateProjectIssue: {
            path: string;
            method: "PUT";
        };
        createProjectMergeRequest: {
            path: string;
            method: "POST";
        };
        updateProjectMergeRequest: {
            path: string;
            method: "PUT";
        };
        starProject: {
            path: string;
            method: "POST";
        };
        unstarProject: {
            path: string;
            method: "POST";
        };
        forkProject: {
            path: string;
            method: "POST";
        };
    }>;
    groups: import("../core").TResourceConfig<{
        getGroup: {
            path: string;
        };
        getGroupProjects: {
            path: string;
        };
        getGroupMembers: {
            path: string;
        };
        getGroupSubgroups: {
            path: string;
        };
        getGroupVariables: {
            path: string;
        };
        getGroupEpics: {
            path: string;
        };
        createGroup: {
            path: string;
            method: "POST";
        };
        updateGroup: {
            path: string;
            method: "PUT";
        };
        deleteGroup: {
            path: string;
            method: "DELETE";
        };
        searchGroups: {
            path: string;
            method: "GET";
        };
    }>;
    search: import("../core").TResourceConfig<{
        searchProjects: {
            path: string;
            method: "GET";
        };
        searchGroups: {
            path: string;
            method: "GET";
        };
        searchUsers: {
            path: string;
            method: "GET";
        };
        searchSnippets: {
            path: string;
            method: "GET";
        };
        searchIssues: {
            path: string;
            method: "GET";
        };
        searchMergeRequests: {
            path: string;
            method: "GET";
        };
        searchMilestones: {
            path: string;
            method: "GET";
        };
        searchWiki: {
            path: string;
            method: "GET";
        };
        searchCommits: {
            path: string;
            method: "GET";
        };
        searchBlobs: {
            path: string;
            method: "GET";
        };
    }>;
    snippets: import("../core").TResourceConfig<{
        getPublicSnippets: {
            path: string;
        };
        getSnippet: {
            path: string;
        };
        getSnippetContent: {
            path: string;
        };
        createSnippet: {
            path: string;
            method: "POST";
        };
        updateSnippet: {
            path: string;
            method: "PUT";
        };
        deleteSnippet: {
            path: string;
            method: "DELETE";
        };
        getUserSnippets: {
            path: string;
        };
    }>;
    issues: import("../core").TResourceConfig<{
        getIssues: {
            path: string;
        };
        getIssue: {
            path: string;
        };
        createIssue: {
            path: string;
            method: "POST";
        };
        updateIssue: {
            path: string;
            method: "PUT";
        };
        deleteIssue: {
            path: string;
            method: "DELETE";
        };
        getIssueNotes: {
            path: string;
        };
        createIssueNote: {
            path: string;
            method: "POST";
        };
    }>;
    merge_requests: import("../core").TResourceConfig<{
        getMergeRequests: {
            path: string;
        };
        getMergeRequest: {
            path: string;
        };
        createMergeRequest: {
            path: string;
            method: "POST";
        };
        updateMergeRequest: {
            path: string;
            method: "PUT";
        };
        deleteMergeRequest: {
            path: string;
            method: "DELETE";
        };
        acceptMergeRequest: {
            path: string;
            method: "PUT";
        };
        getMergeRequestNotes: {
            path: string;
        };
        createMergeRequestNote: {
            path: string;
            method: "POST";
        };
        getMergeRequestCommits: {
            path: string;
        };
        getMergeRequestChanges: {
            path: string;
        };
    }>;
    pipelines: import("../core").TResourceConfig<{
        getPipelines: {
            path: string;
        };
        getPipeline: {
            path: string;
        };
        createPipeline: {
            path: string;
            method: "POST";
        };
        deletePipeline: {
            path: string;
            method: "DELETE";
        };
        retryPipeline: {
            path: string;
            method: "POST";
        };
        cancelPipeline: {
            path: string;
            method: "POST";
        };
        getPipelineJobs: {
            path: string;
        };
        getPipelineVariables: {
            path: string;
        };
    }>;
    activity: import("../core").TResourceConfig<{
        getEvents: {
            path: string;
        };
        getUserEvents: {
            path: string;
        };
        getProjectEvents: {
            path: string;
        };
        getTodos: {
            path: string;
        };
        markTodoAsDone: {
            path: string;
            method: "POST";
        };
        markAllTodosAsDone: {
            path: string;
            method: "POST";
        };
    }>;
    me: import("../core").TResourceConfig<{
        getCurrentUser: {
            path: string;
        };
        getUserProjects: {
            path: string;
        };
        getUserStarredProjects: {
            path: string;
        };
        getUserGPGKeys: {
            path: string;
        };
        getUserSSHKeys: {
            path: string;
        };
        addSSHKey: {
            path: string;
            method: "POST";
        };
        deleteSSHKey: {
            path: string;
            method: "DELETE";
        };
        getUserEmails: {
            path: string;
        };
        addEmail: {
            path: string;
            method: "POST";
        };
        deleteEmail: {
            path: string;
            method: "DELETE";
        };
        getUserMemberships: {
            path: string;
        };
        getUserStatus: {
            path: string;
        };
        setUserStatus: {
            path: string;
            method: "PUT";
        };
    }>;
};
type TGitLabModule = TModule<typeof resources> & {
    getUser: (id: string | number) => Promise<any>;
    getProject: (id: string | number) => Promise<any>;
    getProjectFromUrl: (url: string) => Promise<any>;
    getUserCommits: (userId: string | number, options?: any) => Promise<any>;
    getUserLatestCommit: (userId: string | number) => Promise<any>;
    getUserCommitsInTimeframe: (userId: string | number, timeframe: string) => Promise<any>;
    getProjectStars: (projectId: string | number) => Promise<number>;
    getUserStarredCount: (userId: string | number) => Promise<number>;
    getUserStats: (userId: string | number) => Promise<any>;
    searchProjects: (query: string, options?: any) => Promise<any>;
    getUserActivity: (userId: string | number, options?: any) => Promise<any>;
    getGroup: (id: string | number) => Promise<any>;
    searchGroups: (query: string, options?: any) => Promise<any>;
    getCurrentUser: () => Promise<any>;
};
export declare function GitLab(config: {
    token: string;
}): TGitLabModule;
export {};
//# sourceMappingURL=index.d.ts.map