UNPKG

@autorest/powershell

Version:
135 lines 4.75 kB
import { DeepPartial } from '@azure-tools/codegen'; import { Dictionary } from '@azure-tools/linq'; import { Schema } from '@autorest/codemodel'; import { Extensions } from './extensions'; export interface IOperationBase { } export interface IParameter extends Extensions { name: string; schema: Schema; description: string; allowEmptyValue: boolean; deprecated: boolean; required: boolean; details: LanguageDetails<ParameterDetails>; } export declare class IParameter extends Extensions { name: string; schema: Schema; constructor(name: string, schema: Schema, initializer?: DeepPartial<IParameter>); } export interface IOperation<TParameterType extends IParameter> extends IOperationBase { operationId: string; description: string; summary?: string; deprecated: boolean; parameters: Array<TParameterType>; } export interface Components<TOperation extends IOperation<TParameter>, TParameter extends IParameter> extends Extensions { operations: Dictionary<TOperation>; parameters: Dictionary<TParameter>; } export declare class Components<TOperation extends IOperation<TParameter>, TParameter extends IParameter> extends Extensions implements Components<TOperation, TParameter> { /** * Dictionary of Operations in this model. * * This is intended to invert the original PathItems in the OAI model, and focus on operations, not endpoints. */ operations: Dictionary<TOperation>; constructor(initializer?: DeepPartial<Components<TOperation, TParameter>>); } export interface ParameterDetails extends ImplementationDetails { } export interface ResponseDetails extends ImplementationDetails { isErrorResponse: boolean; } /** LanguageDetails contains a map of languages to details for a given node in the code-model */ export interface LanguageDetails<T extends ImplementationDetails> extends Dictionary<T> { default: T; } export interface ImplementationDetails extends Dictionary<any> { /** a unique id for correlation between cloned objects */ uid: string; /** name used in actual implementation */ name: string; /** description text */ description: string; /** message used to go along with deprecation */ deprecationMessage?: string; /** external docs description */ externalDocs?: ExternalDocumentation; } export declare enum ImplementationLocation { Method = "Method", Client = "Client" } export declare class Example extends Extensions implements Example { extensions: Dictionary<any>; constructor(initializer?: DeepPartial<Example>); } export declare class ExternalDocumentation extends Extensions implements ExternalDocumentation { url: string; extensions: Dictionary<any>; constructor(url: string, initializer?: DeepPartial<ExternalDocumentation>); } export declare class Link extends Extensions implements Link { extensions: Dictionary<any>; parameters: Dictionary<string>; constructor(initializer?: DeepPartial<Link>); } export declare class Server extends Extensions implements Server { url: string; extensions: Dictionary<any>; variables: Dictionary<ServerVariable>; constructor(url: string, initializer?: DeepPartial<Server>); } export declare class ServerVariable extends Extensions implements ServerVariable { extensions: Dictionary<any>; enum: string[]; constructor(defaultValue: string, initializer?: DeepPartial<ServerVariable>); } export declare class Tag extends Extensions implements Tag { name: string; extensions: Dictionary<any>; constructor(name: string, initializer?: DeepPartial<Tag>); } /** * @description common ways of serializing simple parameters * @see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.1.md#style-values */ export interface SecurityRequirement extends Dictionary<string> { } export interface Example extends Extensions { summary?: string; description?: string; value?: any; externalValue?: string; } export interface ExternalDocumentation extends Extensions { description?: string; url: string; } export interface Link extends Extensions { operationRef?: string; operationId?: string; parameters: Dictionary<string>; requestBody?: any; description?: string; server?: Server; } export interface Server extends Extensions { url: string; description?: string; variables: Dictionary<ServerVariable>; } export interface ServerVariable extends Extensions { enum: Array<string>; default: string; description?: string; } export interface Tag extends Extensions { name: string; description?: string; externalDocs?: ExternalDocumentation; } //# sourceMappingURL=components.d.ts.map