1 |
|
2 | import request = require('request');
|
3 | export declare enum RepoCredentialsType {
|
4 | BASIC = 0,
|
5 | TOKEN = 1,
|
6 | }
|
7 | export interface RepoCredentials {
|
8 | authType: string;
|
9 | name: string;
|
10 | description?: string;
|
11 | username?: string;
|
12 | password?: string;
|
13 | token?: string;
|
14 | }
|
15 | export interface Repository {
|
16 | name: string;
|
17 | fullName: string;
|
18 | description?: string;
|
19 | downloadUrl: string;
|
20 | }
|
21 | export interface RepoVersion {
|
22 | name: string;
|
23 | message: string;
|
24 | date: Date;
|
25 | author: {
|
26 | name: string;
|
27 | username: string;
|
28 | avatar: string;
|
29 | };
|
30 | }
|
31 | export interface RepositoryTeam {
|
32 | name: string;
|
33 | displayName: string;
|
34 | }
|
35 | export declare abstract class CodeRepository {
|
36 | abstract listRepositories(account: string): Promise<Repository[]>;
|
37 | abstract listVersions(repoName: string): Promise<RepoVersion[]>;
|
38 | abstract downloadVersion(account: string, repoName: string, version: string): request.Request;
|
39 | abstract listTeams(): Promise<RepositoryTeam[]>;
|
40 | }
|