StorageResponseInterface.d.ts 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. /** 文件元信息 */
  2. export interface StatObjectResult {
  3. [k: string]: any;
  4. /** 对象大小,单位为字节 */
  5. fsize?: number;
  6. /** 对象哈希值 */
  7. hash: string;
  8. /** 对象 MIME 类型 */
  9. mimeType: string;
  10. /** 对象存储类型,`0` 表示普通存储,`1` 表示低频存储,`2` 表示归档存储 */
  11. type: number;
  12. /** 文件上传时间,UNIX 时间戳格式,单位为 100 纳秒 */
  13. putTime: number;
  14. /** 资源内容的唯一属主标识 */
  15. endUser?: string;
  16. /** 归档存储文件的解冻状态,`2` 表示解冻完成,`1` 表示解冻中;归档文件冻结时,不返回该字段 */
  17. restoreStatus?: number;
  18. /** 文件状态。`1` 表示禁用;只有禁用状态的文件才会返回该字段 */
  19. status?: number;
  20. /** 对象 MD5 值,只有通过直传文件和追加文件 API 上传的文件,服务端确保有该字段返回 */
  21. md5?: string;
  22. /** 文件过期删除日期,UNIX 时间戳格式,文件在设置过期时间后才会返回该字段 */
  23. expiration?: number;
  24. /** 文件生命周期中转为低频存储的日期,UNIX 时间戳格式,文件在设置转低频后才会返回该字段 */
  25. transitionToIA?: number;
  26. /** 文件生命周期中转为归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段 */
  27. transitionToARCHIVE?: number;
  28. /** 文件生命周期中转为深度归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段 */
  29. transitionToDeepArchive?: number;
  30. /** 文件生命周期中转为归档直读存储的日期,UNIX 时间戳格式,文件在设置转归档直读后才会返回该字段 */
  31. transitionToArchiveIR?: number;
  32. /** 对象存储元信息 */
  33. 'x-qn-meta'?: Record<string, string>;
  34. /** 每个分片的大小,如没有指定 need_parts 参数则不返回 */
  35. parts?: number[];
  36. }
  37. /** 对象条目,包含对象的元信息 */
  38. interface ListedObjectEntry {
  39. [k: string]: any;
  40. /** 对象名称 */
  41. key: string;
  42. /** 文件上传时间,UNIX 时间戳格式,单位为 100 纳秒 */
  43. putTime: number;
  44. /** 文件的哈希值 */
  45. hash: string;
  46. /** 对象大小,单位为字节 */
  47. fsize?: number;
  48. /** 对象 MIME 类型 */
  49. mimeType: string;
  50. /** 对象存储类型,`0` 表示普通存储,`1` 表示低频存储,`2` 表示归档存储 */
  51. type?: number;
  52. /** 资源内容的唯一属主标识 */
  53. endUser?: string;
  54. /** 文件的存储状态,即禁用状态和启用状态间的的互相转换,`0` 表示启用,`1`表示禁用 */
  55. status?: number;
  56. /** 对象 MD5 值,只有通过直传文件和追加文件 API 上传的文件,服务端确保有该字段返回 */
  57. md5?: string;
  58. /** 每个分片的大小,如没有指定 need_parts 参数则不返回 */
  59. parts?: number[];
  60. }
  61. /** 本次列举的对象条目信息 */
  62. export interface GetObjectsResult {
  63. [k: string]: any;
  64. /** 有剩余条目则返回非空字符串,作为下一次列举的参数传入,如果没有剩余条目则返回空字符串 */
  65. marker?: string;
  66. /** 公共前缀的数组,如没有指定 delimiter 参数则不返回 */
  67. commonPrefixes?: string[];
  68. /** 条目的数组,不能用来判断是否还有剩余条目 */
  69. items: ListedObjectEntry[];
  70. }
  71. /** 存储空间列表 */
  72. export type GetBucketsResult = string[];
  73. /** 空间规则 */
  74. interface BucketRule {
  75. [k: string]: any;
  76. /** 空间规则名称 */
  77. name: string;
  78. /** 匹配的对象名称前缀 */
  79. prefix: string;
  80. /** 上传文件多少天后删除 */
  81. delete_after_days?: number;
  82. /** 文件上传多少天后转低频存储 */
  83. to_line_after_days?: number;
  84. /** 文件上传多少天后转归档存储 */
  85. to_archive_after_days?: number;
  86. /** 文件上传多少天后转深度归档存储 */
  87. to_deep_archive_after_days?: number;
  88. /** 文件上传多少天后转归档直读存储 */
  89. to_archive_ir_after_days?: number;
  90. /** 规则创建时间 */
  91. ctime: string;
  92. }
  93. /** 空间规则列表 */
  94. export type GetBucketRulesResult = BucketRule[];
  95. /** 跨域规则 */
  96. interface CorsRule {
  97. [k: string]: any;
  98. /** 允许的域名。必填;支持通配符 * ;*表示全部匹配;只有第一个 * 生效;需要设置 "Scheme";大小写敏感 */
  99. allowed_origin: string[];
  100. /** 允许的方法。必填;不支持通配符;大小写不敏感; */
  101. allowed_method: string[];
  102. allowed_header?: string[];
  103. /** 选填;不支持通配符;X-Log, X-Reqid 是默认会暴露的两个 header;其他的 header 如果没有设置,则不会暴露;大小写不敏感; */
  104. exposed_header?: string[];
  105. /** 结果可以缓存的时间。选填;空则不缓存 */
  106. max_age?: number;
  107. }
  108. /** 跨域规则列表 */
  109. export type GetBucketCorsRulesResult = CorsRule[];
  110. /** 抓取到的文件元信息 */
  111. export interface FetchObjectResult {
  112. [k: string]: any;
  113. /** 抓取的对象内容的 Etag 值 */
  114. hash: string;
  115. /** 抓取后保存的对象名称 */
  116. key: string;
  117. /** 对象大小,单位为字节 */
  118. fsize?: number;
  119. /** 对象 MIME 类型 */
  120. mimeType: string;
  121. }
  122. /** 管理指令的响应数据 */
  123. interface OperationResponseData {
  124. [k: string]: any;
  125. /** 管理指令的错误信息,仅在发生错误时才返回 */
  126. error?: string;
  127. /** 对象大小,单位为字节,仅对 stat 指令才有效 */
  128. fsize?: number;
  129. /** 对象哈希值,仅对 stat 指令才有效 */
  130. hash?: string;
  131. /** 对象 MIME 类型,仅对 stat 指令才有效 */
  132. mimeType?: string;
  133. /** 对象存储类型,`0` 表示普通存储,`1` 表示低频存储,`2` 表示归档存储,仅对 stat 指令才有效 */
  134. type?: number;
  135. /** 文件上传时间,UNIX 时间戳格式,单位为 100 纳秒,仅对 stat 指令才有效 */
  136. putTime?: number;
  137. /** 资源内容的唯一属主标识 */
  138. endUser?: string;
  139. /** 归档存储文件的解冻状态,`2` 表示解冻完成,`1` 表示解冻中;归档文件冻结时,不返回该字段,仅对 stat 指令才有效 */
  140. restoreStatus?: number;
  141. /** 文件状态。`1` 表示禁用;只有禁用状态的文件才会返回该字段,仅对 stat 指令才有效 */
  142. status?: number;
  143. /** 对象 MD5 值,只有通过直传文件和追加文件 API 上传的文件,服务端确保有该字段返回,仅对 stat 指令才有效 */
  144. md5?: string;
  145. /** 文件过期删除日期,UNIX 时间戳格式,文件在设置过期时间后才会返回该字段,仅对 stat 指令才有效 */
  146. expiration?: number;
  147. /** 文件生命周期中转为低频存储的日期,UNIX 时间戳格式,文件在设置转低频后才会返回该字段,仅对 stat 指令才有效 */
  148. transitionToIA?: number;
  149. /** 文件生命周期中转为归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段,仅对 stat 指令才有效 */
  150. transitionToARCHIVE?: number;
  151. /** 文件生命周期中转为深度归档存储的日期,UNIX 时间戳格式,文件在设置转归档后才会返回该字段,仅对 stat 指令才有效 */
  152. transitionToDeepArchive?: number;
  153. /** 文件生命周期中转为归档直读存储的日期,UNIX 时间戳格式,文件在设置转归档直读后才会返回该字段,仅对 stat 指令才有效 */
  154. transitionToArchiveIR?: number;
  155. }
  156. /** 每个管理指令的响应信息 */
  157. interface OperationResponse {
  158. [k: string]: any;
  159. /** 响应状态码 */
  160. code: number;
  161. /** 响应数据 */
  162. data?: OperationResponseData;
  163. }
  164. /** 所有管理指令的响应信息 */
  165. export type BatchOpsResult = OperationResponse[];
  166. interface BucketEvent {
  167. [k: string]: any;
  168. name: string;
  169. prefix: string;
  170. suffix: string;
  171. events: string[];
  172. callback_urls: string[];
  173. access_key?: string;
  174. host?: string;
  175. ctime: string;
  176. }
  177. export type GetBucketEventsResult = BucketEvent[];
  178. interface AntiLeech {
  179. [k: string]: any;
  180. no_refer: boolean;
  181. anti_leech_mode: number;
  182. anti_leech_used: boolean;
  183. source_enabled: boolean;
  184. }
  185. interface BucketDomainV3 {
  186. [k: string]: any;
  187. domain: string;
  188. tbl: string;
  189. owner: number;
  190. ctime: number;
  191. utime: number;
  192. antileech: AntiLeech;
  193. domainType?: number;
  194. }
  195. export type GetBucketDomainsV3Result = BucketDomainV3[];
  196. export interface GetBucketInfoV2Result {
  197. [k: string]: any;
  198. source: string;
  199. host: string;
  200. protected: number;
  201. private: number;
  202. no_index_page: number;
  203. max_age: number;
  204. separator: string;
  205. styles: Record<string, string>;
  206. anti_leech_mode: number;
  207. token_anti_leech: number;
  208. refer_wl: string[];
  209. refer_bl: string[];
  210. source_enabled: boolean;
  211. no_refer: boolean;
  212. mac_key: string;
  213. mac_key2: string;
  214. remark: string;
  215. ctime: string;
  216. }
  217. export interface GetBucketQuotaResult {
  218. [k: string]: any;
  219. size: number;
  220. count: number;
  221. }