UNPKG

1.04 kBTypeScriptView Raw
1/// <reference types="request" />
2import request = require('request');
3export declare enum RepoCredentialsType {
4 BASIC = 0,
5 TOKEN = 1,
6}
7export interface RepoCredentials {
8 authType: string;
9 name: string;
10 description?: string;
11 username?: string;
12 password?: string;
13 token?: string;
14}
15export interface Repository {
16 name: string;
17 fullName: string;
18 description?: string;
19 downloadUrl: string;
20}
21export interface RepoVersion {
22 name: string;
23 message: string;
24 date: Date;
25 author: {
26 name: string;
27 username: string;
28 avatar: string;
29 };
30}
31export interface RepositoryTeam {
32 name: string;
33 displayName: string;
34}
35export 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}