-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapi.ts
167 lines (151 loc) · 5.69 KB
/
api.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
/* tslint:disable */
/* eslint-disable */
/**
* SSRF Proxy
* No description provided (generated by Openapi Generator /~https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import type { Configuration } from './configuration';
import type { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';
import globalAxios from 'axios';
// Some imports not used depending on template conditions
// @ts-ignore
import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common';
import type { RequestArgs } from './base';
// @ts-ignore
import { BASE_PATH, COLLECTION_FORMATS, BaseAPI, RequiredError } from './base';
/**
*
* @export
* @interface ProxyRequest
*/
export interface ProxyRequest {
/**
* The URL to be accessed by the API.
* @type {string}
* @memberof ProxyRequest
*/
'url': string;
/**
* The HTTP method to be used when accessing the URL. Defaults to \"GET\".
* @type {string}
* @memberof ProxyRequest
*/
'method'?: string;
/**
* The headers to be sent when accessing the URL.
* @type {{ [key: string]: string; }}
* @memberof ProxyRequest
*/
'headers'?: { [key: string]: string; };
/**
* The maximum time to wait for a response, in milliseconds. Defaults to 5000.
* @type {number}
* @memberof ProxyRequest
*/
'timeout'?: number;
}
/**
* SsrfProxyApi - axios parameter creator
* @export
*/
export const SsrfProxyApiAxiosParamCreator = function (configuration?: Configuration) {
return {
/**
*
* @summary Send url to be proxied
* @param {ProxyRequest} proxyRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
proxy: async (proxyRequest: ProxyRequest, options: AxiosRequestConfig = {}): Promise<RequestArgs> => {
// verify required parameter 'proxyRequest' is not null or undefined
assertParamExists('proxy', 'proxyRequest', proxyRequest)
const localVarPath = `/api/proxy`;
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};
const localVarHeaderParameter = {} as any;
const localVarQueryParameter = {} as any;
// authentication ApiKeyAuth required
await setApiKeyToObject(localVarHeaderParameter, "api-key", configuration)
localVarHeaderParameter['Content-Type'] = 'application/json';
setSearchParams(localVarUrlObj, localVarQueryParameter);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
localVarRequestOptions.data = serializeDataIfNeeded(proxyRequest, localVarRequestOptions, configuration)
return {
url: toPathString(localVarUrlObj),
options: localVarRequestOptions,
};
},
}
};
/**
* SsrfProxyApi - functional programming interface
* @export
*/
export const SsrfProxyApiFp = function(configuration?: Configuration) {
const localVarAxiosParamCreator = SsrfProxyApiAxiosParamCreator(configuration)
return {
/**
*
* @summary Send url to be proxied
* @param {ProxyRequest} proxyRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async proxy(proxyRequest: ProxyRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>> {
const localVarAxiosArgs = await localVarAxiosParamCreator.proxy(proxyRequest, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
}
};
/**
* SsrfProxyApi - factory interface
* @export
*/
export const SsrfProxyApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {
const localVarFp = SsrfProxyApiFp(configuration)
return {
/**
*
* @summary Send url to be proxied
* @param {ProxyRequest} proxyRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
proxy(proxyRequest: ProxyRequest, options?: any): AxiosPromise<void> {
return localVarFp.proxy(proxyRequest, options).then((request) => request(axios, basePath));
},
};
};
/**
* SsrfProxyApi - object-oriented interface
* @export
* @class SsrfProxyApi
* @extends {BaseAPI}
*/
export class SsrfProxyApi extends BaseAPI {
/**
*
* @summary Send url to be proxied
* @param {ProxyRequest} proxyRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof SsrfProxyApi
*/
public proxy(proxyRequest: ProxyRequest, options?: AxiosRequestConfig) {
return SsrfProxyApiFp(this.configuration).proxy(proxyRequest, options).then((request) => request(this.axios, this.basePath));
}
}