Skip to content

Commit c62baa8

Browse files
committed
Add common props to base interface
1 parent 5bde494 commit c62baa8

File tree

3 files changed

+16
-50
lines changed

3 files changed

+16
-50
lines changed

package-lock.json

Lines changed: 7 additions & 36 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
"typescript": "3.9.10"
3131
},
3232
"dependencies": {
33-
"@fosfad/json-schema-typescript-definitions": "0.0.9",
34-
"@fosfad/openapi-typescript-definitions": "0.0.7"
33+
"@fosfad/json-schema-typescript-definitions": "0.0.11"
3534
}
3635
}

src/schema.ts

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import {
22
AnyJsonSchema,
33
ArrayJsonSchema,
44
BooleanJsonSchema,
5-
IntegerJsonSchema, isAnyJsonSchema, isArrayJsonSchema,
5+
IntegerJsonSchema, isArrayJsonSchema,
66
isBooleanJsonSchema, isIntegerJsonSchema,
77
isNullJsonSchema,
88
isNumberJsonSchema, isObjectJsonSchema,
@@ -18,7 +18,7 @@ import { ExternalDocumentation } from './externalDocumentation';
1818
import { Reference } from './reference';
1919
import { XML } from './xml';
2020

21-
export interface OasSchema extends JsonSchema {
21+
export interface OasSchema<T = any> extends JsonSchema<T> {
2222
externalDocs?: ExternalDocumentation,
2323
xml?: XML;
2424
}
@@ -34,7 +34,7 @@ export function isNullOasSchema(schema: any): schema is NullOasSchema {
3434
return isNullJsonSchema(schema);
3535
}
3636

37-
export interface BooleanOasSchema extends BooleanJsonSchema, OasSchema {
37+
export interface BooleanOasSchema extends BooleanJsonSchema, OasSchema<boolean> {
3838
allOf?: Array<BooleanOasSchema | Reference>;
3939
anyOf?: Array<BooleanOasSchema | Reference>;
4040
not?: BooleanOasSchema | Reference;
@@ -45,7 +45,7 @@ export function isBooleanOasSchema(schema: any): schema is BooleanOasSchema {
4545
return isBooleanJsonSchema(schema);
4646
}
4747

48-
export interface StringOasSchema extends StringJsonSchema, OasSchema {
48+
export interface StringOasSchema extends StringJsonSchema, OasSchema<string> {
4949
allOf?: Array<StringOasSchema | Reference>;
5050
anyOf?: Array<StringOasSchema | Reference>;
5151
not?: StringOasSchema | Reference;
@@ -56,7 +56,7 @@ export function isStringOasSchema(schema: any): schema is StringOasSchema {
5656
return isStringJsonSchema(schema);
5757
}
5858

59-
export interface NumberOasSchema extends NumberJsonSchema, OasSchema {
59+
export interface NumberOasSchema extends NumberJsonSchema, OasSchema<number> {
6060
allOf?: Array<NumberOasSchema | Reference>;
6161
anyOf?: Array<NumberOasSchema | Reference>;
6262
not?: NumberOasSchema | Reference;
@@ -67,7 +67,7 @@ export function isNumberOasSchema(schema: any): schema is NumberOasSchema {
6767
return isNumberJsonSchema(schema);
6868
}
6969

70-
export interface IntegerOasSchema extends IntegerJsonSchema, OasSchema {
70+
export interface IntegerOasSchema extends IntegerJsonSchema, OasSchema<number> {
7171
allOf?: Array<IntegerOasSchema | Reference>;
7272
anyOf?: Array<IntegerOasSchema | Reference>;
7373
not?: IntegerOasSchema | Reference;
@@ -78,7 +78,7 @@ export function isIntegerOasSchema(schema: any): schema is IntegerOasSchema {
7878
return isIntegerJsonSchema(schema);
7979
}
8080

81-
export interface ArrayOasSchema extends ArrayJsonSchema, OasSchema {
81+
export interface ArrayOasSchema extends ArrayJsonSchema, OasSchema<Array<any>> {
8282
allOf?: Array<ArrayOasSchema | Reference>;
8383
anyOf?: Array<ArrayOasSchema | Reference>;
8484
contains?: OasSchema | Reference;
@@ -92,7 +92,7 @@ export function isArrayOasSchema(schema: any): schema is ArrayOasSchema {
9292
return isArrayJsonSchema(schema);
9393
}
9494

95-
export interface ObjectOasSchema extends ObjectJsonSchema, OasSchema {
95+
export interface ObjectOasSchema extends ObjectJsonSchema, OasSchema<Record<string, any>> {
9696
allOf?: Array<ObjectOasSchema | Reference>;
9797
anyOf?: Array<ObjectOasSchema | Reference>;
9898
discriminator?: Discriminator;
@@ -117,7 +117,3 @@ export interface AnyOasSchema extends AnyJsonSchema, OasSchema {
117117
not?: OasSchema | Reference;
118118
oneOf?: Array<OasSchema | Reference>;
119119
}
120-
121-
export function isAnyOasSchema(schema: any): schema is AnyOasSchema {
122-
return isAnyJsonSchema(schema);
123-
}

0 commit comments

Comments
 (0)