@gravito/ripple 4.0.1 → 4.0.3
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.
- package/README.md +26 -10
- package/dist/{ripple/src/OrbitRipple.d.ts → OrbitRipple.d.ts} +1 -0
- package/dist/{ripple/src/RippleServer.d.ts → RippleServer.d.ts} +32 -1
- package/dist/core/src/Application.d.ts +41 -0
- package/dist/core/src/HookManager.d.ts +33 -189
- package/dist/core/src/PlanetCore.d.ts +25 -1
- package/dist/core/src/Router.d.ts +32 -46
- package/dist/core/src/adapters/bun/BunContext.d.ts +6 -1
- package/dist/core/src/adapters/bun/BunNativeAdapter.d.ts +35 -0
- package/dist/core/src/adapters/bun/BunWebSocketHandler.d.ts +48 -0
- package/dist/core/src/adapters/bun/RadixRouter.d.ts +1 -0
- package/dist/core/src/adapters/bun/index.d.ts +7 -0
- package/dist/core/src/binary/BinaryUtils.d.ts +105 -0
- package/dist/core/src/binary/index.d.ts +5 -0
- package/dist/core/src/compat/async-local-storage.d.ts +7 -0
- package/dist/core/src/compat/crypto.d.ts +6 -0
- package/dist/core/src/engine/AOTRouter.d.ts +10 -0
- package/dist/core/src/engine/FastContext.d.ts +19 -1
- package/dist/core/src/engine/Gravito.d.ts +13 -18
- package/dist/core/src/engine/MinimalContext.d.ts +2 -0
- package/dist/core/src/engine/analyzer.d.ts +92 -6
- package/dist/core/src/engine/types.d.ts +3 -0
- package/dist/core/src/events/EventPriorityQueue.d.ts +18 -256
- package/dist/core/src/events/index.d.ts +12 -11
- package/dist/core/src/events/queue-core.d.ts +77 -0
- package/dist/core/src/events/task-executor.d.ts +51 -0
- package/dist/core/src/ffi/NativeAccelerator.d.ts +62 -0
- package/dist/core/src/ffi/NativeHasher.d.ts +139 -0
- package/dist/core/src/ffi/cbor-fallback.d.ts +96 -0
- package/dist/core/src/ffi/hash-fallback.d.ts +33 -0
- package/dist/core/src/ffi/index.d.ts +10 -0
- package/dist/core/src/ffi/types.d.ts +135 -0
- package/dist/core/src/helpers/Str.d.ts +15 -0
- package/dist/core/src/hooks/ActionManager.d.ts +132 -0
- package/dist/core/src/hooks/AsyncDetector.d.ts +84 -0
- package/dist/core/src/hooks/FilterManager.d.ts +71 -0
- package/dist/core/src/hooks/MigrationWarner.d.ts +24 -0
- package/dist/core/src/hooks/dlq-operations.d.ts +60 -0
- package/dist/core/src/hooks/types.d.ts +107 -0
- package/dist/core/src/http/CookieJar.d.ts +2 -2
- package/dist/core/src/http/types.d.ts +24 -3
- package/dist/core/src/index.d.ts +491 -14
- package/dist/core/src/observability/contracts.d.ts +137 -0
- package/dist/core/src/reliability/DeadLetterQueueManager.d.ts +2 -3
- package/dist/core/src/runtime/adapter-bun.d.ts +12 -0
- package/dist/core/src/runtime/adapter-deno.d.ts +12 -0
- package/dist/core/src/runtime/adapter-node.d.ts +12 -0
- package/dist/core/src/runtime/adapter-unknown.d.ts +13 -0
- package/dist/core/src/runtime/archive.d.ts +17 -0
- package/dist/core/src/runtime/compression.d.ts +21 -0
- package/dist/core/src/runtime/deep-equals.d.ts +56 -0
- package/dist/core/src/runtime/detection.d.ts +22 -0
- package/dist/core/src/runtime/escape.d.ts +34 -0
- package/dist/core/src/runtime/index.d.ts +44 -0
- package/dist/core/src/runtime/markdown.d.ts +44 -0
- package/dist/core/src/runtime/types.d.ts +436 -0
- package/dist/core/src/runtime-helpers.d.ts +67 -0
- package/dist/core/src/runtime.d.ts +10 -118
- package/dist/core/src/testing/HttpTester.d.ts +1 -0
- package/dist/core/src/transpiler-utils.d.ts +170 -0
- package/dist/{ripple/src/engines → engines}/BunEngine.d.ts +11 -0
- package/dist/index.js +1 -7502
- package/dist/index.js.map +3 -71
- package/package.json +6 -2
- package/dist/atlas/src/DB.d.ts +0 -348
- package/dist/atlas/src/OrbitAtlas.d.ts +0 -9
- package/dist/atlas/src/config/defineConfig.d.ts +0 -14
- package/dist/atlas/src/config/index.d.ts +0 -7
- package/dist/atlas/src/config/loadConfig.d.ts +0 -41
- package/dist/atlas/src/connection/Connection.d.ts +0 -112
- package/dist/atlas/src/connection/ConnectionManager.d.ts +0 -180
- package/dist/atlas/src/connection/ReplicaConnectionPool.d.ts +0 -54
- package/dist/atlas/src/drivers/BunSQLDriver.d.ts +0 -32
- package/dist/atlas/src/drivers/BunSQLPreparedStatement.d.ts +0 -118
- package/dist/atlas/src/drivers/MongoDBDriver.d.ts +0 -36
- package/dist/atlas/src/drivers/MySQLDriver.d.ts +0 -79
- package/dist/atlas/src/drivers/PostgresDriver.d.ts +0 -96
- package/dist/atlas/src/drivers/RedisDriver.d.ts +0 -43
- package/dist/atlas/src/drivers/SQLiteDriver.d.ts +0 -45
- package/dist/atlas/src/drivers/types.d.ts +0 -260
- package/dist/atlas/src/errors/index.d.ts +0 -45
- package/dist/atlas/src/grammar/Grammar.d.ts +0 -342
- package/dist/atlas/src/grammar/MongoGrammar.d.ts +0 -47
- package/dist/atlas/src/grammar/MySQLGrammar.d.ts +0 -54
- package/dist/atlas/src/grammar/NullGrammar.d.ts +0 -35
- package/dist/atlas/src/grammar/PostgresGrammar.d.ts +0 -62
- package/dist/atlas/src/grammar/SQLiteGrammar.d.ts +0 -32
- package/dist/atlas/src/index.d.ts +0 -79
- package/dist/atlas/src/migration/Migration.d.ts +0 -64
- package/dist/atlas/src/migration/MigrationRepository.d.ts +0 -65
- package/dist/atlas/src/migration/Migrator.d.ts +0 -110
- package/dist/atlas/src/migration/index.d.ts +0 -6
- package/dist/atlas/src/observability/AtlasMetrics.d.ts +0 -33
- package/dist/atlas/src/observability/AtlasObservability.d.ts +0 -15
- package/dist/atlas/src/observability/AtlasTracer.d.ts +0 -12
- package/dist/atlas/src/observability/index.d.ts +0 -9
- package/dist/atlas/src/orm/Repository.d.ts +0 -247
- package/dist/atlas/src/orm/index.d.ts +0 -6
- package/dist/atlas/src/orm/model/DirtyTracker.d.ts +0 -121
- package/dist/atlas/src/orm/model/Model.d.ts +0 -458
- package/dist/atlas/src/orm/model/ModelRegistry.d.ts +0 -20
- package/dist/atlas/src/orm/model/concerns/HasAttributes.d.ts +0 -150
- package/dist/atlas/src/orm/model/concerns/HasEvents.d.ts +0 -36
- package/dist/atlas/src/orm/model/concerns/HasPersistence.d.ts +0 -92
- package/dist/atlas/src/orm/model/concerns/HasRelationships.d.ts +0 -117
- package/dist/atlas/src/orm/model/concerns/HasSerialization.d.ts +0 -64
- package/dist/atlas/src/orm/model/concerns/applyMixins.d.ts +0 -15
- package/dist/atlas/src/orm/model/concerns/index.d.ts +0 -12
- package/dist/atlas/src/orm/model/decorators.d.ts +0 -138
- package/dist/atlas/src/orm/model/errors.d.ts +0 -52
- package/dist/atlas/src/orm/model/index.d.ts +0 -10
- package/dist/atlas/src/orm/model/relationships.d.ts +0 -207
- package/dist/atlas/src/orm/model/types.d.ts +0 -12
- package/dist/atlas/src/orm/schema/SchemaRegistry.d.ts +0 -124
- package/dist/atlas/src/orm/schema/SchemaSniffer.d.ts +0 -54
- package/dist/atlas/src/orm/schema/index.d.ts +0 -6
- package/dist/atlas/src/orm/schema/types.d.ts +0 -85
- package/dist/atlas/src/pool/AdaptivePoolManager.d.ts +0 -98
- package/dist/atlas/src/pool/PoolHealthChecker.d.ts +0 -91
- package/dist/atlas/src/pool/PoolStrategy.d.ts +0 -129
- package/dist/atlas/src/pool/PoolWarmer.d.ts +0 -92
- package/dist/atlas/src/query/Expression.d.ts +0 -60
- package/dist/atlas/src/query/NPlusOneDetector.d.ts +0 -10
- package/dist/atlas/src/query/QueryBuilder.d.ts +0 -643
- package/dist/atlas/src/query/RelationshipResolver.d.ts +0 -23
- package/dist/atlas/src/query/clauses/GroupByClause.d.ts +0 -51
- package/dist/atlas/src/query/clauses/HavingClause.d.ts +0 -70
- package/dist/atlas/src/query/clauses/JoinClause.d.ts +0 -87
- package/dist/atlas/src/query/clauses/LimitClause.d.ts +0 -82
- package/dist/atlas/src/query/clauses/OrderByClause.d.ts +0 -69
- package/dist/atlas/src/query/clauses/SelectClause.d.ts +0 -71
- package/dist/atlas/src/query/clauses/WhereClause.d.ts +0 -167
- package/dist/atlas/src/query/clauses/index.d.ts +0 -11
- package/dist/atlas/src/schema/Blueprint.d.ts +0 -276
- package/dist/atlas/src/schema/ColumnDefinition.d.ts +0 -154
- package/dist/atlas/src/schema/ForeignKeyDefinition.d.ts +0 -37
- package/dist/atlas/src/schema/MigrationGenerator.d.ts +0 -45
- package/dist/atlas/src/schema/Schema.d.ts +0 -131
- package/dist/atlas/src/schema/SchemaDiff.d.ts +0 -73
- package/dist/atlas/src/schema/TypeGenerator.d.ts +0 -57
- package/dist/atlas/src/schema/TypeWriter.d.ts +0 -42
- package/dist/atlas/src/schema/grammars/MySQLSchemaGrammar.d.ts +0 -23
- package/dist/atlas/src/schema/grammars/PostgresSchemaGrammar.d.ts +0 -26
- package/dist/atlas/src/schema/grammars/SQLiteSchemaGrammar.d.ts +0 -28
- package/dist/atlas/src/schema/grammars/SchemaGrammar.d.ts +0 -97
- package/dist/atlas/src/schema/grammars/index.d.ts +0 -7
- package/dist/atlas/src/schema/index.d.ts +0 -8
- package/dist/atlas/src/seed/Factory.d.ts +0 -90
- package/dist/atlas/src/seed/Seeder.d.ts +0 -28
- package/dist/atlas/src/seed/SeederRunner.d.ts +0 -74
- package/dist/atlas/src/seed/index.d.ts +0 -6
- package/dist/atlas/src/sharding/ShardingManager.d.ts +0 -59
- package/dist/atlas/src/types/index.d.ts +0 -1182
- package/dist/atlas/src/utils/CursorEncoding.d.ts +0 -63
- package/dist/atlas/src/utils/levenshtein.d.ts +0 -9
- package/dist/core/src/adapters/PhotonAdapter.d.ts +0 -175
- package/dist/core/src/adapters/photon-types.d.ts +0 -73
- package/dist/core/src/http/middleware/BodySizeLimit.d.ts +0 -16
- package/dist/core/src/http/middleware/Cors.d.ts +0 -24
- package/dist/core/src/http/middleware/Csrf.d.ts +0 -23
- package/dist/core/src/http/middleware/HeaderTokenGate.d.ts +0 -28
- package/dist/core/src/http/middleware/SecurityHeaders.d.ts +0 -29
- package/dist/core/src/http/middleware/ThrottleRequests.d.ts +0 -18
- package/dist/core/src/instrumentation/index.d.ts +0 -35
- package/dist/core/src/instrumentation/opentelemetry.d.ts +0 -178
- package/dist/core/src/instrumentation/types.d.ts +0 -182
- package/dist/core/src/observability/Metrics.d.ts +0 -244
- package/dist/photon/src/index.d.ts +0 -89
- package/dist/photon/src/middleware/binary.d.ts +0 -31
- package/dist/photon/src/middleware/htmx.d.ts +0 -39
- package/dist/photon/src/middleware/ratelimit-redis.d.ts +0 -50
- package/dist/photon/src/middleware/ratelimit.d.ts +0 -161
- package/dist/photon/src/openapi.d.ts +0 -19
- /package/dist/{ripple/src/channels → channels}/Channel.d.ts +0 -0
- /package/dist/{ripple/src/channels → channels}/ChannelManager.d.ts +0 -0
- /package/dist/{ripple/src/channels → channels}/index.d.ts +0 -0
- /package/dist/{ripple/src/drivers → drivers}/LocalDriver.d.ts +0 -0
- /package/dist/{ripple/src/drivers → drivers}/NATSDriver.d.ts +0 -0
- /package/dist/{ripple/src/drivers → drivers}/RedisDriver.d.ts +0 -0
- /package/dist/{ripple/src/drivers → drivers}/index.d.ts +0 -0
- /package/dist/{ripple/src/engines → engines}/IRippleEngine.d.ts +0 -0
- /package/dist/{ripple/src/engines → engines}/UWebSocketsEngine.d.ts +0 -0
- /package/dist/{ripple/src/engines → engines}/WsEngine.d.ts +0 -0
- /package/dist/{ripple/src/engines → engines}/index.d.ts +0 -0
- /package/dist/{ripple/src/errors → errors}/RippleError.d.ts +0 -0
- /package/dist/{ripple/src/errors → errors}/index.d.ts +0 -0
- /package/dist/{ripple/src/events → events}/BroadcastEvent.d.ts +0 -0
- /package/dist/{ripple/src/events → events}/BroadcastManager.d.ts +0 -0
- /package/dist/{ripple/src/events → events}/Broadcaster.d.ts +0 -0
- /package/dist/{ripple/src/events → events}/index.d.ts +0 -0
- /package/dist/{ripple/src/health → health}/HealthChecker.d.ts +0 -0
- /package/dist/{ripple/src/health → health}/index.d.ts +0 -0
- /package/dist/{ripple/src/index.d.ts → index.d.ts} +0 -0
- /package/dist/{ripple/src/logging → logging}/Logger.d.ts +0 -0
- /package/dist/{ripple/src/logging → logging}/index.d.ts +0 -0
- /package/dist/{ripple/src/middleware → middleware}/InterceptorManager.d.ts +0 -0
- /package/dist/{ripple/src/observability → observability}/RippleMetrics.d.ts +0 -0
- /package/dist/{ripple/src/reliability → reliability}/AckManager.d.ts +0 -0
- /package/dist/{ripple/src/serializers → serializers}/ISerializer.d.ts +0 -0
- /package/dist/{ripple/src/serializers → serializers}/JsonSerializer.d.ts +0 -0
- /package/dist/{ripple/src/serializers → serializers}/ProtobufSerializer.d.ts +0 -0
- /package/dist/{ripple/src/serializers → serializers}/index.d.ts +0 -0
- /package/dist/{ripple/src/tracking → tracking}/ConnectionTracker.d.ts +0 -0
- /package/dist/{ripple/src/tracking → tracking}/SessionManager.d.ts +0 -0
- /package/dist/{ripple/src/tracking → tracking}/index.d.ts +0 -0
- /package/dist/{ripple/src/types.d.ts → types.d.ts} +0 -0
- /package/dist/{ripple/src/utils → utils}/MessageSerializer.d.ts +0 -0
- /package/dist/{ripple/src/utils → utils}/TokenBucket.d.ts +0 -0
- /package/dist/{ripple/src/utils → utils}/index.d.ts +0 -0
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview Rate Limiting Middleware for Photon
|
|
3
|
-
*
|
|
4
|
-
* Provides token bucket and sliding window rate limiting strategies.
|
|
5
|
-
* Supports memory-based and Redis-based storage backends.
|
|
6
|
-
*
|
|
7
|
-
* @module @gravito/photon/middleware/ratelimit
|
|
8
|
-
* @since 1.0.0
|
|
9
|
-
*/
|
|
10
|
-
import type { Context, MiddlewareHandler } from '@gravito/photon';
|
|
11
|
-
export interface RateLimitConfig {
|
|
12
|
-
/**
|
|
13
|
-
* Maximum number of requests allowed within the time window
|
|
14
|
-
* @default 100
|
|
15
|
-
*/
|
|
16
|
-
maxRequests: number;
|
|
17
|
-
/**
|
|
18
|
-
* Time window in milliseconds
|
|
19
|
-
* @default 60000 (1 minute)
|
|
20
|
-
*/
|
|
21
|
-
windowMs: number;
|
|
22
|
-
/**
|
|
23
|
-
* Strategy for rate limiting
|
|
24
|
-
* - 'token-bucket': Smooth rate limiting with token refill
|
|
25
|
-
* - 'sliding-window': Time-based window that slides continuously
|
|
26
|
-
* @default 'token-bucket'
|
|
27
|
-
*/
|
|
28
|
-
strategy?: 'token-bucket' | 'sliding-window';
|
|
29
|
-
/**
|
|
30
|
-
* Custom key generator function
|
|
31
|
-
* @default (c) => c.req.header('x-forwarded-for') || c.req.header('x-real-ip') || 'unknown'
|
|
32
|
-
*/
|
|
33
|
-
keyGenerator?: (c: Context) => string | Promise<string>;
|
|
34
|
-
/**
|
|
35
|
-
* Storage backend for rate limit state
|
|
36
|
-
* @default new MemoryStore()
|
|
37
|
-
*/
|
|
38
|
-
store?: RateLimitStore;
|
|
39
|
-
/**
|
|
40
|
-
* Custom handler for rate-limited requests
|
|
41
|
-
* @default (c) => c.json({ error: 'Too Many Requests', retryAfter: <seconds> }, 429)
|
|
42
|
-
*/
|
|
43
|
-
onRateLimitExceeded?: (c: Context, retryAfter: number) => Response | Promise<Response>;
|
|
44
|
-
/**
|
|
45
|
-
* Skip rate limiting for certain requests
|
|
46
|
-
* @default undefined
|
|
47
|
-
*/
|
|
48
|
-
skip?: (c: Context) => boolean | Promise<boolean>;
|
|
49
|
-
/**
|
|
50
|
-
* Custom headers to include in responses
|
|
51
|
-
* @default true
|
|
52
|
-
*/
|
|
53
|
-
standardHeaders?: boolean;
|
|
54
|
-
/**
|
|
55
|
-
* Include draft RateLimit headers (RateLimit-*)
|
|
56
|
-
* @default false
|
|
57
|
-
*/
|
|
58
|
-
draftHeaders?: boolean;
|
|
59
|
-
}
|
|
60
|
-
export interface RateLimitStore {
|
|
61
|
-
/**
|
|
62
|
-
* Increment request count and return current state
|
|
63
|
-
*/
|
|
64
|
-
increment(key: string): Promise<RateLimitState>;
|
|
65
|
-
/**
|
|
66
|
-
* Reset the rate limit for a key
|
|
67
|
-
*/
|
|
68
|
-
reset(key: string): Promise<void>;
|
|
69
|
-
/**
|
|
70
|
-
* Get current state without incrementing
|
|
71
|
-
*/
|
|
72
|
-
get(key: string): Promise<RateLimitState | null>;
|
|
73
|
-
}
|
|
74
|
-
export interface RateLimitState {
|
|
75
|
-
/**
|
|
76
|
-
* Number of requests made in current window
|
|
77
|
-
*/
|
|
78
|
-
count: number;
|
|
79
|
-
/**
|
|
80
|
-
* Timestamp when the window expires (ms)
|
|
81
|
-
*/
|
|
82
|
-
resetTime: number;
|
|
83
|
-
/**
|
|
84
|
-
* Remaining requests allowed
|
|
85
|
-
*/
|
|
86
|
-
remaining: number;
|
|
87
|
-
}
|
|
88
|
-
export declare class MemoryStore implements RateLimitStore {
|
|
89
|
-
private config;
|
|
90
|
-
private store;
|
|
91
|
-
private head?;
|
|
92
|
-
private tail?;
|
|
93
|
-
private cleanupInterval;
|
|
94
|
-
constructor(config: {
|
|
95
|
-
maxRequests: number;
|
|
96
|
-
windowMs: number;
|
|
97
|
-
}, cleanupIntervalMs?: number);
|
|
98
|
-
private addNode;
|
|
99
|
-
private removeNode;
|
|
100
|
-
increment(key: string): Promise<RateLimitState>;
|
|
101
|
-
reset(key: string): Promise<void>;
|
|
102
|
-
get(key: string): Promise<RateLimitState | null>;
|
|
103
|
-
/**
|
|
104
|
-
* Cleanup resources
|
|
105
|
-
*/
|
|
106
|
-
destroy(): void;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Create a rate limiting middleware
|
|
110
|
-
*
|
|
111
|
-
* @example
|
|
112
|
-
* ```typescript
|
|
113
|
-
* import { Photon } from '@gravito/photon'
|
|
114
|
-
* import { rateLimit } from '@gravito/photon/middleware'
|
|
115
|
-
*
|
|
116
|
-
* const app = new Photon()
|
|
117
|
-
*
|
|
118
|
-
* // Basic usage: 100 requests per minute
|
|
119
|
-
* app.use('*', rateLimit({ maxRequests: 100, windowMs: 60000 }))
|
|
120
|
-
*
|
|
121
|
-
* // Per-user rate limiting
|
|
122
|
-
* app.use('/api/*', rateLimit({
|
|
123
|
-
* maxRequests: 50,
|
|
124
|
-
* windowMs: 60000,
|
|
125
|
-
* keyGenerator: (c) => {
|
|
126
|
-
* const userId = c.get('userId')
|
|
127
|
-
* return userId || c.req.header('x-forwarded-for') || 'anonymous'
|
|
128
|
-
* }
|
|
129
|
-
* }))
|
|
130
|
-
* ```
|
|
131
|
-
*/
|
|
132
|
-
export declare function rateLimit(config: RateLimitConfig): MiddlewareHandler;
|
|
133
|
-
/**
|
|
134
|
-
* Convenience factory: Create rate limiter with common presets
|
|
135
|
-
*/
|
|
136
|
-
export declare const createRateLimiter: {
|
|
137
|
-
/**
|
|
138
|
-
* Strict: 10 requests per minute
|
|
139
|
-
*/
|
|
140
|
-
strict: (overrides?: Partial<RateLimitConfig>) => MiddlewareHandler;
|
|
141
|
-
/**
|
|
142
|
-
* Moderate: 60 requests per minute
|
|
143
|
-
*/
|
|
144
|
-
moderate: (overrides?: Partial<RateLimitConfig>) => MiddlewareHandler;
|
|
145
|
-
/**
|
|
146
|
-
* Lenient: 100 requests per minute
|
|
147
|
-
*/
|
|
148
|
-
lenient: (overrides?: Partial<RateLimitConfig>) => MiddlewareHandler;
|
|
149
|
-
/**
|
|
150
|
-
* API: 1000 requests per hour
|
|
151
|
-
*/
|
|
152
|
-
api: (overrides?: Partial<RateLimitConfig>) => MiddlewareHandler;
|
|
153
|
-
/**
|
|
154
|
-
* Auth: 5 attempts per 15 minutes (for login endpoints)
|
|
155
|
-
*/
|
|
156
|
-
auth: (overrides?: Partial<RateLimitConfig>) => MiddlewareHandler;
|
|
157
|
-
};
|
|
158
|
-
/**
|
|
159
|
-
* Export convenience preset
|
|
160
|
-
*/
|
|
161
|
-
export { createRateLimiter as rateLimiter };
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @file packages/photon/src/openapi.ts
|
|
3
|
-
* @module @gravito/photon/openapi
|
|
4
|
-
* @description OpenAPI (Swagger) integration for Photon
|
|
5
|
-
*/
|
|
6
|
-
import type { RouteConfig } from '@hono/zod-openapi';
|
|
7
|
-
import { createRoute, OpenAPIHono } from '@hono/zod-openapi';
|
|
8
|
-
import { z } from 'zod';
|
|
9
|
-
/**
|
|
10
|
-
* Photon Open API Class
|
|
11
|
-
* Extends OpenAPIHono to provide a seamless OpenAPI integration.
|
|
12
|
-
*/
|
|
13
|
-
export declare class PhotonOpenAPI extends OpenAPIHono {
|
|
14
|
-
/**
|
|
15
|
-
* Helper to create a fully typed route definition.
|
|
16
|
-
*/
|
|
17
|
-
static route(config: RouteConfig): RouteConfig;
|
|
18
|
-
}
|
|
19
|
-
export { createRoute, z };
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|