@azure-tools/typespec-autorest 0.42.0-dev.3 → 0.42.0-dev.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.
@@ -0,0 +1,22 @@
1
+ import { SdkContext } from "@azure-tools/typespec-client-generator-core";
2
+ import { EmitContext, Program } from "@typespec/compiler";
3
+ import { AutorestEmitterOptions } from "./lib.js";
4
+ import { AutorestDocumentEmitterOptions } from "./openapi.js";
5
+ /**
6
+ * Extended options specific to the emitting of the typespec-autorest emitter
7
+ */
8
+ interface ResolvedAutorestEmitterOptions extends AutorestDocumentEmitterOptions {
9
+ readonly azureResourceProviderFolder?: string;
10
+ /**
11
+ * Set the newline character for emitting files.
12
+ * @default lf
13
+ */
14
+ readonly newLine?: "crlf" | "lf";
15
+ readonly outputDir: string;
16
+ readonly outputFile: string;
17
+ readonly version?: string;
18
+ }
19
+ export declare function $onEmit(context: EmitContext<AutorestEmitterOptions>): Promise<void>;
20
+ export declare function emitAllServiceAtAllVersions(program: Program, tcgcSdkContext: SdkContext, options: ResolvedAutorestEmitterOptions): Promise<void>;
21
+ export {};
22
+ //# sourceMappingURL=emit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EACL,WAAW,EAEX,OAAO,EAUR,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,sBAAsB,EAAa,MAAM,UAAU,CAAC;AAC7D,OAAO,EACL,8BAA8B,EAG/B,MAAM,cAAc,CAAC;AAGtB;;GAEG;AACH,UAAU,8BAA+B,SAAQ,8BAA8B;IAC7E,QAAQ,CAAC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAE9C;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AASD,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,iBA2BzE;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,UAAU,EAC1B,OAAO,EAAE,8BAA8B,iBAqExC"}
@@ -0,0 +1,114 @@
1
+ import { createSdkContext } from "@azure-tools/typespec-client-generator-core";
2
+ import { emitFile, getDirectoryPath, getNamespaceFullName, getService, interpolatePath, listServices, projectProgram, resolvePath, } from "@typespec/compiler";
3
+ import { resolveInfo } from "@typespec/openapi";
4
+ import { buildVersionProjections } from "@typespec/versioning";
5
+ import { getTracer } from "./lib.js";
6
+ import { getOpenAPIForService, sortOpenAPIDocument, } from "./openapi.js";
7
+ const defaultOptions = {
8
+ "output-file": "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json",
9
+ "new-line": "lf",
10
+ "include-x-typespec-name": "never",
11
+ };
12
+ export async function $onEmit(context) {
13
+ const resolvedOptions = { ...defaultOptions, ...context.options };
14
+ const armTypesDir = interpolatePath(resolvedOptions["arm-types-dir"] ?? "{project-root}/../../common-types/resource-management", {
15
+ "project-root": context.program.projectRoot,
16
+ "emitter-output-dir": context.emitterOutputDir,
17
+ });
18
+ const options = {
19
+ outputFile: resolvedOptions["output-file"],
20
+ outputDir: context.emitterOutputDir,
21
+ azureResourceProviderFolder: resolvedOptions["azure-resource-provider-folder"],
22
+ examplesDirectory: resolvedOptions["examples-directory"],
23
+ version: resolvedOptions["version"],
24
+ newLine: resolvedOptions["new-line"],
25
+ omitUnreachableTypes: resolvedOptions["omit-unreachable-types"],
26
+ includeXTypeSpecName: resolvedOptions["include-x-typespec-name"],
27
+ armTypesDir,
28
+ useReadOnlyStatusSchema: resolvedOptions["use-read-only-status-schema"],
29
+ };
30
+ const tracer = getTracer(context.program);
31
+ tracer.trace("options", JSON.stringify(options, null, 2));
32
+ const tcgcSdkContext = createSdkContext(context, "@azure-tools/typespec-autorest");
33
+ await emitAllServiceAtAllVersions(context.program, tcgcSdkContext, options);
34
+ }
35
+ export async function emitAllServiceAtAllVersions(program, tcgcSdkContext, options) {
36
+ const services = listServices(program);
37
+ if (services.length === 0) {
38
+ services.push({ type: program.getGlobalNamespaceType() });
39
+ }
40
+ for (const service of services) {
41
+ const originalProgram = program;
42
+ const versions = buildVersionProjections(program, service.type).filter((v) => !options.version || options.version === v.version);
43
+ for (const record of versions) {
44
+ let projectedProgram;
45
+ if (record.projections.length > 0) {
46
+ projectedProgram = program = projectProgram(originalProgram, record.projections);
47
+ }
48
+ const projectedServiceNs = projectedProgram
49
+ ? projectedProgram.projector.projectedTypes.get(service.type)
50
+ : service.type;
51
+ const projectedService = projectedServiceNs === program.getGlobalNamespaceType()
52
+ ? { type: program.getGlobalNamespaceType() }
53
+ : getService(program, projectedServiceNs);
54
+ const context = {
55
+ program,
56
+ outputFile: resolveOutputFile(program, projectedService, services.length > 1, options, record.version),
57
+ service: projectedService,
58
+ version: record.version,
59
+ tcgcSdkContext,
60
+ };
61
+ const result = await getOpenAPIForService(context, options);
62
+ if (!program.compilerOptions.noEmit && !program.hasError()) {
63
+ // Sort the document
64
+ const sortedDocument = sortOpenAPIDocument(result.document);
65
+ // Write out the OpenAPI document to the output path
66
+ await emitFile(program, {
67
+ path: context.outputFile,
68
+ content: prettierOutput(JSON.stringify(sortedDocument, null, 2)),
69
+ newLine: options.newLine,
70
+ });
71
+ // Copy examples to the output directory
72
+ if (options.examplesDirectory && result.operationExamples.length > 0) {
73
+ const examplesPath = resolvePath(getDirectoryPath(context.outputFile), "examples");
74
+ await program.host.mkdirp(examplesPath);
75
+ for (const { examples } of result.operationExamples) {
76
+ if (examples) {
77
+ for (const [fileName, { file }] of Object.entries(examples)) {
78
+ await emitFile(program, {
79
+ path: resolvePath(examplesPath, fileName),
80
+ content: file.text,
81
+ newLine: options.newLine,
82
+ });
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
89
+ }
90
+ }
91
+ function prettierOutput(output) {
92
+ return output + "\n";
93
+ }
94
+ function resolveOutputFile(program, service, multipleServices, options, version) {
95
+ const azureResourceProviderFolder = options.azureResourceProviderFolder;
96
+ if (azureResourceProviderFolder) {
97
+ const info = resolveInfo(program, service.type);
98
+ version = version ?? info?.version ?? "0000-00-00";
99
+ }
100
+ const interpolated = interpolatePath(options.outputFile, {
101
+ "azure-resource-provider-folder": azureResourceProviderFolder,
102
+ "service-name": multipleServices || azureResourceProviderFolder
103
+ ? getNamespaceFullName(service.type)
104
+ : undefined,
105
+ "version-status": azureResourceProviderFolder
106
+ ? version?.includes("preview")
107
+ ? "preview"
108
+ : "stable"
109
+ : undefined,
110
+ version,
111
+ });
112
+ return resolvePath(options.outputDir, interpolated);
113
+ }
114
+ //# sourceMappingURL=emit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
1
  export * from "./decorators.js";
2
+ export { $onEmit } from "./emit.js";
2
3
  export { $lib, AutorestEmitterOptions } from "./lib.js";
3
- export * from "./openapi.js";
4
+ export { getOpenAPIForService, sortOpenAPIDocument, type AutorestDocumentEmitterOptions, } from "./openapi.js";
5
+ export type * from "./openapi2-document.js";
6
+ export type { AutorestEmitterContext } from "./utils.js";
4
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACxD,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,8BAA8B,GACpC,MAAM,cAAc,CAAC;AACtB,mBAAmB,wBAAwB,CAAC;AAC5C,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./decorators.js";
2
+ export { $onEmit } from "./emit.js";
2
3
  export { $lib } from "./lib.js";
3
- export * from "./openapi.js";
4
+ export { getOpenAPIForService, sortOpenAPIDocument, } from "./openapi.js";
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,IAAI,EAA0B,MAAM,UAAU,CAAC;AACxD,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAA0B,MAAM,UAAU,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAEpB,MAAM,cAAc,CAAC"}
package/dist/src/lib.d.ts CHANGED
@@ -245,5 +245,121 @@ export declare const reportDiagnostic: <C extends "duplicate-body-types" | "dupl
245
245
  "unsupported-auth": {
246
246
  readonly default: import("@typespec/compiler").CallableMessage<["authType"]>;
247
247
  };
248
- }, C, M>) => void, createStateSymbol: (name: string) => symbol, getTracer: (program: import("@typespec/compiler").Program) => import("@typespec/compiler").Tracer;
248
+ }, C, M>) => void, createDiagnostic: <C extends "duplicate-body-types" | "duplicate-header" | "duplicate-example" | "duplicate-example-file" | "invalid-schema" | "union-null" | "union-unsupported" | "invalid-default" | "invalid-multi-collection-format" | "inline-cycle" | "nonspecific-scalar" | "example-loading" | "unsupported-http-auth-scheme" | "unsupported-status-code-range" | "unsupported-multipart-type" | "unsupported-param-type" | "invalid-format" | "unsupported-auth", M extends keyof {
249
+ "duplicate-body-types": {
250
+ readonly default: "Request has multiple body types";
251
+ };
252
+ "duplicate-header": {
253
+ readonly default: import("@typespec/compiler").CallableMessage<["header"]>;
254
+ };
255
+ "duplicate-example": {
256
+ readonly default: "Duplicate @example declarations on operation";
257
+ };
258
+ "duplicate-example-file": {
259
+ readonly default: import("@typespec/compiler").CallableMessage<["filename", "title", "operationId"]>;
260
+ };
261
+ "invalid-schema": {
262
+ readonly default: import("@typespec/compiler").CallableMessage<["type"]>;
263
+ };
264
+ "union-null": {
265
+ readonly default: "Cannot have a union containing only null types.";
266
+ };
267
+ "union-unsupported": {
268
+ readonly default: "Unions cannot be emitted to OpenAPI v2 unless all options are literals of the same type.";
269
+ readonly empty: "Empty unions are not supported for OpenAPI v2 - enums must have at least one value.";
270
+ };
271
+ "invalid-default": {
272
+ readonly default: import("@typespec/compiler").CallableMessage<["type"]>;
273
+ };
274
+ "invalid-multi-collection-format": {
275
+ readonly default: "The 'multi' should be applied to parameter in 'query', 'header' or 'formData'.";
276
+ };
277
+ "inline-cycle": {
278
+ readonly default: import("@typespec/compiler").CallableMessage<["type"]>;
279
+ };
280
+ "nonspecific-scalar": {
281
+ readonly default: import("@typespec/compiler").CallableMessage<["type", "chosenType"]>;
282
+ };
283
+ "example-loading": {
284
+ readonly default: import("@typespec/compiler").CallableMessage<["filename", "error"]>;
285
+ readonly noDirectory: import("@typespec/compiler").CallableMessage<["directory"]>;
286
+ readonly noOperationId: import("@typespec/compiler").CallableMessage<["filename"]>;
287
+ };
288
+ "unsupported-http-auth-scheme": {
289
+ readonly default: import("@typespec/compiler").CallableMessage<["scheme"]>;
290
+ };
291
+ "unsupported-status-code-range": {
292
+ readonly default: import("@typespec/compiler").CallableMessage<["start", "end"]>;
293
+ };
294
+ "unsupported-multipart-type": {
295
+ readonly default: import("@typespec/compiler").CallableMessage<["part"]>;
296
+ };
297
+ "unsupported-param-type": {
298
+ readonly default: import("@typespec/compiler").CallableMessage<["part"]>;
299
+ };
300
+ "invalid-format": {
301
+ readonly default: import("@typespec/compiler").CallableMessage<["schema", "format"]>;
302
+ };
303
+ "unsupported-auth": {
304
+ readonly default: import("@typespec/compiler").CallableMessage<["authType"]>;
305
+ };
306
+ }[C]>(diag: import("@typespec/compiler").DiagnosticReport<{
307
+ "duplicate-body-types": {
308
+ readonly default: "Request has multiple body types";
309
+ };
310
+ "duplicate-header": {
311
+ readonly default: import("@typespec/compiler").CallableMessage<["header"]>;
312
+ };
313
+ "duplicate-example": {
314
+ readonly default: "Duplicate @example declarations on operation";
315
+ };
316
+ "duplicate-example-file": {
317
+ readonly default: import("@typespec/compiler").CallableMessage<["filename", "title", "operationId"]>;
318
+ };
319
+ "invalid-schema": {
320
+ readonly default: import("@typespec/compiler").CallableMessage<["type"]>;
321
+ };
322
+ "union-null": {
323
+ readonly default: "Cannot have a union containing only null types.";
324
+ };
325
+ "union-unsupported": {
326
+ readonly default: "Unions cannot be emitted to OpenAPI v2 unless all options are literals of the same type.";
327
+ readonly empty: "Empty unions are not supported for OpenAPI v2 - enums must have at least one value.";
328
+ };
329
+ "invalid-default": {
330
+ readonly default: import("@typespec/compiler").CallableMessage<["type"]>;
331
+ };
332
+ "invalid-multi-collection-format": {
333
+ readonly default: "The 'multi' should be applied to parameter in 'query', 'header' or 'formData'.";
334
+ };
335
+ "inline-cycle": {
336
+ readonly default: import("@typespec/compiler").CallableMessage<["type"]>;
337
+ };
338
+ "nonspecific-scalar": {
339
+ readonly default: import("@typespec/compiler").CallableMessage<["type", "chosenType"]>;
340
+ };
341
+ "example-loading": {
342
+ readonly default: import("@typespec/compiler").CallableMessage<["filename", "error"]>;
343
+ readonly noDirectory: import("@typespec/compiler").CallableMessage<["directory"]>;
344
+ readonly noOperationId: import("@typespec/compiler").CallableMessage<["filename"]>;
345
+ };
346
+ "unsupported-http-auth-scheme": {
347
+ readonly default: import("@typespec/compiler").CallableMessage<["scheme"]>;
348
+ };
349
+ "unsupported-status-code-range": {
350
+ readonly default: import("@typespec/compiler").CallableMessage<["start", "end"]>;
351
+ };
352
+ "unsupported-multipart-type": {
353
+ readonly default: import("@typespec/compiler").CallableMessage<["part"]>;
354
+ };
355
+ "unsupported-param-type": {
356
+ readonly default: import("@typespec/compiler").CallableMessage<["part"]>;
357
+ };
358
+ "invalid-format": {
359
+ readonly default: import("@typespec/compiler").CallableMessage<["schema", "format"]>;
360
+ };
361
+ "unsupported-auth": {
362
+ readonly default: import("@typespec/compiler").CallableMessage<["authType"]>;
363
+ };
364
+ }, C, M>) => import("@typespec/compiler").Diagnostic, createStateSymbol: (name: string) => symbol, getTracer: (program: import("@typespec/compiler").Program) => import("@typespec/compiler").Tracer;
249
365
  //# sourceMappingURL=lib.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAE1C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC;IAEpD;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;CACzC;AAsND,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAgC,CAAC;AAClD,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,iBAAiB,4BAAE,SAAS,wFAAS,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAE1C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC;IAEpD;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;CACzC;AAsND,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAgC,CAAC;AAClD,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAE,iBAAiB,4BAAE,SAAS,wFAAS,CAAC"}
package/dist/src/lib.js CHANGED
@@ -205,5 +205,5 @@ const libDef = {
205
205
  },
206
206
  };
207
207
  export const $lib = createTypeSpecLibrary(libDef);
208
- export const { reportDiagnostic, createStateSymbol, getTracer } = $lib;
208
+ export const { reportDiagnostic, createDiagnostic, createStateSymbol, getTracer } = $lib;
209
209
  //# sourceMappingURL=lib.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
@@ -1,35 +1,42 @@
1
- import { EmitContext } from "@typespec/compiler";
2
- import { AutorestEmitterOptions } from "./lib.js";
3
- import { OpenAPI2Document } from "./types.js";
4
- export declare function $onEmit(context: EmitContext<AutorestEmitterOptions>): Promise<void>;
5
- export interface ResolvedAutorestEmitterOptions {
6
- outputDir: string;
7
- outputFile: string;
8
- examplesDirectory?: string;
9
- version?: string;
10
- azureResourceProviderFolder?: string;
11
- /**
12
- * Set the newline character for emitting files.
13
- * @default lf
14
- */
15
- newLine?: "crlf" | "lf";
1
+ import { SourceFile } from "@typespec/compiler";
2
+ import { OpenAPI2Document } from "./openapi2-document.js";
3
+ import { AutorestEmitterContext } from "./utils.js";
4
+ /**
5
+ * Options to configure the behavior of the Autorest document emitter.
6
+ */
7
+ export interface AutorestDocumentEmitterOptions {
8
+ readonly examplesDirectory?: string;
16
9
  /**
17
10
  * Omit unreachable types.
18
11
  * By default all types declared under the service namespace will be included. With this flag on only types references in an operation will be emitted.
19
12
  */
20
- omitUnreachableTypes?: boolean;
13
+ readonly omitUnreachableTypes?: boolean;
21
14
  /**
22
15
  * If the x-typespec-name extension should be included
23
16
  */
24
- includeXTypeSpecName: "inline-only" | "never";
17
+ readonly includeXTypeSpecName: "inline-only" | "never";
25
18
  /**
26
19
  * Arm types dir
27
20
  */
28
- armTypesDir: string;
21
+ readonly armTypesDir: string;
29
22
  /**
30
23
  * readOnly property schema behavior
31
24
  */
32
- useReadOnlyStatusSchema?: boolean;
25
+ readonly useReadOnlyStatusSchema?: boolean;
26
+ }
27
+ export interface OperationExamples {
28
+ readonly operationId: string;
29
+ readonly examples: LoadedExample[];
33
30
  }
31
+ export interface AutorestEmitterResult {
32
+ readonly document: OpenAPI2Document;
33
+ readonly operationExamples: OperationExamples[];
34
+ }
35
+ export declare function getOpenAPIForService(context: AutorestEmitterContext, options: AutorestDocumentEmitterOptions): Promise<AutorestEmitterResult>;
34
36
  export declare function sortOpenAPIDocument(doc: OpenAPI2Document): OpenAPI2Document;
37
+ interface LoadedExample {
38
+ readonly file: SourceFile;
39
+ readonly data: any;
40
+ }
41
+ export {};
35
42
  //# sourceMappingURL=openapi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAiBA,OAAO,EAIL,WAAW,EAsEZ,MAAM,oBAAoB,CAAC;AAuC5B,OAAO,EAAE,sBAAsB,EAA+B,MAAM,UAAU,CAAC;AAC/E,OAAO,EACL,gBAAgB,EAgBjB,MAAM,YAAY,CAAC;AAUpB,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,iBAyBzE;AAWD,MAAM,WAAW,8BAA8B;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,oBAAoB,EAAE,aAAa,GAAG,OAAO,CAAC;IAE9C;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AA+iED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,gBAAgB,CAS3E"}
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAYA,OAAO,EAkBL,UAAU,EAoDX,MAAM,oBAAoB,CAAC;AAyC5B,OAAO,EACL,gBAAgB,EAgBjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAqC,MAAM,YAAY,CAAC;AAOvF;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAEpC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,oBAAoB,EAAE,aAAa,GAAG,OAAO,CAAC;IAEvD;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;CAC5C;AA4CD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;CACjD;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,CAAC,CA03DhC;AAQD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,gBAAgB,CAS3E;AAED,UAAU,aAAa;IACrB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;CACpB"}