@proompteng/temporal-bun-sdk 0.2.0 → 0.4.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 (123) hide show
  1. package/README.md +141 -10
  2. package/dist/src/bin/replay-command.d.ts.map +1 -1
  3. package/dist/src/bin/replay-command.js +6 -2
  4. package/dist/src/bin/replay-command.js.map +1 -1
  5. package/dist/src/bin/temporal-bun.d.ts +1 -1
  6. package/dist/src/bin/temporal-bun.d.ts.map +1 -1
  7. package/dist/src/bin/temporal-bun.js +74 -0
  8. package/dist/src/bin/temporal-bun.js.map +1 -1
  9. package/dist/src/client/layer.d.ts +2 -2
  10. package/dist/src/client/layer.d.ts.map +1 -1
  11. package/dist/src/client/retries.d.ts.map +1 -1
  12. package/dist/src/client/retries.js +27 -3
  13. package/dist/src/client/retries.js.map +1 -1
  14. package/dist/src/client/serialization.d.ts +34 -2
  15. package/dist/src/client/serialization.d.ts.map +1 -1
  16. package/dist/src/client/serialization.js +78 -5
  17. package/dist/src/client/serialization.js.map +1 -1
  18. package/dist/src/client/types.d.ts +26 -0
  19. package/dist/src/client/types.d.ts.map +1 -1
  20. package/dist/src/client.d.ts +22 -6
  21. package/dist/src/client.d.ts.map +1 -1
  22. package/dist/src/client.js +488 -39
  23. package/dist/src/client.js.map +1 -1
  24. package/dist/src/common/payloads/codecs.d.ts +38 -0
  25. package/dist/src/common/payloads/codecs.d.ts.map +1 -0
  26. package/dist/src/common/payloads/codecs.js +174 -0
  27. package/dist/src/common/payloads/codecs.js.map +1 -0
  28. package/dist/src/common/payloads/converter.d.ts +52 -3
  29. package/dist/src/common/payloads/converter.d.ts.map +1 -1
  30. package/dist/src/common/payloads/converter.js +340 -2
  31. package/dist/src/common/payloads/converter.js.map +1 -1
  32. package/dist/src/common/payloads/failure.d.ts +5 -6
  33. package/dist/src/common/payloads/failure.d.ts.map +1 -1
  34. package/dist/src/common/payloads/failure.js +3 -52
  35. package/dist/src/common/payloads/failure.js.map +1 -1
  36. package/dist/src/common/payloads/index.d.ts +1 -0
  37. package/dist/src/common/payloads/index.d.ts.map +1 -1
  38. package/dist/src/common/payloads/index.js +1 -0
  39. package/dist/src/common/payloads/index.js.map +1 -1
  40. package/dist/src/config.d.ts +9 -0
  41. package/dist/src/config.d.ts.map +1 -1
  42. package/dist/src/config.js +62 -1
  43. package/dist/src/config.js.map +1 -1
  44. package/dist/src/index.d.ts +1 -1
  45. package/dist/src/index.d.ts.map +1 -1
  46. package/dist/src/index.js.map +1 -1
  47. package/dist/src/interceptors/client.d.ts +28 -0
  48. package/dist/src/interceptors/client.d.ts.map +1 -0
  49. package/dist/src/interceptors/client.js +169 -0
  50. package/dist/src/interceptors/client.js.map +1 -0
  51. package/dist/src/interceptors/types.d.ts +33 -0
  52. package/dist/src/interceptors/types.d.ts.map +1 -0
  53. package/dist/src/interceptors/types.js +44 -0
  54. package/dist/src/interceptors/types.js.map +1 -0
  55. package/dist/src/interceptors/worker.d.ts +22 -0
  56. package/dist/src/interceptors/worker.d.ts.map +1 -0
  57. package/dist/src/interceptors/worker.js +156 -0
  58. package/dist/src/interceptors/worker.js.map +1 -0
  59. package/dist/src/runtime/cli-layer.d.ts +4 -3
  60. package/dist/src/runtime/cli-layer.d.ts.map +1 -1
  61. package/dist/src/runtime/cli-layer.js +5 -2
  62. package/dist/src/runtime/cli-layer.js.map +1 -1
  63. package/dist/src/runtime/effect-layers.d.ts +9 -0
  64. package/dist/src/runtime/effect-layers.d.ts.map +1 -1
  65. package/dist/src/runtime/effect-layers.js +15 -0
  66. package/dist/src/runtime/effect-layers.js.map +1 -1
  67. package/dist/src/worker/concurrency.d.ts +8 -0
  68. package/dist/src/worker/concurrency.d.ts.map +1 -1
  69. package/dist/src/worker/concurrency.js +5 -9
  70. package/dist/src/worker/concurrency.js.map +1 -1
  71. package/dist/src/worker/runtime.d.ts +5 -0
  72. package/dist/src/worker/runtime.d.ts.map +1 -1
  73. package/dist/src/worker/runtime.js +509 -40
  74. package/dist/src/worker/runtime.js.map +1 -1
  75. package/dist/src/worker/sticky-cache.d.ts +5 -0
  76. package/dist/src/worker/sticky-cache.d.ts.map +1 -1
  77. package/dist/src/worker/sticky-cache.js +26 -0
  78. package/dist/src/worker/sticky-cache.js.map +1 -1
  79. package/dist/src/worker/update-protocol.d.ts +33 -0
  80. package/dist/src/worker/update-protocol.d.ts.map +1 -0
  81. package/dist/src/worker/update-protocol.js +243 -0
  82. package/dist/src/worker/update-protocol.js.map +1 -0
  83. package/dist/src/worker.js +1 -0
  84. package/dist/src/worker.js.map +1 -1
  85. package/dist/src/workflow/commands.d.ts +38 -2
  86. package/dist/src/workflow/commands.d.ts.map +1 -1
  87. package/dist/src/workflow/commands.js +153 -1
  88. package/dist/src/workflow/commands.js.map +1 -1
  89. package/dist/src/workflow/context.d.ts +111 -3
  90. package/dist/src/workflow/context.d.ts.map +1 -1
  91. package/dist/src/workflow/context.js +526 -6
  92. package/dist/src/workflow/context.js.map +1 -1
  93. package/dist/src/workflow/definition.d.ts +29 -3
  94. package/dist/src/workflow/definition.d.ts.map +1 -1
  95. package/dist/src/workflow/definition.js +30 -4
  96. package/dist/src/workflow/definition.js.map +1 -1
  97. package/dist/src/workflow/determinism.d.ts +64 -0
  98. package/dist/src/workflow/determinism.d.ts.map +1 -1
  99. package/dist/src/workflow/determinism.js +120 -3
  100. package/dist/src/workflow/determinism.js.map +1 -1
  101. package/dist/src/workflow/errors.d.ts +6 -0
  102. package/dist/src/workflow/errors.d.ts.map +1 -1
  103. package/dist/src/workflow/errors.js +12 -0
  104. package/dist/src/workflow/errors.js.map +1 -1
  105. package/dist/src/workflow/executor.d.ts +56 -0
  106. package/dist/src/workflow/executor.d.ts.map +1 -1
  107. package/dist/src/workflow/executor.js +300 -9
  108. package/dist/src/workflow/executor.js.map +1 -1
  109. package/dist/src/workflow/inbound.d.ts +84 -0
  110. package/dist/src/workflow/inbound.d.ts.map +1 -0
  111. package/dist/src/workflow/inbound.js +65 -0
  112. package/dist/src/workflow/inbound.js.map +1 -0
  113. package/dist/src/workflow/index.d.ts +1 -0
  114. package/dist/src/workflow/index.d.ts.map +1 -1
  115. package/dist/src/workflow/index.js +1 -0
  116. package/dist/src/workflow/index.js.map +1 -1
  117. package/dist/src/workflow/replay.d.ts +24 -2
  118. package/dist/src/workflow/replay.d.ts.map +1 -1
  119. package/dist/src/workflow/replay.js +679 -15
  120. package/dist/src/workflow/replay.js.map +1 -1
  121. package/dist/src/workflows/index.d.ts +1 -1
  122. package/dist/src/workflows/index.d.ts.map +1 -1
  123. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { type Payload } from '../../proto/temporal/api/common/v1/message_pb';
