@query-farm/vgi-rpc 0.6.4 → 0.7.1

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.
Files changed (177) hide show
  1. package/dist/access-log.d.ts +55 -0
  2. package/dist/access-log.d.ts.map +1 -0
  3. package/dist/arrow/impl-arrowjs/index.d.ts +96 -0
  4. package/dist/arrow/impl-arrowjs/index.d.ts.map +1 -0
  5. package/dist/arrow/impl-flechette/index.d.ts +102 -0
  6. package/dist/arrow/impl-flechette/index.d.ts.map +1 -0
  7. package/dist/arrow/impl-flechette/message-meta.d.ts +11 -0
  8. package/dist/arrow/impl-flechette/message-meta.d.ts.map +1 -0
  9. package/dist/arrow/index.d.ts +4 -0
  10. package/dist/arrow/index.d.ts.map +1 -0
  11. package/dist/arrow/predicates.d.ts +44 -0
  12. package/dist/arrow/predicates.d.ts.map +1 -0
  13. package/dist/arrow/types.d.ts +62 -0
  14. package/dist/arrow/types.d.ts.map +1 -0
  15. package/dist/auth.d.ts +5 -0
  16. package/dist/auth.d.ts.map +1 -1
  17. package/dist/client/capabilities.d.ts +25 -0
  18. package/dist/client/capabilities.d.ts.map +1 -0
  19. package/dist/client/connect.d.ts +10 -0
  20. package/dist/client/connect.d.ts.map +1 -1
  21. package/dist/client/introspect.d.ts +21 -0
  22. package/dist/client/introspect.d.ts.map +1 -1
  23. package/dist/client/ipc.d.ts +8 -2
  24. package/dist/client/ipc.d.ts.map +1 -1
  25. package/dist/client/oauth.d.ts +9 -0
  26. package/dist/client/oauth.d.ts.map +1 -1
  27. package/dist/client/pipe.d.ts +24 -0
  28. package/dist/client/pipe.d.ts.map +1 -1
  29. package/dist/client/stream.d.ts +19 -2
  30. package/dist/client/stream.d.ts.map +1 -1
  31. package/dist/client/types.d.ts +23 -0
  32. package/dist/client/types.d.ts.map +1 -1
  33. package/dist/client/uploadUrl.d.ts +25 -0
  34. package/dist/client/uploadUrl.d.ts.map +1 -0
  35. package/dist/constants.d.ts +30 -2
  36. package/dist/constants.d.ts.map +1 -1
  37. package/dist/crypto.d.ts +22 -0
  38. package/dist/crypto.d.ts.map +1 -0
  39. package/dist/dispatch/describe.d.ts +10 -6
  40. package/dist/dispatch/describe.d.ts.map +1 -1
  41. package/dist/dispatch/stream.d.ts +2 -2
  42. package/dist/dispatch/stream.d.ts.map +1 -1
  43. package/dist/dispatch/unary.d.ts +2 -2
  44. package/dist/dispatch/unary.d.ts.map +1 -1
  45. package/dist/errors.d.ts +64 -1
  46. package/dist/errors.d.ts.map +1 -1
  47. package/dist/external.d.ts +27 -5
  48. package/dist/external.d.ts.map +1 -1
  49. package/dist/http/auth.d.ts +13 -0
  50. package/dist/http/auth.d.ts.map +1 -1
  51. package/dist/http/bearer.d.ts.map +1 -1
  52. package/dist/http/common.d.ts +43 -7
  53. package/dist/http/common.d.ts.map +1 -1
  54. package/dist/http/dispatch.d.ts +20 -2
  55. package/dist/http/dispatch.d.ts.map +1 -1
  56. package/dist/http/handler.d.ts.map +1 -1
  57. package/dist/http/index.d.ts +1 -0
  58. package/dist/http/index.d.ts.map +1 -1
  59. package/dist/http/jwt.d.ts +1 -0
  60. package/dist/http/jwt.d.ts.map +1 -1
  61. package/dist/http/mtls.d.ts +9 -1
  62. package/dist/http/mtls.d.ts.map +1 -1
  63. package/dist/http/oauth-pkce.d.ts +141 -0
  64. package/dist/http/oauth-pkce.d.ts.map +1 -0
  65. package/dist/http/pages.d.ts +3 -0
  66. package/dist/http/pages.d.ts.map +1 -1
  67. package/dist/http/sticky.d.ts +124 -0
  68. package/dist/http/sticky.d.ts.map +1 -0
  69. package/dist/http/token.d.ts +43 -12
  70. package/dist/http/token.d.ts.map +1 -1
  71. package/dist/http/types.d.ts +68 -5
  72. package/dist/http/types.d.ts.map +1 -1
  73. package/dist/index.d.ts +6 -4
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +1275 -3511
  76. package/dist/index.js.map +20 -38
  77. package/dist/launcher/hash.d.ts +22 -0
  78. package/dist/launcher/hash.d.ts.map +1 -0
  79. package/dist/launcher/index.d.ts +23 -0
  80. package/dist/launcher/index.d.ts.map +1 -0
  81. package/dist/launcher/launch.d.ts +27 -0
  82. package/dist/launcher/launch.d.ts.map +1 -0
  83. package/dist/launcher/lock.d.ts +19 -0
  84. package/dist/launcher/lock.d.ts.map +1 -0
  85. package/dist/launcher/serve-unix.d.ts +55 -0
  86. package/dist/launcher/serve-unix.d.ts.map +1 -0
  87. package/dist/launcher/state.d.ts +71 -0
  88. package/dist/launcher/state.d.ts.map +1 -0
  89. package/dist/otel.d.ts.map +1 -1
  90. package/dist/protocol.d.ts +19 -2
  91. package/dist/protocol.d.ts.map +1 -1
  92. package/dist/schema.d.ts +45 -18
  93. package/dist/schema.d.ts.map +1 -1
  94. package/dist/server.d.ts +23 -2
  95. package/dist/server.d.ts.map +1 -1
  96. package/dist/types.d.ts +270 -12
  97. package/dist/types.d.ts.map +1 -1
  98. package/dist/util/gzip.d.ts +10 -0
  99. package/dist/util/gzip.d.ts.map +1 -0
  100. package/dist/util/schema.d.ts +3 -15
  101. package/dist/util/schema.d.ts.map +1 -1
  102. package/dist/util/web-crypto.d.ts +22 -0
  103. package/dist/util/web-crypto.d.ts.map +1 -0
  104. package/dist/util/zstd.d.ts +26 -3
  105. package/dist/util/zstd.d.ts.map +1 -1
  106. package/dist/wire/opaque.d.ts +11 -0
  107. package/dist/wire/opaque.d.ts.map +1 -0
  108. package/dist/wire/reader.d.ts +5 -5
  109. package/dist/wire/reader.d.ts.map +1 -1
  110. package/dist/wire/request.d.ts +11 -3
  111. package/dist/wire/request.d.ts.map +1 -1
  112. package/dist/wire/response.d.ts +6 -6
  113. package/dist/wire/response.d.ts.map +1 -1
  114. package/dist/wire/writer.d.ts +49 -39
  115. package/dist/wire/writer.d.ts.map +1 -1
  116. package/package.json +35 -21
  117. package/src/access-log.ts +200 -0
  118. package/src/arrow/impl-arrowjs/index.ts +433 -0
  119. package/src/arrow/impl-flechette/index.ts +414 -0
  120. package/src/arrow/impl-flechette/message-meta.ts +174 -0
  121. package/src/arrow/index.ts +89 -0
  122. package/src/arrow/predicates.ts +56 -0
  123. package/src/arrow/types.ts +73 -0
  124. package/src/auth.ts +5 -0
  125. package/src/client/capabilities.ts +84 -0
  126. package/src/client/connect.ts +113 -26
  127. package/src/client/introspect.ts +74 -38
  128. package/src/client/ipc.ts +37 -27
  129. package/src/client/oauth.ts +9 -0
  130. package/src/client/pipe.ts +36 -9
  131. package/src/client/stream.ts +43 -20
  132. package/src/client/types.ts +23 -0
  133. package/src/client/uploadUrl.ts +169 -0
  134. package/src/constants.ts +34 -2
  135. package/src/crypto.ts +95 -0
  136. package/src/dispatch/describe.ts +146 -107
  137. package/src/dispatch/stream.ts +53 -24
  138. package/src/dispatch/unary.ts +5 -4
  139. package/src/errors.ts +87 -0
  140. package/src/external.ts +49 -30
  141. package/src/http/auth.ts +13 -0
  142. package/src/http/bearer.ts +2 -5
  143. package/src/http/common.ts +91 -23
  144. package/src/http/dispatch.ts +373 -46
  145. package/src/http/handler.ts +790 -68
  146. package/src/http/index.ts +1 -0
  147. package/src/http/jwt.ts +1 -0
  148. package/src/http/mtls.ts +25 -3
  149. package/src/http/oauth-pkce.ts +1035 -0
  150. package/src/http/pages.ts +30 -15
  151. package/src/http/sticky.ts +429 -0
  152. package/src/http/token.ts +170 -75
  153. package/src/http/types.ts +69 -5
  154. package/src/index.ts +40 -1
  155. package/src/launcher/hash.ts +104 -0
  156. package/src/launcher/index.ts +35 -0
  157. package/src/launcher/launch.ts +284 -0
  158. package/src/launcher/lock.ts +171 -0
  159. package/src/launcher/serve-unix.ts +386 -0
  160. package/src/launcher/state.ts +257 -0
  161. package/src/otel.ts +39 -33
  162. package/src/protocol.ts +30 -3
  163. package/src/schema.ts +107 -56
  164. package/src/server.ts +196 -20
  165. package/src/types.ts +376 -18
  166. package/src/util/gzip.ts +63 -0
  167. package/src/util/schema.ts +4 -22
  168. package/src/util/web-crypto.ts +98 -0
  169. package/src/util/zstd.ts +133 -14
  170. package/src/wire/opaque.ts +37 -0
  171. package/src/wire/reader.ts +5 -4
  172. package/src/wire/request.ts +67 -8
  173. package/src/wire/response.ts +51 -85
  174. package/src/wire/writer.ts +165 -69
  175. package/dist/util/conform.d.ts +0 -18
  176. package/dist/util/conform.d.ts.map +0 -1
  177. package/src/util/conform.ts +0 -94
