UNPKG

api-simplex-handler

Version:

一个api封装解析器

48 lines (47 loc) 2.25 kB
import { IApiHandler } from "./IApiHandler"; import { IApiParamsCollection } from "./IApiParamsCollection"; import { IApi } from "./IApi"; import { ExceptionFunction, ExpectFunction, FailFunction, GeneralObject, ObjectMapping, ResolveParams, ResponseHandlerDefineFunction, ResponseHandlerFunction, SendHandlerResponse, SuccessFunction } from "./TypeDefine"; import { ISendResponse } from "./ISendResponse"; declare abstract class ApiHandler<T extends IApi> implements IApiHandler<T['params']> { api: T; expect: ExpectFunction; success: SuccessFunction; exception: ExceptionFunction; fail: FailFunction; private cache; private argsQueue; private limitSet; private beforeList; private afterList; private guardList; private completeList; getURL(): string; composeURL(args: ResolveParams<T['params']>): string; protected constructor(api: T, responseHandlerDefineFunction: ResponseHandlerDefineFunction); private analysisHanger; abstract send(args: ResolveParams<T['params']>): Promise<ISendResponse<any>>; clearCache(): void; private saveCacheHandler; private cacheHandler; sendNotSuccessTips(args: ResolveParams<T['params']>): Promise<SendHandlerResponse>; private startNext; private sendLimit; private hangerBefore; private hangerComplete; private hangerAfter; private hangerGuard; sendHandler(args: ResolveParams<T['params']>, responseHandlerFunction?: ResponseHandlerFunction): Promise<SendHandlerResponse>; protected processResponse(define: Function, custom: Function | undefined | null, ...args: any[]): void; private static filteredData; static toQueryString(data: GeneralObject): string; static toPathString(data: GeneralObject): string; static paramsToObject(params: string[], args: ObjectMapping<string, any>): ObjectMapping<string, any>; static assemblyParameters(params: string[], args: ObjectMapping<string, any> | undefined, api: IApi): string | ObjectMapping<string, any> | undefined; static assemblyParametersToUnion(params: IApiParamsCollection, args: ObjectMapping<string, any> | undefined, api: IApi): { body: {}; query: string; path: string; }; } export { ApiHandler };