2
+ export type PayloadCodecName = 'gzip' | 'aes-gcm';
3
+ export interface PayloadCodec {
4
+ readonly name: PayloadCodecName | string;
5
+ encode(payloads: Payload[]): Promise<Payload[]>;
6
+ decode(payloads: Payload[]): Promise<Payload[]>;
7
+ }
8
+ export interface GzipPayloadCodecConfig {
9
+ name: 'gzip';
10
+ order?: number;
11
+ enabled?: boolean;
12
+ }
13
+ export interface AesGcmPayloadCodecConfig {
14
+ name: 'aes-gcm';
15
+ key: string | Uint8Array;
16
+ keyId?: string;
17
+ order?: number;
18
+ enabled?: boolean;
19
+ }
20
+ export type PayloadCodecConfig = GzipPayloadCodecConfig | AesGcmPayloadCodecConfig;
21
+ export declare class PayloadCodecConfigurationError extends Error {
22
+ readonly details?: Record<string, unknown>;
23
+ constructor(message: string, details?: Record<string, unknown>);
24
+ }
25
+ export declare class PayloadCodecError extends Error {
26
+ readonly codec: string;
27
+ readonly direction: 'encode' | 'decode';
28
+ readonly cause?: unknown;
29
+ constructor(codec: string, direction: 'encode' | 'decode', message: string, cause?: unknown);
30
+ }
31
+ export declare const createGzipCodec: () => PayloadCodec;
32
+ export interface AesGcmCodecOptions {
33
+ key: string | Uint8Array;
34
+ keyId?: string;
35
+ }
36
+ export declare const createAesGcmCodec: (options: AesGcmCodecOptions) => PayloadCodec;
37
+ export declare const buildCodecsFromConfig: (configs: readonly PayloadCodecConfig[] | undefined) => PayloadCodec[];
38
+ //# sourceMappingURL=codecs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../../../../src/common/payloads/codecs.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,OAAO,EAAiB,MAAM,+CAA+C,CAAA;AAc3F,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAAA;AAEjD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAAA;IACxC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IAC/C,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;CAChD;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,SAAS,CAAA;IACf,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG,wBAAwB,CAAA;AAElF,qBAAa,8BAA+B,SAAQ,KAAK;IAGrD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAD1C,OAAO,EAAE,MAAM,EACN,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAK7C;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAExC,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,QAAQ;IAEvC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;gBAHf,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,QAAQ,GAAG,QAAQ,EACvC,OAAO,EAAE,MAAM,EACN,KAAK,CAAC,EAAE,OAAO;CAK3B;AAwBD,eAAO,MAAM,eAAe,QAAO,YAuBjC,CAAA;AAgCF,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,iBAAiB,GAAI,SAAS,kBAAkB,KAAG,YA2C/D,CAAA;AAID,eAAO,MAAM,qBAAqB,GAAI,SAAS,SAAS,kBAAkB,EAAE,GAAG,SAAS,KAAG,YAAY,EAuBtG,CAAA"}
@@ -0,0 +1,174 @@
1
+ import { createCipheriv, createDecipheriv, randomBytes } from 'node:crypto';
2
+ import { gunzipSync, gzipSync } from 'node:zlib';
3
+ import { create, fromBinary, toBinary } from '@bufbuild/protobuf';
4
+ import { PayloadSchema } from '../../proto/temporal/api/common/v1/message_pb';
5
+ const textEncoder = new TextEncoder();
6
+ const textDecoder = new TextDecoder();
7
+ const METADATA_ENCODING_KEY = 'encoding';
8
+ const METADATA_CODEC_KEY = 'codec';
9
+ const METADATA_KEY_ID = 'encryption-key-id';
10
+ const GZIP_ENCODING = 'binary/gzip';
11
+ const AES_GCM_ENCODING = 'binary/encrypted+aes-gcm';
12
+ const AES_NONCE_BYTES = 12;
13
+ const AES_TAG_BYTES = 16;
14
+ export class PayloadCodecConfigurationError extends Error {
15
+ details;
16
+ constructor(message, details) {
17
+ super(message);
18
+ this.details = details;
19
+ this.name = 'PayloadCodecConfigurationError';
20
+ }
21
+ }
22
+ export class PayloadCodecError extends Error {
23
+ codec;
24
+ direction;
25
+ cause;
26
+ constructor(codec, direction, message, cause) {
27
+ super(message);
28
+ this.codec = codec;
29
+ this.direction = direction;
30
+ this.cause = cause;
31
+ this.name = 'PayloadCodecError';
32
+ }
33
+ }
34
+ const isEncoding = (payload, encoding) => {
35
+ if (!payload?.metadata)
36
+ return false;
37
+ const raw = payload.metadata[METADATA_ENCODING_KEY];
38
+ if (!raw)
39
+ return false;
40
+ try {
41
+ return textDecoder.decode(raw) === encoding;
42
+ }
43
+ catch {
44
+ return false;
45
+ }
46
+ };
47
+ const encodeMetadata = (encoding, extra) => {
48
+ const base = { [METADATA_ENCODING_KEY]: textEncoder.encode(encoding) };
49
+ const extras = extra ?? {};
50
+ for (const [key, value] of Object.entries(extras)) {
51
+ if (value !== undefined) {
52
+ base[key] = textEncoder.encode(value);
53
+ }
54
+ }
55
+ return base;
56
+ };
57
+ export const createGzipCodec = () => ({
58
+ name: 'gzip',
59
+ async encode(payloads) {
60
+ return payloads.map((payload) => {
61
+ const compressed = gzipSync(toBinary(PayloadSchema, payload));
62
+ return create(PayloadSchema, {
63
+ metadata: encodeMetadata(GZIP_ENCODING, { [METADATA_CODEC_KEY]: 'gzip' }),
64
+ data: compressed,
65
+ });
66
+ });
67
+ },
68
+ async decode(payloads) {
69
+ return payloads.map((payload) => {
70
+ if (!isEncoding(payload, GZIP_ENCODING)) {
71
+ return payload;
72
+ }
73
+ if (!payload.data) {
74
+ throw new PayloadCodecError('gzip', 'decode', 'gzip payload is missing data');
75
+ }
76
+ const inflated = gunzipSync(payload.data);
77
+ return fromBinary(PayloadSchema, inflated);
78
+ });
79
+ },
80
+ });
81
+ const coerceKeyBuffer = (key) => {
82
+ if (typeof key === 'string') {
83
+ const trimmed = key.trim();
84
+ if (!trimmed) {
85
+ throw new PayloadCodecConfigurationError('AES-GCM key must be non-empty');
86
+ }
87
+ try {
88
+ return Buffer.from(trimmed, 'base64');
89
+ }
90
+ catch {
91
+ const hexBuffer = Buffer.from(trimmed.replace(/^0x/, ''), 'hex');
92
+ if (hexBuffer.byteLength === 0) {
93
+ throw new PayloadCodecConfigurationError('AES-GCM key must be valid base64 or hex');
94
+ }
95
+ return hexBuffer;
96
+ }
97
+ }
98
+ if (key.byteLength === 0) {
99
+ throw new PayloadCodecConfigurationError('AES-GCM key must be non-empty');
100
+ }
101
+ return Buffer.from(key);
102
+ };
103
+ const assertAesKeySize = (key) => {
104
+ if (![16, 24, 32].includes(key.byteLength)) {
105
+ throw new PayloadCodecConfigurationError('AES-GCM key must be 128, 192, or 256 bits', {
106
+ bytes: key.byteLength,
107
+ });
108
+ }
109
+ };
110
+ export const createAesGcmCodec = (options) => {
111
+ const key = coerceKeyBuffer(options.key);
112
+ assertAesKeySize(key);
113
+ const keyId = options.keyId ?? 'default';
114
+ const algorithm = `aes-${key.byteLength * 8}-gcm`;
115
+ return {
116
+ name: 'aes-gcm',
117
+ async encode(payloads) {
118
+ return payloads.map((payload) => {
119
+ const nonce = randomBytes(AES_NONCE_BYTES);
120
+ const cipher = createCipheriv(algorithm, key, nonce);
121
+ const ciphertext = Buffer.concat([cipher.update(toBinary(PayloadSchema, payload)), cipher.final()]);
122
+ const tag = cipher.getAuthTag();
123
+ const data = new Uint8Array(Buffer.concat([nonce, tag, ciphertext]));
124
+ return create(PayloadSchema, {
125
+ metadata: encodeMetadata(AES_GCM_ENCODING, {
126
+ [METADATA_CODEC_KEY]: 'aes-gcm',
127
+ [METADATA_KEY_ID]: keyId,
128
+ }),
129
+ data,
130
+ });
131
+ });
132
+ },
133
+ async decode(payloads) {
134
+ return payloads.map((payload) => {
135
+ if (!isEncoding(payload, AES_GCM_ENCODING)) {
136
+ return payload;
137
+ }
138
+ const data = payload.data ? Buffer.from(payload.data) : undefined;
139
+ if (!data || data.byteLength <= AES_NONCE_BYTES + AES_TAG_BYTES) {
140
+ throw new PayloadCodecError('aes-gcm', 'decode', 'encrypted payload missing nonce/tag/data');
141
+ }
142
+ const nonce = data.subarray(0, AES_NONCE_BYTES);
143
+ const tag = data.subarray(AES_NONCE_BYTES, AES_NONCE_BYTES + AES_TAG_BYTES);
144
+ const ciphertext = data.subarray(AES_NONCE_BYTES + AES_TAG_BYTES);
145
+ const decipher = createDecipheriv(algorithm, key, nonce);
146
+ decipher.setAuthTag(tag);
147
+ const plaintext = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
148
+ return fromBinary(PayloadSchema, plaintext);
149
+ });
150
+ },
151
+ };
152
+ };
153
+ const byOrder = (a, b) => (a.order ?? 0) - (b.order ?? 0);
154
+ export const buildCodecsFromConfig = (configs) => {
155
+ if (!configs || configs.length === 0) {
156
+ return [];
157
+ }
158
+ const enabled = configs.filter((config) => config.enabled ?? true).sort(byOrder);
159
+ const codecs = [];
160
+ for (const config of enabled) {
161
+ if (config.name === 'gzip') {
162
+ codecs.push(createGzipCodec());
163
+ continue;
164
+ }
165
+ if (config.name === 'aes-gcm') {
166
+ codecs.push(createAesGcmCodec({
167
+ key: config.key,
168
+ keyId: config.keyId,
169
+ }));
170
+ }
171
+ }
172
+ return codecs;
173
+ };
174
+ //# sourceMappingURL=codecs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codecs.js","sourceRoot":"","sources":["../../../../src/common/payloads/codecs.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
- import type { Payload } from '../../proto/temporal/api/common/v1/message_pb';
1
+ import type { Logger } from '../../observability/logger';
2
+ import type { MetricsRegistry } from '../../observability/metrics';
3
+ import { type Payload } from '../../proto/temporal/api/common/v1/message_pb';
4
+ import { type Failure } from '../../proto/temporal/api/failure/v1/message_pb';
5
+ import { type PayloadCodec } from './codecs';
2
6
  export type PayloadMap = Record<string, Payload>;
