@cloudbase/node-sdk
Version:
tencent cloud base server sdk for node.js
98 lines (97 loc) • 2.19 kB
TypeScript
/// <reference types="node" />
export interface ICredentialsInfo {
private_key_id: string;
private_key: string;
}
export interface ICloudBaseConfig {
timeout?: number;
isHttp?: boolean;
secretId?: string;
secretKey?: string;
envName?: string | Symbol;
env?: string;
sessionToken?: string;
serviceUrl?: string;
headers?: any;
proxy?: string;
version?: string;
credentials?: ICredentialsInfo;
throwOnCode?: boolean;
forever?: boolean;
}
export interface IRequestInfo {
config: ICloudBaseConfig;
method: string;
headers: any;
params: ICustomParam;
customApiUrl?: string;
unSignedParams?: any;
isFormData?: boolean;
opts?: any;
}
export interface ICommonParam {
action: string;
envName?: string | Symbol;
timestamp?: number;
eventId?: string;
wxCloudApiToken?: string;
tcb_sessionToken?: string;
authorization?: string;
sessionToken?: string;
sdk_version?: string;
}
export interface ICustomParam extends ICommonParam {
[propName: string]: any;
}
export interface ICustomReqOpts {
timeout: number;
}
export interface IErrorInfo {
code?: string;
message?: string;
requestId?: string;
}
export interface ICustomErrRes {
[propName: string]: any;
}
export interface IUploadFileRes {
fileID: string;
}
export interface IDeleteFileRes {
fileList: Array<any>;
requestId: string;
}
export interface IGetFileUrlRes {
fileList: Array<any>;
requestId: string;
}
export interface IDownloadFileRes {
fileContent: Buffer;
message: string;
}
export interface IReqOpts {
proxy?: string;
qs?: any;
json?: boolean;
body?: any;
formData?: any;
encoding?: any;
forever?: boolean;
url: string;
method: string;
timeout: number;
headers: any;
}
export interface IReqHooks {
handleData: (res: any, err: any, response: any, body: any) => any;
}
export interface IContext {
memory_limit_in_mb: number;
time_limit_in_ms: number;
request_id: string;
environ: any;
environment?: any;
function_version: string;
function_name: string;
namespace: string;
}