UNPKG

@autorest/modelerfour

Version:
125 lines 7.96 kB
import { CodeModel, Operation, BooleanSchema, Schema, NumberSchema, ArraySchema, Parameter, ChoiceSchema, StringSchema, ObjectSchema, ByteArraySchema, CharSchema, DateSchema, DateTimeSchema, DurationSchema, UuidSchema, UriSchema, CredentialSchema, ODataQuerySchema, UnixTimeSchema, OrSchema, XorSchema, DictionarySchema, HttpWithBodyRequest, SealedChoiceSchema, BinarySchema, AnySchema, ConstantSchema, Request, OperationGroup, TimeSchema, ArmIdSchema } from "@autorest/codemodel"; import { Session } from "@autorest/extension-base"; import { KnownMediaType } from "@azure-tools/codegen"; import { Dereferenced, Refable, MediaType, OpenAPI3Document } from "@azure-tools/openapi"; import * as OpenAPI from "@azure-tools/openapi"; import { KnownMediaTypeGroupItem, RequestBodyGroup } from "./body-processor"; import { Interpretations } from "./interpretations"; export declare class ModelerFour { protected session: Session<OpenAPI3Document>; codeModel: CodeModel; private input; private inputOperations; protected interpret: Interpretations; private apiVersionMode; private apiVersionParameter; private useModelNamespace; private profileFilter; private schemaCache; private options; private uniqueNames; private bodyProcessor; private securityProcessor; private ignoreHeaders; private specialHeaders; constructor(session: Session<OpenAPI3Document>); preprocessOperations(): void; initApiVersionMode(apiVersionParameter: "choice" | "constant" | undefined, useModelNamespace: boolean | undefined): "client" | "method" | "profile" | "none"; init(): Promise<this>; private resolve; private use; resolveArray<T extends {}>(source: Array<Refable<T>> | undefined): T[]; resolveDictionary<T extends {}>(source?: Record<string, Refable<T>>): { key: string; value: T; }[]; location(obj: any): string; processBooleanSchema(name: string, schema: OpenAPI.Schema): BooleanSchema; processIntegerSchema(name: string, schema: OpenAPI.Schema): NumberSchema; processNumberSchema(name: string, schema: OpenAPI.Schema): NumberSchema; processStringSchema(name: string, schema: OpenAPI.Schema): StringSchema; processCredentialSchema(name: string, schema: OpenAPI.Schema): CredentialSchema; processUriSchema(name: string, schema: OpenAPI.Schema): UriSchema; processArmId(name: string, schema: OpenAPI.Schema): ArmIdSchema; processUuidSchema(name: string, schema: OpenAPI.Schema): UuidSchema; processDurationSchema(name: string, schema: OpenAPI.Schema): DurationSchema; processDateTimeSchema(name: string, schema: OpenAPI.Schema): DateTimeSchema; processTimeSchema(name: string, schema: OpenAPI.Schema): TimeSchema; processDateSchema(name: string, schema: OpenAPI.Schema): DateSchema; processCharacterSchema(name: string, schema: OpenAPI.Schema): CharSchema; processByteArraySchema(name: string, schema: OpenAPI.Schema): ByteArraySchema; processArraySchema(name: string, schema: OpenAPI.Schema): ArraySchema; _stringSchema?: StringSchema; get stringSchema(): StringSchema; _charSchema?: CharSchema; get charSchema(): CharSchema; _booleanSchema?: BooleanSchema; get booleanSchema(): BooleanSchema; private _anySchema?; get anySchema(): AnySchema; private _anyObjectSchema?; get anyObjectSchema(): AnySchema; getSchemaForString(schema: OpenAPI.Schema): Schema; getPrimitiveSchemaForEnum(schema: OpenAPI.Schema): Schema; /** * * @param name Name of the schema * @param schema OpenApi3 schema. * @returns List of choicevalue from parents enum(refed using allOf) if any. */ private getChoiceSchemaParentValues; processChoiceSchema(name: string, schema: OpenAPI.Schema): ChoiceSchema | SealedChoiceSchema | ConstantSchema; processOrSchema(name: string, schema: OpenAPI.Schema): OrSchema; processXorSchema(name: string, schema: OpenAPI.Schema): XorSchema; processDictionarySchema(name: string, schema: OpenAPI.Schema): DictionarySchema; findPolymorphicDiscriminator(schema: OpenAPI.Schema | undefined, skipFirst?: boolean): OpenAPI.Discriminator | undefined; createObjectSchema(name: string, schema: OpenAPI.Schema): ObjectSchema; processObjectSchema(name: string, schema: OpenAPI.Schema): ObjectSchema | DictionarySchema | OrSchema | XorSchema | AnySchema; private findDiscriminatorValue; private findDiscriminatorValueFromMapping; processOdataSchema(name: string, schema: OpenAPI.Schema): ODataQuerySchema; processUnixTimeSchema(name: string, schema: OpenAPI.Schema): UnixTimeSchema; processBinarySchema(name: string, schema: OpenAPI.Schema): BinarySchema; processSchema(name: string, schema: OpenAPI.Schema): Schema; private trap; private processSchemaImpl; filterMediaTypes(oai3Content: Record<string, MediaType> | undefined): Map<KnownMediaType, KnownMediaTypeGroupItem[]>; getUniqueName(baseName: string): string; getContentTypeParameterSchema(http: HttpWithBodyRequest, alwaysConstant?: boolean): ChoiceSchema<StringSchema> | SealedChoiceSchema<StringSchema> | ConstantSchema<StringSchema>; getAcceptParameterSchema(mediaTypes: Array<string>): ConstantSchema<Schema>; processBinary(requestBodyGroup: RequestBodyGroup, operation: Operation, body: Dereferenced<OpenAPI.RequestBody | undefined>): Request; processSerializedObject(requestBodyGroup: RequestBodyGroup, operation: Operation, body: Dereferenced<OpenAPI.RequestBody | undefined>): Request; processOperation(httpOperation: OpenAPI.HttpOperation, method: OpenAPI.HttpMethod, path: string, pathItem: OpenAPI.PathItem): void; processHostParameters(httpOperation: OpenAPI.HttpOperation, operation: Operation, path: string, pathItem: OpenAPI.PathItem): string; private getParameterLocation; private getServerVariableSchema; processApiVersionParameterForProfile(): void; addApiVersionParameter(parameter: OpenAPI.Parameter | OpenAPI.ServerVariable, operation: Operation, apiVersionParameterSchema: ChoiceSchema | ConstantSchema): Parameter; processChoiceApiVersionParameter(parameter: OpenAPI.Parameter | OpenAPI.ServerVariable, operation: Operation, pathItem: OpenAPI.PathItem | undefined, apiversions: Array<string>): Parameter; processConstantApiVersionParameter(parameter: OpenAPI.Parameter | OpenAPI.ServerVariable, operation: Operation, pathItem: OpenAPI.PathItem | undefined, apiversions: string[]): Parameter; processApiVersionParameter(parameter: OpenAPI.Parameter | OpenAPI.ServerVariable, operation: Operation, pathItem?: OpenAPI.PathItem): void | Parameter; processParameters(httpOperation: OpenAPI.HttpOperation, operation: Operation, pathItem: OpenAPI.PathItem): void; /** * Resolve if the parameter is a header that should be ignored. * @param parmeter Operation parameter. * @returns boolean if parameter should be ignored. */ private isParameterSpecialHeader; /** * Resolve if the parameter is a header that should be ignored. * @param parmeter Operation parameter. * @returns boolean if parameter should be ignored. */ private isParameterIgnoredHeader; processResponses(httpOperation: OpenAPI.HttpOperation, operation: Operation): void; private processResponseHeaders; processRequestBody(httpOperation: OpenAPI.HttpOperation, httpMethod: OpenAPI.HttpMethod, operationGroup: OperationGroup, operation: Operation, path: string, baseUri: string): void; /** * LEGACY Body processing as changed in https://github.com/Azure/autorest/pull/4405 */ processRequestBodyLegacy(httpOperation: OpenAPI.HttpOperation, httpMethod: string, operationGroup: OperationGroup, operation: Operation, path: string, baseUri: string): void; process(): CodeModel; private propagateSchemaUsage; private trackSchemaUsage; } //# sourceMappingURL=modelerfour.d.ts.map