-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.d.ts
159 lines (147 loc) · 3.42 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
/**
* 您的密钥
* 可从 <https://console.cloud.tencent.com/capi> 获取 SecretId 及 SecretKey
*/
interface Secret {
/** 密钥 id */
secretId: string;
/** 密钥 key */
secretKey: string;
}
/** 返回结果 */
interface ReplyData<T> {
/** 错误码 */
code: number;
/** 模块错误信息描述 */
message: string;
/** 英文错误信息 */
codeDesc: string;
/** 相关数据 */
data?: T;
}
/** Action 对应的名字 */
type actionNames =
| 'DescribleCdnHosts'
| 'GetHostInfoByHost'
| 'GetHostInfoById '
| 'RefreshCdnUrl'
| 'RefreshCdnDir'
| 'UpdateCache '
| 'UpdateCdnProject'
| 'UpdateCdnHost'
| 'UpdateCdnConfig'
| 'OfflineHost'
| 'AddCdnHost'
| 'OnlineHost'
| 'DeleteCdnHost'
| 'GenerateLogList'
| 'GetCdnRefreshLog'
| 'GetCdnStatTop'
| 'GetCdnStatusCode'
| 'DescribeCdnHostDetailedInfo'
| 'DescribeCdnHostInfo';
/** 刷新URL 参数 */
interface RefreshCdnUrlParams {
'urls.0': string;
'urls.1'?: string;
'urls.2'?: string;
'urls.3'?: string;
'urls.4'?: string;
'urls.5'?: string;
'urls.6'?: string;
'urls.7'?: string;
'urls.9'?: string;
[key: string]: string;
}
/** 刷新URL 响应数据 */
interface RefreshCdnUrlReplyData {
/** 此次刷新提交的URL数目 */
count: number;
/** 此次刷新任务对应的ID */
task_id: string;
}
/** 刷新URL 参数 */
interface RefreshCdnDirParams {
'dirs.0': string;
'dirs.1'?: string;
'dirs.2'?: string;
'dirs.3'?: string;
'dirs.4'?: string;
'dirs.5'?: string;
'dirs.6'?: string;
'dirs.7'?: string;
'dirs.9'?: string;
/**
* 目录刷新类型 (默认为 1)
* 1:刷新更新资源
* 2:刷新全部资源
*/
type: 1 | 2;
[key: string]: string | number;
}
/** 刷新记录查询 参数 */
interface GetCdnRefreshLogParams {
/** 查询开始时间,如 2017-11-29 00:00:00 */
startDate?: string;
/** 查询结束时间,如 2017-11-29 00:05:00 */
endDate?: string;
/** 根据提交刷新URL任务返回的 task_id 查询 */
taskId?: string;
/** 需要查询的域名 */
host?: string;
/** 需要查询的URL */
url?: string;
}
/** 刷新记录查询 log */
interface RefreshLog {
/** 编号 */
id: number;
/** 用户APP ID */
app_id: number;
/** 项目ID */
project_id: number;
/** 域名 */
host: string;
/**
* 刷新类型
* 0:代表URL刷新
* 1:代表目录刷新
*/
type: number;
/**
* 刷新结果
* 1:表示刷新成功
* 0:表示刷新中
* 若为负数,表示刷新失败
*/
status: number;
/** 本次刷新时提交的URL列表 */
url_list: string[];
/** 提交时间 */
datetime: string;
}
/** 刷新记录查询 响应数据 */
interface GetCdnRefreshLogReplyData {
total: number;
logs: RefreshLog[];
}
interface actionFn {
/** 刷新目录 */
(actionName: 'RefreshCdnDir', params: RefreshCdnDirParams): Promise<ReplyData<undefined>>;
/** 刷新URL */
(actionName: 'RefreshCdnUrl', params: RefreshCdnUrlParams): Promise<ReplyData<RefreshCdnUrlReplyData>>;
/** 刷新记录查询 */
(actionName: 'GetCdnRefreshLog', params: GetCdnRefreshLogParams): Promise<ReplyData<GetCdnRefreshLogReplyData>>;
/**
* 操作方法
* @param actionName - 方法名
* @param params - 参数
*/
(actionName: actionNames, params: object): Promise<ReplyData<any>>;
}
/**
* SDK 初始化方法
* @param secret - 密钥
*/
declare function qcloudSDK(secret: Secret): actionFn;
export = qcloudSDK;