/** * 腾讯云智能媒资托管服务API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { Configuration } from '../configuration'; import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; import { type RequestArgs, BaseAPI } from '../base'; import type { CreateShare200Response } from '../models'; import type { CreateShareRequest } from '../models'; import type { GetShareDetail200Response } from '../models'; import type { GetShareUrlDetail200Response } from '../models'; import type { ListShareFiles200Response } from '../models'; import type { ListShares200Response } from '../models'; import type { SaveShareFile200Response } from '../models'; import type { SaveShareFile202Response } from '../models'; import type { SaveShareFile207Response } from '../models'; import type { SaveShareFileRequest } from '../models'; import type { SearchShares200Response } from '../models'; import type { SearchSharesRequest } from '../models'; import type { SetShareEnabledRequest } from '../models'; import type { UpdateShare200Response } from '../models'; import type { UpdateShareRequest } from '../models'; import type { VerifyExtractionCode200Response } from '../models'; import type { VerifyExtractionCodeRequest } from '../models'; /** * ShareApi - axios parameter creator */ export declare const ShareApiAxiosParamCreator: (configuration?: Configuration) => { /** * 用于创建外链分享,支持分享多个文件或目录。 - 要求权限:对分享的文件有权限即可 - 该接口用于创建外链分享,可以分享多个文件或目录; - 支持设置分享的各种配置,如有效期、提取码、访问权限等; - 创建成功后返回分享链接和相关信息; * @summary 创建分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} spaceId 空间 ID,如果媒体库为单租户模式,则该参数固定为连字符(-);如果媒体库为多租户模式,则必须指定该参数 * @param {CreateShareRequest} createShareRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ createShare: (libraryId: string, spaceId: string, createShareRequest: CreateShareRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于删除单个分享。 - 要求权限:admin 或 分享创建者; - 该接口用于删除已创建的分享; - 删除后的分享将无法恢复; * @summary 删除分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ deleteShare: (libraryId: string, shareId: string, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于下载分享中的文件。 - 需要通过验证提取码获取的分享访问令牌,如果外链要求禁止匿名用户访问,则验证提取码时需要在 body 携带 token 和 libraryId; - 该接口用于下载分享中的指定文件; - 必须指定要下载的文件 inode; - 调用成功后会增加该分享的下载计数; - 如果分享设置了下载次数限制(downloadLimit),超过限制后将无法下载; * @summary 分享文件下载接口 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {string} inodes 文件 inode 链,用 / 分隔,最后一个 inode 为要下载的文件,必选参数,不可为空,必须指向文件而非目录,最大层数64层 * @param {DownloadShareFileDownloadEnum} download 操作类型标识,固定值为 1 * @param {DownloadShareFileInternalDomainEnum} [internalDomain] 0 或 1,是否使用内网域名生成文件访问链接,可选参数,默认不使用;当设置为 1 时,返回的 URL 将使用内网域名,适用于同地域内网访问场景以提升访问速度 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ downloadShareFile: (shareCode: string, inodes: string, download: DownloadShareFileDownloadEnum, internalDomain?: DownloadShareFileInternalDomainEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于获取指定分享的详细信息。 - 要求权限:admin、space_admin 或分享创建者; - 该接口用于获取指定分享的完整详细信息; - 包含分享配置、使用统计、文件信息等; * @summary 获取分享详情 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {GetShareDetailDetailEnum} detail 标识为获取详情操作,固定值为 1 * @param {GetShareDetailWithFileInfoEnum} [withFileInfo] 0 或 1,是否返回文件信息,设置为 1 返回 fileInfo 字段,默认不返回 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareDetail: (libraryId: string, shareId: string, detail: GetShareDetailDetailEnum, withFileInfo?: GetShareDetailWithFileInfoEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于通过分享码获取分享的基本信息(无需认证)。 - 无需认证,公开访问接口; - 该接口用于在访问分享链接时获取分享的基本信息; - 通过分享 Token 获取分享的状态、权限等信息; - 用于在输入提取码之前展示分享的基本信息; * @summary 获取分享URL详情 * @param {string} shareToken 分享 Token,从分享链接中获取,必选参数,解析后作为 share 的唯一标识 * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareUrlDetail: (shareToken: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于列出分享中的文件和目录。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于获取分享中的文件列表; - 支持分页、排序; * @summary 分享文件列出接口 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {string} inodes 文件 inode 链,用 / 分隔多级目录的 inode,可选参数,为空时访问分享根目录,最大支持64层 * @param {ListShareFilesListEnum} list 操作类型标识,固定值为 1 * @param {number} [limit] 每页返回的数量,整数,可选参数,默认值为 10,取值范围 0-100(超过 100 会返回 InvalidParameter) * @param {string} [marker] 分页标记,字符串,用于获取下一页,可选参数,从上一次请求响应中获取,不传表示第一页 * @param {ListShareFilesOrderByEnum} [orderBy] 排序字段,可选值为 name(文件名)、size(文件大小)、updatedAt(更新时间)、空字符串(默认排序) * @param {ListShareFilesOrderByTypeEnum} [orderByType] 排序类型,可选值为 asc(升序)、desc(降序),默认值为 asc * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShareFiles: (shareCode: string, inodes: string, list: ListShareFilesListEnum, limit?: number, marker?: string, orderBy?: ListShareFilesOrderByEnum, orderByType?: ListShareFilesOrderByTypeEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于列出媒体库中的分享列表。 - 要求权限:admin、分享创建者; - 该接口用于获取媒体库中的分享列表; - 支持分页、排序; - 管理员可以按创建者进行筛选; - 对于 previewLimit 和 downloadLimit,只有分享的是只有单个文件的情况下,才会生效; - 当外链配置的 canPreview 为 false 时,配置的 previewLimit 和 used 等信息会返回 0,download 同理; * @summary 列出分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {number} [limit] 返回数量,默认为 10,最大为 100 * @param {string} [marker] 分页标记,用于获取下一页,不填则是第一页 * @param {ListSharesOrderByEnum} [orderBy] 排序字段,默认为 createTime * @param {ListSharesOrderByTypeEnum} [orderByType] 排序类型,asc 或 desc,默认为 asc * @param {string} [creatorId] 按创建者 ID 筛选,仅管理员指定有效 * @param {ListSharesWithFileInfoEnum} [withFileInfo] 0 或 1,是否返回文件信息,设置为 1 返回 fileInfo 字段,默认不返回 * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShares: (libraryId: string, accessToken?: string, librarySecret?: string, limit?: number, marker?: string, orderBy?: ListSharesOrderByEnum, orderByType?: ListSharesOrderByTypeEnum, creatorId?: string, withFileInfo?: ListSharesWithFileInfoEnum, options?: RawAxiosRequestConfig) => Promise; /** * 用于预览分享中的文件。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于预览分享中的指定文件; - 必须指定要预览的文件 inode; - 调用成功后会增加该分享的预览计数; - 如果分享设置了预览次数限制(previewLimit),超过限制后将无法预览; - 返回 302 重定向到实际的预览地址; * @summary 分享文件预览接口 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {string} inodes 文件 inode 链,用 / 分隔,最后一个 inode 为要预览的文件,必选参数,不可为空,必须指向文件而非目录,最大层数64层 * @param {PreviewShareFilePreviewEnum} preview 操作类型标识,固定值为 1 * @param {PreviewShareFileInternalDomainEnum} [internalDomain] 0 或 1,是否使用内网域名生成文件访问链接,可选参数,默认不使用;当设置为 1 时,返回的 URL 将使用内网域名,适用于同地域内网访问场景以提升访问速度 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ previewShareFile: (shareCode: string, inodes: string, preview: PreviewShareFilePreviewEnum, internalDomain?: PreviewShareFileInternalDomainEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于将分享中的文件或目录转存到用户自己的网盘空间。 - 需要用户认证,用户访问令牌通过请求的 accessToken 解析获取; - 需要通过验证提取码获取的分享访问令牌(ShareAccessToken); - 该接口用于将分享的文件或目录复制到用户指定的网盘目录中; - 支持同一目录下单个或多个文件/目录的批量转存; - 分享配置需要开启 canSaveToNetdisk 权限; - 转存到的目标空间需要用户具有上传权限; * @summary 分享文件转存 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {SaveShareFileSaveEnum} save 标识为转存操作,固定值为 1 * @param {SaveShareFileRequest} saveShareFileRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ saveShareFile: (shareCode: string, save: SaveShareFileSaveEnum, saveShareFileRequest: SaveShareFileRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于搜索媒体库中的分享,支持按名称模糊搜索、按创建者过滤、按时间范围过滤等。 - 要求权限:仅限管理员(admin),普通用户调用此接口将返回 403 NoPermission; - 当需要获取后续页时,传入 marker 参数进行翻页; - 本接口 QPS 使用上限为 10,此接口不可用于业务的高频操作页面; * @summary 搜索分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {SearchSharesRequest} searchSharesRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {number} [limit] 返回数量,默认为 10,最大为 50 * @param {string} [marker] 分页标记,用于获取下一页,不填则是第一页 * @param {*} [options] Override http request option. * @throws {RequiredError} */ searchShares: (libraryId: string, searchSharesRequest: SearchSharesRequest, accessToken?: string, librarySecret?: string, limit?: number, marker?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于禁用或启用指定的分享。 - 要求权限:admin、分享创建者; - 该接口用于禁用或启用已创建的分享; - 禁用后的分享将无法访问; - 可以通过该接口重新启用已禁用的分享; - adminEnabled 是管理员权限,只有管理员和群组管理员可以设置; - ownerEnabled 是创建者权限,创建者可以设置,或者已通过管理员权限检查的用户也可以设置; - 仅当 adminEnabled && ownerEnabled 时外链可用; * @summary 禁用或启用分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {SetShareEnabledSetEnabledEnum} setEnabled 标识为禁用或启用操作,固定值为 1 * @param {SetShareEnabledRequest} setShareEnabledRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ setShareEnabled: (libraryId: string, shareId: string, setEnabled: SetShareEnabledSetEnabledEnum, setShareEnabledRequest: SetShareEnabledRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于更新指定分享的配置信息。 - 要求权限:admin 或 分享创建者; - 该接口用于更新已创建的分享配置; - 可以修改分享名称和部分配置项; - 不允许修改 shareToUsers 字段; - 分享更新时会同步将 previewUsed 和 downloadUsed 置为 0,对于 userLimit 缩小场景,存量用户依旧可以访问; * @summary 更新分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {UpdateShareUpdateEnum} update 标识为更新操作,固定值为 1 * @param {UpdateShareRequest} updateShareRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ updateShare: (libraryId: string, shareId: string, update: UpdateShareUpdateEnum, updateShareRequest: UpdateShareRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig) => Promise; /** * 用于验证分享的提取码并获取访问令牌(无需认证)。 - 无需认证,公开访问接口; - 该接口用于验证分享的提取码; - 验证成功后返回访问令牌,用于后续访问分享内容; - 支持验证码验证(可选); - 如果分享要求登录,则需要提供访问令牌; * @summary 验证提取码 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {VerifyExtractionCodeRequest} verifyExtractionCodeRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ verifyExtractionCode: (shareCode: string, verifyExtractionCodeRequest: VerifyExtractionCodeRequest, options?: RawAxiosRequestConfig) => Promise; }; /** * ShareApi - functional programming interface */ export declare const ShareApiFp: (configuration?: Configuration) => { /** * 用于创建外链分享,支持分享多个文件或目录。 - 要求权限:对分享的文件有权限即可 - 该接口用于创建外链分享,可以分享多个文件或目录; - 支持设置分享的各种配置,如有效期、提取码、访问权限等; - 创建成功后返回分享链接和相关信息; * @summary 创建分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} spaceId 空间 ID,如果媒体库为单租户模式,则该参数固定为连字符(-);如果媒体库为多租户模式,则必须指定该参数 * @param {CreateShareRequest} createShareRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ createShare(libraryId: string, spaceId: string, createShareRequest: CreateShareRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于删除单个分享。 - 要求权限:admin 或 分享创建者; - 该接口用于删除已创建的分享; - 删除后的分享将无法恢复; * @summary 删除分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ deleteShare(libraryId: string, shareId: string, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于下载分享中的文件。 - 需要通过验证提取码获取的分享访问令牌,如果外链要求禁止匿名用户访问,则验证提取码时需要在 body 携带 token 和 libraryId; - 该接口用于下载分享中的指定文件; - 必须指定要下载的文件 inode; - 调用成功后会增加该分享的下载计数; - 如果分享设置了下载次数限制(downloadLimit),超过限制后将无法下载; * @summary 分享文件下载接口 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {string} inodes 文件 inode 链,用 / 分隔,最后一个 inode 为要下载的文件,必选参数,不可为空,必须指向文件而非目录,最大层数64层 * @param {DownloadShareFileDownloadEnum} download 操作类型标识,固定值为 1 * @param {DownloadShareFileInternalDomainEnum} [internalDomain] 0 或 1,是否使用内网域名生成文件访问链接,可选参数,默认不使用;当设置为 1 时,返回的 URL 将使用内网域名,适用于同地域内网访问场景以提升访问速度 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ downloadShareFile(shareCode: string, inodes: string, download: DownloadShareFileDownloadEnum, internalDomain?: DownloadShareFileInternalDomainEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于获取指定分享的详细信息。 - 要求权限:admin、space_admin 或分享创建者; - 该接口用于获取指定分享的完整详细信息; - 包含分享配置、使用统计、文件信息等; * @summary 获取分享详情 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {GetShareDetailDetailEnum} detail 标识为获取详情操作,固定值为 1 * @param {GetShareDetailWithFileInfoEnum} [withFileInfo] 0 或 1,是否返回文件信息,设置为 1 返回 fileInfo 字段,默认不返回 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareDetail(libraryId: string, shareId: string, detail: GetShareDetailDetailEnum, withFileInfo?: GetShareDetailWithFileInfoEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于通过分享码获取分享的基本信息(无需认证)。 - 无需认证,公开访问接口; - 该接口用于在访问分享链接时获取分享的基本信息; - 通过分享 Token 获取分享的状态、权限等信息; - 用于在输入提取码之前展示分享的基本信息; * @summary 获取分享URL详情 * @param {string} shareToken 分享 Token,从分享链接中获取,必选参数,解析后作为 share 的唯一标识 * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareUrlDetail(shareToken: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于列出分享中的文件和目录。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于获取分享中的文件列表; - 支持分页、排序; * @summary 分享文件列出接口 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {string} inodes 文件 inode 链,用 / 分隔多级目录的 inode,可选参数,为空时访问分享根目录,最大支持64层 * @param {ListShareFilesListEnum} list 操作类型标识,固定值为 1 * @param {number} [limit] 每页返回的数量,整数,可选参数,默认值为 10,取值范围 0-100(超过 100 会返回 InvalidParameter) * @param {string} [marker] 分页标记,字符串,用于获取下一页,可选参数,从上一次请求响应中获取,不传表示第一页 * @param {ListShareFilesOrderByEnum} [orderBy] 排序字段,可选值为 name(文件名)、size(文件大小)、updatedAt(更新时间)、空字符串(默认排序) * @param {ListShareFilesOrderByTypeEnum} [orderByType] 排序类型,可选值为 asc(升序)、desc(降序),默认值为 asc * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShareFiles(shareCode: string, inodes: string, list: ListShareFilesListEnum, limit?: number, marker?: string, orderBy?: ListShareFilesOrderByEnum, orderByType?: ListShareFilesOrderByTypeEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于列出媒体库中的分享列表。 - 要求权限:admin、分享创建者; - 该接口用于获取媒体库中的分享列表; - 支持分页、排序; - 管理员可以按创建者进行筛选; - 对于 previewLimit 和 downloadLimit,只有分享的是只有单个文件的情况下,才会生效; - 当外链配置的 canPreview 为 false 时,配置的 previewLimit 和 used 等信息会返回 0,download 同理; * @summary 列出分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {number} [limit] 返回数量,默认为 10,最大为 100 * @param {string} [marker] 分页标记,用于获取下一页,不填则是第一页 * @param {ListSharesOrderByEnum} [orderBy] 排序字段,默认为 createTime * @param {ListSharesOrderByTypeEnum} [orderByType] 排序类型,asc 或 desc,默认为 asc * @param {string} [creatorId] 按创建者 ID 筛选,仅管理员指定有效 * @param {ListSharesWithFileInfoEnum} [withFileInfo] 0 或 1,是否返回文件信息,设置为 1 返回 fileInfo 字段,默认不返回 * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShares(libraryId: string, accessToken?: string, librarySecret?: string, limit?: number, marker?: string, orderBy?: ListSharesOrderByEnum, orderByType?: ListSharesOrderByTypeEnum, creatorId?: string, withFileInfo?: ListSharesWithFileInfoEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于预览分享中的文件。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于预览分享中的指定文件; - 必须指定要预览的文件 inode; - 调用成功后会增加该分享的预览计数; - 如果分享设置了预览次数限制(previewLimit),超过限制后将无法预览; - 返回 302 重定向到实际的预览地址; * @summary 分享文件预览接口 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {string} inodes 文件 inode 链,用 / 分隔,最后一个 inode 为要预览的文件,必选参数,不可为空,必须指向文件而非目录,最大层数64层 * @param {PreviewShareFilePreviewEnum} preview 操作类型标识,固定值为 1 * @param {PreviewShareFileInternalDomainEnum} [internalDomain] 0 或 1,是否使用内网域名生成文件访问链接,可选参数,默认不使用;当设置为 1 时,返回的 URL 将使用内网域名,适用于同地域内网访问场景以提升访问速度 * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ previewShareFile(shareCode: string, inodes: string, preview: PreviewShareFilePreviewEnum, internalDomain?: PreviewShareFileInternalDomainEnum, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于将分享中的文件或目录转存到用户自己的网盘空间。 - 需要用户认证,用户访问令牌通过请求的 accessToken 解析获取; - 需要通过验证提取码获取的分享访问令牌(ShareAccessToken); - 该接口用于将分享的文件或目录复制到用户指定的网盘目录中; - 支持同一目录下单个或多个文件/目录的批量转存; - 分享配置需要开启 canSaveToNetdisk 权限; - 转存到的目标空间需要用户具有上传权限; * @summary 分享文件转存 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {SaveShareFileSaveEnum} save 标识为转存操作,固定值为 1 * @param {SaveShareFileRequest} saveShareFileRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ saveShareFile(shareCode: string, save: SaveShareFileSaveEnum, saveShareFileRequest: SaveShareFileRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于搜索媒体库中的分享,支持按名称模糊搜索、按创建者过滤、按时间范围过滤等。 - 要求权限:仅限管理员(admin),普通用户调用此接口将返回 403 NoPermission; - 当需要获取后续页时,传入 marker 参数进行翻页; - 本接口 QPS 使用上限为 10,此接口不可用于业务的高频操作页面; * @summary 搜索分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {SearchSharesRequest} searchSharesRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {number} [limit] 返回数量,默认为 10,最大为 50 * @param {string} [marker] 分页标记,用于获取下一页,不填则是第一页 * @param {*} [options] Override http request option. * @throws {RequiredError} */ searchShares(libraryId: string, searchSharesRequest: SearchSharesRequest, accessToken?: string, librarySecret?: string, limit?: number, marker?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于禁用或启用指定的分享。 - 要求权限:admin、分享创建者; - 该接口用于禁用或启用已创建的分享; - 禁用后的分享将无法访问; - 可以通过该接口重新启用已禁用的分享; - adminEnabled 是管理员权限,只有管理员和群组管理员可以设置; - ownerEnabled 是创建者权限,创建者可以设置,或者已通过管理员权限检查的用户也可以设置; - 仅当 adminEnabled && ownerEnabled 时外链可用; * @summary 禁用或启用分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {SetShareEnabledSetEnabledEnum} setEnabled 标识为禁用或启用操作,固定值为 1 * @param {SetShareEnabledRequest} setShareEnabledRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ setShareEnabled(libraryId: string, shareId: string, setEnabled: SetShareEnabledSetEnabledEnum, setShareEnabledRequest: SetShareEnabledRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于更新指定分享的配置信息。 - 要求权限:admin 或 分享创建者; - 该接口用于更新已创建的分享配置; - 可以修改分享名称和部分配置项; - 不允许修改 shareToUsers 字段; - 分享更新时会同步将 previewUsed 和 downloadUsed 置为 0,对于 userLimit 缩小场景,存量用户依旧可以访问; * @summary 更新分享 * @param {string} libraryId 媒体库 ID,必选参数 * @param {string} shareId 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) * @param {UpdateShareUpdateEnum} update 标识为更新操作,固定值为 1 * @param {UpdateShareRequest} updateShareRequest * @param {string} [accessToken] 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 * @param {string} [librarySecret] 访问媒体库密钥,可选参数 * @param {*} [options] Override http request option. * @throws {RequiredError} */ updateShare(libraryId: string, shareId: string, update: UpdateShareUpdateEnum, updateShareRequest: UpdateShareRequest, accessToken?: string, librarySecret?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * 用于验证分享的提取码并获取访问令牌(无需认证)。 - 无需认证,公开访问接口; - 该接口用于验证分享的提取码; - 验证成功后返回访问令牌,用于后续访问分享内容; - 支持验证码验证(可选); - 如果分享要求登录,则需要提供访问令牌; * @summary 验证提取码 * @param {string} shareCode 分享 Code,从分享链接中获取,必选参数 * @param {VerifyExtractionCodeRequest} verifyExtractionCodeRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ verifyExtractionCode(shareCode: string, verifyExtractionCodeRequest: VerifyExtractionCodeRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * ShareApi - factory interface */ export declare const ShareApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** * 用于创建外链分享,支持分享多个文件或目录。 - 要求权限:对分享的文件有权限即可 - 该接口用于创建外链分享,可以分享多个文件或目录; - 支持设置分享的各种配置,如有效期、提取码、访问权限等; - 创建成功后返回分享链接和相关信息; * @summary 创建分享 * @param {ShareApiCreateShareRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ createShare(requestParameters: ShareApiCreateShareRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于删除单个分享。 - 要求权限:admin 或 分享创建者; - 该接口用于删除已创建的分享; - 删除后的分享将无法恢复; * @summary 删除分享 * @param {ShareApiDeleteShareRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ deleteShare(requestParameters: ShareApiDeleteShareRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于下载分享中的文件。 - 需要通过验证提取码获取的分享访问令牌,如果外链要求禁止匿名用户访问,则验证提取码时需要在 body 携带 token 和 libraryId; - 该接口用于下载分享中的指定文件; - 必须指定要下载的文件 inode; - 调用成功后会增加该分享的下载计数; - 如果分享设置了下载次数限制(downloadLimit),超过限制后将无法下载; * @summary 分享文件下载接口 * @param {ShareApiDownloadShareFileRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ downloadShareFile(requestParameters: ShareApiDownloadShareFileRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于获取指定分享的详细信息。 - 要求权限:admin、space_admin 或分享创建者; - 该接口用于获取指定分享的完整详细信息; - 包含分享配置、使用统计、文件信息等; * @summary 获取分享详情 * @param {ShareApiGetShareDetailRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareDetail(requestParameters: ShareApiGetShareDetailRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于通过分享码获取分享的基本信息(无需认证)。 - 无需认证,公开访问接口; - 该接口用于在访问分享链接时获取分享的基本信息; - 通过分享 Token 获取分享的状态、权限等信息; - 用于在输入提取码之前展示分享的基本信息; * @summary 获取分享URL详情 * @param {ShareApiGetShareUrlDetailRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareUrlDetail(requestParameters: ShareApiGetShareUrlDetailRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于列出分享中的文件和目录。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于获取分享中的文件列表; - 支持分页、排序; * @summary 分享文件列出接口 * @param {ShareApiListShareFilesRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShareFiles(requestParameters: ShareApiListShareFilesRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于列出媒体库中的分享列表。 - 要求权限:admin、分享创建者; - 该接口用于获取媒体库中的分享列表; - 支持分页、排序; - 管理员可以按创建者进行筛选; - 对于 previewLimit 和 downloadLimit,只有分享的是只有单个文件的情况下,才会生效; - 当外链配置的 canPreview 为 false 时,配置的 previewLimit 和 used 等信息会返回 0,download 同理; * @summary 列出分享 * @param {ShareApiListSharesRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShares(requestParameters: ShareApiListSharesRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于预览分享中的文件。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于预览分享中的指定文件; - 必须指定要预览的文件 inode; - 调用成功后会增加该分享的预览计数; - 如果分享设置了预览次数限制(previewLimit),超过限制后将无法预览; - 返回 302 重定向到实际的预览地址; * @summary 分享文件预览接口 * @param {ShareApiPreviewShareFileRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ previewShareFile(requestParameters: ShareApiPreviewShareFileRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于将分享中的文件或目录转存到用户自己的网盘空间。 - 需要用户认证,用户访问令牌通过请求的 accessToken 解析获取; - 需要通过验证提取码获取的分享访问令牌(ShareAccessToken); - 该接口用于将分享的文件或目录复制到用户指定的网盘目录中; - 支持同一目录下单个或多个文件/目录的批量转存; - 分享配置需要开启 canSaveToNetdisk 权限; - 转存到的目标空间需要用户具有上传权限; * @summary 分享文件转存 * @param {ShareApiSaveShareFileRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ saveShareFile(requestParameters: ShareApiSaveShareFileRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于搜索媒体库中的分享,支持按名称模糊搜索、按创建者过滤、按时间范围过滤等。 - 要求权限:仅限管理员(admin),普通用户调用此接口将返回 403 NoPermission; - 当需要获取后续页时,传入 marker 参数进行翻页; - 本接口 QPS 使用上限为 10,此接口不可用于业务的高频操作页面; * @summary 搜索分享 * @param {ShareApiSearchSharesRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ searchShares(requestParameters: ShareApiSearchSharesRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于禁用或启用指定的分享。 - 要求权限:admin、分享创建者; - 该接口用于禁用或启用已创建的分享; - 禁用后的分享将无法访问; - 可以通过该接口重新启用已禁用的分享; - adminEnabled 是管理员权限,只有管理员和群组管理员可以设置; - ownerEnabled 是创建者权限,创建者可以设置,或者已通过管理员权限检查的用户也可以设置; - 仅当 adminEnabled && ownerEnabled 时外链可用; * @summary 禁用或启用分享 * @param {ShareApiSetShareEnabledRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setShareEnabled(requestParameters: ShareApiSetShareEnabledRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于更新指定分享的配置信息。 - 要求权限:admin 或 分享创建者; - 该接口用于更新已创建的分享配置; - 可以修改分享名称和部分配置项; - 不允许修改 shareToUsers 字段; - 分享更新时会同步将 previewUsed 和 downloadUsed 置为 0,对于 userLimit 缩小场景,存量用户依旧可以访问; * @summary 更新分享 * @param {ShareApiUpdateShareRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ updateShare(requestParameters: ShareApiUpdateShareRequest, options?: RawAxiosRequestConfig): AxiosPromise; /** * 用于验证分享的提取码并获取访问令牌(无需认证)。 - 无需认证,公开访问接口; - 该接口用于验证分享的提取码; - 验证成功后返回访问令牌,用于后续访问分享内容; - 支持验证码验证(可选); - 如果分享要求登录,则需要提供访问令牌; * @summary 验证提取码 * @param {ShareApiVerifyExtractionCodeRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ verifyExtractionCode(requestParameters: ShareApiVerifyExtractionCodeRequest, options?: RawAxiosRequestConfig): AxiosPromise; }; /** * Request parameters for createShare operation in ShareApi. */ export interface ShareApiCreateShareRequest { /** * 媒体库 ID,必选参数 */ readonly libraryId: string; /** * 空间 ID,如果媒体库为单租户模式,则该参数固定为连字符(-);如果媒体库为多租户模式,则必须指定该参数 */ readonly spaceId: string; readonly createShareRequest: CreateShareRequest; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for deleteShare operation in ShareApi. */ export interface ShareApiDeleteShareRequest { /** * 媒体库 ID,必选参数 */ readonly libraryId: string; /** * 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) */ readonly shareId: string; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for downloadShareFile operation in ShareApi. */ export interface ShareApiDownloadShareFileRequest { /** * 分享 Code,从分享链接中获取,必选参数 */ readonly shareCode: string; /** * 文件 inode 链,用 / 分隔,最后一个 inode 为要下载的文件,必选参数,不可为空,必须指向文件而非目录,最大层数64层 */ readonly inodes: string; /** * 操作类型标识,固定值为 1 */ readonly download: DownloadShareFileDownloadEnum; /** * 0 或 1,是否使用内网域名生成文件访问链接,可选参数,默认不使用;当设置为 1 时,返回的 URL 将使用内网域名,适用于同地域内网访问场景以提升访问速度 */ readonly internalDomain?: DownloadShareFileInternalDomainEnum; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for getShareDetail operation in ShareApi. */ export interface ShareApiGetShareDetailRequest { /** * 媒体库 ID,必选参数 */ readonly libraryId: string; /** * 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) */ readonly shareId: string; /** * 标识为获取详情操作,固定值为 1 */ readonly detail: GetShareDetailDetailEnum; /** * 0 或 1,是否返回文件信息,设置为 1 返回 fileInfo 字段,默认不返回 */ readonly withFileInfo?: GetShareDetailWithFileInfoEnum; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for getShareUrlDetail operation in ShareApi. */ export interface ShareApiGetShareUrlDetailRequest { /** * 分享 Token,从分享链接中获取,必选参数,解析后作为 share 的唯一标识 */ readonly shareToken: string; } /** * Request parameters for listShareFiles operation in ShareApi. */ export interface ShareApiListShareFilesRequest { /** * 分享 Code,从分享链接中获取,必选参数 */ readonly shareCode: string; /** * 文件 inode 链,用 / 分隔多级目录的 inode,可选参数,为空时访问分享根目录,最大支持64层 */ readonly inodes: string; /** * 操作类型标识,固定值为 1 */ readonly list: ListShareFilesListEnum; /** * 每页返回的数量,整数,可选参数,默认值为 10,取值范围 0-100(超过 100 会返回 InvalidParameter) */ readonly limit?: number; /** * 分页标记,字符串,用于获取下一页,可选参数,从上一次请求响应中获取,不传表示第一页 */ readonly marker?: string; /** * 排序字段,可选值为 name(文件名)、size(文件大小)、updatedAt(更新时间)、空字符串(默认排序) */ readonly orderBy?: ListShareFilesOrderByEnum; /** * 排序类型,可选值为 asc(升序)、desc(降序),默认值为 asc */ readonly orderByType?: ListShareFilesOrderByTypeEnum; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for listShares operation in ShareApi. */ export interface ShareApiListSharesRequest { /** * 媒体库 ID,必选参数 */ readonly libraryId: string; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; /** * 返回数量,默认为 10,最大为 100 */ readonly limit?: number; /** * 分页标记,用于获取下一页,不填则是第一页 */ readonly marker?: string; /** * 排序字段,默认为 createTime */ readonly orderBy?: ListSharesOrderByEnum; /** * 排序类型,asc 或 desc,默认为 asc */ readonly orderByType?: ListSharesOrderByTypeEnum; /** * 按创建者 ID 筛选,仅管理员指定有效 */ readonly creatorId?: string; /** * 0 或 1,是否返回文件信息,设置为 1 返回 fileInfo 字段,默认不返回 */ readonly withFileInfo?: ListSharesWithFileInfoEnum; } /** * Request parameters for previewShareFile operation in ShareApi. */ export interface ShareApiPreviewShareFileRequest { /** * 分享 Code,从分享链接中获取,必选参数 */ readonly shareCode: string; /** * 文件 inode 链,用 / 分隔,最后一个 inode 为要预览的文件,必选参数,不可为空,必须指向文件而非目录,最大层数64层 */ readonly inodes: string; /** * 操作类型标识,固定值为 1 */ readonly preview: PreviewShareFilePreviewEnum; /** * 0 或 1,是否使用内网域名生成文件访问链接,可选参数,默认不使用;当设置为 1 时,返回的 URL 将使用内网域名,适用于同地域内网访问场景以提升访问速度 */ readonly internalDomain?: PreviewShareFileInternalDomainEnum; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for saveShareFile operation in ShareApi. */ export interface ShareApiSaveShareFileRequest { /** * 分享 Code,从分享链接中获取,必选参数 */ readonly shareCode: string; /** * 标识为转存操作,固定值为 1 */ readonly save: SaveShareFileSaveEnum; readonly saveShareFileRequest: SaveShareFileRequest; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for searchShares operation in ShareApi. */ export interface ShareApiSearchSharesRequest { /** * 媒体库 ID,必选参数 */ readonly libraryId: string; readonly searchSharesRequest: SearchSharesRequest; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; /** * 返回数量,默认为 10,最大为 50 */ readonly limit?: number; /** * 分页标记,用于获取下一页,不填则是第一页 */ readonly marker?: string; } /** * Request parameters for setShareEnabled operation in ShareApi. */ export interface ShareApiSetShareEnabledRequest { /** * 媒体库 ID,必选参数 */ readonly libraryId: string; /** * 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) */ readonly shareId: string; /** * 标识为禁用或启用操作,固定值为 1 */ readonly setEnabled: SetShareEnabledSetEnabledEnum; readonly setShareEnabledRequest: SetShareEnabledRequest; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for updateShare operation in ShareApi. */ export interface ShareApiUpdateShareRequest { /** * 媒体库 ID,必选参数 */ readonly libraryId: string; /** * 分享 ID,必选参数(格式为经过编码的复合ID,包含分享ID和创建者ID信息) */ readonly shareId: string; /** * 标识为更新操作,固定值为 1 */ readonly update: UpdateShareUpdateEnum; readonly updateShareRequest: UpdateShareRequest; /** * 访问令牌,对于公有读媒体库或租户空间,可不指定该参数,否则必须指定该参数 */ readonly accessToken?: string; /** * 访问媒体库密钥,可选参数 */ readonly librarySecret?: string; } /** * Request parameters for verifyExtractionCode operation in ShareApi. */ export interface ShareApiVerifyExtractionCodeRequest { /** * 分享 Code,从分享链接中获取,必选参数 */ readonly shareCode: string; readonly verifyExtractionCodeRequest: VerifyExtractionCodeRequest; } /** * ShareApi - object-oriented interface */ export declare class ShareApi extends BaseAPI { /** * 用于创建外链分享,支持分享多个文件或目录。 - 要求权限:对分享的文件有权限即可 - 该接口用于创建外链分享,可以分享多个文件或目录; - 支持设置分享的各种配置,如有效期、提取码、访问权限等; - 创建成功后返回分享链接和相关信息; * @summary 创建分享 * @param {ShareApiCreateShareRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ createShare(requestParameters: ShareApiCreateShareRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于删除单个分享。 - 要求权限:admin 或 分享创建者; - 该接口用于删除已创建的分享; - 删除后的分享将无法恢复; * @summary 删除分享 * @param {ShareApiDeleteShareRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ deleteShare(requestParameters: ShareApiDeleteShareRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于下载分享中的文件。 - 需要通过验证提取码获取的分享访问令牌,如果外链要求禁止匿名用户访问,则验证提取码时需要在 body 携带 token 和 libraryId; - 该接口用于下载分享中的指定文件; - 必须指定要下载的文件 inode; - 调用成功后会增加该分享的下载计数; - 如果分享设置了下载次数限制(downloadLimit),超过限制后将无法下载; * @summary 分享文件下载接口 * @param {ShareApiDownloadShareFileRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ downloadShareFile(requestParameters: ShareApiDownloadShareFileRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于获取指定分享的详细信息。 - 要求权限:admin、space_admin 或分享创建者; - 该接口用于获取指定分享的完整详细信息; - 包含分享配置、使用统计、文件信息等; * @summary 获取分享详情 * @param {ShareApiGetShareDetailRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareDetail(requestParameters: ShareApiGetShareDetailRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于通过分享码获取分享的基本信息(无需认证)。 - 无需认证,公开访问接口; - 该接口用于在访问分享链接时获取分享的基本信息; - 通过分享 Token 获取分享的状态、权限等信息; - 用于在输入提取码之前展示分享的基本信息; * @summary 获取分享URL详情 * @param {ShareApiGetShareUrlDetailRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getShareUrlDetail(requestParameters: ShareApiGetShareUrlDetailRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于列出分享中的文件和目录。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于获取分享中的文件列表; - 支持分页、排序; * @summary 分享文件列出接口 * @param {ShareApiListShareFilesRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShareFiles(requestParameters: ShareApiListShareFilesRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于列出媒体库中的分享列表。 - 要求权限:admin、分享创建者; - 该接口用于获取媒体库中的分享列表; - 支持分页、排序; - 管理员可以按创建者进行筛选; - 对于 previewLimit 和 downloadLimit,只有分享的是只有单个文件的情况下,才会生效; - 当外链配置的 canPreview 为 false 时,配置的 previewLimit 和 used 等信息会返回 0,download 同理; * @summary 列出分享 * @param {ShareApiListSharesRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ listShares(requestParameters: ShareApiListSharesRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于预览分享中的文件。 - 无需用户认证,但需要通过验证提取码获取的分享访问令牌; - 该接口用于预览分享中的指定文件; - 必须指定要预览的文件 inode; - 调用成功后会增加该分享的预览计数; - 如果分享设置了预览次数限制(previewLimit),超过限制后将无法预览; - 返回 302 重定向到实际的预览地址; * @summary 分享文件预览接口 * @param {ShareApiPreviewShareFileRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ previewShareFile(requestParameters: ShareApiPreviewShareFileRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于将分享中的文件或目录转存到用户自己的网盘空间。 - 需要用户认证,用户访问令牌通过请求的 accessToken 解析获取; - 需要通过验证提取码获取的分享访问令牌(ShareAccessToken); - 该接口用于将分享的文件或目录复制到用户指定的网盘目录中; - 支持同一目录下单个或多个文件/目录的批量转存; - 分享配置需要开启 canSaveToNetdisk 权限; - 转存到的目标空间需要用户具有上传权限; * @summary 分享文件转存 * @param {ShareApiSaveShareFileRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ saveShareFile(requestParameters: ShareApiSaveShareFileRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于搜索媒体库中的分享,支持按名称模糊搜索、按创建者过滤、按时间范围过滤等。 - 要求权限:仅限管理员(admin),普通用户调用此接口将返回 403 NoPermission; - 当需要获取后续页时,传入 marker 参数进行翻页; - 本接口 QPS 使用上限为 10,此接口不可用于业务的高频操作页面; * @summary 搜索分享 * @param {ShareApiSearchSharesRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ searchShares(requestParameters: ShareApiSearchSharesRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于禁用或启用指定的分享。 - 要求权限:admin、分享创建者; - 该接口用于禁用或启用已创建的分享; - 禁用后的分享将无法访问; - 可以通过该接口重新启用已禁用的分享; - adminEnabled 是管理员权限,只有管理员和群组管理员可以设置; - ownerEnabled 是创建者权限,创建者可以设置,或者已通过管理员权限检查的用户也可以设置; - 仅当 adminEnabled && ownerEnabled 时外链可用; * @summary 禁用或启用分享 * @param {ShareApiSetShareEnabledRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ setShareEnabled(requestParameters: ShareApiSetShareEnabledRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于更新指定分享的配置信息。 - 要求权限:admin 或 分享创建者; - 该接口用于更新已创建的分享配置; - 可以修改分享名称和部分配置项; - 不允许修改 shareToUsers 字段; - 分享更新时会同步将 previewUsed 和 downloadUsed 置为 0,对于 userLimit 缩小场景,存量用户依旧可以访问; * @summary 更新分享 * @param {ShareApiUpdateShareRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ updateShare(requestParameters: ShareApiUpdateShareRequest, options?: RawAxiosRequestConfig): Promise>; /** * 用于验证分享的提取码并获取访问令牌(无需认证)。 - 无需认证,公开访问接口; - 该接口用于验证分享的提取码; - 验证成功后返回访问令牌,用于后续访问分享内容; - 支持验证码验证(可选); - 如果分享要求登录,则需要提供访问令牌; * @summary 验证提取码 * @param {ShareApiVerifyExtractionCodeRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ verifyExtractionCode(requestParameters: ShareApiVerifyExtractionCodeRequest, options?: RawAxiosRequestConfig): Promise>; } export declare const DownloadShareFileDownloadEnum: { readonly NUMBER_1: 1; }; export type DownloadShareFileDownloadEnum = typeof DownloadShareFileDownloadEnum[keyof typeof DownloadShareFileDownloadEnum]; export declare const DownloadShareFileInternalDomainEnum: { readonly NUMBER_0: 0; readonly NUMBER_1: 1; }; export type DownloadShareFileInternalDomainEnum = typeof DownloadShareFileInternalDomainEnum[keyof typeof DownloadShareFileInternalDomainEnum]; export declare const GetShareDetailDetailEnum: { readonly NUMBER_1: 1; }; export type GetShareDetailDetailEnum = typeof GetShareDetailDetailEnum[keyof typeof GetShareDetailDetailEnum]; export declare const GetShareDetailWithFileInfoEnum: { readonly NUMBER_0: 0; readonly NUMBER_1: 1; }; export type GetShareDetailWithFileInfoEnum = typeof GetShareDetailWithFileInfoEnum[keyof typeof GetShareDetailWithFileInfoEnum]; export declare const ListShareFilesListEnum: { readonly NUMBER_1: 1; }; export type ListShareFilesListEnum = typeof ListShareFilesListEnum[keyof typeof ListShareFilesListEnum]; export declare const ListShareFilesOrderByEnum: { readonly Name: "name"; readonly Size: "size"; readonly UpdatedAt: "updatedAt"; readonly Empty: ""; }; export type ListShareFilesOrderByEnum = typeof ListShareFilesOrderByEnum[keyof typeof ListShareFilesOrderByEnum]; export declare const ListShareFilesOrderByTypeEnum: { readonly Asc: "asc"; readonly Desc: "desc"; }; export type ListShareFilesOrderByTypeEnum = typeof ListShareFilesOrderByTypeEnum[keyof typeof ListShareFilesOrderByTypeEnum]; export declare const ListSharesOrderByEnum: { readonly CreateTime: "createTime"; readonly ExpireTime: "expireTime"; readonly Name: "name"; readonly CreatorId: "creatorId"; readonly Empty: ""; }; export type ListSharesOrderByEnum = typeof ListSharesOrderByEnum[keyof typeof ListSharesOrderByEnum]; export declare const ListSharesOrderByTypeEnum: { readonly Asc: "asc"; readonly Desc: "desc"; }; export type ListSharesOrderByTypeEnum = typeof ListSharesOrderByTypeEnum[keyof typeof ListSharesOrderByTypeEnum]; export declare const ListSharesWithFileInfoEnum: { readonly NUMBER_0: 0; readonly NUMBER_1: 1; }; export type ListSharesWithFileInfoEnum = typeof ListSharesWithFileInfoEnum[keyof typeof ListSharesWithFileInfoEnum]; export declare const PreviewShareFilePreviewEnum: { readonly NUMBER_1: 1; }; export type PreviewShareFilePreviewEnum = typeof PreviewShareFilePreviewEnum[keyof typeof PreviewShareFilePreviewEnum]; export declare const PreviewShareFileInternalDomainEnum: { readonly NUMBER_0: 0; readonly NUMBER_1: 1; }; export type PreviewShareFileInternalDomainEnum = typeof PreviewShareFileInternalDomainEnum[keyof typeof PreviewShareFileInternalDomainEnum]; export declare const SaveShareFileSaveEnum: { readonly NUMBER_1: 1; }; export type SaveShareFileSaveEnum = typeof SaveShareFileSaveEnum[keyof typeof SaveShareFileSaveEnum]; export declare const SetShareEnabledSetEnabledEnum: { readonly NUMBER_1: 1; }; export type SetShareEnabledSetEnabledEnum = typeof SetShareEnabledSetEnabledEnum[keyof typeof SetShareEnabledSetEnabledEnum]; export declare const UpdateShareUpdateEnum: { readonly NUMBER_1: 1; }; export type UpdateShareUpdateEnum = typeof UpdateShareUpdateEnum[keyof typeof UpdateShareUpdateEnum];