@typespec/openapi3
Version:
TypeSpec library for emitting OpenAPI 3.0 and OpenAPI 3.1 from the TypeSpec REST protocol binding and converting OpenAPI3 to TypeSpec
19 lines • 1.19 kB
TypeScript
import { EmitterOutput, ObjectBuilder, Placeholder } from "@typespec/asset-emitter";
import { Enum, IntrinsicType, Model, ModelProperty, Scalar, Union } from "@typespec/compiler";
import { CreateSchemaEmitter } from "./openapi-spec-mappings.js";
import { OpenAPI3SchemaEmitterBase } from "./schema-emitter.js";
import { OpenAPI3Schema } from "./types.js";
export declare const createSchemaEmitter3_0: CreateSchemaEmitter;
/**
* OpenAPI 3.0 schema emitter. Deals with emitting content of `components/schemas` section.
*/
export declare class OpenAPI3SchemaEmitter extends OpenAPI3SchemaEmitterBase<OpenAPI3Schema> {
#private;
applyCustomConstraints(type: Scalar | Model | ModelProperty | Union | Enum, target: ObjectBuilder<OpenAPI3Schema>, refSchema?: OpenAPI3Schema): void;
applyEncoding(typespecType: Scalar | ModelProperty, target: OpenAPI3Schema | Placeholder<OpenAPI3Schema>): OpenAPI3Schema;
getRawBinarySchema(): OpenAPI3Schema;
enumSchema(en: Enum): OpenAPI3Schema;
unionSchema(union: Union): ObjectBuilder<OpenAPI3Schema>;
intrinsic(intrinsic: IntrinsicType, name: string): EmitterOutput<object>;
}
//# sourceMappingURL=schema-emitter-3-0.d.ts.map