@fern-api/generator-migrations 0.0.4 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +813 -902
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +45 -14
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -7,317 +7,336 @@ interface AiServicesSchema {
|
|
|
7
7
|
model: ModelName;
|
|
8
8
|
}
|
|
9
9
|
//#endregion
|
|
10
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/ai/types/ModelName.d.ts
|
|
11
|
+
type ModelName = string;
|
|
12
|
+
//#endregion
|
|
10
13
|
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/ai/types/ModelProvider.d.ts
|
|
11
|
-
/**
|
|
12
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
13
|
-
*/
|
|
14
|
-
type ModelProvider = "openai" | "anthropic" | "bedrock";
|
|
15
14
|
declare const ModelProvider: {
|
|
16
15
|
readonly Openai: "openai";
|
|
17
16
|
readonly Anthropic: "anthropic";
|
|
18
17
|
readonly Bedrock: "bedrock";
|
|
19
18
|
};
|
|
19
|
+
type ModelProvider = (typeof ModelProvider)[keyof typeof ModelProvider];
|
|
20
20
|
//#endregion
|
|
21
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
22
|
-
|
|
23
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
24
|
-
*/
|
|
25
|
-
type ModelName = string;
|
|
21
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AnyAuthItem.d.ts
|
|
22
|
+
type AnyAuthItem = string | AuthSchemeReferenceSchema;
|
|
26
23
|
//#endregion
|
|
27
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
28
|
-
interface
|
|
29
|
-
|
|
30
|
-
api?: ApiConfigurationSchema;
|
|
31
|
-
whitelabel?: WhitelabelConfigurationSchema;
|
|
32
|
-
metadata?: OutputMetadataSchema;
|
|
33
|
-
readme?: ReadmeSchema;
|
|
34
|
-
"default-group"?: string;
|
|
35
|
-
/**
|
|
36
|
-
* Aliases that map to multiple groups. When running `fern generate <alias>`,
|
|
37
|
-
* all groups in the alias will be run. For example:
|
|
38
|
-
* ```yaml
|
|
39
|
-
* aliases:
|
|
40
|
-
* all: ["php-sdk", "ts-sdk", "go-sdk"]
|
|
41
|
-
* ```
|
|
42
|
-
* Then `fern generate all` will run all three groups.
|
|
43
|
-
*/
|
|
44
|
-
aliases?: Record<string, string[]>;
|
|
45
|
-
groups?: Record<string, GeneratorGroupSchema>;
|
|
46
|
-
reviewers?: ReviewersSchema;
|
|
47
|
-
ai?: AiServicesSchema;
|
|
48
|
-
/**
|
|
49
|
-
* If true, automatically release SDKs when changes are detected.
|
|
50
|
-
* Can be overridden at the individual generator level.
|
|
51
|
-
*/
|
|
52
|
-
autorelease?: boolean;
|
|
53
|
-
/** Deprecated, use the `api` key instead */
|
|
54
|
-
openapi?: GeneratorsOpenApiSchema;
|
|
55
|
-
/** Deprecated, use the `api` key instead */
|
|
56
|
-
"openapi-overrides"?: string;
|
|
57
|
-
/** Deprecated, use the `api` key instead */
|
|
58
|
-
"spec-origin"?: string;
|
|
59
|
-
/** Deprecated, use the `api` key instead */
|
|
60
|
-
"async-api"?: string;
|
|
61
|
-
/** Deprecated, use the `api` key instead */
|
|
62
|
-
"api-settings"?: ApiDefinitionSettingsSchema;
|
|
24
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AnyAuthSchemesSchema.d.ts
|
|
25
|
+
interface AnyAuthSchemesSchema extends WithDocsSchema {
|
|
26
|
+
any: AnyAuthItem[];
|
|
63
27
|
}
|
|
64
28
|
//#endregion
|
|
65
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
66
|
-
type
|
|
29
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/ApiAuthSchema.d.ts
|
|
30
|
+
type ApiAuthSchema = string | AuthSchemeReferenceSchema | AnyAuthSchemesSchema | EndpointSecuritySchema;
|
|
67
31
|
//#endregion
|
|
68
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
69
|
-
|
|
70
|
-
|
|
32
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthSchemeDeclarationSchema.d.ts
|
|
33
|
+
type AuthSchemeDeclarationSchema = OAuthSchemeSchema | HeaderAuthSchemeSchema | BasicAuthSchemeSchema | BearerAuthSchemeSchema;
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthSchemeReferenceSchema.d.ts
|
|
36
|
+
interface AuthSchemeReferenceSchema extends WithDocsSchema {
|
|
37
|
+
scheme: string;
|
|
71
38
|
}
|
|
72
39
|
//#endregion
|
|
73
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
74
|
-
|
|
75
|
-
|
|
40
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthScope.d.ts
|
|
41
|
+
type AuthScope = string;
|
|
42
|
+
//#endregion
|
|
43
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthVariable.d.ts
|
|
44
|
+
interface AuthVariable extends WithEnvironmentVariable, WithName {
|
|
45
|
+
/** If true, the auth variable will be omitted from the SDK. */
|
|
46
|
+
omit?: boolean;
|
|
76
47
|
}
|
|
77
48
|
//#endregion
|
|
78
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
username: string;
|
|
84
|
-
email: string;
|
|
85
|
-
token: string;
|
|
49
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/BasicAuthSchemeSchema.d.ts
|
|
50
|
+
interface BasicAuthSchemeSchema extends WithDocsSchema {
|
|
51
|
+
scheme: "basic";
|
|
52
|
+
username?: AuthVariable;
|
|
53
|
+
password?: AuthVariable;
|
|
86
54
|
}
|
|
87
55
|
//#endregion
|
|
88
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
56
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/BearerAuthSchemeSchema.d.ts
|
|
57
|
+
type BearerAuthSchemeSchema = TokenBearerAuthSchema | InferredBearerAuthSchema;
|
|
58
|
+
//#endregion
|
|
59
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/EndpointSecuritySchema.d.ts
|
|
60
|
+
interface EndpointSecuritySchema extends WithDocsSchema {
|
|
61
|
+
/** Indicates that authentication requirements are defined per-endpoint via the `security` field. */
|
|
62
|
+
"endpoint-security": EndpointSecuritySchemaDetails;
|
|
92
63
|
}
|
|
93
64
|
//#endregion
|
|
94
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
65
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/EndpointSecuritySchemaDetails.d.ts
|
|
66
|
+
type EndpointSecuritySchemaDetails = {};
|
|
67
|
+
//#endregion
|
|
68
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/HeaderAuthSchemeSchema.d.ts
|
|
69
|
+
interface HeaderAuthSchemeSchema extends WithEnvironmentVariable, WithName, WithDocsSchema {
|
|
70
|
+
header: string;
|
|
71
|
+
/** Defaults to string */
|
|
72
|
+
type?: string;
|
|
73
|
+
prefix?: string;
|
|
74
|
+
}
|
|
75
|
+
//#endregion
|
|
76
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredAuthenticatedRequestHeader.d.ts
|
|
95
77
|
/**
|
|
96
|
-
*
|
|
78
|
+
* A header that will be set on HTTP requests when the inferred auth scheme is applied to an endpoint. These are not headers for the authorization endpoint.
|
|
97
79
|
*/
|
|
98
|
-
interface
|
|
99
|
-
|
|
100
|
-
|
|
80
|
+
interface InferredAuthenticatedRequestHeader {
|
|
81
|
+
/** The property to retrieve the header value from the get token or refresh endpoint response. */
|
|
82
|
+
"response-property": string;
|
|
83
|
+
/** The header name to put the token in for any authenticated HTTP request. */
|
|
84
|
+
"header-name": string;
|
|
85
|
+
/** Commonly used for setting the `Authorization` scheme, but could be used for other things. */
|
|
86
|
+
"value-prefix"?: string;
|
|
101
87
|
}
|
|
102
88
|
//#endregion
|
|
103
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
104
|
-
interface
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
apiReferenceLink?: string;
|
|
108
|
-
apiName?: string;
|
|
109
|
-
disabledSections?: string[];
|
|
110
|
-
/** If set, use this endpoint's snippet as the default whenever possible */
|
|
111
|
-
defaultEndpoint?: ReadmeEndpointSchema;
|
|
112
|
-
/** Specifies a list of endpoints associated with the feature */
|
|
113
|
-
features?: Record<string, ReadmeEndpointSchema[]>;
|
|
114
|
-
/** Supply custom sections as markdown to be included in the readme */
|
|
115
|
-
customSections?: ReadmeCustomSectionSchema[];
|
|
116
|
-
/** Controls whether usage examples show only required parameters (minimal) or all parameters (comprehensive). Defaults to comprehensive. */
|
|
117
|
-
exampleStyle?: ExampleStyle;
|
|
89
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredBearerAuthSchema.d.ts
|
|
90
|
+
interface InferredBearerAuthSchema extends WithDocsSchema {
|
|
91
|
+
scheme: "bearer";
|
|
92
|
+
"get-token": InferredGetTokenEndpointSchema;
|
|
118
93
|
}
|
|
119
94
|
//#endregion
|
|
120
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
121
|
-
|
|
122
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
123
|
-
*/
|
|
124
|
-
type ExampleStyle = "minimal" | "comprehensive";
|
|
125
|
-
declare const ExampleStyle: {
|
|
126
|
-
readonly Minimal: "minimal";
|
|
127
|
-
readonly Comprehensive: "comprehensive";
|
|
128
|
-
};
|
|
95
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredGetTokenEndpointSchema.d.ts
|
|
96
|
+
type InferredGetTokenEndpointSchema = string | InferredGetTokenEndpointSchemaObject;
|
|
129
97
|
//#endregion
|
|
130
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
131
|
-
interface
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
98
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredGetTokenEndpointSchemaObject.d.ts
|
|
99
|
+
interface InferredGetTokenEndpointSchemaObject {
|
|
100
|
+
/** The endpoint to get the access token, such as 'auth.get_token' */
|
|
101
|
+
endpoint: string;
|
|
102
|
+
/** The property name for the expiry time in the response. */
|
|
103
|
+
"expiry-response-property"?: string;
|
|
104
|
+
/** The headers that will be set on HTTP requests when the inferred auth scheme is applied to an endpoint. */
|
|
105
|
+
"authenticated-request-headers"?: InferredAuthenticatedRequestHeader[];
|
|
135
106
|
}
|
|
136
107
|
//#endregion
|
|
137
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
|
|
141
|
-
|
|
108
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthAccessTokenRequestPropertiesSchema.d.ts
|
|
109
|
+
interface OAuthAccessTokenRequestPropertiesSchema {
|
|
110
|
+
/** The property name for the client ID. */
|
|
111
|
+
"client-id"?: string;
|
|
112
|
+
/** The property name for the client secret. */
|
|
113
|
+
"client-secret"?: string;
|
|
114
|
+
/** The property name for the scopes. */
|
|
115
|
+
scopes?: string;
|
|
116
|
+
}
|
|
142
117
|
//#endregion
|
|
143
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
118
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthAccessTokenResponsePropertiesSchema.d.ts
|
|
119
|
+
interface OAuthAccessTokenResponsePropertiesSchema {
|
|
120
|
+
/** The property name for the access token. */
|
|
121
|
+
"access-token"?: string;
|
|
122
|
+
/** The property name for the expires in property. */
|
|
123
|
+
"expires-in"?: string;
|
|
124
|
+
/** The property name for the refresh token */
|
|
125
|
+
"refresh-token"?: string;
|
|
151
126
|
}
|
|
152
127
|
//#endregion
|
|
153
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
154
|
-
|
|
128
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthGetTokenEndpointSchema.d.ts
|
|
129
|
+
interface OAuthGetTokenEndpointSchema {
|
|
130
|
+
/** The endpoint to get the access token, such as 'auth.get_token */
|
|
131
|
+
endpoint: string;
|
|
132
|
+
"request-properties"?: OAuthAccessTokenRequestPropertiesSchema;
|
|
133
|
+
"response-properties"?: OAuthAccessTokenResponsePropertiesSchema;
|
|
134
|
+
}
|
|
155
135
|
//#endregion
|
|
156
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
157
|
-
interface
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
"
|
|
162
|
-
settings: OpenApiSettingsSchema;
|
|
136
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthRefreshTokenEndpointSchema.d.ts
|
|
137
|
+
interface OAuthRefreshTokenEndpointSchema {
|
|
138
|
+
/** The endpoint to refresh the access token, such as 'auth.refresh_token */
|
|
139
|
+
endpoint: string;
|
|
140
|
+
"request-properties"?: OAuthRefreshTokenRequestPropertiesSchema;
|
|
141
|
+
"response-properties"?: OAuthRefreshTokenResponsePropertiesSchema;
|
|
163
142
|
}
|
|
164
143
|
//#endregion
|
|
165
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
* Path to the OpenAPI, AsyncAPI or Fern Definition
|
|
171
|
-
*/
|
|
172
|
-
type ApiDefinitionPathSchema = string;
|
|
144
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthRefreshTokenRequestPropertiesSchema.d.ts
|
|
145
|
+
interface OAuthRefreshTokenRequestPropertiesSchema {
|
|
146
|
+
/** The property name for the refresh token. */
|
|
147
|
+
"refresh-token": string;
|
|
148
|
+
}
|
|
173
149
|
//#endregion
|
|
174
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
*/
|
|
183
|
-
"use-title"?: boolean;
|
|
184
|
-
/**
|
|
185
|
-
* What version of union generation to use, this will grow over time. Defaults to v0.
|
|
186
|
-
* Deprecated, use the `api.specs.[].settings.prefer-undiscriminated-unions-with-literals` key instead.
|
|
187
|
-
*/
|
|
188
|
-
unions?: UnionSettingsSchema;
|
|
189
|
-
/** What version of message naming to use for AsyncAPI messages, this will grow over time. Defaults to v1. */
|
|
190
|
-
"message-naming"?: MessageNamingSettingsSchema;
|
|
191
|
-
/** Preserves nullable schemas in API definition settings. Defaults to true, where nullable schemas are treated as optional. */
|
|
192
|
-
"respect-nullable-schemas"?: boolean;
|
|
193
|
-
/** Whether to only include schemas referenced by endpoints in the generated SDK (i.e. a form of tree-shaking). Defaults to false. */
|
|
194
|
-
"only-include-referenced-schemas"?: boolean;
|
|
195
|
-
/** Whether to include path parameters within the generated in-lined request. Defaults to true. */
|
|
196
|
-
"inline-path-parameters"?: boolean;
|
|
197
|
-
/** Whether to use idiomatic request names for endpoints (e.g. ListUsersRequest instead of UsersListRequest). Defaults to true. */
|
|
198
|
-
"idiomatic-request-names"?: boolean;
|
|
199
|
-
/**
|
|
200
|
-
* If true, the converter will wrap references to nullable schemas in optional.
|
|
201
|
-
* If false, the converter will wrap references to nullable schemas in nullable.
|
|
202
|
-
* Defaults to true.
|
|
203
|
-
*/
|
|
204
|
-
"wrap-references-to-nullable-in-optional"?: boolean;
|
|
205
|
-
/**
|
|
206
|
-
* If true, the converter will coerce nullable schemas to optional.
|
|
207
|
-
* If false, the converter will keep nullable schemas as nullable.
|
|
208
|
-
* Defaults to true.
|
|
209
|
-
*/
|
|
210
|
-
"coerce-optional-schemas-to-nullable"?: boolean;
|
|
211
|
-
/**
|
|
212
|
-
* If true, group servers by host into unified environments regardless of protocol.
|
|
213
|
-
* This allows APIs with multiple protocols (REST, WebSocket, etc.) to share environment configuration.
|
|
214
|
-
* When enabled, environment URL IDs are generated with collision resolution:
|
|
215
|
-
* - Use server name alone if no collision
|
|
216
|
-
* - Add path segment if collision (e.g., "prod: https://api.com/foo" -> "foo")
|
|
217
|
-
* - Add protocol if still collision (e.g., "prod: wss://api.com/foo" -> "foo_wss", only for non-HTTPS protocols)
|
|
218
|
-
*/
|
|
219
|
-
"group-environments-by-host"?: boolean;
|
|
220
|
-
/**
|
|
221
|
-
* If `always`, remove discriminant properties from schemas when generating types, unless the schema is also used outside of a discriminated union.
|
|
222
|
-
* If `never`, keep discriminant properties in schemas when generating types.
|
|
223
|
-
* Defaults to `always`.
|
|
224
|
-
*/
|
|
225
|
-
"remove-discriminants-from-schemas"?: RemoveDiscriminantsFromSchemas;
|
|
226
|
-
/**
|
|
227
|
-
* Controls the order of path parameters in generated method signatures.
|
|
228
|
-
* - `url-order`: Use the order path parameters appear in the URL path (e.g., /users/{userId}/posts/{postId})
|
|
229
|
-
* - `spec-order`: Use the order path parameters are defined in the spec
|
|
230
|
-
* Defaults to `url-order`.
|
|
231
|
-
*/
|
|
232
|
-
"path-parameter-order"?: PathParameterOrder;
|
|
150
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthRefreshTokenResponsePropertiesSchema.d.ts
|
|
151
|
+
interface OAuthRefreshTokenResponsePropertiesSchema {
|
|
152
|
+
/** The property name for the access token. */
|
|
153
|
+
"access-token"?: string;
|
|
154
|
+
/** The property name for the expires in property. */
|
|
155
|
+
"expires-in"?: string;
|
|
156
|
+
/** The property name for the refresh token. */
|
|
157
|
+
"refresh-token"?: string;
|
|
233
158
|
}
|
|
234
159
|
//#endregion
|
|
235
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
160
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthSchemeSchema.d.ts
|
|
161
|
+
interface OAuthSchemeSchema extends WithDocsSchema {
|
|
162
|
+
scheme: "oauth";
|
|
163
|
+
type: "client-credentials";
|
|
164
|
+
scopes?: AuthScope[];
|
|
165
|
+
"client-id-env"?: string;
|
|
166
|
+
"client-secret-env"?: string;
|
|
167
|
+
/** Sets the token header value prefix. Defaults to 'Bearer' */
|
|
168
|
+
"token-prefix"?: string;
|
|
169
|
+
/** Sets the token header key name. Defaults to 'Authorization' */
|
|
170
|
+
"token-header"?: string;
|
|
171
|
+
"get-token": OAuthGetTokenEndpointSchema;
|
|
172
|
+
"refresh-token"?: OAuthRefreshTokenEndpointSchema;
|
|
173
|
+
}
|
|
247
174
|
//#endregion
|
|
248
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
* Controls the order of path parameters in generated method signatures.
|
|
254
|
-
*/
|
|
255
|
-
type PathParameterOrder = "url-order" | "spec-order";
|
|
256
|
-
declare const PathParameterOrder: {
|
|
257
|
-
readonly UrlOrder: "url-order";
|
|
258
|
-
readonly SpecOrder: "spec-order";
|
|
259
|
-
};
|
|
175
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/TokenBearerAuthSchema.d.ts
|
|
176
|
+
interface TokenBearerAuthSchema extends WithDocsSchema {
|
|
177
|
+
scheme: "bearer";
|
|
178
|
+
token?: AuthVariable;
|
|
179
|
+
}
|
|
260
180
|
//#endregion
|
|
261
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
type UnionSettingsSchema = "v1";
|
|
266
|
-
declare const UnionSettingsSchema: {
|
|
267
|
-
readonly V1: "v1";
|
|
268
|
-
};
|
|
181
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/WithEnvironmentVariable.d.ts
|
|
182
|
+
interface WithEnvironmentVariable {
|
|
183
|
+
env?: string;
|
|
184
|
+
}
|
|
269
185
|
//#endregion
|
|
270
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
186
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/availability/types/AvailabilitySchema.d.ts
|
|
187
|
+
interface AvailabilitySchema {
|
|
188
|
+
status: AvailabilityStatusSchema;
|
|
189
|
+
message?: string;
|
|
190
|
+
}
|
|
191
|
+
//#endregion
|
|
192
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/availability/types/AvailabilityStatusSchema.d.ts
|
|
193
|
+
declare const AvailabilityStatusSchema: {
|
|
194
|
+
readonly InDevelopment: "in-development";
|
|
195
|
+
readonly PreRelease: "pre-release";
|
|
196
|
+
readonly Deprecated: "deprecated";
|
|
197
|
+
readonly GenerallyAvailable: "generally-available";
|
|
278
198
|
};
|
|
199
|
+
type AvailabilityStatusSchema = (typeof AvailabilityStatusSchema)[keyof typeof AvailabilityStatusSchema];
|
|
279
200
|
//#endregion
|
|
280
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
/** Path to the OpenAPI or AsyncAPI overrides */
|
|
286
|
-
overrides?: string;
|
|
287
|
-
/** Audiences that you would like to filter to */
|
|
201
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/availability/types/AvailabilityUnionSchema.d.ts
|
|
202
|
+
type AvailabilityUnionSchema = AvailabilityStatusSchema | AvailabilitySchema;
|
|
203
|
+
//#endregion
|
|
204
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/commons/types/WithAudiences.d.ts
|
|
205
|
+
interface WithAudiences {
|
|
288
206
|
audiences?: string[];
|
|
289
|
-
settings?: ApiDefinitionSettingsSchema;
|
|
290
207
|
}
|
|
291
208
|
//#endregion
|
|
292
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
*/
|
|
296
|
-
interface ProtobufDefinitionSchema {
|
|
297
|
-
/** The path to the target `.proto` file that defines the API (e.g. `proto/user/v1/user.proto`). */
|
|
298
|
-
target?: string;
|
|
299
|
-
/** The path to the `.proto` directory root (e.g. `proto`). */
|
|
300
|
-
root: string;
|
|
301
|
-
/** Path to the overrides configuration */
|
|
302
|
-
overrides?: string;
|
|
303
|
-
/** Whether to compile the `.proto` files locally. By default, we generate remotely. */
|
|
304
|
-
"local-generation"?: boolean;
|
|
305
|
-
/** Whether to convert to OpenAPI before generating */
|
|
306
|
-
"from-openapi"?: boolean;
|
|
307
|
-
/** Dependencies to use for generation. */
|
|
308
|
-
dependencies?: string[];
|
|
209
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/commons/types/WithAvailability.d.ts
|
|
210
|
+
interface WithAvailability {
|
|
211
|
+
availability?: AvailabilityUnionSchema;
|
|
309
212
|
}
|
|
310
213
|
//#endregion
|
|
311
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
312
|
-
interface
|
|
313
|
-
|
|
214
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/commons/types/WithDocsSchema.d.ts
|
|
215
|
+
interface WithDocsSchema {
|
|
216
|
+
docs?: string;
|
|
314
217
|
}
|
|
315
218
|
//#endregion
|
|
316
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
317
|
-
|
|
219
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/commons/types/WithName.d.ts
|
|
220
|
+
interface WithName {
|
|
221
|
+
name?: string;
|
|
222
|
+
}
|
|
318
223
|
//#endregion
|
|
319
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
320
|
-
|
|
224
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/encoding/types/EncodingSchema.d.ts
|
|
225
|
+
interface EncodingSchema {
|
|
226
|
+
proto?: ProtobufTypeSchema;
|
|
227
|
+
}
|
|
228
|
+
//#endregion
|
|
229
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/encoding/types/ProtobufTypeSchema.d.ts
|
|
230
|
+
interface ProtobufTypeSchema {
|
|
231
|
+
/** The name of the Protobuf type (e.g. google.protobuf.Struct). */
|
|
232
|
+
type: string;
|
|
233
|
+
}
|
|
234
|
+
//#endregion
|
|
235
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/environments/types/EnvironmentSchema.d.ts
|
|
236
|
+
type EnvironmentSchema = string | SingleBaseUrlEnvironmentSchema | MultipleBaseUrlsEnvironmentSchema;
|
|
237
|
+
//#endregion
|
|
238
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/environments/types/MultipleBaseUrlsEnvironmentSchema.d.ts
|
|
239
|
+
interface MultipleBaseUrlsEnvironmentSchema extends WithAudiences, WithDocsSchema {
|
|
240
|
+
urls: Record<string, string>;
|
|
241
|
+
/** URL templates with variable placeholders for each base URL (e.g., "https://api.{region}.example.com") */
|
|
242
|
+
"url-templates"?: Record<string, string>;
|
|
243
|
+
/** Default URLs to use when no variables are provided (from x-fern-default-url extension) */
|
|
244
|
+
"default-urls"?: Record<string, string>;
|
|
245
|
+
/** Server variables for URL templating, keyed by base URL ID */
|
|
246
|
+
variables?: Record<string, ServerVariableSchema[]>;
|
|
247
|
+
}
|
|
248
|
+
//#endregion
|
|
249
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/environments/types/ServerVariableSchema.d.ts
|
|
250
|
+
interface ServerVariableSchema {
|
|
251
|
+
/** The variable name as it appears in the URL template */
|
|
252
|
+
id: string;
|
|
253
|
+
/** The default value for this variable */
|
|
254
|
+
default?: string;
|
|
255
|
+
/** Allowed values for this variable (from enum) */
|
|
256
|
+
values?: string[];
|
|
257
|
+
}
|
|
258
|
+
//#endregion
|
|
259
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/environments/types/SingleBaseUrlEnvironmentSchema.d.ts
|
|
260
|
+
interface SingleBaseUrlEnvironmentSchema extends WithAudiences, WithDocsSchema {
|
|
261
|
+
url: string;
|
|
262
|
+
/** A separate default URL to use when no variables are provided (from x-fern-default-url extension) */
|
|
263
|
+
"default-url"?: string;
|
|
264
|
+
/** The original URL template with variable placeholders (e.g., "https://api.{region}.example.com") */
|
|
265
|
+
"url-template"?: string;
|
|
266
|
+
/** Server variables for URL templating */
|
|
267
|
+
variables?: ServerVariableSchema[];
|
|
268
|
+
}
|
|
269
|
+
//#endregion
|
|
270
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/environments/types/WithEnvironmentsSchema.d.ts
|
|
271
|
+
interface WithEnvironmentsSchema {
|
|
272
|
+
"default-url"?: string;
|
|
273
|
+
"default-environment"?: string;
|
|
274
|
+
environments?: Record<string, EnvironmentSchema>;
|
|
275
|
+
}
|
|
276
|
+
//#endregion
|
|
277
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/file/types/WithHeadersSchema.d.ts
|
|
278
|
+
interface WithHeadersSchema {
|
|
279
|
+
/** Global Headers for the entire API */
|
|
280
|
+
headers?: Record<string, HttpHeaderSchema>;
|
|
281
|
+
}
|
|
282
|
+
//#endregion
|
|
283
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/service/types/HttpHeaderSchema.d.ts
|
|
284
|
+
type HttpHeaderSchema = TypeReferenceDeclarationWithEnvOverride;
|
|
285
|
+
//#endregion
|
|
286
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/service/types/TypeReferenceDeclarationWithEnvOverride.d.ts
|
|
287
|
+
type TypeReferenceDeclarationWithEnvOverride = string | TypeReferenceDeclarationWithEnvOverrideSchema;
|
|
288
|
+
//#endregion
|
|
289
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/service/types/TypeReferenceDeclarationWithEnvOverrideSchema.d.ts
|
|
290
|
+
interface TypeReferenceDeclarationWithEnvOverrideSchema extends TypeReferenceDeclarationWithName {
|
|
291
|
+
env?: string;
|
|
292
|
+
}
|
|
293
|
+
//#endregion
|
|
294
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/types/types/BaseTypeReferenceSchema.d.ts
|
|
295
|
+
interface BaseTypeReferenceSchema extends WithDocsSchema, WithAvailability {
|
|
296
|
+
default?: unknown;
|
|
297
|
+
encoding?: EncodingSchema;
|
|
298
|
+
validation?: ValidationSchema;
|
|
299
|
+
}
|
|
300
|
+
//#endregion
|
|
301
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/types/types/TypeReferenceDeclarationWithName.d.ts
|
|
302
|
+
interface TypeReferenceDeclarationWithName extends BaseTypeReferenceSchema, WithName, WithAudiences {
|
|
303
|
+
type: string;
|
|
304
|
+
}
|
|
305
|
+
//#endregion
|
|
306
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/validation/types/ListValidationSchema.d.ts
|
|
307
|
+
interface ListValidationSchema {
|
|
308
|
+
minItems?: number;
|
|
309
|
+
maxItems?: number;
|
|
310
|
+
}
|
|
311
|
+
//#endregion
|
|
312
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/validation/types/MapValidationSchema.d.ts
|
|
313
|
+
interface MapValidationSchema {
|
|
314
|
+
minProperties?: number;
|
|
315
|
+
maxProperties?: number;
|
|
316
|
+
}
|
|
317
|
+
//#endregion
|
|
318
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/validation/types/NumberValidationSchema.d.ts
|
|
319
|
+
interface NumberValidationSchema {
|
|
320
|
+
min?: number;
|
|
321
|
+
max?: number;
|
|
322
|
+
exclusiveMin?: boolean;
|
|
323
|
+
exclusiveMax?: boolean;
|
|
324
|
+
multipleOf?: number;
|
|
325
|
+
}
|
|
326
|
+
//#endregion
|
|
327
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/validation/types/StringValidationSchema.d.ts
|
|
328
|
+
interface StringValidationSchema {
|
|
329
|
+
minLength?: number;
|
|
330
|
+
maxLength?: number;
|
|
331
|
+
pattern?: string;
|
|
332
|
+
format?: string;
|
|
333
|
+
}
|
|
334
|
+
//#endregion
|
|
335
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/validation/types/ValidationSchema.d.ts
|
|
336
|
+
type ValidationSchema = StringValidationSchema | NumberValidationSchema | ListValidationSchema | MapValidationSchema;
|
|
337
|
+
//#endregion
|
|
338
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiConfigurationSchema.d.ts
|
|
339
|
+
type ApiConfigurationSchema = ApiConfigurationSchemaInternal | NamespacedApiConfigurationSchema | ApiConfigurationV2Schema;
|
|
321
340
|
//#endregion
|
|
322
341
|
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiConfigurationSchemaInternal.d.ts
|
|
323
342
|
type ApiConfigurationSchemaInternal = ApiDefinitionPathSchema | ApiDefinitionWithOverridesSchema | ApiDefinitionList | ProtobufApiDefinitionSchema;
|
|
@@ -342,28 +361,128 @@ interface ApiConfigurationV2SettingsSchema extends OpenApiSettingsSchema, AsyncA
|
|
|
342
361
|
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiConfigurationV2SpecsSchema.d.ts
|
|
343
362
|
type ApiConfigurationV2SpecsSchema = SpecSchema[] | ConjureSchema;
|
|
344
363
|
//#endregion
|
|
345
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
*
|
|
364
|
-
*
|
|
365
|
-
*/
|
|
366
|
-
"
|
|
364
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiDefinitionList.d.ts
|
|
365
|
+
type ApiDefinitionList = ApiDefinitionSchema[];
|
|
366
|
+
//#endregion
|
|
367
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiDefinitionPathSchema.d.ts
|
|
368
|
+
/**
|
|
369
|
+
* Path to the OpenAPI, AsyncAPI or Fern Definition
|
|
370
|
+
*/
|
|
371
|
+
type ApiDefinitionPathSchema = string;
|
|
372
|
+
//#endregion
|
|
373
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiDefinitionSchema.d.ts
|
|
374
|
+
type ApiDefinitionSchema = ApiDefinitionPathSchema | ApiDefinitionWithOverridesSchema | ProtobufApiDefinitionSchema;
|
|
375
|
+
//#endregion
|
|
376
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiDefinitionSettingsSchema.d.ts
|
|
377
|
+
/**
|
|
378
|
+
* Deprecated, use the `api.specs` key instead
|
|
379
|
+
*/
|
|
380
|
+
interface ApiDefinitionSettingsSchema {
|
|
381
|
+
/**
|
|
382
|
+
* Whether to use the titles of the schemas within an OpenAPI definition as the names of the types within Fern. Defaults to false.
|
|
383
|
+
* Deprecated, use the `api.specs.[].settings.title-as-schema-name` key instead.
|
|
384
|
+
*/
|
|
385
|
+
"use-title"?: boolean;
|
|
386
|
+
/**
|
|
387
|
+
* What version of union generation to use, this will grow over time. Defaults to v0.
|
|
388
|
+
* Deprecated, use the `api.specs.[].settings.prefer-undiscriminated-unions-with-literals` key instead.
|
|
389
|
+
*/
|
|
390
|
+
unions?: UnionSettingsSchema;
|
|
391
|
+
/** What version of message naming to use for AsyncAPI messages, this will grow over time. Defaults to v1. */
|
|
392
|
+
"message-naming"?: MessageNamingSettingsSchema;
|
|
393
|
+
/** Preserves nullable schemas in API definition settings. Defaults to true, where nullable schemas are treated as optional. */
|
|
394
|
+
"respect-nullable-schemas"?: boolean;
|
|
395
|
+
/** Whether to only include schemas referenced by endpoints in the generated SDK (i.e. a form of tree-shaking). Defaults to false. */
|
|
396
|
+
"only-include-referenced-schemas"?: boolean;
|
|
397
|
+
/** Whether to include path parameters within the generated in-lined request. Defaults to true. */
|
|
398
|
+
"inline-path-parameters"?: boolean;
|
|
399
|
+
/** Whether to use idiomatic request names for endpoints (e.g. ListUsersRequest instead of UsersListRequest). Defaults to true. */
|
|
400
|
+
"idiomatic-request-names"?: boolean;
|
|
401
|
+
/**
|
|
402
|
+
* If true, the converter will wrap references to nullable schemas in optional.
|
|
403
|
+
* If false, the converter will wrap references to nullable schemas in nullable.
|
|
404
|
+
* Defaults to true.
|
|
405
|
+
*/
|
|
406
|
+
"wrap-references-to-nullable-in-optional"?: boolean;
|
|
407
|
+
/**
|
|
408
|
+
* If true, the converter will coerce nullable schemas to optional.
|
|
409
|
+
* If false, the converter will keep nullable schemas as nullable.
|
|
410
|
+
* Defaults to true.
|
|
411
|
+
*/
|
|
412
|
+
"coerce-optional-schemas-to-nullable"?: boolean;
|
|
413
|
+
/**
|
|
414
|
+
* If true, group servers by host into unified environments regardless of protocol.
|
|
415
|
+
* This allows APIs with multiple protocols (REST, WebSocket, etc.) to share environment configuration.
|
|
416
|
+
* When enabled, environment URL IDs are generated with collision resolution:
|
|
417
|
+
* - Use server name alone if no collision
|
|
418
|
+
* - Add path segment if collision (e.g., "prod: https://api.com/foo" -> "foo")
|
|
419
|
+
* - Add protocol if still collision (e.g., "prod: wss://api.com/foo" -> "foo_wss", only for non-HTTPS protocols)
|
|
420
|
+
*/
|
|
421
|
+
"group-environments-by-host"?: boolean;
|
|
422
|
+
/**
|
|
423
|
+
* If `always`, remove discriminant properties from schemas when generating types, unless the schema is also used outside of a discriminated union.
|
|
424
|
+
* If `never`, keep discriminant properties in schemas when generating types.
|
|
425
|
+
* Defaults to `always`.
|
|
426
|
+
*/
|
|
427
|
+
"remove-discriminants-from-schemas"?: RemoveDiscriminantsFromSchemas;
|
|
428
|
+
/**
|
|
429
|
+
* Controls the order of path parameters in generated method signatures.
|
|
430
|
+
* - `url-order`: Use the order path parameters appear in the URL path (e.g., /users/{userId}/posts/{postId})
|
|
431
|
+
* - `spec-order`: Use the order path parameters are defined in the spec
|
|
432
|
+
* Defaults to `url-order`.
|
|
433
|
+
*/
|
|
434
|
+
"path-parameter-order"?: PathParameterOrder;
|
|
435
|
+
}
|
|
436
|
+
//#endregion
|
|
437
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ApiDefinitionWithOverridesSchema.d.ts
|
|
438
|
+
interface ApiDefinitionWithOverridesSchema {
|
|
439
|
+
path: ApiDefinitionPathSchema;
|
|
440
|
+
/** The URL of the API definition origin, from which the file should be polled. */
|
|
441
|
+
origin?: string;
|
|
442
|
+
/** Path to the OpenAPI or AsyncAPI overrides */
|
|
443
|
+
overrides?: string;
|
|
444
|
+
/** Audiences that you would like to filter to */
|
|
445
|
+
audiences?: string[];
|
|
446
|
+
settings?: ApiDefinitionSettingsSchema;
|
|
447
|
+
}
|
|
448
|
+
//#endregion
|
|
449
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/AsyncApiSettingsSchema.d.ts
|
|
450
|
+
interface AsyncApiSettingsSchema extends BaseApiSettingsSchema {
|
|
451
|
+
/** What version of message naming to use for AsyncAPI messages, this will grow over time. Defaults to v1. */
|
|
452
|
+
"message-naming"?: MessageNamingSettingsSchema;
|
|
453
|
+
}
|
|
454
|
+
//#endregion
|
|
455
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/AsyncApiSpecSchema.d.ts
|
|
456
|
+
interface AsyncApiSpecSchema {
|
|
457
|
+
asyncapi: string;
|
|
458
|
+
origin?: string;
|
|
459
|
+
overrides?: string;
|
|
460
|
+
namespace?: string;
|
|
461
|
+
settings?: AsyncApiSettingsSchema;
|
|
462
|
+
}
|
|
463
|
+
//#endregion
|
|
464
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/BaseApiSettingsSchema.d.ts
|
|
465
|
+
interface BaseApiSettingsSchema {
|
|
466
|
+
/** Preserves nullable schemas in API definition settings. Defaults to true, where nullable schemas are treated as optional. */
|
|
467
|
+
"respect-nullable-schemas"?: boolean;
|
|
468
|
+
/** Whether to use the titles of the schemas within an OpenAPI definition as the names of the types within Fern. Defaults to false. */
|
|
469
|
+
"title-as-schema-name"?: boolean;
|
|
470
|
+
"optional-additional-properties"?: boolean;
|
|
471
|
+
/** Whether to coerce single value enums to literals. Defaults to true. */
|
|
472
|
+
"coerce-enums-to-literals"?: boolean;
|
|
473
|
+
"idiomatic-request-names"?: boolean;
|
|
474
|
+
/**
|
|
475
|
+
* If true, the converter will convert nullable schemas to optional nullable.
|
|
476
|
+
* If false, the converter will convert nullable schemas to required nullable.
|
|
477
|
+
* Defaults to true.
|
|
478
|
+
*/
|
|
479
|
+
"wrap-references-to-nullable-in-optional"?: boolean;
|
|
480
|
+
/**
|
|
481
|
+
* If true, the converter will coerce nullable schemas to optional.
|
|
482
|
+
* If false, the converter will keep nullable schemas as nullable.
|
|
483
|
+
* Defaults to true.
|
|
484
|
+
*/
|
|
485
|
+
"coerce-optional-schemas-to-nullable"?: boolean;
|
|
367
486
|
/**
|
|
368
487
|
* If true, group servers by host into unified environments regardless of protocol.
|
|
369
488
|
* This allows APIs with multiple protocols (REST, WebSocket, etc.) to share environment configuration.
|
|
@@ -386,6 +505,141 @@ interface BaseApiSettingsSchema {
|
|
|
386
505
|
* Defaults to `url-order`.
|
|
387
506
|
*/
|
|
388
507
|
"path-parameter-order"?: PathParameterOrder;
|
|
508
|
+
/**
|
|
509
|
+
* If true, resolve schema name collisions by appending numbers (e.g., Schema2, Schema3) and emit warnings.
|
|
510
|
+
* If false, throw hard errors when schema collisions are detected.
|
|
511
|
+
* Defaults to false.
|
|
512
|
+
*/
|
|
513
|
+
"resolve-schema-collisions"?: boolean;
|
|
514
|
+
}
|
|
515
|
+
//#endregion
|
|
516
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ConjureSchema.d.ts
|
|
517
|
+
interface ConjureSchema {
|
|
518
|
+
conjure: string;
|
|
519
|
+
}
|
|
520
|
+
//#endregion
|
|
521
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/DefaultIntegerFormat.d.ts
|
|
522
|
+
declare const DefaultIntegerFormat: {
|
|
523
|
+
readonly Int32: "int32";
|
|
524
|
+
readonly Int64: "int64";
|
|
525
|
+
readonly Uint32: "uint32";
|
|
526
|
+
readonly Uint64: "uint64";
|
|
527
|
+
};
|
|
528
|
+
type DefaultIntegerFormat = (typeof DefaultIntegerFormat)[keyof typeof DefaultIntegerFormat];
|
|
529
|
+
//#endregion
|
|
530
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ExampleStyle.d.ts
|
|
531
|
+
declare const ExampleStyle: {
|
|
532
|
+
readonly Minimal: "minimal";
|
|
533
|
+
readonly Comprehensive: "comprehensive";
|
|
534
|
+
};
|
|
535
|
+
type ExampleStyle = (typeof ExampleStyle)[keyof typeof ExampleStyle];
|
|
536
|
+
//#endregion
|
|
537
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/FormParameterEncoding.d.ts
|
|
538
|
+
declare const FormParameterEncoding: {
|
|
539
|
+
readonly Form: "form";
|
|
540
|
+
readonly Json: "json";
|
|
541
|
+
};
|
|
542
|
+
type FormParameterEncoding = (typeof FormParameterEncoding)[keyof typeof FormParameterEncoding];
|
|
543
|
+
//#endregion
|
|
544
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/GeneratorsConfigurationSchema.d.ts
|
|
545
|
+
interface GeneratorsConfigurationSchema {
|
|
546
|
+
"auth-schemes"?: Record<string, AuthSchemeDeclarationSchema>;
|
|
547
|
+
api?: ApiConfigurationSchema;
|
|
548
|
+
whitelabel?: WhitelabelConfigurationSchema;
|
|
549
|
+
metadata?: OutputMetadataSchema;
|
|
550
|
+
readme?: ReadmeSchema;
|
|
551
|
+
"default-group"?: string;
|
|
552
|
+
/**
|
|
553
|
+
* Aliases that map to multiple groups. When running `fern generate <alias>`,
|
|
554
|
+
* all groups in the alias will be run. For example:
|
|
555
|
+
* ```yaml
|
|
556
|
+
* aliases:
|
|
557
|
+
* all: ["php-sdk", "ts-sdk", "go-sdk"]
|
|
558
|
+
* ```
|
|
559
|
+
* Then `fern generate all` will run all three groups.
|
|
560
|
+
*/
|
|
561
|
+
aliases?: Record<string, string[]>;
|
|
562
|
+
groups?: Record<string, GeneratorGroupSchema>;
|
|
563
|
+
reviewers?: ReviewersSchema;
|
|
564
|
+
/**
|
|
565
|
+
* Configuration for SDK customization replay.
|
|
566
|
+
* Automatically preserves user customizations across SDK regenerations.
|
|
567
|
+
*/
|
|
568
|
+
replay?: ReplayConfigSchema;
|
|
569
|
+
ai?: AiServicesSchema;
|
|
570
|
+
/**
|
|
571
|
+
* If true, automatically release SDKs when changes are detected.
|
|
572
|
+
* Can be overridden at the individual generator level.
|
|
573
|
+
*/
|
|
574
|
+
autorelease?: boolean;
|
|
575
|
+
/** Deprecated, use the `api` key instead */
|
|
576
|
+
openapi?: GeneratorsOpenApiSchema;
|
|
577
|
+
/** Deprecated, use the `api` key instead */
|
|
578
|
+
"openapi-overrides"?: string;
|
|
579
|
+
/** Deprecated, use the `api` key instead */
|
|
580
|
+
"spec-origin"?: string;
|
|
581
|
+
/** Deprecated, use the `api` key instead */
|
|
582
|
+
"async-api"?: string;
|
|
583
|
+
/** Deprecated, use the `api` key instead */
|
|
584
|
+
"api-settings"?: ApiDefinitionSettingsSchema;
|
|
585
|
+
}
|
|
586
|
+
//#endregion
|
|
587
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/GeneratorsOpenApiObjectSchema.d.ts
|
|
588
|
+
interface GeneratorsOpenApiObjectSchema {
|
|
589
|
+
path: string;
|
|
590
|
+
origin?: string;
|
|
591
|
+
overrides?: string;
|
|
592
|
+
"disable-examples"?: boolean;
|
|
593
|
+
settings: OpenApiSettingsSchema;
|
|
594
|
+
}
|
|
595
|
+
//#endregion
|
|
596
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/GeneratorsOpenApiSchema.d.ts
|
|
597
|
+
type GeneratorsOpenApiSchema = GeneratorsOpenApiObjectSchema | string;
|
|
598
|
+
//#endregion
|
|
599
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/GraphQlSpecSchema.d.ts
|
|
600
|
+
interface GraphQlSpecSchema {
|
|
601
|
+
graphql: string;
|
|
602
|
+
origin?: string;
|
|
603
|
+
overrides?: string;
|
|
604
|
+
name?: string;
|
|
605
|
+
}
|
|
606
|
+
//#endregion
|
|
607
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/Language.d.ts
|
|
608
|
+
declare const Language: {
|
|
609
|
+
readonly Java: "java";
|
|
610
|
+
readonly Python: "python";
|
|
611
|
+
readonly Go: "go";
|
|
612
|
+
readonly Ruby: "ruby";
|
|
613
|
+
readonly Csharp: "csharp";
|
|
614
|
+
readonly Typescript: "typescript";
|
|
615
|
+
readonly Php: "php";
|
|
616
|
+
readonly Rust: "rust";
|
|
617
|
+
readonly Swift: "swift";
|
|
618
|
+
};
|
|
619
|
+
type Language = (typeof Language)[keyof typeof Language];
|
|
620
|
+
//#endregion
|
|
621
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/MessageNamingSettingsSchema.d.ts
|
|
622
|
+
declare const MessageNamingSettingsSchema: {
|
|
623
|
+
readonly V1: "v1";
|
|
624
|
+
readonly V2: "v2";
|
|
625
|
+
};
|
|
626
|
+
type MessageNamingSettingsSchema = (typeof MessageNamingSettingsSchema)[keyof typeof MessageNamingSettingsSchema];
|
|
627
|
+
//#endregion
|
|
628
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/NamespacedApiConfigurationSchema.d.ts
|
|
629
|
+
interface NamespacedApiConfigurationSchema {
|
|
630
|
+
namespaces: Record<string, ApiConfigurationSchemaInternal>;
|
|
631
|
+
}
|
|
632
|
+
//#endregion
|
|
633
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/OpenApiExampleGenerationSchema.d.ts
|
|
634
|
+
interface OpenApiExampleGenerationSchema {
|
|
635
|
+
request?: RequestOrResponseExampleGenerationSchema;
|
|
636
|
+
response?: RequestOrResponseExampleGenerationSchema;
|
|
637
|
+
}
|
|
638
|
+
//#endregion
|
|
639
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/OpenApiFilterSchema.d.ts
|
|
640
|
+
interface OpenApiFilterSchema {
|
|
641
|
+
/** Endpoints to include in the generated SDK (e.g. "POST /users"). */
|
|
642
|
+
endpoints?: string[];
|
|
389
643
|
}
|
|
390
644
|
//#endregion
|
|
391
645
|
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/OpenApiSettingsSchema.d.ts
|
|
@@ -447,131 +701,176 @@ interface OpenApiSettingsSchema extends BaseApiSettingsSchema {
|
|
|
447
701
|
"default-integer-format"?: DefaultIntegerFormat;
|
|
448
702
|
}
|
|
449
703
|
//#endregion
|
|
450
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
451
|
-
|
|
704
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/OpenApiSpecSchema.d.ts
|
|
705
|
+
interface OpenApiSpecSchema {
|
|
706
|
+
openapi: string;
|
|
707
|
+
origin?: string;
|
|
708
|
+
overrides?: string;
|
|
709
|
+
overlays?: string;
|
|
710
|
+
namespace?: string;
|
|
711
|
+
settings?: OpenApiSettingsSchema;
|
|
712
|
+
}
|
|
452
713
|
//#endregion
|
|
453
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
/** Names of alias types to exclude from resolving. */
|
|
459
|
-
except?: string[];
|
|
714
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/OpenRpcSpecSchema.d.ts
|
|
715
|
+
interface OpenRpcSpecSchema {
|
|
716
|
+
openrpc: string;
|
|
717
|
+
overrides?: string;
|
|
718
|
+
namespace?: string;
|
|
460
719
|
}
|
|
461
720
|
//#endregion
|
|
462
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
721
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/OutputMetadataAuthor.d.ts
|
|
722
|
+
interface OutputMetadataAuthor {
|
|
723
|
+
name: string;
|
|
724
|
+
email: string;
|
|
725
|
+
}
|
|
726
|
+
//#endregion
|
|
727
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/OutputMetadataSchema.d.ts
|
|
728
|
+
interface OutputMetadataSchema {
|
|
729
|
+
description?: string;
|
|
730
|
+
authors?: OutputMetadataAuthor[];
|
|
731
|
+
}
|
|
732
|
+
//#endregion
|
|
733
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/PathParameterOrder.d.ts
|
|
734
|
+
/** Controls the order of path parameters in generated method signatures. */
|
|
735
|
+
declare const PathParameterOrder: {
|
|
736
|
+
readonly UrlOrder: "url-order";
|
|
737
|
+
readonly SpecOrder: "spec-order";
|
|
470
738
|
};
|
|
739
|
+
type PathParameterOrder = (typeof PathParameterOrder)[keyof typeof PathParameterOrder];
|
|
471
740
|
//#endregion
|
|
472
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
741
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ProtobufApiDefinitionSchema.d.ts
|
|
742
|
+
interface ProtobufApiDefinitionSchema {
|
|
743
|
+
proto: ProtobufDefinitionSchema;
|
|
744
|
+
}
|
|
745
|
+
//#endregion
|
|
746
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ProtobufDefinitionSchema.d.ts
|
|
747
|
+
interface ProtobufDefinitionSchema {
|
|
748
|
+
/** The path to the target `.proto` file that defines the API (e.g. `proto/user/v1/user.proto`). */
|
|
749
|
+
target?: string;
|
|
750
|
+
/** The path to the `.proto` directory root (e.g. `proto`). */
|
|
751
|
+
root: string;
|
|
752
|
+
/** Path to the overrides configuration */
|
|
753
|
+
overrides?: string;
|
|
754
|
+
/** Whether to compile the `.proto` files locally. By default, we generate remotely. */
|
|
755
|
+
"local-generation"?: boolean;
|
|
756
|
+
/** Whether to convert to OpenAPI before generating */
|
|
757
|
+
"from-openapi"?: boolean;
|
|
758
|
+
/** Dependencies to use for generation. */
|
|
759
|
+
dependencies?: string[];
|
|
760
|
+
}
|
|
761
|
+
//#endregion
|
|
762
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ProtobufSpecSchema.d.ts
|
|
763
|
+
interface ProtobufSpecSchema {
|
|
764
|
+
proto: ProtobufDefinitionSchema;
|
|
765
|
+
}
|
|
766
|
+
//#endregion
|
|
767
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ReadmeCustomSectionSchema.d.ts
|
|
768
|
+
interface ReadmeCustomSectionSchema {
|
|
769
|
+
title: string;
|
|
770
|
+
language: Language;
|
|
771
|
+
content: string;
|
|
772
|
+
}
|
|
773
|
+
//#endregion
|
|
774
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ReadmeEndpointObjectSchema.d.ts
|
|
775
|
+
interface ReadmeEndpointObjectSchema {
|
|
776
|
+
method: string;
|
|
777
|
+
path: string;
|
|
778
|
+
stream?: boolean;
|
|
779
|
+
}
|
|
780
|
+
//#endregion
|
|
781
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ReadmeEndpointSchema.d.ts
|
|
782
|
+
type ReadmeEndpointSchema =
|
|
473
783
|
/**
|
|
474
|
-
*
|
|
475
|
-
|
|
476
|
-
type DefaultIntegerFormat = "int32" | "int64" | "uint32" | "uint64";
|
|
477
|
-
declare const DefaultIntegerFormat: {
|
|
478
|
-
readonly Int32: "int32";
|
|
479
|
-
readonly Int64: "int64";
|
|
480
|
-
readonly Uint32: "uint32";
|
|
481
|
-
readonly Uint64: "uint64";
|
|
482
|
-
};
|
|
784
|
+
* Endpoint name in 'POST /users' format */
|
|
785
|
+
string | ReadmeEndpointObjectSchema;
|
|
483
786
|
//#endregion
|
|
484
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
485
|
-
interface
|
|
486
|
-
|
|
487
|
-
|
|
787
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ReadmeSchema.d.ts
|
|
788
|
+
interface ReadmeSchema {
|
|
789
|
+
bannerLink?: string;
|
|
790
|
+
introduction?: string;
|
|
791
|
+
apiReferenceLink?: string;
|
|
792
|
+
apiName?: string;
|
|
793
|
+
disabledSections?: string[];
|
|
794
|
+
/** If set, use this endpoint's snippet as the default whenever possible */
|
|
795
|
+
defaultEndpoint?: ReadmeEndpointSchema;
|
|
796
|
+
/** Specifies a list of endpoints associated with the feature */
|
|
797
|
+
features?: Record<string, ReadmeEndpointSchema[]>;
|
|
798
|
+
/** Supply custom sections as markdown to be included in the readme */
|
|
799
|
+
customSections?: ReadmeCustomSectionSchema[];
|
|
800
|
+
/** Controls whether usage examples show only required parameters (minimal) or all parameters (comprehensive). Defaults to comprehensive. */
|
|
801
|
+
exampleStyle?: ExampleStyle;
|
|
488
802
|
}
|
|
489
803
|
//#endregion
|
|
804
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/RemoveDiscriminantsFromSchemas.d.ts
|
|
805
|
+
/** Whether to remove discriminant properties from schemas when generating types, unless the schema is also used outside of a discriminated union. */
|
|
806
|
+
declare const RemoveDiscriminantsFromSchemas: {
|
|
807
|
+
readonly Always: "always";
|
|
808
|
+
readonly Never: "never";
|
|
809
|
+
};
|
|
810
|
+
type RemoveDiscriminantsFromSchemas = (typeof RemoveDiscriminantsFromSchemas)[keyof typeof RemoveDiscriminantsFromSchemas];
|
|
811
|
+
//#endregion
|
|
490
812
|
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/RequestOrResponseExampleGenerationSchema.d.ts
|
|
491
|
-
/**
|
|
492
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
493
|
-
*/
|
|
494
813
|
interface RequestOrResponseExampleGenerationSchema {
|
|
495
814
|
/** Controls the maximum depth for which optional properties will have examples generated. A depth of 0 means no optional properties will have examples. */
|
|
496
815
|
"max-depth"?: number;
|
|
497
816
|
}
|
|
498
817
|
//#endregion
|
|
499
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
500
|
-
|
|
501
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
502
|
-
*/
|
|
503
|
-
interface OpenApiFilterSchema {
|
|
504
|
-
/** Endpoints to include in the generated SDK (e.g. "POST /users"). */
|
|
505
|
-
endpoints?: string[];
|
|
506
|
-
}
|
|
818
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ResolveAliases.d.ts
|
|
819
|
+
type ResolveAliases = boolean | ResolveAliasesSchema;
|
|
507
820
|
//#endregion
|
|
508
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
509
|
-
interface
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
overrides?: string;
|
|
513
|
-
overlays?: string;
|
|
514
|
-
namespace?: string;
|
|
515
|
-
settings?: OpenApiSettingsSchema;
|
|
821
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ResolveAliasesSchema.d.ts
|
|
822
|
+
interface ResolveAliasesSchema {
|
|
823
|
+
/** Names of alias types to exclude from resolving. */
|
|
824
|
+
except?: string[];
|
|
516
825
|
}
|
|
517
826
|
//#endregion
|
|
518
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
519
|
-
|
|
520
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
521
|
-
*/
|
|
522
|
-
interface OpenRpcSpecSchema {
|
|
523
|
-
openrpc: string;
|
|
524
|
-
overrides?: string;
|
|
525
|
-
namespace?: string;
|
|
526
|
-
}
|
|
827
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/SpecSchema.d.ts
|
|
828
|
+
type SpecSchema = OpenApiSpecSchema | AsyncApiSpecSchema | ProtobufSpecSchema | OpenRpcSpecSchema | GraphQlSpecSchema;
|
|
527
829
|
//#endregion
|
|
528
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
830
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/UnionSettingsSchema.d.ts
|
|
831
|
+
declare const UnionSettingsSchema: {
|
|
832
|
+
readonly V1: "v1";
|
|
833
|
+
};
|
|
834
|
+
type UnionSettingsSchema = (typeof UnionSettingsSchema)[keyof typeof UnionSettingsSchema];
|
|
835
|
+
//#endregion
|
|
836
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/WhitelabelConfigurationSchema.d.ts
|
|
837
|
+
interface WhitelabelConfigurationSchema {
|
|
838
|
+
github?: WhitelabelGithubConfigurationSchema;
|
|
532
839
|
}
|
|
533
840
|
//#endregion
|
|
534
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/
|
|
535
|
-
interface
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
namespace?: string;
|
|
540
|
-
settings?: AsyncApiSettingsSchema;
|
|
841
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/WhitelabelGithubConfigurationSchema.d.ts
|
|
842
|
+
interface WhitelabelGithubConfigurationSchema {
|
|
843
|
+
username: string;
|
|
844
|
+
email: string;
|
|
845
|
+
token: string;
|
|
541
846
|
}
|
|
542
847
|
//#endregion
|
|
543
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
848
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/CratesOutputLocationSchema.d.ts
|
|
544
849
|
/**
|
|
545
|
-
*
|
|
850
|
+
* Configuration for publishing Rust crates to crates.io or a custom registry.
|
|
851
|
+
* API tokens can be created at https://crates.io/settings/tokens with appropriate permissions.
|
|
546
852
|
*/
|
|
547
|
-
interface
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/SpecSchema.d.ts
|
|
552
|
-
type SpecSchema = OpenApiSpecSchema | AsyncApiSpecSchema | ProtobufSpecSchema | OpenRpcSpecSchema;
|
|
553
|
-
//#endregion
|
|
554
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/generators/types/ProtobufSpecSchema.d.ts
|
|
555
|
-
interface ProtobufSpecSchema {
|
|
556
|
-
proto: ProtobufDefinitionSchema;
|
|
853
|
+
interface CratesOutputLocationSchema {
|
|
854
|
+
url?: string;
|
|
855
|
+
"package-name": string;
|
|
856
|
+
token?: string;
|
|
557
857
|
}
|
|
558
858
|
//#endregion
|
|
559
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
859
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorApiSettingsSchema.d.ts
|
|
560
860
|
/**
|
|
561
|
-
*
|
|
861
|
+
* Override API configuration settings for a specific generator.
|
|
862
|
+
* When specs is provided, it completely replaces the top-level api.specs configuration for this generator.
|
|
562
863
|
*/
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
readonly Swift: "swift";
|
|
574
|
-
};
|
|
864
|
+
interface GeneratorApiSettingsSchema {
|
|
865
|
+
auth?: ApiAuthSchema;
|
|
866
|
+
"auth-schemes"?: Record<string, AuthSchemeDeclarationSchema>;
|
|
867
|
+
settings?: ApiConfigurationV2SettingsSchema;
|
|
868
|
+
/**
|
|
869
|
+
* Override the specs configuration for this generator.
|
|
870
|
+
* When provided, this completely replaces the top-level api.specs configuration.
|
|
871
|
+
*/
|
|
872
|
+
specs?: ApiConfigurationV2SpecsSchema;
|
|
873
|
+
}
|
|
575
874
|
//#endregion
|
|
576
875
|
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorGroupSchema.d.ts
|
|
577
876
|
interface GeneratorGroupSchema {
|
|
@@ -610,22 +909,6 @@ interface GeneratorInvocationSchema {
|
|
|
610
909
|
autorelease?: boolean;
|
|
611
910
|
}
|
|
612
911
|
//#endregion
|
|
613
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorApiSettingsSchema.d.ts
|
|
614
|
-
/**
|
|
615
|
-
* Override API configuration settings for a specific generator.
|
|
616
|
-
* When specs is provided, it completely replaces the top-level api.specs configuration for this generator.
|
|
617
|
-
*/
|
|
618
|
-
interface GeneratorApiSettingsSchema {
|
|
619
|
-
auth?: ApiAuthSchema;
|
|
620
|
-
"auth-schemes"?: Record<string, AuthSchemeDeclarationSchema>;
|
|
621
|
-
settings?: ApiConfigurationV2SettingsSchema;
|
|
622
|
-
/**
|
|
623
|
-
* Override the specs configuration for this generator.
|
|
624
|
-
* When provided, this completely replaces the top-level api.specs configuration.
|
|
625
|
-
*/
|
|
626
|
-
specs?: ApiConfigurationV2SpecsSchema;
|
|
627
|
-
}
|
|
628
|
-
//#endregion
|
|
629
912
|
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorOutputSchema.d.ts
|
|
630
913
|
type GeneratorOutputSchema = GeneratorOutputSchema.Npm | GeneratorOutputSchema.Maven | GeneratorOutputSchema.Pypi | GeneratorOutputSchema.Postman | GeneratorOutputSchema.LocalFileSystem | GeneratorOutputSchema.Nuget | GeneratorOutputSchema.Rubygems | GeneratorOutputSchema.Crates;
|
|
631
914
|
declare namespace GeneratorOutputSchema {
|
|
@@ -645,555 +928,183 @@ declare namespace GeneratorOutputSchema {
|
|
|
645
928
|
location: "local-file-system";
|
|
646
929
|
}
|
|
647
930
|
interface Nuget extends NugetOutputLocationSchema {
|
|
648
|
-
location: "nuget";
|
|
649
|
-
}
|
|
650
|
-
interface Rubygems extends RubyGemsOutputLocationSchema {
|
|
651
|
-
location: "rubygems";
|
|
652
|
-
}
|
|
653
|
-
interface Crates extends CratesOutputLocationSchema {
|
|
654
|
-
location: "crates";
|
|
655
|
-
}
|
|
656
|
-
}
|
|
657
|
-
//#endregion
|
|
658
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubConfigurationSchema.d.ts
|
|
659
|
-
type GithubConfigurationSchema = GithubSelfhostedSchema | GithubCommitAndReleaseSchema | GithubPullRequestSchema | GithubPushSchema;
|
|
660
|
-
//#endregion
|
|
661
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubSelfhostedSchema.d.ts
|
|
662
|
-
interface GithubSelfhostedSchema {
|
|
663
|
-
uri: string;
|
|
664
|
-
token: string;
|
|
665
|
-
mode?: GithubSelfhostedMode;
|
|
666
|
-
branch?: string;
|
|
667
|
-
license?: GithubLicenseSchema;
|
|
668
|
-
}
|
|
669
|
-
//#endregion
|
|
670
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubSelfhostedMode.d.ts
|
|
671
|
-
/**
|
|
672
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
673
|
-
*/
|
|
674
|
-
type GithubSelfhostedMode = "pull-request" | "push";
|
|
675
|
-
declare const GithubSelfhostedMode: {
|
|
676
|
-
readonly PullRequest: "pull-request";
|
|
677
|
-
readonly Push: "push";
|
|
678
|
-
};
|
|
679
|
-
//#endregion
|
|
680
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorSnippetsSchema.d.ts
|
|
681
|
-
/**
|
|
682
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
683
|
-
*/
|
|
684
|
-
interface GeneratorSnippetsSchema {
|
|
685
|
-
/** The path to the generated snippets file. */
|
|
686
|
-
path: string;
|
|
687
|
-
}
|
|
688
|
-
//#endregion
|
|
689
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorPublishMetadataSchema.d.ts
|
|
690
|
-
interface GeneratorPublishMetadataSchema {
|
|
691
|
-
"package-description"?: string;
|
|
692
|
-
email?: string;
|
|
693
|
-
"reference-url"?: string;
|
|
694
|
-
author?: string;
|
|
695
|
-
license?: GithubLicenseSchema;
|
|
696
|
-
}
|
|
697
|
-
//#endregion
|
|
698
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubCommitAndReleaseSchema.d.ts
|
|
699
|
-
interface GithubCommitAndReleaseSchema {
|
|
700
|
-
repository: string;
|
|
701
|
-
license?: GithubLicenseSchema;
|
|
702
|
-
mode?: GithubCommitAndReleaseMode;
|
|
703
|
-
}
|
|
704
|
-
//#endregion
|
|
705
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubCommitAndReleaseMode.d.ts
|
|
706
|
-
/**
|
|
707
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
708
|
-
*/
|
|
709
|
-
type GithubCommitAndReleaseMode = "commit" | "release";
|
|
710
|
-
declare const GithubCommitAndReleaseMode: {
|
|
711
|
-
readonly Commit: "commit";
|
|
712
|
-
readonly Release: "release";
|
|
713
|
-
};
|
|
714
|
-
//#endregion
|
|
715
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubPullRequestSchema.d.ts
|
|
716
|
-
interface GithubPullRequestSchema {
|
|
717
|
-
repository: string;
|
|
718
|
-
branch?: string;
|
|
719
|
-
license?: GithubLicenseSchema;
|
|
720
|
-
mode: "pull-request";
|
|
721
|
-
reviewers?: ReviewersSchema;
|
|
722
|
-
}
|
|
723
|
-
//#endregion
|
|
724
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubPushSchema.d.ts
|
|
725
|
-
interface GithubPushSchema {
|
|
726
|
-
repository: string;
|
|
727
|
-
license?: GithubLicenseSchema;
|
|
728
|
-
mode: "push";
|
|
729
|
-
branch?: string;
|
|
730
|
-
}
|
|
731
|
-
//#endregion
|
|
732
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/NpmOutputLocationSchema.d.ts
|
|
733
|
-
/**
|
|
734
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
735
|
-
*/
|
|
736
|
-
interface NpmOutputLocationSchema {
|
|
737
|
-
url?: string;
|
|
738
|
-
"package-name": string;
|
|
739
|
-
token?: string;
|
|
740
|
-
}
|
|
741
|
-
//#endregion
|
|
742
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/MavenOutputLocationSchema.d.ts
|
|
743
|
-
interface MavenOutputLocationSchema {
|
|
744
|
-
url?: string;
|
|
745
|
-
coordinate: string;
|
|
746
|
-
username?: string;
|
|
747
|
-
password?: string;
|
|
748
|
-
signature?: MavenOutputSignatureSchema;
|
|
749
|
-
}
|
|
750
|
-
//#endregion
|
|
751
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/MavenOutputSignatureSchema.d.ts
|
|
752
|
-
/**
|
|
753
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
754
|
-
*/
|
|
755
|
-
interface MavenOutputSignatureSchema {
|
|
756
|
-
keyId: string;
|
|
757
|
-
password: string;
|
|
758
|
-
secretKey: string;
|
|
759
|
-
}
|
|
760
|
-
//#endregion
|
|
761
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/PypiOutputLocationSchema.d.ts
|
|
762
|
-
interface PypiOutputLocationSchema {
|
|
763
|
-
url?: string;
|
|
764
|
-
"package-name": string;
|
|
765
|
-
token?: string;
|
|
766
|
-
username?: string;
|
|
767
|
-
password?: string;
|
|
768
|
-
metadata?: PypiOutputMetadataSchema;
|
|
769
|
-
}
|
|
770
|
-
//#endregion
|
|
771
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/PypiOutputMetadataSchema.d.ts
|
|
772
|
-
interface PypiOutputMetadataSchema extends OutputMetadataSchema {
|
|
773
|
-
keywords?: string[];
|
|
774
|
-
"documentation-link"?: string;
|
|
775
|
-
"homepage-link"?: string;
|
|
776
|
-
}
|
|
777
|
-
//#endregion
|
|
778
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/PostmanOutputLocationSchema.d.ts
|
|
779
|
-
/**
|
|
780
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
781
|
-
*/
|
|
782
|
-
interface PostmanOutputLocationSchema {
|
|
783
|
-
"api-key": string;
|
|
784
|
-
"workspace-id": string;
|
|
785
|
-
"collection-id"?: string;
|
|
786
|
-
}
|
|
787
|
-
//#endregion
|
|
788
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/LocalFileSystemOutputLocationSchema.d.ts
|
|
789
|
-
/**
|
|
790
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
791
|
-
*/
|
|
792
|
-
interface LocalFileSystemOutputLocationSchema {
|
|
793
|
-
path: string;
|
|
794
|
-
}
|
|
795
|
-
//#endregion
|
|
796
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/NugetOutputLocationSchema.d.ts
|
|
797
|
-
/**
|
|
798
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
799
|
-
*/
|
|
800
|
-
interface NugetOutputLocationSchema {
|
|
801
|
-
url?: string;
|
|
802
|
-
"package-name": string;
|
|
803
|
-
"api-key"?: string;
|
|
804
|
-
}
|
|
805
|
-
//#endregion
|
|
806
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/RubyGemsOutputLocationSchema.d.ts
|
|
807
|
-
/**
|
|
808
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
809
|
-
*/
|
|
810
|
-
/**
|
|
811
|
-
* It is worth noting that RubyGems API keys need to have the "Push rubygem" permission.
|
|
812
|
-
* Ideally it is also permissioned with index and yank rubygem permissions.
|
|
813
|
-
* Additionally if the creator of the API key has MFA enabled, they must be sure to update their MFA
|
|
814
|
-
* settings to not require MFA for API key usage ("UI and gem signin").
|
|
815
|
-
*/
|
|
816
|
-
interface RubyGemsOutputLocationSchema {
|
|
817
|
-
url?: string;
|
|
818
|
-
"package-name": string;
|
|
819
|
-
"api-key"?: string;
|
|
820
|
-
}
|
|
821
|
-
//#endregion
|
|
822
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/CratesOutputLocationSchema.d.ts
|
|
823
|
-
/**
|
|
824
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
825
|
-
*/
|
|
826
|
-
/**
|
|
827
|
-
* Configuration for publishing Rust crates to crates.io or a custom registry.
|
|
828
|
-
* API tokens can be created at https://crates.io/settings/tokens with appropriate permissions.
|
|
829
|
-
*/
|
|
830
|
-
interface CratesOutputLocationSchema {
|
|
831
|
-
url?: string;
|
|
832
|
-
"package-name": string;
|
|
833
|
-
token?: string;
|
|
834
|
-
}
|
|
835
|
-
//#endregion
|
|
836
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/license/types/GithubLicenseSchema.d.ts
|
|
837
|
-
type GithubLicenseSchema = GithubLicenseType | GithubLicenseCustomSchema;
|
|
838
|
-
//#endregion
|
|
839
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/license/types/GithubLicenseType.d.ts
|
|
840
|
-
/**
|
|
841
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
842
|
-
*/
|
|
843
|
-
type GithubLicenseType = "MIT" | "Apache-2.0";
|
|
844
|
-
declare const GithubLicenseType: {
|
|
845
|
-
readonly Mit: "MIT";
|
|
846
|
-
readonly Apache: "Apache-2.0";
|
|
847
|
-
};
|
|
848
|
-
//#endregion
|
|
849
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/license/types/GithubLicenseCustomSchema.d.ts
|
|
850
|
-
/**
|
|
851
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
852
|
-
*/
|
|
853
|
-
interface GithubLicenseCustomSchema {
|
|
854
|
-
custom: string;
|
|
855
|
-
}
|
|
856
|
-
//#endregion
|
|
857
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/reviewers/types/ReviewersSchema.d.ts
|
|
858
|
-
interface ReviewersSchema {
|
|
859
|
-
teams?: ReviewerSchema[];
|
|
860
|
-
users?: ReviewerSchema[];
|
|
861
|
-
}
|
|
862
|
-
//#endregion
|
|
863
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/reviewers/types/ReviewerSchema.d.ts
|
|
864
|
-
/**
|
|
865
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
866
|
-
*/
|
|
867
|
-
interface ReviewerSchema {
|
|
868
|
-
name: string;
|
|
869
|
-
}
|
|
870
|
-
//#endregion
|
|
871
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthScope.d.ts
|
|
872
|
-
/**
|
|
873
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
874
|
-
*/
|
|
875
|
-
type AuthScope = string;
|
|
876
|
-
//#endregion
|
|
877
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/ApiAuthSchema.d.ts
|
|
878
|
-
type ApiAuthSchema = string | AuthSchemeReferenceSchema | AnyAuthSchemesSchema | EndpointSecuritySchema;
|
|
879
|
-
//#endregion
|
|
880
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthSchemeReferenceSchema.d.ts
|
|
881
|
-
interface AuthSchemeReferenceSchema extends WithDocsSchema {
|
|
882
|
-
scheme: string;
|
|
883
|
-
}
|
|
884
|
-
//#endregion
|
|
885
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AnyAuthSchemesSchema.d.ts
|
|
886
|
-
interface AnyAuthSchemesSchema extends WithDocsSchema {
|
|
887
|
-
any: AnyAuthItem[];
|
|
888
|
-
}
|
|
889
|
-
//#endregion
|
|
890
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/EndpointSecuritySchema.d.ts
|
|
891
|
-
interface EndpointSecuritySchema extends WithDocsSchema {
|
|
892
|
-
/** Indicates that authentication requirements are defined per-endpoint via the `security` field. */
|
|
893
|
-
"endpoint-security": EndpointSecuritySchemaDetails;
|
|
894
|
-
}
|
|
895
|
-
//#endregion
|
|
896
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/EndpointSecuritySchemaDetails.d.ts
|
|
897
|
-
/**
|
|
898
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
899
|
-
*/
|
|
900
|
-
interface EndpointSecuritySchemaDetails {}
|
|
901
|
-
//#endregion
|
|
902
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AnyAuthItem.d.ts
|
|
903
|
-
type AnyAuthItem = string | AuthSchemeReferenceSchema;
|
|
904
|
-
//#endregion
|
|
905
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthSchemeDeclarationSchema.d.ts
|
|
906
|
-
type AuthSchemeDeclarationSchema = OAuthSchemeSchema | HeaderAuthSchemeSchema | BasicAuthSchemeSchema | BearerAuthSchemeSchema;
|
|
907
|
-
//#endregion
|
|
908
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/WithEnvironmentVariable.d.ts
|
|
909
|
-
/**
|
|
910
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
911
|
-
*/
|
|
912
|
-
interface WithEnvironmentVariable {
|
|
913
|
-
env?: string;
|
|
914
|
-
}
|
|
915
|
-
//#endregion
|
|
916
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/AuthVariable.d.ts
|
|
917
|
-
interface AuthVariable extends WithEnvironmentVariable, WithName {
|
|
918
|
-
/** If true, the auth variable will be omitted from the SDK. */
|
|
919
|
-
omit?: boolean;
|
|
920
|
-
}
|
|
921
|
-
//#endregion
|
|
922
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/HeaderAuthSchemeSchema.d.ts
|
|
923
|
-
interface HeaderAuthSchemeSchema extends WithEnvironmentVariable, WithName, WithDocsSchema {
|
|
924
|
-
header: string;
|
|
925
|
-
/** Defaults to string */
|
|
926
|
-
type?: string;
|
|
927
|
-
prefix?: string;
|
|
928
|
-
}
|
|
929
|
-
//#endregion
|
|
930
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/BasicAuthSchemeSchema.d.ts
|
|
931
|
-
interface BasicAuthSchemeSchema extends WithDocsSchema {
|
|
932
|
-
scheme: "basic";
|
|
933
|
-
username?: AuthVariable;
|
|
934
|
-
password?: AuthVariable;
|
|
935
|
-
}
|
|
936
|
-
//#endregion
|
|
937
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/BearerAuthSchemeSchema.d.ts
|
|
938
|
-
type BearerAuthSchemeSchema = TokenBearerAuthSchema | InferredBearerAuthSchema;
|
|
939
|
-
//#endregion
|
|
940
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/TokenBearerAuthSchema.d.ts
|
|
941
|
-
interface TokenBearerAuthSchema extends WithDocsSchema {
|
|
942
|
-
scheme: "bearer";
|
|
943
|
-
token?: AuthVariable;
|
|
944
|
-
}
|
|
945
|
-
//#endregion
|
|
946
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredBearerAuthSchema.d.ts
|
|
947
|
-
interface InferredBearerAuthSchema extends WithDocsSchema {
|
|
948
|
-
scheme: "bearer";
|
|
949
|
-
"get-token": InferredGetTokenEndpointSchema;
|
|
950
|
-
}
|
|
951
|
-
//#endregion
|
|
952
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredGetTokenEndpointSchema.d.ts
|
|
953
|
-
type InferredGetTokenEndpointSchema = string | InferredGetTokenEndpointSchemaObject;
|
|
954
|
-
//#endregion
|
|
955
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredGetTokenEndpointSchemaObject.d.ts
|
|
956
|
-
interface InferredGetTokenEndpointSchemaObject {
|
|
957
|
-
/** The endpoint to get the access token, such as 'auth.get_token' */
|
|
958
|
-
endpoint: string;
|
|
959
|
-
/** The property name for the expiry time in the response. */
|
|
960
|
-
"expiry-response-property"?: string;
|
|
961
|
-
/** The headers that will be set on HTTP requests when the inferred auth scheme is applied to an endpoint. */
|
|
962
|
-
"authenticated-request-headers"?: InferredAuthenticatedRequestHeader[];
|
|
963
|
-
}
|
|
964
|
-
//#endregion
|
|
965
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/InferredAuthenticatedRequestHeader.d.ts
|
|
966
|
-
/**
|
|
967
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
968
|
-
*/
|
|
969
|
-
/**
|
|
970
|
-
* A header that will be set on HTTP requests when the inferred auth scheme is applied to an endpoint. These are not headers for the authorization endpoint.
|
|
971
|
-
*/
|
|
972
|
-
interface InferredAuthenticatedRequestHeader {
|
|
973
|
-
/** The property to retrieve the header value from the get token or refresh endpoint response. */
|
|
974
|
-
"response-property": string;
|
|
975
|
-
/** The header name to put the token in for any authenticated HTTP request. */
|
|
976
|
-
"header-name": string;
|
|
977
|
-
/** Commonly used for setting the `Authorization` scheme, but could be used for other things. */
|
|
978
|
-
"value-prefix"?: string;
|
|
979
|
-
}
|
|
980
|
-
//#endregion
|
|
981
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthSchemeSchema.d.ts
|
|
982
|
-
interface OAuthSchemeSchema extends WithDocsSchema {
|
|
983
|
-
scheme: "oauth";
|
|
984
|
-
type: "client-credentials";
|
|
985
|
-
scopes?: AuthScope[];
|
|
986
|
-
"client-id-env"?: string;
|
|
987
|
-
"client-secret-env"?: string;
|
|
988
|
-
/** Sets the token header value prefix. Defaults to 'Bearer' */
|
|
989
|
-
"token-prefix"?: string;
|
|
990
|
-
/** Sets the token header key name. Defaults to 'Authorization' */
|
|
991
|
-
"token-header"?: string;
|
|
992
|
-
"get-token": OAuthGetTokenEndpointSchema;
|
|
993
|
-
"refresh-token"?: OAuthRefreshTokenEndpointSchema;
|
|
994
|
-
}
|
|
995
|
-
//#endregion
|
|
996
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthGetTokenEndpointSchema.d.ts
|
|
997
|
-
interface OAuthGetTokenEndpointSchema {
|
|
998
|
-
/** The endpoint to get the access token, such as 'auth.get_token */
|
|
999
|
-
endpoint: string;
|
|
1000
|
-
"request-properties"?: OAuthAccessTokenRequestPropertiesSchema;
|
|
1001
|
-
"response-properties"?: OAuthAccessTokenResponsePropertiesSchema;
|
|
1002
|
-
}
|
|
1003
|
-
//#endregion
|
|
1004
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/auth/types/OAuthAccessTokenRequestPropertiesSchema.d.ts
|
|
1005
|
-
/**
|
|
1006
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
1007
|
-
*/
|
|
1008
|
-
interface OAuthAccessTokenRequestPropertiesSchema {
|
|
1009
|
-
/** The property name for the client ID. */
|
|
1010
|
-
"client-id"?: string;
|
|
1011
|
-
/** The property name for the client secret. */
|
|
1012
|
-
"client-secret"?: string;
|
|
1013
|
-
/** The property name for the scopes. */
|
|
1014
|
-
scopes?: string;
|
|
931
|
+
location: "nuget";
|
|
932
|
+
}
|
|
933
|
+
interface Rubygems extends RubyGemsOutputLocationSchema {
|
|
934
|
+
location: "rubygems";
|
|
935
|
+
}
|
|
936
|
+
interface Crates extends CratesOutputLocationSchema {
|
|
937
|
+
location: "crates";
|
|
938
|
+
}
|
|
1015
939
|
}
|
|
1016
940
|
//#endregion
|
|
1017
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
/** The property name for the expires in property. */
|
|
1025
|
-
"expires-in"?: string;
|
|
1026
|
-
/** The property name for the refresh token */
|
|
1027
|
-
"refresh-token"?: string;
|
|
941
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorPublishMetadataSchema.d.ts
|
|
942
|
+
interface GeneratorPublishMetadataSchema {
|
|
943
|
+
"package-description"?: string;
|
|
944
|
+
email?: string;
|
|
945
|
+
"reference-url"?: string;
|
|
946
|
+
author?: string;
|
|
947
|
+
license?: GithubLicenseSchema;
|
|
1028
948
|
}
|
|
1029
949
|
//#endregion
|
|
1030
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1031
|
-
interface
|
|
1032
|
-
/** The
|
|
1033
|
-
|
|
1034
|
-
"request-properties"?: OAuthRefreshTokenRequestPropertiesSchema;
|
|
1035
|
-
"response-properties"?: OAuthRefreshTokenResponsePropertiesSchema;
|
|
950
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GeneratorSnippetsSchema.d.ts
|
|
951
|
+
interface GeneratorSnippetsSchema {
|
|
952
|
+
/** The path to the generated snippets file. */
|
|
953
|
+
path: string;
|
|
1036
954
|
}
|
|
1037
955
|
//#endregion
|
|
1038
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
"refresh-token": string;
|
|
1045
|
-
}
|
|
956
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubCommitAndReleaseMode.d.ts
|
|
957
|
+
declare const GithubCommitAndReleaseMode: {
|
|
958
|
+
readonly Commit: "commit";
|
|
959
|
+
readonly Release: "release";
|
|
960
|
+
};
|
|
961
|
+
type GithubCommitAndReleaseMode = (typeof GithubCommitAndReleaseMode)[keyof typeof GithubCommitAndReleaseMode];
|
|
1046
962
|
//#endregion
|
|
1047
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
/** The property name for the access token. */
|
|
1053
|
-
"access-token"?: string;
|
|
1054
|
-
/** The property name for the expires in property. */
|
|
1055
|
-
"expires-in"?: string;
|
|
1056
|
-
/** The property name for the refresh token. */
|
|
1057
|
-
"refresh-token"?: string;
|
|
963
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubCommitAndReleaseSchema.d.ts
|
|
964
|
+
interface GithubCommitAndReleaseSchema {
|
|
965
|
+
repository: string;
|
|
966
|
+
license?: GithubLicenseSchema;
|
|
967
|
+
mode?: GithubCommitAndReleaseMode;
|
|
1058
968
|
}
|
|
1059
969
|
//#endregion
|
|
1060
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1061
|
-
type
|
|
970
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubConfigurationSchema.d.ts
|
|
971
|
+
type GithubConfigurationSchema = GithubSelfhostedSchema | GithubCommitAndReleaseSchema | GithubPullRequestSchema | GithubPushSchema;
|
|
1062
972
|
//#endregion
|
|
1063
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1064
|
-
interface
|
|
1065
|
-
|
|
1066
|
-
|
|
973
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubPullRequestSchema.d.ts
|
|
974
|
+
interface GithubPullRequestSchema {
|
|
975
|
+
repository: string;
|
|
976
|
+
branch?: string;
|
|
977
|
+
license?: GithubLicenseSchema;
|
|
978
|
+
mode: "pull-request";
|
|
979
|
+
reviewers?: ReviewersSchema;
|
|
1067
980
|
}
|
|
1068
981
|
//#endregion
|
|
1069
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
982
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubPushSchema.d.ts
|
|
983
|
+
interface GithubPushSchema {
|
|
984
|
+
repository: string;
|
|
985
|
+
license?: GithubLicenseSchema;
|
|
986
|
+
mode: "push";
|
|
987
|
+
branch?: string;
|
|
988
|
+
}
|
|
989
|
+
//#endregion
|
|
990
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubSelfhostedMode.d.ts
|
|
991
|
+
declare const GithubSelfhostedMode: {
|
|
992
|
+
readonly PullRequest: "pull-request";
|
|
993
|
+
readonly Push: "push";
|
|
1079
994
|
};
|
|
995
|
+
type GithubSelfhostedMode = (typeof GithubSelfhostedMode)[keyof typeof GithubSelfhostedMode];
|
|
1080
996
|
//#endregion
|
|
1081
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
997
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/GithubSelfhostedSchema.d.ts
|
|
998
|
+
interface GithubSelfhostedSchema {
|
|
999
|
+
uri: string;
|
|
1000
|
+
token: string;
|
|
1001
|
+
mode?: GithubSelfhostedMode;
|
|
1002
|
+
branch?: string;
|
|
1003
|
+
license?: GithubLicenseSchema;
|
|
1087
1004
|
}
|
|
1088
1005
|
//#endregion
|
|
1089
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
*/
|
|
1093
|
-
interface WithName {
|
|
1094
|
-
name?: string;
|
|
1006
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/LocalFileSystemOutputLocationSchema.d.ts
|
|
1007
|
+
interface LocalFileSystemOutputLocationSchema {
|
|
1008
|
+
path: string;
|
|
1095
1009
|
}
|
|
1096
1010
|
//#endregion
|
|
1097
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1098
|
-
interface
|
|
1099
|
-
|
|
1011
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/MavenOutputLocationSchema.d.ts
|
|
1012
|
+
interface MavenOutputLocationSchema {
|
|
1013
|
+
url?: string;
|
|
1014
|
+
coordinate: string;
|
|
1015
|
+
username?: string;
|
|
1016
|
+
password?: string;
|
|
1017
|
+
signature?: MavenOutputSignatureSchema;
|
|
1100
1018
|
}
|
|
1101
1019
|
//#endregion
|
|
1102
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
audiences?: string[];
|
|
1020
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/MavenOutputSignatureSchema.d.ts
|
|
1021
|
+
interface MavenOutputSignatureSchema {
|
|
1022
|
+
keyId: string;
|
|
1023
|
+
password: string;
|
|
1024
|
+
secretKey: string;
|
|
1108
1025
|
}
|
|
1109
1026
|
//#endregion
|
|
1110
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1111
|
-
interface
|
|
1112
|
-
|
|
1027
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/NpmOutputLocationSchema.d.ts
|
|
1028
|
+
interface NpmOutputLocationSchema {
|
|
1029
|
+
url?: string;
|
|
1030
|
+
"package-name": string;
|
|
1031
|
+
token?: string;
|
|
1113
1032
|
}
|
|
1114
1033
|
//#endregion
|
|
1115
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
/** The name of the Protobuf type (e.g. google.protobuf.Struct). */
|
|
1121
|
-
type: string;
|
|
1034
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/NugetOutputLocationSchema.d.ts
|
|
1035
|
+
interface NugetOutputLocationSchema {
|
|
1036
|
+
url?: string;
|
|
1037
|
+
"package-name": string;
|
|
1038
|
+
"api-key"?: string;
|
|
1122
1039
|
}
|
|
1123
1040
|
//#endregion
|
|
1124
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1125
|
-
interface
|
|
1126
|
-
"
|
|
1127
|
-
"
|
|
1128
|
-
|
|
1041
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/PostmanOutputLocationSchema.d.ts
|
|
1042
|
+
interface PostmanOutputLocationSchema {
|
|
1043
|
+
"api-key": string;
|
|
1044
|
+
"workspace-id": string;
|
|
1045
|
+
"collection-id"?: string;
|
|
1129
1046
|
}
|
|
1130
1047
|
//#endregion
|
|
1131
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1048
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/PypiOutputLocationSchema.d.ts
|
|
1049
|
+
interface PypiOutputLocationSchema {
|
|
1050
|
+
url?: string;
|
|
1051
|
+
"package-name": string;
|
|
1052
|
+
token?: string;
|
|
1053
|
+
username?: string;
|
|
1054
|
+
password?: string;
|
|
1055
|
+
metadata?: PypiOutputMetadataSchema;
|
|
1137
1056
|
}
|
|
1138
1057
|
//#endregion
|
|
1139
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1140
|
-
interface
|
|
1141
|
-
|
|
1058
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/PypiOutputMetadataSchema.d.ts
|
|
1059
|
+
interface PypiOutputMetadataSchema extends OutputMetadataSchema {
|
|
1060
|
+
keywords?: string[];
|
|
1061
|
+
"documentation-link"?: string;
|
|
1062
|
+
"homepage-link"?: string;
|
|
1142
1063
|
}
|
|
1143
1064
|
//#endregion
|
|
1144
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1065
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/group/types/RubyGemsOutputLocationSchema.d.ts
|
|
1066
|
+
/**
|
|
1067
|
+
* It is worth noting that RubyGems API keys need to have the "Push rubygem" permission.
|
|
1068
|
+
* Ideally it is also permissioned with index and yank rubygem permissions.
|
|
1069
|
+
* Additionally if the creator of the API key has MFA enabled, they must be sure to update their MFA
|
|
1070
|
+
* settings to not require MFA for API key usage ("UI and gem signin").
|
|
1071
|
+
*/
|
|
1072
|
+
interface RubyGemsOutputLocationSchema {
|
|
1073
|
+
url?: string;
|
|
1074
|
+
"package-name": string;
|
|
1075
|
+
"api-key"?: string;
|
|
1148
1076
|
}
|
|
1149
1077
|
//#endregion
|
|
1150
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/service/types/TypeReferenceDeclarationWithEnvOverrideSchema.d.ts
|
|
1154
|
-
interface TypeReferenceDeclarationWithEnvOverrideSchema extends TypeReferenceDeclarationWithName {
|
|
1155
|
-
env?: string;
|
|
1078
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/license/types/GithubLicenseCustomSchema.d.ts
|
|
1079
|
+
interface GithubLicenseCustomSchema {
|
|
1080
|
+
custom: string;
|
|
1156
1081
|
}
|
|
1157
1082
|
//#endregion
|
|
1158
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1159
|
-
type
|
|
1083
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/license/types/GithubLicenseSchema.d.ts
|
|
1084
|
+
type GithubLicenseSchema = GithubLicenseType | GithubLicenseCustomSchema;
|
|
1160
1085
|
//#endregion
|
|
1161
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1086
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/license/types/GithubLicenseType.d.ts
|
|
1087
|
+
declare const GithubLicenseType: {
|
|
1088
|
+
readonly Mit: "MIT";
|
|
1089
|
+
readonly Apache: "Apache-2.0";
|
|
1090
|
+
};
|
|
1091
|
+
type GithubLicenseType = (typeof GithubLicenseType)[keyof typeof GithubLicenseType];
|
|
1167
1092
|
//#endregion
|
|
1168
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1169
|
-
interface
|
|
1170
|
-
|
|
1093
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/replay/types/ReplayConfigSchema.d.ts
|
|
1094
|
+
interface ReplayConfigSchema {
|
|
1095
|
+
/** Whether to enable replay for this SDK */
|
|
1096
|
+
enabled: boolean;
|
|
1171
1097
|
}
|
|
1172
1098
|
//#endregion
|
|
1173
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/fernDefinition/resources/validation/types/StringValidationSchema.d.ts
|
|
1177
|
-
/**
|
|
1178
|
-
* This file was auto-generated by Fern from our API Definition.
|
|
1179
|
-
*/
|
|
1180
|
-
interface StringValidationSchema {
|
|
1181
|
-
minLength?: number;
|
|
1182
|
-
maxLength?: number;
|
|
1183
|
-
pattern?: string;
|
|
1184
|
-
format?: string;
|
|
1099
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/reviewers/types/ReviewerSchema.d.ts
|
|
1100
|
+
interface ReviewerSchema {
|
|
1101
|
+
name: string;
|
|
1185
1102
|
}
|
|
1186
1103
|
//#endregion
|
|
1187
|
-
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
interface NumberValidationSchema {
|
|
1192
|
-
min?: number;
|
|
1193
|
-
max?: number;
|
|
1194
|
-
exclusiveMin?: boolean;
|
|
1195
|
-
exclusiveMax?: boolean;
|
|
1196
|
-
multipleOf?: number;
|
|
1104
|
+
//#region ../cli/configuration/lib/generators-yml/schemas/api/resources/reviewers/types/ReviewersSchema.d.ts
|
|
1105
|
+
interface ReviewersSchema {
|
|
1106
|
+
teams?: ReviewerSchema[];
|
|
1107
|
+
users?: ReviewerSchema[];
|
|
1197
1108
|
}
|
|
1198
1109
|
//#endregion
|
|
1199
1110
|
//#region ../cli/logger/lib/LogLevel.d.ts
|