@ontemper/sdk 0.6.0-pr-7774.1 → 0.6.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.
@@ -32,6 +32,11 @@ export interface MemoryAs2Options {
32
32
  readonly fetch?: OutboundFetch;
33
33
  /** Host → the addresses its name resolves to, for the async-MDN destination check. Default: one public address. */
34
34
  readonly addresses?: Readonly<Record<string, ReadonlyArray<string>>>;
35
+ /**
36
+ * The runtime the client acts as. `bun` applies partner TLS and proxies as `fetch` options and pins an async MDN
37
+ * to the checked address, so `fetch` sees the address URL. Default: `fetch`, whatever runs the test.
38
+ */
39
+ readonly runtime?: 'bun' | 'fetch';
35
40
  }
36
41
  export interface MemoryAs2 {
37
42
  /** Pass as `testPlatform({ fetch })`: it answers the AS2 API, registered partners, and `options.fetch`. */
@@ -1 +1 @@
1
- {"version":3,"file":"As2Testing.d.ts","sourceRoot":"","sources":["../src/As2Testing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"As2Testing.d.ts","sourceRoot":"","sources":["../src/As2Testing.ts"],"names":[],"mappings":"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"}
@@ -317,6 +317,7 @@ export const memoryAs2 = (options = {}) => {
317
317
  fetch,
318
318
  layer: As2.layerWith({
319
319
  lookupAddresses: async (hostname) => options.addresses?.[hostname] ?? ['93.184.216.34'],
320
+ runtime: options.runtime ?? 'fetch',
320
321
  }),
321
322
  partner: (url, partnerOptions = {}) => {
322
323
  partners.set(new URL(url).href, partnerOptions);
@@ -1 +1 @@
1
- {"version":3,"file":"As2Testing.js","sourceRoot":"","sources":["../src/As2Testing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"As2Testing.js","sourceRoot":"","sources":["../src/As2Testing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { As2PartnerResource } from './As2Resource.js';
2
+ import type { BunTransport } from './HttpClient.js';
3
+ /** A partner's delivery connection: the Bun `fetch` options that apply its settings, or why they cannot apply. */
4
+ export type As2DeliveryTransport = {
5
+ readonly kind: 'ready';
6
+ readonly transport: BunTransport;
7
+ } | {
8
+ readonly kind: 'refused';
9
+ readonly code: string;
10
+ readonly message: string;
11
+ };
12
+ /** True where the global `fetch` is Bun's, the only one that takes `tls` and `proxy`. */
13
+ export declare const bunFetch: () => boolean;
14
+ /**
15
+ * Legacy `@ontemper/as2` checks and connection options for one delivery URL, on Bun's `fetch`. Another runtime's
16
+ * `fetch` skips `tls` and `proxy` without an error, so a partner that sets either is refused there.
17
+ */
18
+ export declare const deliveryTransport: (partner: As2PartnerResource, url: URL, bun: boolean) => As2DeliveryTransport;
19
+ /** A request to the address the destination check approved, in place of the name in its URL. */
20
+ export interface PinnedDestination {
21
+ readonly url: string;
22
+ readonly host: string;
23
+ readonly transport: BunTransport;
24
+ }
25
+ /**
26
+ * Bun `fetch` options that send a request to `address`, the one the destination check approved, instead of resolving
27
+ * the name again: the URL names the address, `Host` keeps the name, and TLS verifies the certificate for the name.
28
+ */
29
+ export declare const pinnedDestination: (url: URL, address: string) => PinnedDestination;
30
+ //# sourceMappingURL=As2Transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"As2Transport.d.ts","sourceRoot":"","sources":["../src/As2Transport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,kHAAkH;AAClH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAalF,yFAAyF;AACzF,eAAO,MAAM,QAAQ,QAAO,OAA8B,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,iBAAiB,YAAa,kBAAkB,OAAO,GAAG,OAAO,OAAO,KAAG,oBA+DvF,CAAC;AAEF,gGAAgG;AAChG,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;CAClC;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,QAAS,GAAG,WAAW,MAAM,KAAG,iBAO7D,CAAC"}
@@ -0,0 +1,88 @@
1
+ import { rootCertificates } from 'node:tls';
2
+ import { Redacted } from 'effect';
3
+ const hasSettings = (tls) => tls !== undefined && Object.values(tls).some((value) => value !== undefined);
4
+ const refused = (code, message) => ({ kind: 'refused', code, message });
5
+ const defined = (value) => value !== undefined;
6
+ /** True where the global `fetch` is Bun's, the only one that takes `tls` and `proxy`. */
7
+ export const bunFetch = () => 'Bun' in globalThis;
8
+ /**
9
+ * Legacy `@ontemper/as2` checks and connection options for one delivery URL, on Bun's `fetch`. Another runtime's
10
+ * `fetch` skips `tls` and `proxy` without an error, so a partner that sets either is refused there.
11
+ */
12
+ export const deliveryTransport = (partner, url, bun) => {
13
+ const { tls, proxy } = partner;
14
+ if (!hasSettings(tls) && proxy === undefined)
15
+ return { kind: 'ready', transport: {} };
16
+ if (!bun) {
17
+ return refused('UNSUPPORTED_TRANSPORT', 'Partner TLS settings and proxies need the Bun runtime (Firecracker); this runtime would skip them.');
18
+ }
19
+ // TLS settings on a plain-HTTP URL are never applied, so the send would silently skip CA, mTLS, and SNI checks.
20
+ if (hasSettings(tls) && url.protocol !== 'https:') {
21
+ return refused('TLS_REQUIRES_HTTPS', 'Partner TLS settings require an https:// partner URL.');
22
+ }
23
+ let proxyUrl;
24
+ let proxyHeaders;
25
+ if (proxy !== undefined) {
26
+ proxyUrl = URL.canParse(proxy.url) ? new URL(proxy.url) : undefined;
27
+ if (proxyUrl === undefined || (proxyUrl.protocol !== 'http:' && proxyUrl.protocol !== 'https:')) {
28
+ return refused('INVALID_PROXY_URL', 'The proxy URL must be a valid http(s) URL.');
29
+ }
30
+ // URL userinfo also becomes Basic auth, so it gets the same transport rule.
31
+ const basic = proxy.auth.type === 'basic' || proxyUrl.username !== '' || proxyUrl.password !== '';
32
+ if (basic && proxyUrl.protocol !== 'https:') {
33
+ return refused('INSECURE_CREDENTIAL_TRANSPORT', 'Proxy Basic auth requires an https:// proxy URL.');
34
+ }
35
+ if (hasSettings(proxy.tls) && proxyUrl.protocol !== 'https:') {
36
+ return refused('TLS_REQUIRES_HTTPS', 'Proxy TLS settings require an https:// proxy URL.');
37
+ }
38
+ // Bun applies one TLS setting to the proxy and the partner handshakes, so only a proxy CA can be honored.
39
+ const proxyTls = proxy.tls;
40
+ if (proxyTls !== undefined &&
41
+ [proxyTls.clientCertificate, proxyTls.clientKey, proxyTls.clientKeyPassphrase, proxyTls.serverName].some(defined)) {
42
+ return refused('UNSUPPORTED_TRANSPORT', 'A proxy client certificate or SNI name cannot be applied: Bun shares one TLS setting between the proxy and the partner.');
43
+ }
44
+ if (proxy.auth.type === 'basic') {
45
+ const credentials = `${proxy.auth.username}:${Redacted.value(proxy.auth.password)}`;
46
+ proxyHeaders = { 'Proxy-Authorization': `Basic ${Buffer.from(credentials).toString('base64')}` };
47
+ }
48
+ }
49
+ // A custom CA replaces the public roots. Through an https:// proxy both handshakes read the one list, so a hop
50
+ // without its own CA keeps the public roots.
51
+ const tunnelsTls = proxyUrl?.protocol === 'https:';
52
+ const authorities = [tls?.caCertificate, tunnelsTls ? proxy?.tls?.caCertificate : undefined].filter(defined);
53
+ const hopWithoutCa = tunnelsTls && (tls?.caCertificate === undefined || proxy?.tls?.caCertificate === undefined);
54
+ const ca = authorities.length === 0 ? undefined : hopWithoutCa ? [...authorities, ...rootCertificates] : authorities;
55
+ const tlsOptions = {};
56
+ if (ca !== undefined)
57
+ tlsOptions.ca = ca;
58
+ if (tls?.clientCertificate !== undefined)
59
+ tlsOptions.cert = tls.clientCertificate;
60
+ if (tls?.clientKey !== undefined)
61
+ tlsOptions.key = Redacted.value(tls.clientKey);
62
+ if (tls?.clientKeyPassphrase !== undefined)
63
+ tlsOptions.passphrase = Redacted.value(tls.clientKeyPassphrase);
64
+ if (tls?.serverName !== undefined)
65
+ tlsOptions.serverName = tls.serverName;
66
+ const transport = {};
67
+ if (Object.keys(tlsOptions).length > 0)
68
+ transport.tls = tlsOptions;
69
+ if (proxyUrl !== undefined) {
70
+ transport.proxy =
71
+ proxyHeaders === undefined ? { url: proxyUrl.href } : { url: proxyUrl.href, headers: proxyHeaders };
72
+ }
73
+ return { kind: 'ready', transport };
74
+ };
75
+ /**
76
+ * Bun `fetch` options that send a request to `address`, the one the destination check approved, instead of resolving
77
+ * the name again: the URL names the address, `Host` keeps the name, and TLS verifies the certificate for the name.
78
+ */
79
+ export const pinnedDestination = (url, address) => {
80
+ const name = url.hostname.replace(/^\[|\]$/g, '');
81
+ const pinned = new URL(url.href);
82
+ pinned.hostname = address.includes(':') ? `[${address}]` : address;
83
+ const transport = {};
84
+ if (url.protocol === 'https:' && name !== address)
85
+ transport.tls = { serverName: name };
86
+ return { url: pinned.href, host: url.host, transport };
87
+ };
88
+ //# sourceMappingURL=As2Transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"As2Transport.js","sourceRoot":"","sources":["../src/As2Transport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,338 @@
1
+ import { Config, Effect, Option, Redacted, Schema } from 'effect';
2
+ import { HttpClientError, HttpServerResponse } from 'effect/http';
3
+ import { As2Error, type As2Operation } from './As2Error.js';
4
+ import { As2IdentityResource, As2PartnerResource } from './As2Resource.js';
5
+ import type { LogFields, SpanOutcome } from './LogContext.js';
6
+ export declare const AS2_HEADERS: Set<string>;
7
+ /** Inbound headers are untrusted and may carry credentials: only protocol headers reach the platform. */
8
+ export declare const protocolHeaders: (headers: Readonly<Record<string, string | undefined>>) => {
9
+ [k: string]: string;
10
+ };
11
+ export declare const headerOf: (headers: Readonly<Record<string, string>>, name: string) => string | undefined;
12
+ /** A partner's largest legitimate answer is a signed MDN of some KiB; a gateway that streams more fails the delivery. */
13
+ export declare const MAX_PARTNER_RESPONSE_BYTES: number;
14
+ /** ENGINE_BUSY answers 503 before any work, so a bounded retry is safe; every AS2 call is idempotent. */
15
+ export declare const CAPACITY_RETRIES = 3;
16
+ export declare const CAPACITY_BACKOFF_MS = 500;
17
+ export declare const HeaderMap: Schema.$Record<Schema.String, Schema.String>;
18
+ export declare const MdnMode: Schema.Literals<readonly ["sync", "async"]>;
19
+ export declare const ReceiveAnswer: Schema.Union<readonly [Schema.Struct<{
20
+ readonly kind: Schema.Literal<"received">;
21
+ readonly messageId: Schema.String;
22
+ readonly payloadB64: Schema.String;
23
+ readonly payloadContentType: Schema.NullOr<Schema.String>;
24
+ readonly mic: Schema.String;
25
+ readonly deliveryToken: Schema.String;
26
+ readonly mdnMode: Schema.Literals<readonly ["sync", "async"]>;
27
+ readonly customerTraceId: Schema.NullOr<Schema.String>;
28
+ }>, Schema.Struct<{
29
+ readonly kind: Schema.Literal<"duplicate">;
30
+ readonly messageId: Schema.String;
31
+ readonly mic: Schema.String;
32
+ readonly mdnHeaders: Schema.NullOr<Schema.$Record<Schema.String, Schema.String>>;
33
+ readonly mdnBodyB64: Schema.NullOr<Schema.String>;
34
+ readonly mdnMode: Schema.Literals<readonly ["sync", "async"]>;
35
+ readonly mdnDeliveryUrl: Schema.NullOr<Schema.String>;
36
+ readonly customerTraceId: Schema.NullOr<Schema.String>;
37
+ }>, Schema.Struct<{
38
+ readonly kind: Schema.Literal<"inFlight">;
39
+ readonly messageId: Schema.String;
40
+ }>, Schema.Struct<{
41
+ readonly kind: Schema.Literal<"parked">;
42
+ readonly messageId: Schema.String;
43
+ }>]>;
44
+ export declare const AcknowledgeAnswer: Schema.Struct<{
45
+ readonly messageId: Schema.String;
46
+ readonly mic: Schema.String;
47
+ readonly mdnHeaders: Schema.NullOr<Schema.$Record<Schema.String, Schema.String>>;
48
+ readonly mdnBodyB64: Schema.NullOr<Schema.String>;
49
+ readonly mdnMode: Schema.Literals<readonly ["sync", "async"]>;
50
+ readonly mdnDeliveryUrl: Schema.NullOr<Schema.String>;
51
+ readonly alreadyAcknowledged: Schema.Boolean;
52
+ readonly customerTraceId: Schema.NullOr<Schema.String>;
53
+ }>;
54
+ export declare const PackAnswer: Schema.Struct<{
55
+ readonly messageId: Schema.String;
56
+ readonly as2Headers: Schema.$Record<Schema.String, Schema.String>;
57
+ readonly envelopeBodyB64: Schema.String;
58
+ readonly mic: Schema.String;
59
+ readonly partnerUrl: Schema.NullOr<Schema.String>;
60
+ readonly mdnMode: Schema.Literals<readonly ["none", "sync", "async"]>;
61
+ readonly replayed: Schema.Boolean;
62
+ readonly customerTraceId: Schema.NullOr<Schema.String>;
63
+ }>;
64
+ export declare const ConfirmAnswer: Schema.Struct<{
65
+ readonly outcome: Schema.Literals<readonly ["confirmed", "failed"]>;
66
+ readonly messageId: Schema.String;
67
+ readonly disposition: Schema.NullOr<Schema.String>;
68
+ readonly receivedMic: Schema.NullOr<Schema.String>;
69
+ readonly packMic: Schema.NullOr<Schema.String>;
70
+ readonly micMatched: Schema.Boolean;
71
+ readonly originatingTraceId: Schema.NullOr<Schema.String>;
72
+ }>;
73
+ export declare const SettleAnswer: Schema.Struct<{
74
+ readonly outcome: Schema.Literal<"confirmed">;
75
+ readonly messageId: Schema.String;
76
+ readonly customerTraceId: Schema.NullOr<Schema.String>;
77
+ }>;
78
+ export declare const ErrorAnswer: Schema.Struct<{
79
+ readonly error: Schema.Struct<{
80
+ readonly code: Schema.String;
81
+ readonly message: Schema.String;
82
+ }>;
83
+ }>;
84
+ export declare const Settings: Config.Config<{
85
+ apiUrl: Option.Option<string>;
86
+ envToken: Option.Option<Redacted.Redacted<string>>;
87
+ sandboxToken: Option.Option<Redacted.Redacted<string>>;
88
+ workflowUrl: Option.Option<string>;
89
+ }>;
90
+ export declare const present: (token: Option.Option<Redacted.Redacted>) => Option.Option<Redacted.Redacted<string>>;
91
+ export declare const toBase64: (bytes: Uint8Array) => string;
92
+ export declare const fromBase64: (text: string) => Uint8Array;
93
+ export declare const bytesOf: (value: Uint8Array | string) => Uint8Array;
94
+ export type Secret = Redacted.Redacted<string> | undefined;
95
+ export declare const keyPairSecrets: (slots: {
96
+ readonly privateKey: Secret;
97
+ readonly secondaryPrivateKey?: Secret;
98
+ }) => Secret[];
99
+ export declare const tlsSecrets: (tls: {
100
+ readonly clientKey?: Secret;
101
+ readonly clientKeyPassphrase?: Secret;
102
+ } | undefined) => Secret[];
103
+ /** Every secret field of the two records: the wire carries them in clear, so each becomes a log mask first. */
104
+ export declare const secretsOf: ({ partner, identity }: Parties) => Array<string>;
105
+ export interface Parties {
106
+ readonly partner: As2PartnerResource;
107
+ readonly identity: As2IdentityResource;
108
+ }
109
+ export declare const partiesOf: (operation: As2Operation, options: {
110
+ readonly partner: As2PartnerResource;
111
+ readonly identity?: As2IdentityResource | undefined;
112
+ }) => Effect.Effect<{
113
+ partner: {
114
+ readonly identity: {
115
+ readonly as2Id: string;
116
+ readonly keys: {
117
+ readonly certificate: string;
118
+ readonly privateKey: Redacted.Redacted<string>;
119
+ readonly secondaryCertificate?: string | undefined;
120
+ readonly secondaryPrivateKey?: Redacted.Redacted<string> | undefined;
121
+ readonly mode: "combined";
122
+ } | {
123
+ readonly mode: "separate";
124
+ readonly signing: {
125
+ readonly certificate: string;
126
+ readonly privateKey: Redacted.Redacted<string>;
127
+ readonly secondaryCertificate?: string | undefined;
128
+ readonly secondaryPrivateKey?: Redacted.Redacted<string> | undefined;
129
+ };
130
+ readonly encryption: {
131
+ readonly certificate: string;
132
+ readonly privateKey: Redacted.Redacted<string>;
133
+ readonly secondaryCertificate?: string | undefined;
134
+ readonly secondaryPrivateKey?: Redacted.Redacted<string> | undefined;
135
+ };
136
+ };
137
+ };
138
+ readonly as2Id: string;
139
+ readonly url?: string | undefined;
140
+ readonly certificates: {
141
+ readonly certificate: string;
142
+ readonly secondaryCertificate?: string | undefined;
143
+ readonly mode: "combined";
144
+ } | {
145
+ readonly mode: "separate";
146
+ readonly encryption: {
147
+ readonly certificate: string;
148
+ readonly secondaryCertificate?: string | undefined;
149
+ };
150
+ readonly signing: {
151
+ readonly certificate: string;
152
+ readonly secondaryCertificate?: string | undefined;
153
+ };
154
+ };
155
+ readonly signOutgoing: boolean;
156
+ readonly encryptOutgoing: boolean;
157
+ readonly requireSignedIncoming: boolean;
158
+ readonly requireEncryptedIncoming: boolean;
159
+ readonly compression: "none" | "zlib";
160
+ readonly receipt: "async" | "none" | "sync";
161
+ readonly receiptSigningAlgorithm: "sha-1" | "sha-256" | "sha-384" | "sha-512";
162
+ readonly digestAlgorithm: "sha-1" | "sha-256" | "sha-384" | "sha-512";
163
+ readonly encryptionAlgorithm: "3des" | "aes128-cbc" | "aes128-gcm" | "aes192-cbc" | "aes256-cbc" | "aes256-gcm";
164
+ readonly httpAuth: {
165
+ readonly type: "none";
166
+ } | {
167
+ readonly type: "basic";
168
+ readonly username: string;
169
+ readonly password: Redacted.Redacted<string>;
170
+ };
171
+ readonly tls?: {
172
+ readonly caCertificate?: string | undefined;
173
+ readonly clientCertificate?: string | undefined;
174
+ readonly clientKey?: Redacted.Redacted<string> | undefined;
175
+ readonly clientKeyPassphrase?: Redacted.Redacted<string> | undefined;
176
+ readonly serverName?: string | undefined;
177
+ } | undefined;
178
+ readonly proxy?: {
179
+ readonly url: string;
180
+ readonly auth: {
181
+ readonly type: "none";
182
+ } | {
183
+ readonly type: "basic";
184
+ readonly username: string;
185
+ readonly password: Redacted.Redacted<string>;
186
+ };
187
+ readonly tls?: {
188
+ readonly caCertificate?: string | undefined;
189
+ readonly clientCertificate?: string | undefined;
190
+ readonly clientKey?: Redacted.Redacted<string> | undefined;
191
+ readonly clientKeyPassphrase?: Redacted.Redacted<string> | undefined;
192
+ readonly serverName?: string | undefined;
193
+ } | undefined;
194
+ } | undefined;
195
+ };
196
+ identity: {
197
+ readonly as2Id: string;
198
+ readonly keys: {
199
+ readonly certificate: string;
200
+ readonly privateKey: Redacted.Redacted<string>;
201
+ readonly secondaryCertificate?: string | undefined;
202
+ readonly secondaryPrivateKey?: Redacted.Redacted<string> | undefined;
203
+ readonly mode: "combined";
204
+ } | {
205
+ readonly mode: "separate";
206
+ readonly signing: {
207
+ readonly certificate: string;
208
+ readonly privateKey: Redacted.Redacted<string>;
209
+ readonly secondaryCertificate?: string | undefined;
210
+ readonly secondaryPrivateKey?: Redacted.Redacted<string> | undefined;
211
+ };
212
+ readonly encryption: {
213
+ readonly certificate: string;
214
+ readonly privateKey: Redacted.Redacted<string>;
215
+ readonly secondaryCertificate?: string | undefined;
216
+ readonly secondaryPrivateKey?: Redacted.Redacted<string> | undefined;
217
+ };
218
+ };
219
+ };
220
+ }, As2Error, never>;
221
+ /** The platform wants the partner without its inlined identity, and the identity beside it. */
222
+ export declare const wireParties: ({ partner, identity }: Parties) => Effect.Effect<{
223
+ partner: {
224
+ as2Id: string;
225
+ url?: string | undefined;
226
+ certificates: {
227
+ readonly certificate: string;
228
+ readonly secondaryCertificate?: string | undefined;
229
+ readonly mode: "combined";
230
+ } | {
231
+ readonly mode: "separate";
232
+ readonly encryption: {
233
+ readonly certificate: string;
234
+ readonly secondaryCertificate?: string | undefined;
235
+ };
236
+ readonly signing: {
237
+ readonly certificate: string;
238
+ readonly secondaryCertificate?: string | undefined;
239
+ };
240
+ };
241
+ signOutgoing?: boolean | undefined;
242
+ encryptOutgoing?: boolean | undefined;
243
+ requireSignedIncoming?: boolean | undefined;
244
+ requireEncryptedIncoming?: boolean | undefined;
245
+ compression?: "none" | "zlib" | undefined;
246
+ receipt?: "async" | "none" | "sync" | undefined;
247
+ receiptSigningAlgorithm?: "sha-1" | "sha-256" | "sha-384" | "sha-512" | undefined;
248
+ digestAlgorithm?: "sha-1" | "sha-256" | "sha-384" | "sha-512" | undefined;
249
+ encryptionAlgorithm?: "3des" | "aes128-cbc" | "aes128-gcm" | "aes192-cbc" | "aes256-cbc" | "aes256-gcm" | undefined;
250
+ httpAuth?: {
251
+ readonly type: "none";
252
+ } | {
253
+ readonly type: "basic";
254
+ readonly username: string;
255
+ readonly password: string;
256
+ } | undefined;
257
+ tls?: {
258
+ readonly caCertificate?: string | undefined;
259
+ readonly clientCertificate?: string | undefined;
260
+ readonly clientKey?: string | undefined;
261
+ readonly clientKeyPassphrase?: string | undefined;
262
+ readonly serverName?: string | undefined;
263
+ } | undefined;
264
+ proxy?: {
265
+ readonly url: string;
266
+ readonly auth?: {
267
+ readonly type: "none";
268
+ } | {
269
+ readonly type: "basic";
270
+ readonly username: string;
271
+ readonly password: string;
272
+ } | undefined;
273
+ readonly tls?: {
274
+ readonly caCertificate?: string | undefined;
275
+ readonly clientCertificate?: string | undefined;
276
+ readonly clientKey?: string | undefined;
277
+ readonly clientKeyPassphrase?: string | undefined;
278
+ readonly serverName?: string | undefined;
279
+ } | undefined;
280
+ } | undefined;
281
+ };
282
+ identity: {
283
+ readonly as2Id: string;
284
+ readonly keys: {
285
+ readonly certificate: string;
286
+ readonly privateKey: string;
287
+ readonly secondaryCertificate?: string | undefined;
288
+ readonly secondaryPrivateKey?: string | undefined;
289
+ readonly mode: "combined";
290
+ } | {
291
+ readonly mode: "separate";
292
+ readonly signing: {
293
+ readonly certificate: string;
294
+ readonly privateKey: string;
295
+ readonly secondaryCertificate?: string | undefined;
296
+ readonly secondaryPrivateKey?: string | undefined;
297
+ };
298
+ readonly encryption: {
299
+ readonly certificate: string;
300
+ readonly privateKey: string;
301
+ readonly secondaryCertificate?: string | undefined;
302
+ readonly secondaryPrivateKey?: string | undefined;
303
+ };
304
+ };
305
+ };
306
+ }, never, never>;
307
+ export declare const isHttpUrl: (value: string) => boolean;
308
+ export type Endpoint = {
309
+ host?: string;
310
+ url?: string;
311
+ scheme?: 'http' | 'https';
312
+ port?: number;
313
+ };
314
+ export declare const endpointOf: (url: string) => Endpoint;
315
+ export declare const originOf: (url: string) => Endpoint;
316
+ export type As2Field = string | number | boolean | undefined;
317
+ export declare const as2Line: (fields: Readonly<Record<string, As2Field>>) => LogFields;
318
+ /** Answers each `As2Error` with the status a partner reads; every other failure passes through unchanged. */
319
+ export declare const answerAs2Failures: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A | HttpServerResponse.HttpServerResponse, Exclude<E, As2Error>, R>;
320
+ export declare const isEmptyBody: (error: HttpClientError.HttpClientError | As2Error) => boolean;
321
+ /** The outcome fields of a span's end line: none while it runs, else its outcome and, on failure, the error code. */
322
+ export declare const endOf: <A>(outcome: SpanOutcome<A> | undefined, success: As2Field) => {
323
+ outcome?: undefined;
324
+ errorCode?: undefined;
325
+ } | {
326
+ outcome: As2Field;
327
+ errorCode?: undefined;
328
+ } | {
329
+ outcome: string;
330
+ errorCode: string;
331
+ };
332
+ /** A fetch error can quote the URL, so a failure keeps only a symbolic code from its cause chain. */
333
+ export declare const symbolicCause: (error: Error) => string;
334
+ export declare const RETRYABLE_WIRE: number[];
335
+ export declare const PERMANENT_WIRE: number[];
336
+ /** Legacy `as2Endpoint`: a partner decides whether to resend from the status, so it gets the status and a generic message. */
337
+ export declare const as2FailureResponse: (error: As2Error) => HttpServerResponse.HttpServerResponse;
338
+ //# sourceMappingURL=As2Wire.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"As2Wire.d.ts","sourceRoot":"","sources":["../src/As2Wire.ts"],"names":[],"mappings":"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"}