-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfiguration.ts
More file actions
129 lines (115 loc) · 3.5 KB
/
Copy pathconfiguration.ts
File metadata and controls
129 lines (115 loc) · 3.5 KB
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
/* tslint:disable */
/* eslint-disable */
/*
person
The Person REST APIs enable you to access information about the worker person, including country-specific configuration information about name components.
The version of the OpenAPI document: v4
NOTE: This file is auto generated by Konfig (https://konfigthis.com).
*/
type ApiKey =
| string
| ((keyParamName: string) => string)
| ((keyParamName: string) => Promise<string>)
| { [apiKeyName: string]: string | undefined };
export interface ConfigurationParameters {
basePath?: string;
baseOptions?: any;
oauthTokenUrl?: string;
oauthClientId?: string;
oauthClientSecret?: string;
userAgent?: string;
formDataCtor?: new () => any;
}
export class Configuration {
/**
* parameter for apiKey security
* @param name security name
* @memberof Configuration
*/
apiKey?: ApiKey;
/**
* parameter for basic security
*
* @type {string}
* @memberof Configuration
*/
username?: string;
/**
* token url for OAuth2 Application flow
*/
oauthTokenUrl?: string;
/**
* client id for OAuth2 Application flow
*/
oauthClientId?: string;
/**
* client secret for OAuth2 Application flow
*/
oauthClientSecret?: string;
/**
* parameter for basic security
*
* @type {string}
* @memberof Configuration
*/
password?: string;
/**
* parameter for oauth2 security
* @param name security name
* @param scopes oauth2 scope
* @memberof Configuration
*/
accessToken?: string | Promise<string> | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise<string>);
/**
* override base path
*
* @type {string}
* @memberof Configuration
*/
basePath?: string;
/**
* base options for axios calls
*
* @type {any}
* @memberof Configuration
*/
baseOptions?: any;
/**
* The FormData constructor that will be used to create multipart form data
* requests. You can inject this here so that execution environments that
* do not support the FormData class can still run the generated client.
*
* @type {new () => FormData}
*/
formDataCtor?: new () => any;
/**
* Default User-Agent header
*/
userAgent: string;
constructor(param: ConfigurationParameters = {}) {
if (this.apiKey === undefined) {
this.apiKey = {}
}
this.basePath = param.basePath;
this.baseOptions = param.baseOptions ?? {};
this.userAgent = param.userAgent === undefined ? "Konfig/v4/typescript" : param.userAgent;
this.oauthTokenUrl = param.oauthTokenUrl;
this.oauthClientId = param.oauthClientId;
this.oauthClientSecret = param.oauthClientSecret;
this.formDataCtor = param.formDataCtor;
}
/**
* Check if the given MIME is a JSON MIME.
* JSON MIME examples:
* application/json
* application/json; charset=UTF8
* APPLICATION/JSON
* application/vnd.company+json
* @param mime - MIME (Multipurpose Internet Mail Extensions)
* @return True if the given MIME is JSON, false otherwise.
*/
public isJsonMime(mime: string): boolean {
const jsonMime: RegExp = new RegExp('^(application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(;.*)?$', 'i');
return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');
}
}