3
- export interface DataConverter {
7
+ export interface PayloadConverter {
4
8
  toPayload(value: unknown): Promise<Payload>;
5
9
  fromPayload(payload: Payload | null | undefined): Promise<unknown>;
6
10
  toPayloads(values: unknown[]): Promise<Payload[] | undefined>;
@@ -8,9 +12,54 @@ export interface DataConverter {
8
12
  toPayloadMap(map: Record<string, unknown> | undefined): Promise<PayloadMap | undefined>;
9
13
  fromPayloadMap(map: PayloadMap | null | undefined): Promise<Record<string, unknown> | undefined>;
10
14
  }
11
- export declare const createDefaultDataConverter: () => DataConverter;
15
+ export interface FailureConverter {
16
+ readonly name?: string;
17
+ errorToFailure(error: unknown, converter: DataConverter): Promise<Failure>;
18
+ failureToError(failure: Failure | null | undefined, converter: DataConverter): Promise<Error | undefined>;
19
+ encodeFailure?(failure: Failure, converter: DataConverter): Promise<Failure>;
20
+ decodeFailure?(failure: Failure | null | undefined, converter: DataConverter): Promise<Failure | null | undefined>;
21
+ }
22
+ export interface DataConverter extends PayloadConverter {
23
+ readonly payloadCodecs: readonly PayloadCodec[];
24
+ readonly failureConverter: FailureConverter;
25
+ encodePayloads(payloads: Payload[] | null | undefined): Promise<Payload[] | undefined>;
26
+ decodePayloads(payloads: Payload[] | null | undefined): Promise<Payload[]>;
27
+ encodeFailurePayloads(failure: Failure): Promise<Failure>;
28
+ decodeFailurePayloads(failure: Failure | null | undefined): Promise<Failure | null | undefined>;
29
+ errorToFailure(error: unknown): Promise<Failure>;
30
+ failureToError(failure: Failure | null | undefined): Promise<Error | undefined>;
31
+ }
32
+ export declare class TemporalFailureError extends Error {
33
+ readonly failure: Failure;
34
+ readonly failureType: string;
35
+ readonly nonRetryable: boolean;
36
+ readonly details?: unknown[];
37
+ constructor(params: {
38
+ message: string;
39
+ failure: Failure;
40
+ failureType: string;
41
+ nonRetryable: boolean;
42
+ details?: unknown[];
43
+ cause?: Error;
44
+ stack?: string;
45
+ });
46
+ }
47
+ export interface DataConverterOptions {
48
+ payloadConverter?: PayloadConverter;
49
+ payloadCodecs?: readonly PayloadCodec[];
50
+ failureConverter?: FailureConverter;
51
+ metricsRegistry?: MetricsRegistry;
52
+ logger?: Logger;
53
+ }
54
+ export declare const createDefaultDataConverter: (options?: DataConverterOptions) => DataConverter;
12
55
  export declare const encodeValuesToPayloads: (converter: DataConverter, values: unknown[]) => Promise<Payload[] | undefined>;
13
56
  export declare const decodePayloadsToValues: (converter: DataConverter, payloads: Payload[] | null | undefined) => Promise<unknown[]>;
14
57
  export declare const encodeMapValuesToPayloads: (converter: DataConverter, map: Record<string, unknown> | undefined) => Promise<PayloadMap | undefined>;
15
58
  export declare const decodePayloadMapToValues: (converter: DataConverter, map: PayloadMap | null | undefined) => Promise<Record<string, unknown> | undefined>;
59
+ export declare const encodeErrorToFailure: (converter: DataConverter, error: unknown) => Promise<Failure>;
60
+ export declare const encodeFailurePayloads: (converter: DataConverter, failure: Failure) => Promise<Failure>;
61
+ export declare const decodeFailurePayloads: (converter: DataConverter, failure: Failure | null | undefined) => Promise<Failure | null | undefined>;
62
+ export declare const failureToError: (converter: DataConverter, failure: Failure | null | undefined) => Promise<Error | undefined>;
63
+ export declare const createJsonPayloadConverter: () => PayloadConverter;
64
+ export { buildCodecsFromConfig } from './codecs';
16
65
  //# sourceMappingURL=converter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../../../../src/common/payloads/converter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+CAA+C,CAAA;AAW5E,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAEhD,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC3C,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAClE,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAA;IAC7D,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;IACxE,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAA;IACvF,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAAA;CACjG;AAkCD,eAAO,MAAM,0BAA0B,QAAO,aAAwC,CAAA;AAEtF,eAAO,MAAM,sBAAsB,GACjC,WAAW,aAAa,EACxB,QAAQ,OAAO,EAAE,KAChB,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAiC,CAAA;AAEjE,eAAO,MAAM,sBAAsB,GACjC,WAAW,aAAa,EACxB,UAAU,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,KACrC,OAAO,CAAC,OAAO,EAAE,CAAqC,CAAA;AAEzD,eAAO,MAAM,yBAAyB,GACpC,WAAW,aAAa,EACxB,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,KACvC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAgC,CAAA;AAEjE,eAAO,MAAM,wBAAwB,GACnC,WAAW,aAAa,EACxB,KAAK,UAAU,GAAG,IAAI,GAAG,SAAS,KACjC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAkC,CAAA"}
1
+ {"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../../../../src/common/payloads/converter.ts"],"names":[],"mappings":"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"}