ts-procedures 9.2.0 → 10.0.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.
Files changed (128) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/build/codegen/bin/cli.js +1 -1
  3. package/build/codegen/bin/cli.js.map +1 -1
  4. package/build/codegen/emit/api-route.js +1 -1
  5. package/build/codegen/emit/api-route.js.map +1 -1
  6. package/build/codegen/emit/scope-file.js +1 -1
  7. package/build/codegen/emit/scope-file.js.map +1 -1
  8. package/build/codegen/emit-errors.integration.test.js +2 -2
  9. package/build/codegen/emit-errors.integration.test.js.map +1 -1
  10. package/build/codegen/resolve-envelope.js +1 -1
  11. package/build/codegen/resolve-envelope.js.map +1 -1
  12. package/build/codegen/test-helpers/run-tsc.js +1 -1
  13. package/build/codegen/test-helpers/run-tsc.js.map +1 -1
  14. package/package.json +8 -8
  15. package/src/codegen/bin/cli.ts +1 -1
  16. package/src/codegen/emit/api-route.ts +1 -1
  17. package/src/codegen/emit/scope-file.ts +2 -1
  18. package/src/codegen/emit-errors.integration.test.ts +2 -2
  19. package/src/codegen/resolve-envelope.ts +1 -1
  20. package/src/codegen/test-helpers/run-tsc.ts +1 -0
  21. package/build/errors.d.ts +0 -33
  22. package/build/errors.js +0 -91
  23. package/build/errors.js.map +0 -1
  24. package/build/errors.test.d.ts +0 -1
  25. package/build/errors.test.js +0 -122
  26. package/build/errors.test.js.map +0 -1
  27. package/build/implementations/http/doc-registry.d.ts +0 -28
  28. package/build/implementations/http/doc-registry.js +0 -96
  29. package/build/implementations/http/doc-registry.js.map +0 -1
  30. package/build/implementations/http/doc-registry.test.d.ts +0 -1
  31. package/build/implementations/http/doc-registry.test.js +0 -516
  32. package/build/implementations/http/doc-registry.test.js.map +0 -1
  33. package/build/implementations/http/error-taxonomy.d.ts +0 -249
  34. package/build/implementations/http/error-taxonomy.js +0 -252
  35. package/build/implementations/http/error-taxonomy.js.map +0 -1
  36. package/build/implementations/http/error-taxonomy.test.d.ts +0 -1
  37. package/build/implementations/http/error-taxonomy.test.js +0 -399
  38. package/build/implementations/http/error-taxonomy.test.js.map +0 -1
  39. package/build/implementations/http/express-rpc/error-taxonomy.test.d.ts +0 -1
  40. package/build/implementations/http/express-rpc/error-taxonomy.test.js +0 -83
  41. package/build/implementations/http/express-rpc/error-taxonomy.test.js.map +0 -1
  42. package/build/implementations/http/express-rpc/index.d.ts +0 -125
  43. package/build/implementations/http/express-rpc/index.js +0 -216
  44. package/build/implementations/http/express-rpc/index.js.map +0 -1
  45. package/build/implementations/http/express-rpc/index.test.d.ts +0 -1
  46. package/build/implementations/http/express-rpc/index.test.js +0 -684
  47. package/build/implementations/http/express-rpc/index.test.js.map +0 -1
  48. package/build/implementations/http/express-rpc/types.d.ts +0 -11
  49. package/build/implementations/http/express-rpc/types.js +0 -2
  50. package/build/implementations/http/express-rpc/types.js.map +0 -1
  51. package/build/implementations/http/hono-api/error-taxonomy.test.d.ts +0 -1
  52. package/build/implementations/http/hono-api/error-taxonomy.test.js +0 -137
  53. package/build/implementations/http/hono-api/error-taxonomy.test.js.map +0 -1
  54. package/build/implementations/http/hono-api/index.d.ts +0 -151
  55. package/build/implementations/http/hono-api/index.js +0 -344
  56. package/build/implementations/http/hono-api/index.js.map +0 -1
  57. package/build/implementations/http/hono-api/index.test.d.ts +0 -1
  58. package/build/implementations/http/hono-api/index.test.js +0 -992
  59. package/build/implementations/http/hono-api/index.test.js.map +0 -1
  60. package/build/implementations/http/hono-api/types.d.ts +0 -13
  61. package/build/implementations/http/hono-api/types.js +0 -2
  62. package/build/implementations/http/hono-api/types.js.map +0 -1
  63. package/build/implementations/http/hono-rpc/error-taxonomy.test.d.ts +0 -1
  64. package/build/implementations/http/hono-rpc/error-taxonomy.test.js +0 -64
  65. package/build/implementations/http/hono-rpc/error-taxonomy.test.js.map +0 -1
  66. package/build/implementations/http/hono-rpc/index.d.ts +0 -130
  67. package/build/implementations/http/hono-rpc/index.js +0 -209
  68. package/build/implementations/http/hono-rpc/index.js.map +0 -1
  69. package/build/implementations/http/hono-rpc/index.test.d.ts +0 -1
  70. package/build/implementations/http/hono-rpc/index.test.js +0 -828
  71. package/build/implementations/http/hono-rpc/index.test.js.map +0 -1
  72. package/build/implementations/http/hono-rpc/types.d.ts +0 -11
  73. package/build/implementations/http/hono-rpc/types.js +0 -2
  74. package/build/implementations/http/hono-rpc/types.js.map +0 -1
  75. package/build/implementations/http/hono-stream/error-taxonomy.test.d.ts +0 -1
  76. package/build/implementations/http/hono-stream/error-taxonomy.test.js +0 -159
  77. package/build/implementations/http/hono-stream/error-taxonomy.test.js.map +0 -1
  78. package/build/implementations/http/hono-stream/index.d.ts +0 -171
  79. package/build/implementations/http/hono-stream/index.js +0 -415
  80. package/build/implementations/http/hono-stream/index.js.map +0 -1
  81. package/build/implementations/http/hono-stream/index.test.d.ts +0 -1
  82. package/build/implementations/http/hono-stream/index.test.js +0 -1383
  83. package/build/implementations/http/hono-stream/index.test.js.map +0 -1
  84. package/build/implementations/http/hono-stream/types.d.ts +0 -15
  85. package/build/implementations/http/hono-stream/types.js +0 -2
  86. package/build/implementations/http/hono-stream/types.js.map +0 -1
  87. package/build/implementations/http/on-request-error.test.d.ts +0 -1
  88. package/build/implementations/http/on-request-error.test.js +0 -173
  89. package/build/implementations/http/on-request-error.test.js.map +0 -1
  90. package/build/implementations/http/route-errors.test.d.ts +0 -1
  91. package/build/implementations/http/route-errors.test.js +0 -139
  92. package/build/implementations/http/route-errors.test.js.map +0 -1
  93. package/build/implementations/types.d.ts +0 -192
  94. package/build/implementations/types.js +0 -2
  95. package/build/implementations/types.js.map +0 -1
  96. package/build/index.d.ts +0 -165
  97. package/build/index.js +0 -258
  98. package/build/index.js.map +0 -1
  99. package/build/index.test.d.ts +0 -1
  100. package/build/index.test.js +0 -920
  101. package/build/index.test.js.map +0 -1
  102. package/build/schema/extract-json-schema.d.ts +0 -2
  103. package/build/schema/extract-json-schema.js +0 -12
  104. package/build/schema/extract-json-schema.js.map +0 -1
  105. package/build/schema/extract-json-schema.test.d.ts +0 -1
  106. package/build/schema/extract-json-schema.test.js +0 -23
  107. package/build/schema/extract-json-schema.test.js.map +0 -1
  108. package/build/schema/parser.d.ts +0 -28
  109. package/build/schema/parser.js +0 -170
  110. package/build/schema/parser.js.map +0 -1
  111. package/build/schema/parser.test.d.ts +0 -1
  112. package/build/schema/parser.test.js +0 -120
  113. package/build/schema/parser.test.js.map +0 -1
  114. package/build/schema/resolve-schema-lib.d.ts +0 -12
  115. package/build/schema/resolve-schema-lib.js +0 -11
  116. package/build/schema/resolve-schema-lib.js.map +0 -1
  117. package/build/schema/resolve-schema-lib.test.d.ts +0 -1
  118. package/build/schema/resolve-schema-lib.test.js +0 -17
  119. package/build/schema/resolve-schema-lib.test.js.map +0 -1
  120. package/build/schema/types.d.ts +0 -8
  121. package/build/schema/types.js +0 -2
  122. package/build/schema/types.js.map +0 -1
  123. package/build/stack-utils.d.ts +0 -25
  124. package/build/stack-utils.js +0 -95
  125. package/build/stack-utils.js.map +0 -1
  126. package/build/stack-utils.test.d.ts +0 -1
  127. package/build/stack-utils.test.js +0 -80
  128. package/build/stack-utils.test.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../../src/implementations/http/hono-rpc/index.test.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { ExtractConfig, ExtractContext, RPCConfig, RPCHttpRouteDoc } from '../../types.js';
