UNPKG

kws-sdk

Version:

58 lines (57 loc) 1.52 kB
/// <reference types="request-promise" /> import request = require('request-promise'); declare namespace KWS { interface headers { [key: string]: string; } interface Query { [key: string]: string; } interface AWSRequest { host: string; method: string; headers: headers; service: string; region: string; path: string; body?: string; signQuery?: boolean; } interface AWSCredentials { accessKeyId: string; secretAccessKey: string; } interface RequestARGS { query?: Query; body?: any; } interface ARGS { ak: string; sk: string; uniqname: string; app: string; host?: string; region?: string; } interface Api { action: string; service: string; version: string; } } declare class KWS implements KWS.ARGS { ak: string; sk: string; host: string; region: string; uniqname: string; app: string; constructor(args: KWS.ARGS); buildHost(service: string): string; buildAWSRequest(method: string, service: string, query: KWS.Query, body: any): KWS.AWSRequest; buildAWSCredentials(): KWS.AWSCredentials; buildQuery(action: string, version: string, query: Object): KWS.Query; sign(method: string, api: KWS.Api, data?: KWS.RequestARGS): any; request(method: string, api: KWS.Api, data?: KWS.RequestARGS): request.RequestPromise; } export = KWS;