UNPKG

tencentcloud-sdk-nodejs-common

Version:
122 lines (116 loc) 2.54 kB
import { Agent } from "http" /** * 初始化client对象参数类型 */ export interface ClientConfig { /** * @param {Credential} credential 认证信息 * 必选 */ credential: Credential | DynamicCredential /** * @param {string} region 产品地域 * 对于要求区分地域的产品,此参数必选(如 cvm);对于不区分地域的产品(如 sms),无需传入。 */ region?: string /** * @param {ClientProfile} profile 可选配置实例 * 可选,没有特殊需求可以跳过。 */ profile?: ClientProfile } /** * 可选配置实例 */ export interface ClientProfile { /** * 签名方法 (TC3-HMAC-SHA256 HmacSHA1 HmacSHA256) * @type {string} * 非必选 */ signMethod?: "TC3-HMAC-SHA256" | "HmacSHA256" | "HmacSHA1" /** * http相关选项实例 * @type {HttpProfile} * 非必选 */ httpProfile?: HttpProfile /** * api请求时附带的 language 字段 * @type {"zh-CN" | "en-US"} * 非必选 */ language?: "zh-CN" | "en-US" } export interface HttpProfile { /** * 请求方法 * @type {"POST" | "GET"} * 非必选 */ reqMethod?: "POST" | "GET" /** * 接入点域名,形如(cvm.ap-shanghai.tencentcloud.com) * @type {string} * 非必选 */ endpoint?: string /** * 协议,目前支持(https://) * @type {string} * 非必选 */ protocol?: string /** * 请求超时时间,默认60s * @type {number} * 非必选 */ reqTimeout?: number /** * 自定义请求头,例如 { "X-TC-TraceId": "ffe0c072-8a5d-4e17-8887-a8a60252abca" } * @type {Record<string, string>} * 非必选 */ headers?: Record<string, string> /** * 高级请求代理,例如 new HttpsProxyAgent("http://127.0.0.1:8899") * * 优先级高于 proxy 配置 */ agent?: Agent /** * http请求代理,例如 "http://127.0.0.1:8899" */ proxy?: string } /** * ClientProfile.language 属性支持的取值列表 */ export const SUPPORT_LANGUAGE_LIST = ["zh-CN", "en-US"] /** * 认证信息类 */ export interface Credential { /** * 腾讯云账户secretId,secretKey * 非必选,和 token 二选一 */ secretId?: string /** * 腾讯云账户secretKey * 非必选,和 token 二选一 */ secretKey?: string /** * 腾讯云账户token * 非必选,和 secretId 二选一 */ token?: string } /** * 动态认证信息 */ export interface DynamicCredential { getCredential(): Promise<Credential> }