2
- import { Procedures, TProcedureRegistration } from '../../../index.js';
3
- import { Context } from 'hono';
4
- export type HonoFactoryItem<TFactory = ReturnType<typeof Procedures<any, RPCConfig>>> = {
5
- factory: TFactory;
6
- factoryContext: ExtractContext<TFactory> | ((c: Context) => ExtractContext<TFactory> | Promise<ExtractContext<TFactory>>);
7
- extendProcedureDoc?: (params: {
8
- base: RPCHttpRouteDoc;
9
- procedure: TProcedureRegistration<any, ExtractConfig<TFactory>>;
10
- }) => Record<string, any>;
11
- };
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/implementations/http/hono-rpc/types.ts"],"names":[],"mappings":""}
@@ -1,159 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-empty-object-type */
2
- import { describe, expect, test, vi } from 'vitest';
3
- import { Type } from 'typebox';
4
- import { Procedures } from '../../../index.js';
5
- import { HonoStreamAppBuilder, defineErrorTaxonomy } from './index.js';
6
- class AuthError extends Error {
7
- reason;
8
- constructor(reason) {
9
- super(reason);
10
- this.reason = reason;
11
- this.name = 'AuthError';
12
- Object.setPrototypeOf(this, AuthError.prototype);
13
- }
14
- }
15
- describe('HonoStreamAppBuilder — error taxonomy (pre-stream)', () => {
16
- test('taxonomy catches errors thrown during context resolution', async () => {
17
- const errors = defineErrorTaxonomy({
18
- AuthError: {
19
- class: AuthError,
20
- statusCode: 401,
21
- toResponse: (err) => ({ name: 'AuthError', reason: err.reason }),
22
- },
23
- });
24
- const RPC = Procedures();
25
- RPC.CreateStream('Stream', { scope: 'test', version: 1 }, async function* () {
26
- yield { msg: 'ok' };
27
- });
28
- const app = new HonoStreamAppBuilder({ errors })
29
- .register(RPC, () => {
30
- throw new AuthError('forbidden');
31
- })
32
- .build();
33
- const res = await app.request('/test/stream/1');
34
- expect(res.status).toBe(401);
35
- expect(await res.json()).toEqual({ name: 'AuthError', reason: 'forbidden' });
36
- });
37
- test('default taxonomy serializes ProcedureValidationError at 400 when user opts in', async () => {
38
- const RPC = Procedures();
39
- RPC.CreateStream('Stream', {
40
- scope: 'test',
41
- version: 1,
42
- schema: { params: Type.Object({ n: Type.Number() }) },
43
- }, async function* () {
44
- yield { ok: true };
45
- });
46
- const app = new HonoStreamAppBuilder({ errors: {} }).register(RPC, () => ({})).build();
47
- const res = await app.request('/test/stream/1?n=not-a-number');
48
- expect(res.status).toBe(400);
49
- const body = (await res.json());
50
- expect(body.name).toBe('ProcedureValidationError');
51
- });
52
- test('onError callback runs when taxonomy does not match', async () => {
53
- const onError = vi.fn(async (_p, c) => c.json({ handled: true }, 418));
54
- const RPC = Procedures();
55
- RPC.CreateStream('Stream', { scope: 'test', version: 1 }, async function* () {
56
- yield { ok: true };
57
- });
58
- const app = new HonoStreamAppBuilder({ onError })
59
- .register(RPC, () => {
60
- throw new TypeError('context failed');
61
- })
62
- .build();
63
- const res = await app.request('/test/stream/1');
64
- expect(res.status).toBe(418);
65
- expect(onError).toHaveBeenCalledOnce();
66
- });
67
- test('unknownError is used for unmapped pre-stream errors', async () => {
68
- const RPC = Procedures();
69
- RPC.CreateStream('Stream', { scope: 'test', version: 1 }, async function* () {
70
- yield { ok: true };
71
- });
72
- const app = new HonoStreamAppBuilder({
73
- unknownError: {
74
- statusCode: 503,
75
- toResponse: () => ({ name: 'ServiceUnavailable' }),
76
- },
77
- })
78
- .register(RPC, () => {
79
- throw new TypeError('infra down');
80
- })
81
- .build();
82
- const res = await app.request('/test/stream/1');
83
- expect(res.status).toBe(503);
84
- expect(await res.json()).toEqual({ name: 'ServiceUnavailable' });
85
- });
86
- });
87
- describe('HonoStreamAppBuilder — error taxonomy (mid-stream)', () => {
88
- test('taxonomy resolves the body for a typed error thrown mid-stream (SSE)', async () => {
89
- const errors = defineErrorTaxonomy({
90
- AuthError: {
91
- class: AuthError,
92
- statusCode: 403,
93
- toResponse: (err) => ({ name: 'AuthError', reason: err.reason }),
94
- },
95
- });
96
- const RPC = Procedures();
97
- RPC.CreateStream('Stream', { scope: 'test', version: 1 }, async function* () {
98
- yield { msg: 'first' };
99
- throw new AuthError('forbidden');
100
- });
101
- const app = new HonoStreamAppBuilder({ errors })
102
- .register(RPC, () => ({}))
103
- .build();
104
- const res = await app.request('/test/stream/1', { method: 'POST' });
105
- expect(res.status).toBe(200); // status committed before error
106
- const text = await res.text();
107
- // Last event is the error event with the resolved body shape
108
- expect(text).toContain('event: error');
109
- expect(text).toContain('"name":"AuthError"');
110
- expect(text).toContain('"reason":"forbidden"');
111
- });
112
- test('onMidStreamError still runs as fallback when taxonomy does not match', async () => {
113
- const RPC = Procedures();
114
- RPC.CreateStream('Stream', { scope: 'test', version: 1 }, async function* () {
115
- yield { msg: 'first' };
116
- throw new TypeError('mid-stream boom');
117
- });
118
- const app = new HonoStreamAppBuilder({
119
- errors: {
120
- AuthError: {
121
- class: AuthError,
122
- statusCode: 403,
123
- toResponse: () => ({ name: 'AuthError', reason: 'forbidden' }),
124
- },
125
- },
126
- onMidStreamError: (_p, _c, err) => ({ data: { name: 'FallbackError', message: err.message } }),
127
- })
128
- .register(RPC, () => ({}))
129
- .build();
130
- const res = await app.request('/test/stream/1', { method: 'POST' });
131
- const text = await res.text();
132
- expect(text).toContain('"name":"FallbackError"');
133
- expect(text).toContain('mid-stream boom');
134
- });
135
- test('mid-stream typed body falls through to text mode', async () => {
136
- const RPC = Procedures();
137
- RPC.CreateStream('Stream', { scope: 'test', version: 1 }, async function* () {
138
- yield { msg: 'first' };
139
- throw new AuthError('forbidden');
140
- });
141
- const app = new HonoStreamAppBuilder({
142
- defaultStreamMode: 'text',
143
- errors: {
144
- AuthError: {
145
- class: AuthError,
146
- statusCode: 403,
147
- toResponse: () => ({ name: 'AuthError', reason: 'forbidden' }),
148
- },
149
- },
150
- })
151
- .register(RPC, () => ({}))
152
- .build();
153
- const res = await app.request('/test/stream/1', { method: 'POST' });
154
- const text = await res.text();
155
- expect(text).toContain('"name":"AuthError"');
156
- expect(text).toContain('"reason":"forbidden"');
157
- });
158
- });
159
- //# sourceMappingURL=error-taxonomy.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-taxonomy.test.js","sourceRoot":"","sources":["../../../../src/implementations/http/hono-stream/error-taxonomy.test.ts"],"names":[],"mappings":"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"}
@@ -1,171 +0,0 @@
1
- import { Hono, Context } from 'hono';
2
- import { TStreamProcedureRegistration } from '../../../index.js';
3
- import { ExtractConfig, ExtractContext, ProceduresFactory, RPCConfig } from '../../types.js';
4
- import { StreamHttpRouteDoc, StreamMode } from './types.js';
5
- import { ProcedureValidationError } from '../../../errors.js';
6
- import { ErrorTaxonomy, ErrorTaxonomyEntry, UnknownErrorConfig, defineErrorTaxonomy } from '../error-taxonomy.js';
7
- export type { StreamHttpRouteDoc, StreamMode };
8
- export { defineErrorTaxonomy };
9
- export type { ErrorTaxonomy, ErrorTaxonomyEntry, UnknownErrorConfig };
10
- /**
11
- * Context passed to the `onRequestError` observer. `raw` is the Hono
12
- * `Context` for the in-flight request — cast at the use site if you need
13
- * framework-specific fields.
14
- */
15
- export type OnRequestErrorContext = {
16
- err: unknown;
17
- procedure: TStreamProcedureRegistration;
18
- raw: Context;
19
- };
20
- export type SSEOptions = {
21
- event?: string;
22
- id?: string;
23
- retry?: number;
24
- };
25
- export declare function sse<T extends object>(data: T, options?: SSEOptions): T;
26
- /**
27
- * Result from onMidStreamError callback.
28
- * @property data - The data to write as the SSE `data:` field content (should match yieldType schema)
29
- * @property closeStream - Whether to close the stream after writing (defaults to true)
30
- */
31
- export type MidStreamErrorResult<TErrorData = unknown> = {
32
- data: TErrorData;
33
- closeStream?: boolean;
34
- };
35
- export type HonoStreamAppBuilderConfig<TErrorData = unknown> = {
36
- /**
37
- * An existing Hono application instance to use.
38
- * If not provided, a new instance will be created.
39
- */
40
- app?: Hono;
41
- /** Optional path prefix for all stream routes. */
42
- pathPrefix?: string;
43
- /** Default stream mode for all routes. Defaults to 'sse'. */
44
- defaultStreamMode?: StreamMode;
45
- onRequestStart?: (c: Context) => void;
46
- onRequestEnd?: (c: Context) => void;
47
- onStreamStart?: (procedure: TStreamProcedureRegistration, c: Context, streamMode: StreamMode) => void;
48
- onStreamEnd?: (procedure: TStreamProcedureRegistration, c: Context, streamMode: StreamMode) => void;
49
- /**
50
- * Declarative error-to-response mapping (one of the two peer error modes).
51
- * Thrown error classes map to status codes + bodies declaratively. The
52
- * taxonomy applies to BOTH pre-stream errors (where the status code is
53
- * honored) AND mid-stream errors (where only the body shape is honored —
54
- * the HTTP status is already committed once streaming starts; the body is
55
- * written as the SSE `event: 'error'` data, or a JSON line in text mode,
56
- * for the client's error registry to dispatch). See hono-api for the full
57
- * taxonomy contract.
58
- */
59
- errors?: ErrorTaxonomy;
60
- /**
61
- * Fallback serializer when a taxonomy is configured but no entry matches.
62
- */
63
- unknownError?: UnknownErrorConfig;
64
- /**
65
- * Imperative pre-stream error callback — the other peer error mode.
66
- * Receives every pre-stream error directly and returns the HTTP response.
67
- * Use this instead of `errors` when you want full control over the response
68
- * shape, or alongside it for the tail of errors the taxonomy doesn't cover.
69
- *
70
- * Mid-stream errors always go through `onMidStreamError`.
71
- */
72
- onError?: (procedure: TStreamProcedureRegistration, c: Context, error: ProcedureValidationError | Error) => Response | Promise<Response>;
73
- /**
74
- * Cross-cutting observer — fires for every caught pre-stream error, BEFORE
75
- * dispatch to the taxonomy or `onError`. Awaited. Cannot mutate the
76
- * response. Intended for logging, tracing, and metrics (Sentry, Datadog,
77
- * OpenTelemetry). Any error thrown inside the observer is swallowed and
78
- * logged so the primary dispatch flow is never disrupted.
79
- */
80
- onRequestError?: (ctx: OnRequestErrorContext) => void | Promise<void>;
81
- /**
82
- * Called for errors DURING streaming (generator throws).
83
- * Return value is written to the stream as a yield.
84
- * Should return a value matching your yieldType schema (e.g., error variant of a union).
85
- * Return undefined to use default behavior (writes { error: message }).
86
- *
87
- * Use sse() to attach SSE metadata (event, id, retry) to the error data object.
88
- *
89
- * @returns { data, closeStream? } - data to yield, whether to close after (default true)
90
- */
91
- onMidStreamError?: (procedure: TStreamProcedureRegistration, c: Context, error: Error) => MidStreamErrorResult<TErrorData> | undefined;
92
- };
93
- /**
94
- * Builder class for creating a Hono application with streaming RPC routes.
95
- *
96
- * Usage:
97
- * const StreamRPC = Procedures<StreamContext, RPCConfig>()
98
- *
99
- * const streamApp = new HonoStreamAppBuilder()
100
- * .register(StreamRPC, (c): Promise<StreamContext> => { /* context resolution logic * / })
101
- * .build();
102
- *
103
- * const app = streamApp.app; // Hono application
104
- * const docs = streamApp.docs; // Stream route documentation
105
- */
106
- export declare class HonoStreamAppBuilder<TErrorData = unknown> {
107
- readonly config?: HonoStreamAppBuilderConfig<TErrorData> | undefined;
108
- /**
109
- * Constructor for HonoStreamAppBuilder.
110
- */
111
- constructor(config?: HonoStreamAppBuilderConfig<TErrorData> | undefined);
112
- /**
113
- * Generates the stream route path based on the RPC configuration.
114
- */
115
- static makeStreamHttpRoutePath({ name, config, prefix, }: {
116
- name: string;
117
- prefix?: string;
118
- config: RPCConfig;
119
- }): string;
120
- /**
121
- * Instance method wrapper for makeStreamHttpRoutePath that uses the builder's pathPrefix.
122
- */
123
- makeStreamHttpRoutePath(name: string, config: RPCConfig): string;
124
- private factories;
125
- private _app;
126
- private _docs;
127
- private _skipped;
128
- get app(): Hono;
129
- get docs(): StreamHttpRouteDoc[];
130
- /**
131
- * Procedures that were skipped at `build()` time because they don't fit
132
- * this builder (e.g. non-streaming procedures registered against the
133
- * stream builder). Surfaced via `DocSource.skippedProcedures` so
134
- * DocRegistry can warn about coverage gaps.
135
- */
136
- get skippedProcedures(): {
137
- name: string;
138
- reason: string;
139
- }[];
140
- /**
141
- * Registers a procedure factory with its context.
142
- * Only streaming procedures (created with CreateStream) will be registered.
143
- */
144
- register<TFactory extends ProceduresFactory>(factory: TFactory, factoryContext: ExtractContext<TFactory> | ((c: Context) => ExtractContext<TFactory> | Promise<ExtractContext<TFactory>>), options?: {
145
- streamMode?: StreamMode;
146
- extendProcedureDoc?: (params: {
147
- base: StreamHttpRouteDoc;
148
- procedure: TStreamProcedureRegistration<any, ExtractConfig<TFactory>>;
149
- }) => Record<string, any>;
150
- }): this;
151
- /**
152
- * Creates a route handler for streaming procedures.
153
- */
154
- private createStreamHandler;
155
- /**
156
- * Handles SSE streaming mode.
157
- */
158
- private handleSSEStream;
159
- /**
160
- * Handles text streaming mode.
161
- */
162
- private handleTextStream;
163
- /**
164
- * Builds and returns the Hono application with registered streaming routes.
165
- */
166
- build(): Hono;
167
- /**
168
- * Generates the Stream HTTP route documentation for the given procedure.
169
- */
170
- private buildStreamHttpRouteDoc;
171
- }