@@ -1,12 +1,14 @@
1
- import type { ExternalLocationConfig } from "../external.js";
2
- import type { DispatchHook } from "../types.js";
1
+ import type { ExternalLocationConfig, UploadUrlProvider } from "../external.js";
2
+ import type { DispatchHook, ServeStartHook } from "../types.js";
3
3
  import type { AuthenticateFn, OAuthResourceMetadata } from "./auth.js";
4
4
  /** Configuration options for createHttpHandler(). */
5
5
  export interface HttpHandlerOptions {
6
6
  /** URL path prefix for all endpoints. Default: "" (root). */
7
7
  prefix?: string;
8
- /** HMAC-SHA256 signing key for state tokens. Random 32 bytes if omitted. */
9
- signingKey?: Uint8Array;
8
+ /** XChaCha20-Poly1305 master key (32 bytes) used to seal stream state
9
+ * tokens. A random 32-byte key is generated if omitted (tokens won't
10
+ * survive a restart or load-balance across workers). */
11
+ tokenKey?: Uint8Array;
10
12
  /** State token time-to-live in seconds. Default: 3600 (1 hour). 0 disables TTL checks. */
11
13
  tokenTtl?: number;
12
14
  /** CORS allowed origins. If set, CORS headers are added to all responses. */
@@ -15,8 +17,29 @@ export interface HttpHandlerOptions {
15
17
  corsMaxAge?: number | null;
16
18
  /** Maximum request body size in bytes. Advertised via VGI-Max-Request-Bytes header. */
17
19
  maxRequestBytes?: number;
18
- /** Maximum bytes before a producer stream emits a continuation token. */
20
+ /** Cap on the post-decompression size of a `Content-Encoding: zstd`
21
+ * request body, in bytes. Defends against zstd decompression bombs:
22
+ * a tiny compressed frame can declare a huge decompressed size and
23
+ * blow up the server before {@link maxRequestBytes} ever sees the
24
+ * payload. When omitted, defaults to `maxRequestBytes * 16` if that
25
+ * is set, otherwise unbounded. */
26
+ maxDecompressedRequestBytes?: number;
27
+ /** Maximum bytes before a producer stream emits a continuation token.
28
+ *
29
+ * @deprecated Use {@link maxResponseBytes} instead. The cap now governs all
30
+ * HTTP method responses (unary, exchange, producer), not just producer streams.
31
+ */
19
32
  maxStreamResponseBytes?: number;
33
+ /** HTTP body cap. Hard for unary and stream-exchange (overshoot surfaces
34
+ * as 200 + X-VGI-RPC-Error EXCEPTION batch). Soft for producer streams
35
+ * (overshoot mints a continuation token). Externalised payloads do not
36
+ * count toward this — they leave only tiny pointer batches on the wire.
37
+ * Advertised via VGI-Max-Response-Bytes. Undefined = unbounded. */
38
+ maxResponseBytes?: number;
39
+ /** Cap on bytes uploaded to external storage during one HTTP response.
40
+ * Always hard — externalised uploads have no escape valve. Advertised via
41
+ * VGI-Max-Externalized-Response-Bytes. Undefined = unbounded. */
42
+ maxExternalizedResponseBytes?: number;
20
43
  /** Server ID included in response metadata. Random if omitted. */
21
44
  serverId?: string;
22
45
  /** Custom state serializer for stream state objects. Default: JSON with BigInt support. */
@@ -30,22 +53,62 @@ export interface HttpHandlerOptions {
30
53
  oauthResourceMetadata?: OAuthResourceMetadata;
31
54
  /** Optional dispatch hook for observability (tracing, metrics). */
32
55
  dispatchHook?: DispatchHook;
56
+ /** Optional lifecycle hook fired once on the first dispatched request.
57
+ * Mirrors Python's on_serve_start; lazy-firing keeps it fork-safe for
58
+ * pre-fork servers. */
59
+ onServeStart?: ServeStartHook;
33
60
  /** Enable HTML landing page at GET {prefix}/. Default: true. */
34
61
  enableLandingPage?: boolean;
35
62
  /** Enable HTML describe/API reference page at GET {prefix}/describe. Default: true. */
36
63
  enableDescribePage?: boolean;
37
64
  /** Enable HTML 404 page for unmatched GET routes. Default: true. */
38
65
  enableNotFoundPage?: boolean;
66
+ /** Enable JSON health endpoint at GET {prefix}/health. Default: true. */
67
+ enableHealthEndpoint?: boolean;
39
68
  /** Protocol name shown in HTML pages. Defaults to the Protocol's name. */
40
69
  protocolName?: string;
70
+ /** Operator-supplied protocol-contract version label, surfaced on every
71
+ * access-log record so dashboards and alerts can key off contract
72
+ * changes. Mirrors the Python `RpcServer(..., protocol_version=...)`
73
+ * argument. */
74
+ protocolVersion?: string;
41
75
  /** URL to service's source repository, shown in landing/describe pages. */
42
76
  repositoryUrl?: string;
43
77
  /** External storage config for externalizing large response batches. */
44
78
  externalLocation?: ExternalLocationConfig;
79
+ /** Provider for vending pre-signed upload URLs to clients via {prefix}/__upload_url__/init. */
80
+ uploadUrlProvider?: UploadUrlProvider;
81
+ /** Optional advertised maximum upload size, surfaced via VGI-Max-Upload-Bytes. */
82
+ maxUploadBytes?: number;
83
+ /** OAuth scope for PKCE authorization requests. Default: "openid email". */
84
+ oauthPkceScope?: string;
85
+ /** Allowed return-to origins for external frontend redirects. Default: Set(["https://cupola.query-farm.services"]). */
86
+ allowedReturnOrigins?: ReadonlySet<string>;
87
+ /** Enable opt-in sticky sessions on this HTTP handler. When enabled the
88
+ * server advertises `VGI-Sticky-Enabled: true` (capability discovery),
89
+ * honours `VGI-Session` / `VGI-Session-Accept` headers, and exposes a
90
+ * `DELETE {prefix}/__session__` teardown endpoint. Default: false. */
91
+ enableSticky?: boolean;
92
+ /** Default session TTL in seconds when `ctx.openSession` is called without
93
+ * an explicit `ttl` override. Default: 300. */
94
+ stickyDefaultTtl?: number;
95
+ /** Headers the server emits as `VGI-Echo-<name>: <value>` on the
96
+ * session-opening response. A conformant client captures them and replays
97
+ * them on every subsequent request in the session — used for
98
+ * client-driven routing (e.g. `fly-force-instance-id` on Fly.io). */
99
+ stickyEchoHeaders?: Record<string, string>;
100
+ /** Internal — invoked once at handler creation with a {@link DrainHandle}
101
+ * when sticky is enabled. Conformance fixtures use this to wire up the
102
+ * test-only `/__test_drain__` admin endpoint without the library
103
+ * exposing the registry directly. Production code should hold the
104
+ * handle returned by a future `createHttpHandlerWithDrainHandle` helper. */
105
+ _onStickyHandle?: (handle: import("./sticky.js").DrainHandle) => void;
45
106
  }
46
107
  /** Serializer for stream state objects stored in state tokens. */
47
108
  export interface StateSerializer {
109
+ /** Encode a stream-state object into the bytes sealed inside a state token. */
48
110
  serialize(state: any): Uint8Array;
111
+ /** Decode the bytes recovered from a state token back into a state object. */
49
112
  deserialize(bytes: Uint8Array): any;
50
113
  }
51
114
  /** Default state serializer using JSON (with BigInt support). */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/http/types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAEvE,qDAAqD;AACrD,MAAM,WAAW,kBAAkB;IACjC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+HAA+H;IAC/H,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,uFAAuF;IACvF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;kEAC8D;IAC9D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iFAAiF;IACjF,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,0FAA0F;IAC1F,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,mEAAmE;IACnE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,gEAAgE;IAChE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oEAAoE;IACpE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AAED,kEAAkE;AAClE,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,UAAU,CAAC;IAClC,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,GAAG,CAAC;CACrC;AAED,iEAAiE;AACjE,eAAO,MAAM,mBAAmB,EAAE,eAWjC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/http/types.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,11 +1,13 @@
1
+ export { AccessLogHook, type AccessLogSink, FdSink } from "./access-log.js";
1
2
  export { AuthContext } from "./auth.js";
2
3
  export * from "./client/index.js";
3
- export { DESCRIBE_METHOD_NAME, DESCRIBE_VERSION, DESCRIBE_VERSION_KEY, LOG_EXTRA_KEY, LOG_LEVEL_KEY, LOG_MESSAGE_KEY, PROTOCOL_NAME_KEY, REQUEST_ID_KEY, REQUEST_VERSION, REQUEST_VERSION_KEY, RPC_METHOD_KEY, SERVER_ID_KEY, STATE_KEY, } from "./constants.js";
4
- export { RpcError, VersionError } from "./errors.js";
4
+ export { DESCRIBE_METHOD_NAME, DESCRIBE_VERSION, DESCRIBE_VERSION_KEY, ERROR_KIND_KEY, LOG_EXTRA_KEY, LOG_LEVEL_KEY, LOG_MESSAGE_KEY, PROTOCOL_NAME_KEY, REQUEST_ID_KEY, REQUEST_VERSION, REQUEST_VERSION_KEY, RPC_ERROR_HEADER, RPC_METHOD_KEY, SERVER_ID_KEY, STATE_KEY, } from "./constants.js";
5
+ export { ERROR_KIND_METHOD_NOT_IMPLEMENTED, ERROR_KIND_SERVER_DRAINING, ERROR_KIND_SESSION_LOST, MethodNotImplementedError, RpcError, ServerDrainingError, SessionLostError, VersionError, } from "./errors.js";
5
6
  export { type ExternalLocationConfig, type ExternalStorage, httpsOnlyValidator, isExternalLocationBatch, makeExternalLocationBatch, maybeExternalizeBatch, resolveExternalLocation, } from "./external.js";
6
7
  export { ARROW_CONTENT_TYPE, type AuthenticateFn, type BearerValidateFn, bearerAuthenticate, bearerAuthenticateStatic, type CertValidateFn, chainAuthenticate, createHttpHandler, type HttpHandlerOptions, type JwtAuthenticateOptions, jsonStateSerializer, jwtAuthenticate, mtlsAuthenticate, mtlsAuthenticateFingerprint, mtlsAuthenticateSubject, mtlsAuthenticateXfcc, type OAuthResourceMetadata, oauthResourceMetadataToJson, parseXfcc, type StateSerializer, type UnpackedToken, unpackStateToken, type XfccElement, type XfccValidateFn, } from "./http/index.js";
8
+ export { acquireLock, computeHash as launcherComputeHash, defaultStateDir, type FileLockHandle, type GcResult, gcStateDir, type LaunchConfig, launch, probeSocket, type ServeUnixHandle, type ServeUnixOptions, type SocketPaths, type StatusRow, serveUnix, socketPaths, statusRows, tryAcquireLock, } from "./launcher/index.js";
7
9
  export { Protocol } from "./protocol.js";
8
- export { bool, bytes, float, float32, inferParamTypes, int, int32, type SchemaLike, str, toSchema, } from "./schema.js";
10
+ export { bool, bytes, float, float32, inferParamTypes, int, int8, int16, int32, type SchemaLike, str, toSchema, uint8, uint16, uint32, uint64, } from "./schema.js";
9
11
  export { VgiRpcServer } from "./server.js";
10
- export { type CallContext, type CallStatistics, type DispatchHook, type DispatchInfo, type ExchangeFn, type ExchangeInit, type HeaderInit, type HookToken, type LogContext, type MethodDefinition, MethodType, OutputCollector, type ProducerFn, type ProducerInit, type UnaryHandler, } from "./types.js";
12
+ export { type CallContext, type CallStatistics, type DispatchHook, type DispatchInfo, type ExchangeFn, type ExchangeInit, type HeaderInit, type HookToken, type LogContext, type MethodDefinition, MethodType, OutputCollector, type ProducerFn, type ProducerInit, type ServeStartHook, TransportKind, type UnaryHandler, } from "./types.js";
11
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,SAAS,GACV,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,cAAc,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,2BAA2B,EAC3B,SAAS,EACT,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,eAAe,EACf,GAAG,EACH,KAAK,EACL,KAAK,UAAU,EACf,GAAG,EACH,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,UAAU,EACV,eAAe,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,SAAS,GACV,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iCAAiC,EACjC,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,QAAQ,EACR,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,cAAc,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,2BAA2B,EAC3B,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,2BAA2B,EAC3B,SAAS,EACT,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,WAAW,EACX,WAAW,IAAI,mBAAmB,EAClC,eAAe,EACf,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,UAAU,EACV,KAAK,YAAY,EACjB,MAAM,EACN,WAAW,EACX,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,SAAS,EACT,WAAW,EACX,UAAU,EACV,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,eAAe,EACf,GAAG,EACH,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,UAAU,EACf,GAAG,EACH,QAAQ,EACR,KAAK,EACL,MAAM,EACN,MAAM,EACN,MAAM,GACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,UAAU,EACV,eAAe,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,aAAa,EACb,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC"}