wildberries-api
Version:
Typescript API для Wildberries, сгенерированное из Swagger. Без внешних зависимостей.
131 lines • 4.72 kB
TypeScript
export interface RequestDownload {
params?: {
extension?: string;
serviceName?: string;
}[];
}
export interface GetCategories {
data?: {
categories?: {
name?: string;
title?: string;
}[];
};
}
export interface GetList {
data?: {
documents?: {
serviceName?: string;
name?: string;
category?: string;
extensions?: string[];
creationTime?: string;
viewed?: boolean;
}[];
};
}
export interface GetDoc {
data?: {
fileName?: string;
extension?: string;
document?: string;
};
}
export interface GetDocs {
data?: {
fileName?: string;
extension?: string;
document?: string;
};
}
export type QueryParamsType = Record<string | number, any>;
export type ResponseFormat = keyof Omit<Body, "body" | "bodyUsed">;
export interface FullRequestParams extends Omit<RequestInit, "body"> {
secure?: boolean;
path: string;
type?: ContentType;
query?: QueryParamsType;
format?: ResponseFormat;
body?: unknown;
baseUrl?: string;
cancelToken?: CancelToken;
}
export type RequestParams = Omit<FullRequestParams, "body" | "method" | "query" | "path">;
export interface ApiConfig<SecurityDataType = unknown> {
baseUrl?: string;
baseApiParams?: Omit<RequestParams, "baseUrl" | "cancelToken" | "signal">;
securityWorker?: (securityData: SecurityDataType | null) => Promise<RequestParams | void> | RequestParams | void;
customFetch?: typeof fetch;
}
export interface HttpResponse<D extends unknown, E extends unknown = unknown> extends Response {
data: D;
error: E;
}
type CancelToken = Symbol | string | number;
export declare enum ContentType {
Json = "application/json",
FormData = "multipart/form-data",
UrlEncoded = "application/x-www-form-urlencoded",
Text = "text/plain"
}
export declare class HttpClient<SecurityDataType = unknown> {
baseUrl: string;
private securityData;
private securityWorker?;
private abortControllers;
private customFetch;
private baseApiParams;
constructor(apiConfig?: ApiConfig<SecurityDataType>);
setSecurityData: (data: SecurityDataType | null) => void;
protected encodeQueryParam(key: string, value: any): string;
protected addQueryParam(query: QueryParamsType, key: string): string;
protected addArrayQueryParam(query: QueryParamsType, key: string): any;
protected toQueryString(rawQuery?: QueryParamsType): string;
protected addQueryParams(rawQuery?: QueryParamsType): string;
private contentFormatters;
protected mergeRequestParams(params1: RequestParams, params2?: RequestParams): RequestParams;
protected createAbortSignal: (cancelToken: CancelToken) => AbortSignal | undefined;
abortRequest: (cancelToken: CancelToken) => void;
request: <T = any, E = any>({ body, secure, path, type, query, format, baseUrl, cancelToken, ...params }: FullRequestParams) => Promise<HttpResponse<T, E>>;
}
export declare class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDataType> {
api: {
v1DocumentsCategoriesList: (query?: {
locale?: string;
}, params?: RequestParams) => Promise<HttpResponse<GetCategories, void>>;
v1DocumentsListList: (query?: {
locale?: string;
beginTime?: number;
endTime?: number;
sort?: "date" | "category";
order?: "desc" | "asc";
category?: string;
serviceName?: string;
}, params?: RequestParams) => Promise<HttpResponse<GetList, void | {
title?: string | undefined;
status?: number | undefined;
detail?: string | undefined;
requestId?: string | undefined;
origin?: string | undefined;
}>>;
v1DocumentsDownloadList: (query: {
serviceName: string;
extension: string;
}, params?: RequestParams) => Promise<HttpResponse<GetDoc, void | {
title?: string | undefined;
status?: number | undefined;
detail?: string | undefined;
requestId?: string | undefined;
origin?: string | undefined;
}>>;
v1DocumentsDownloadAllCreate: (data: RequestDownload, params?: RequestParams) => Promise<HttpResponse<GetDocs, void | {
title?: string | undefined;
status?: number | undefined;
detail?: string | undefined;
requestId?: string | undefined;
origin?: string | undefined;
}>>;
};
}
export {};
//# sourceMappingURL=documents.d.ts.map