diff --git a/packages/openapi-types/index.ts b/packages/openapi-types/index.ts index 5bd58b2b..48b34d4b 100644 --- a/packages/openapi-types/index.ts +++ b/packages/openapi-types/index.ts @@ -365,11 +365,32 @@ export namespace OpenAPIV3 { url: string; } - export interface ParameterObject extends ParameterBaseObject { + export type ParameterObject = PathLocationObject | QueryLocationObject | CookieLocationObject | HeaderLocationObject; + + export interface CookieLocationObject extends ParameterBaseObject { name: string; - in: string; + in: "cookie"; + style?: "form"; + } + + interface HeaderLocationObject extends ParameterBaseObject { + name: string; + in: "header"; + style?: "simple"; + } + + interface PathLocationObject extends ParameterBaseObject { + name: string; + in: "path"; + required: boolean; + style?: "matrix" | "label" | "simple"; + } + + interface QueryLocationObject extends ParameterBaseObject { + name: string; + in: "query"; + style?: "form" | "spaceDelimited" | "pipeDelimited" | "deepObject"; } - export interface HeaderObject extends ParameterBaseObject {} export interface ParameterBaseObject {