-
Notifications
You must be signed in to change notification settings - Fork 190
/
StorageResponseInterface.d.ts
239 lines (221 loc) · 8.95 KB
/
StorageResponseInterface.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
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
/** 文件元信息 */
export interface StatObjectResult {
[k: string]: any;
/** 对象大小,单位为字节 */
fsize?: number;
/** 对象哈希值 */
hash: string;
/** 对象 MIME 类型 */
mimeType: string;
/** 对象存储类型,`0` 表示普通存储,`1` 表示低频存储,`2` 表示归档存储 */
type: number;
/** 文件上传时间,UNIX 时间戳格式,单位为 100 纳秒 */
putTime: number;
/** 资源内容的唯一属主标识 */
endUser?: string;
/** 归档存储文件的解冻状态,`2` 表示解冻完成,`1` 表示解冻中;归档文件冻结时,不返回该字段 */
restoreStatus?: number;
/** 文件状态。`1` 表示禁用;只有禁用状态的文件才会返回该字段 */
status?: number;
/** 对象 MD5 值,只有通过直传文件和追加文件 API 上传的文件,服务端确保有该字段返回 */
md5?: string;
/** 文件过期删除日期,UNIX 时间戳格式,文件在设置过期时间后才会返回该字段 */
expiration?: number;
/** 文件生命周期中转为低频存储的日期,UNIX 时间戳格式,文件在设置转低频后才会返回该字段 */
transitionToIA?: number;
/** 文件生命周期中转为归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段 */
transitionToARCHIVE?: number;
/** 文件生命周期中转为深度归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段 */
transitionToDeepArchive?: number;
/** 文件生命周期中转为归档直读存储的日期,UNIX 时间戳格式,文件在设置转归档直读后才会返回该字段 */
transitionToArchiveIR?: number;
/** 对象存储元信息 */
'x-qn-meta'?: Record<string, string>;
/** 每个分片的大小,如没有指定 need_parts 参数则不返回 */
parts?: number[];
}
/** 对象条目,包含对象的元信息 */
interface ListedObjectEntry {
[k: string]: any;
/** 对象名称 */
key: string;
/** 文件上传时间,UNIX 时间戳格式,单位为 100 纳秒 */
putTime: number;
/** 文件的哈希值 */
hash: string;
/** 对象大小,单位为字节 */
fsize?: number;
/** 对象 MIME 类型 */
mimeType: string;
/** 对象存储类型,`0` 表示普通存储,`1` 表示低频存储,`2` 表示归档存储 */
type?: number;
/** 资源内容的唯一属主标识 */
endUser?: string;
/** 文件的存储状态,即禁用状态和启用状态间的的互相转换,`0` 表示启用,`1`表示禁用 */
status?: number;
/** 对象 MD5 值,只有通过直传文件和追加文件 API 上传的文件,服务端确保有该字段返回 */
md5?: string;
/** 每个分片的大小,如没有指定 need_parts 参数则不返回 */
parts?: number[];
}
/** 本次列举的对象条目信息 */
export interface GetObjectsResult {
[k: string]: any;
/** 有剩余条目则返回非空字符串,作为下一次列举的参数传入,如果没有剩余条目则返回空字符串 */
marker?: string;
/** 公共前缀的数组,如没有指定 delimiter 参数则不返回 */
commonPrefixes?: string[];
/** 条目的数组,不能用来判断是否还有剩余条目 */
items: ListedObjectEntry[];
}
/** 存储空间列表 */
export type GetBucketsResult = string[];
/** 空间规则 */
interface BucketRule {
[k: string]: any;
/** 空间规则名称 */
name: string;
/** 匹配的对象名称前缀 */
prefix: string;
/** 上传文件多少天后删除 */
delete_after_days?: number;
/** 文件上传多少天后转低频存储 */
to_line_after_days?: number;
/** 文件上传多少天后转归档存储 */
to_archive_after_days?: number;
/** 文件上传多少天后转深度归档存储 */
to_deep_archive_after_days?: number;
/** 文件上传多少天后转归档直读存储 */
to_archive_ir_after_days?: number;
/** 规则创建时间 */
ctime: string;
}
/** 空间规则列表 */
export type GetBucketRulesResult = BucketRule[];
/** 跨域规则 */
interface CorsRule {
[k: string]: any;
/** 允许的域名。必填;支持通配符 * ;*表示全部匹配;只有第一个 * 生效;需要设置 "Scheme";大小写敏感 */
allowed_origin: string[];
/** 允许的方法。必填;不支持通配符;大小写不敏感; */
allowed_method: string[];
allowed_header?: string[];
/** 选填;不支持通配符;X-Log, X-Reqid 是默认会暴露的两个 header;其他的 header 如果没有设置,则不会暴露;大小写不敏感; */
exposed_header?: string[];
/** 结果可以缓存的时间。选填;空则不缓存 */
max_age?: number;
}
/** 跨域规则列表 */
export type GetBucketCorsRulesResult = CorsRule[];
/** 抓取到的文件元信息 */
export interface FetchObjectResult {
[k: string]: any;
/** 抓取的对象内容的 Etag 值 */
hash: string;
/** 抓取后保存的对象名称 */
key: string;
/** 对象大小,单位为字节 */
fsize?: number;
/** 对象 MIME 类型 */
mimeType: string;
}
/** 管理指令的响应数据 */
interface OperationResponseData {
[k: string]: any;
/** 管理指令的错误信息,仅在发生错误时才返回 */
error?: string;
/** 对象大小,单位为字节,仅对 stat 指令才有效 */
fsize?: number;
/** 对象哈希值,仅对 stat 指令才有效 */
hash?: string;
/** 对象 MIME 类型,仅对 stat 指令才有效 */
mimeType?: string;
/** 对象存储类型,`0` 表示普通存储,`1` 表示低频存储,`2` 表示归档存储,仅对 stat 指令才有效 */
type?: number;
/** 文件上传时间,UNIX 时间戳格式,单位为 100 纳秒,仅对 stat 指令才有效 */
putTime?: number;
/** 资源内容的唯一属主标识 */
endUser?: string;
/** 归档存储文件的解冻状态,`2` 表示解冻完成,`1` 表示解冻中;归档文件冻结时,不返回该字段,仅对 stat 指令才有效 */
restoreStatus?: number;
/** 文件状态。`1` 表示禁用;只有禁用状态的文件才会返回该字段,仅对 stat 指令才有效 */
status?: number;
/** 对象 MD5 值,只有通过直传文件和追加文件 API 上传的文件,服务端确保有该字段返回,仅对 stat 指令才有效 */
md5?: string;
/** 文件过期删除日期,UNIX 时间戳格式,文件在设置过期时间后才会返回该字段,仅对 stat 指令才有效 */
expiration?: number;
/** 文件生命周期中转为低频存储的日期,UNIX 时间戳格式,文件在设置转低频后才会返回该字段,仅对 stat 指令才有效 */
transitionToIA?: number;
/** 文件生命周期中转为归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段,仅对 stat 指令才有效 */
transitionToARCHIVE?: number;
/** 文件生命周期中转为深度归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段,仅对 stat 指令才有效 */
transitionToDeepArchive?: number;
/** 文件生命周期中转为归档直读存储的日期,UNIX 时间戳格式,文件在设置转归档直读后才会返回该字段,仅对 stat 指令才有效 */
transitionToArchiveIR?: number;
}
/** 每个管理指令的响应信息 */
interface OperationResponse {
[k: string]: any;
/** 响应状态码 */
code: number;
/** 响应数据 */
data?: OperationResponseData;
}
/** 所有管理指令的响应信息 */
export type BatchOpsResult = OperationResponse[];
interface BucketEvent {
[k: string]: any;
name: string;
prefix: string;
suffix: string;
events: string[];
callback_urls: string[];
access_key?: string;
host?: string;
ctime: string;
}
export type GetBucketEventsResult = BucketEvent[];
interface AntiLeech {
[k: string]: any;
no_refer: boolean;
anti_leech_mode: number;
anti_leech_used: boolean;
source_enabled: boolean;
}
interface BucketDomainV3 {
[k: string]: any;
domain: string;
tbl: string;
owner: number;
ctime: number;
utime: number;
antileech: AntiLeech;
domainType?: number;
}
export type GetBucketDomainsV3Result = BucketDomainV3[];
export interface GetBucketInfoV2Result {
[k: string]: any;
source: string;
host: string;
protected: number;
private: number;
no_index_page: number;
max_age: number;
separator: string;
styles: Record<string, string>;
anti_leech_mode: number;
token_anti_leech: number;
refer_wl: string[];
refer_bl: string[];
source_enabled: boolean;
no_refer: boolean;
mac_key: string;
mac_key2: string;
remark: string;
ctime: string;
}
export interface GetBucketQuotaResult {
[k: string]: any;
size: number;
count: number;
}