UNPKG

@ionic/cli

Version:

A tool for creating and developing Ionic Framework mobile apps.

45 lines (44 loc) 2.68 kB
import { APIResponse, APIResponsePageTokenMeta, APIResponseSuccess, ContentType, HttpMethod, IClient, IConfig, IPaginator, PagePaginatorState, PaginateArgs, PaginatorDeps, PaginatorGuard, PaginatorRequestGenerator, ResourceClientRequestModifiers, Response, SuperAgentError, TokenPaginatorState } from '../definitions'; import { FatalException } from './errors'; export declare type SuperAgentRequest = import('superagent').SuperAgentRequest; export declare type SuperAgentResponse = import('superagent').Response; export declare const ERROR_UNKNOWN_CONTENT_TYPE = "UNKNOWN_CONTENT_TYPE"; export declare const ERROR_UNKNOWN_RESPONSE_FORMAT = "UNKNOWN_RESPONSE_FORMAT"; export declare class Client implements IClient { config: IConfig; constructor(config: IConfig); make(method: HttpMethod, path: string, contentType?: ContentType): Promise<{ req: SuperAgentRequest; }>; do(req: SuperAgentRequest): Promise<APIResponseSuccess>; paginate<T extends Response<object[]>>(args: PaginateArgs<T>): IPaginator<T>; } export declare class Paginator<T extends Response<object[]>> implements IPaginator<T, PagePaginatorState> { protected client: IClient; protected reqgen: PaginatorRequestGenerator; protected guard: PaginatorGuard<T>; protected max?: number; readonly state: PagePaginatorState; constructor({ client, reqgen, guard, state, max }: PaginatorDeps<T, PagePaginatorState>); next(): IteratorResult<Promise<T>>; [Symbol.iterator](): this; } export declare class TokenPaginator<T extends Response<object[]>> implements IPaginator<T, TokenPaginatorState> { protected client: IClient; protected reqgen: PaginatorRequestGenerator; protected guard: PaginatorGuard<T>; protected max?: number; readonly state: TokenPaginatorState; constructor({ client, reqgen, guard, state, max }: PaginatorDeps<T, TokenPaginatorState>); next(): IteratorResult<Promise<T>>; isPageTokenResponseMeta(meta: any): meta is APIResponsePageTokenMeta; [Symbol.iterator](): this; } export declare abstract class ResourceClient { protected applyModifiers(req: import('superagent').Request, modifiers?: ResourceClientRequestModifiers): void; protected applyAuthentication(req: import('superagent').Request, token: string): void; } export declare function transformAPIResponse(r: SuperAgentResponse): APIResponse; export declare function createFatalAPIFormat(req: SuperAgentRequest, res: APIResponse): FatalException; export declare function formatSuperAgentError(e: SuperAgentError): string; export declare function formatResponseError(req: SuperAgentRequest, status?: number, body?: object | string): string;