@tellescope/schema 1.238.0 → 1.239.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,106 @@
1
+ #!/usr/bin/env npx ts-node
2
+ /**
3
+ * OpenAPI 3.0 Specification Generator for Tellescope API
4
+ *
5
+ * This script generates an OpenAPI 3.0 JSON specification from the Tellescope schema.
6
+ * It reads the schema definitions and produces a complete API documentation.
7
+ *
8
+ * Usage:
9
+ * cd packages/public/schema
10
+ * npx ts-node src/generate-openapi.ts [output-path]
11
+ *
12
+ * Default output: ./openapi.json
13
+ */
14
+ interface OpenAPISchemaType {
15
+ type?: string;
16
+ format?: string;
17
+ items?: OpenAPISchemaType;
18
+ properties?: Record<string, OpenAPISchemaType>;
19
+ additionalProperties?: OpenAPISchemaType | boolean;
20
+ $ref?: string;
21
+ oneOf?: OpenAPISchemaType[];
22
+ anyOf?: OpenAPISchemaType[];
23
+ example?: any;
24
+ required?: string[];
25
+ nullable?: boolean;
26
+ description?: string;
27
+ enum?: string[];
28
+ pattern?: string;
29
+ minimum?: number;
30
+ maximum?: number;
31
+ }
32
+ interface OpenAPIParameter {
33
+ name: string;
34
+ in: 'path' | 'query' | 'header' | 'cookie';
35
+ required?: boolean;
36
+ schema: OpenAPISchemaType;
37
+ description?: string;
38
+ }
39
+ interface OpenAPIRequestBody {
40
+ required?: boolean;
41
+ content: {
42
+ 'application/json': {
43
+ schema: OpenAPISchemaType;
44
+ };
45
+ };
46
+ }
47
+ interface OpenAPIResponse {
48
+ description: string;
49
+ content?: {
50
+ 'application/json': {
51
+ schema: OpenAPISchemaType;
52
+ };
53
+ };
54
+ }
55
+ interface OpenAPIOperation {
56
+ summary?: string;
57
+ description?: string;
58
+ tags?: string[];
59
+ operationId?: string;
60
+ security?: Array<Record<string, string[]>>;
61
+ parameters?: OpenAPIParameter[];
62
+ requestBody?: OpenAPIRequestBody;
63
+ responses: Record<string, OpenAPIResponse | {
64
+ $ref: string;
65
+ }>;
66
+ }
67
+ interface OpenAPIPathItem {
68
+ get?: OpenAPIOperation;
69
+ post?: OpenAPIOperation;
70
+ patch?: OpenAPIOperation;
71
+ put?: OpenAPIOperation;
72
+ delete?: OpenAPIOperation;
73
+ }
74
+ interface OpenAPISpec {
75
+ openapi: string;
76
+ info: {
77
+ title: string;
78
+ version: string;
79
+ description: string;
80
+ contact?: {
81
+ email?: string;
82
+ url?: string;
83
+ };
84
+ };
85
+ servers: Array<{
86
+ url: string;
87
+ description: string;
88
+ }>;
89
+ paths: Record<string, OpenAPIPathItem>;
90
+ components: {
91
+ schemas: Record<string, OpenAPISchemaType>;
92
+ securitySchemes: Record<string, any>;
93
+ responses: Record<string, OpenAPIResponse>;
94
+ };
95
+ tags: Array<{
96
+ name: string;
97
+ description?: string;
98
+ }>;
99
+ security: Array<Record<string, string[]>>;
100
+ }
101
+ /**
102
+ * Generate the complete OpenAPI specification
103
+ */
104
+ declare function generateOpenAPISpec(): OpenAPISpec;
105
+ export { generateOpenAPISpec, OpenAPISpec };
106
+ //# sourceMappingURL=generate-openapi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-openapi.d.ts","sourceRoot":"","sources":["../../src/generate-openapi.ts"],"names":[],"mappings":"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"}