domainkit 0.6.0 → 0.8.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.
- package/README.md +20 -18
- package/dist/{canonical-json-9x7gHIoS.mjs → canonical-json-CQYKsZw7.mjs} +10 -4
- package/dist/canonical-json-CQYKsZw7.mjs.map +1 -0
- package/dist/{connect-Db830jad.d.mts → connect-D-X8T9W8.d.mts} +305 -95
- package/dist/{connect-ks3cpqBD.mjs → connect-oI8hcMxc.mjs} +4 -4
- package/dist/connect-oI8hcMxc.mjs.map +1 -0
- package/dist/{connection-DuYDgWir.d.mts → connection-Dp6ZdSo8.d.mts} +2 -2
- package/dist/{connection-api-B__0M3PA.d.mts → connection-api-lqG1nBtD.d.mts} +2 -2
- package/dist/index.d.mts +703 -34
- package/dist/index.mjs +137 -30
- package/dist/index.mjs.map +1 -1
- package/dist/{managed-dns-connections-CaXts84E.mjs → managed-dns-connections-C3A_GBaz.mjs} +2 -2
- package/dist/{managed-dns-connections-CaXts84E.mjs.map → managed-dns-connections-C3A_GBaz.mjs.map} +1 -1
- package/dist/promise.d.mts +72 -13
- package/dist/promise.mjs +13 -8
- package/dist/promise.mjs.map +1 -1
- package/dist/{resolver-DxJPsq6l.mjs → resolver-BeGz1ukw.mjs} +132 -50
- package/dist/resolver-BeGz1ukw.mjs.map +1 -0
- package/dist/{resolver-DUAIlm2I.d.mts → resolver-xoSwyXDJ.d.mts} +889 -15
- package/dist/server.d.mts +3 -3
- package/dist/server.mjs +3 -3
- package/dist/testing.d.mts +2 -2
- package/dist/testing.mjs +5 -7
- package/dist/testing.mjs.map +1 -1
- package/dist/{verify-DAtUAEeg.mjs → verify-DvGPb5C9.mjs} +51 -45
- package/dist/verify-DvGPb5C9.mjs.map +1 -0
- package/dist/{verify-yAy-r9no.d.mts → verify-FpunAcM7.d.mts} +83 -6
- package/package.json +4 -2
- package/dist/canonical-json-9x7gHIoS.mjs.map +0 -1
- package/dist/connect-ks3cpqBD.mjs.map +0 -1
- package/dist/resolver-DxJPsq6l.mjs.map +0 -1
- package/dist/verify-DAtUAEeg.mjs.map +0 -1
|
@@ -8,17 +8,17 @@ declare const Error_base$3: Schema.Class<Error$3, Schema.TaggedStruct<"InvalidIn
|
|
|
8
8
|
}>, import("effect/Cause").YieldableError>;
|
|
9
9
|
declare class Error$3 extends Error_base$3 {}
|
|
10
10
|
declare namespace domain_name_d_exports {
|
|
11
|
-
export { DomainName, Schema$
|
|
11
|
+
export { DomainName, Schema$3 as Schema, decode$5 as decode, parse$1 as parse };
|
|
12
12
|
}
|
|
13
13
|
declare const Type$1: Schema.brand<Schema.String, "DomainName">;
|
|
14
14
|
/** A lower-case, fully qualified DNS name without a trailing dot. */
|
|
15
15
|
type DomainName = typeof Type$1.Type;
|
|
16
16
|
/** Decodes user and wire strings into canonical domain names. */
|
|
17
|
-
declare const Schema$
|
|
17
|
+
declare const Schema$3: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
18
18
|
declare const decode$5: (input: unknown) => Effect.Effect<string & import("effect/Brand").Brand<"DomainName">, Error$3, never>;
|
|
19
19
|
declare function parse$1(input: unknown): DomainName;
|
|
20
20
|
declare namespace dns_record_d_exports {
|
|
21
|
-
export { A, Aaaa, Caa, Cname, DnsRecord, Encoded, Mx, Ns, Observed, Opaque, RequirementMetadata,
|
|
21
|
+
export { A, Aaaa, Caa, Cname, DnsRecord, Encoded, Mx, Ns, Observed, Opaque, RequirementMetadata, RecordSchema as Schema, Srv, Txt, Type, data, decode$4 as decode, equals, parse };
|
|
22
22
|
}
|
|
23
23
|
declare const Type: Schema.Literals<readonly ["A", "AAAA", "CNAME", "TXT", "MX", "CAA", "NS", "SRV"]>;
|
|
24
24
|
type Type = typeof Type.Type;
|
|
@@ -28,7 +28,7 @@ declare const RequirementMetadata: Schema.Struct<{
|
|
|
28
28
|
readonly purpose: Schema.String;
|
|
29
29
|
}>;
|
|
30
30
|
interface RequirementMetadata extends Schema.Schema.Type<typeof RequirementMetadata> {}
|
|
31
|
-
declare const
|
|
31
|
+
declare const RecordSchema: Schema.TaggedUnion<{
|
|
32
32
|
readonly A: Schema.TaggedStruct<"A", {
|
|
33
33
|
readonly metadata: Schema.Struct<{
|
|
34
34
|
readonly ownership: Schema.String;
|
|
@@ -124,103 +124,249 @@ declare const Schema$3: Schema.TaggedUnion<{
|
|
|
124
124
|
readonly value: Schema.String;
|
|
125
125
|
}>;
|
|
126
126
|
}>;
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
readonly
|
|
127
|
+
/** Constructs an A record requirement from trusted application data. */
|
|
128
|
+
declare function A(input: Parameters<typeof RecordSchema.cases.A.make>[0]): {
|
|
129
|
+
readonly _tag: "A";
|
|
130
|
+
readonly metadata: {
|
|
131
|
+
readonly ownership: string;
|
|
132
|
+
readonly provenance: string;
|
|
133
|
+
readonly purpose: string;
|
|
134
|
+
};
|
|
135
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
136
|
+
readonly policy: "append" | "exclusive";
|
|
137
|
+
readonly ttl: number | null;
|
|
138
|
+
readonly address: string;
|
|
139
|
+
};
|
|
140
|
+
declare namespace A {
|
|
141
|
+
const Schema: Schema.TaggedStruct<"A", {
|
|
142
|
+
readonly metadata: Schema.Struct<{
|
|
143
|
+
readonly ownership: Schema.String;
|
|
144
|
+
readonly provenance: Schema.String;
|
|
145
|
+
readonly purpose: Schema.String;
|
|
146
|
+
}>;
|
|
147
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
148
|
+
readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
|
|
149
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
150
|
+
readonly address: Schema.String;
|
|
132
151
|
}>;
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
readonly
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
readonly
|
|
140
|
-
readonly
|
|
141
|
-
|
|
152
|
+
}
|
|
153
|
+
/** Constructs an AAAA record requirement from trusted application data. */
|
|
154
|
+
declare function Aaaa(input: Parameters<typeof RecordSchema.cases.AAAA.make>[0]): {
|
|
155
|
+
readonly _tag: "AAAA";
|
|
156
|
+
readonly metadata: {
|
|
157
|
+
readonly ownership: string;
|
|
158
|
+
readonly provenance: string;
|
|
159
|
+
readonly purpose: string;
|
|
160
|
+
};
|
|
161
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
162
|
+
readonly policy: "append" | "exclusive";
|
|
163
|
+
readonly ttl: number | null;
|
|
164
|
+
readonly address: string;
|
|
165
|
+
};
|
|
166
|
+
declare namespace Aaaa {
|
|
167
|
+
const Schema: Schema.TaggedStruct<"AAAA", {
|
|
168
|
+
readonly metadata: Schema.Struct<{
|
|
169
|
+
readonly ownership: Schema.String;
|
|
170
|
+
readonly provenance: Schema.String;
|
|
171
|
+
readonly purpose: Schema.String;
|
|
172
|
+
}>;
|
|
173
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
174
|
+
readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
|
|
175
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
176
|
+
readonly address: Schema.String;
|
|
142
177
|
}>;
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
readonly
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
readonly
|
|
150
|
-
readonly
|
|
151
|
-
|
|
178
|
+
}
|
|
179
|
+
/** Constructs a CAA record requirement from trusted application data. */
|
|
180
|
+
declare function Caa(input: Parameters<typeof RecordSchema.cases.CAA.make>[0]): {
|
|
181
|
+
readonly _tag: "CAA";
|
|
182
|
+
readonly metadata: {
|
|
183
|
+
readonly ownership: string;
|
|
184
|
+
readonly provenance: string;
|
|
185
|
+
readonly purpose: string;
|
|
186
|
+
};
|
|
187
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
188
|
+
readonly policy: "append" | "exclusive";
|
|
189
|
+
readonly ttl: number | null;
|
|
190
|
+
readonly flags: number;
|
|
191
|
+
readonly tag: "iodef" | "issue" | "issuewild";
|
|
192
|
+
readonly value: string;
|
|
193
|
+
};
|
|
194
|
+
declare namespace Caa {
|
|
195
|
+
const Schema: Schema.TaggedStruct<"CAA", {
|
|
196
|
+
readonly metadata: Schema.Struct<{
|
|
197
|
+
readonly ownership: Schema.String;
|
|
198
|
+
readonly provenance: Schema.String;
|
|
199
|
+
readonly purpose: Schema.String;
|
|
200
|
+
}>;
|
|
201
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
202
|
+
readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
|
|
203
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
204
|
+
readonly flags: Schema.Int;
|
|
205
|
+
readonly tag: Schema.Literals<readonly ["issue", "issuewild", "iodef"]>;
|
|
206
|
+
readonly value: Schema.String;
|
|
152
207
|
}>;
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
readonly
|
|
157
|
-
readonly
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
208
|
+
}
|
|
209
|
+
/** Constructs a CNAME record requirement from trusted application data. */
|
|
210
|
+
declare function Cname(input: Parameters<typeof RecordSchema.cases.CNAME.make>[0]): {
|
|
211
|
+
readonly _tag: "CNAME";
|
|
212
|
+
readonly metadata: {
|
|
213
|
+
readonly ownership: string;
|
|
214
|
+
readonly provenance: string;
|
|
215
|
+
readonly purpose: string;
|
|
216
|
+
};
|
|
217
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
218
|
+
readonly ttl: number | null;
|
|
219
|
+
readonly policy: "exclusive";
|
|
220
|
+
readonly target: string & import("effect/Brand").Brand<"DomainName">;
|
|
221
|
+
};
|
|
222
|
+
declare namespace Cname {
|
|
223
|
+
const Schema: Schema.TaggedStruct<"CNAME", {
|
|
224
|
+
readonly metadata: Schema.Struct<{
|
|
225
|
+
readonly ownership: Schema.String;
|
|
226
|
+
readonly provenance: Schema.String;
|
|
227
|
+
readonly purpose: Schema.String;
|
|
228
|
+
}>;
|
|
229
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
230
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
231
|
+
readonly policy: Schema.Literal<"exclusive">;
|
|
232
|
+
readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
164
233
|
}>;
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
readonly
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
readonly
|
|
172
|
-
readonly
|
|
173
|
-
|
|
234
|
+
}
|
|
235
|
+
/** Constructs an MX record requirement from trusted application data. */
|
|
236
|
+
declare function Mx(input: Parameters<typeof RecordSchema.cases.MX.make>[0]): {
|
|
237
|
+
readonly _tag: "MX";
|
|
238
|
+
readonly metadata: {
|
|
239
|
+
readonly ownership: string;
|
|
240
|
+
readonly provenance: string;
|
|
241
|
+
readonly purpose: string;
|
|
242
|
+
};
|
|
243
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
244
|
+
readonly policy: "append" | "exclusive";
|
|
245
|
+
readonly ttl: number | null;
|
|
246
|
+
readonly exchange: string & import("effect/Brand").Brand<"DomainName">;
|
|
247
|
+
readonly priority: number;
|
|
248
|
+
};
|
|
249
|
+
declare namespace Mx {
|
|
250
|
+
const Schema: Schema.TaggedStruct<"MX", {
|
|
251
|
+
readonly metadata: Schema.Struct<{
|
|
252
|
+
readonly ownership: Schema.String;
|
|
253
|
+
readonly provenance: Schema.String;
|
|
254
|
+
readonly purpose: Schema.String;
|
|
255
|
+
}>;
|
|
256
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
257
|
+
readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
|
|
258
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
259
|
+
readonly exchange: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
260
|
+
readonly priority: Schema.Int;
|
|
174
261
|
}>;
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
readonly
|
|
179
|
-
readonly
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
readonly
|
|
183
|
-
|
|
184
|
-
|
|
262
|
+
}
|
|
263
|
+
/** Constructs an NS record requirement from trusted application data. */
|
|
264
|
+
declare function Ns(input: Parameters<typeof RecordSchema.cases.NS.make>[0]): {
|
|
265
|
+
readonly _tag: "NS";
|
|
266
|
+
readonly metadata: {
|
|
267
|
+
readonly ownership: string;
|
|
268
|
+
readonly provenance: string;
|
|
269
|
+
readonly purpose: string;
|
|
270
|
+
};
|
|
271
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
272
|
+
readonly policy: "append" | "exclusive";
|
|
273
|
+
readonly ttl: number | null;
|
|
274
|
+
readonly target: string & import("effect/Brand").Brand<"DomainName">;
|
|
275
|
+
};
|
|
276
|
+
declare namespace Ns {
|
|
277
|
+
const Schema: Schema.TaggedStruct<"NS", {
|
|
278
|
+
readonly metadata: Schema.Struct<{
|
|
279
|
+
readonly ownership: Schema.String;
|
|
280
|
+
readonly provenance: Schema.String;
|
|
281
|
+
readonly purpose: Schema.String;
|
|
282
|
+
}>;
|
|
283
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
284
|
+
readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
|
|
285
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
286
|
+
readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
185
287
|
}>;
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
readonly
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
readonly
|
|
193
|
-
readonly
|
|
194
|
-
|
|
288
|
+
}
|
|
289
|
+
/** Constructs an SRV record requirement from trusted application data. */
|
|
290
|
+
declare function Srv(input: Parameters<typeof RecordSchema.cases.SRV.make>[0]): {
|
|
291
|
+
readonly _tag: "SRV";
|
|
292
|
+
readonly metadata: {
|
|
293
|
+
readonly ownership: string;
|
|
294
|
+
readonly provenance: string;
|
|
295
|
+
readonly purpose: string;
|
|
296
|
+
};
|
|
297
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
298
|
+
readonly policy: "append" | "exclusive";
|
|
299
|
+
readonly ttl: number | null;
|
|
300
|
+
readonly port: number;
|
|
301
|
+
readonly priority: number;
|
|
302
|
+
readonly target: string & import("effect/Brand").Brand<"DomainName">;
|
|
303
|
+
readonly weight: number;
|
|
304
|
+
};
|
|
305
|
+
declare namespace Srv {
|
|
306
|
+
const Schema: Schema.TaggedStruct<"SRV", {
|
|
307
|
+
readonly metadata: Schema.Struct<{
|
|
308
|
+
readonly ownership: Schema.String;
|
|
309
|
+
readonly provenance: Schema.String;
|
|
310
|
+
readonly purpose: Schema.String;
|
|
311
|
+
}>;
|
|
312
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
313
|
+
readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
|
|
314
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
315
|
+
readonly port: Schema.Int;
|
|
316
|
+
readonly priority: Schema.Int;
|
|
317
|
+
readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
318
|
+
readonly weight: Schema.Int;
|
|
195
319
|
}>;
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
readonly
|
|
200
|
-
readonly
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
320
|
+
}
|
|
321
|
+
/** Constructs a TXT record requirement from trusted application data. */
|
|
322
|
+
declare function Txt(input: Parameters<typeof RecordSchema.cases.TXT.make>[0]): {
|
|
323
|
+
readonly _tag: "TXT";
|
|
324
|
+
readonly metadata: {
|
|
325
|
+
readonly ownership: string;
|
|
326
|
+
readonly provenance: string;
|
|
327
|
+
readonly purpose: string;
|
|
328
|
+
};
|
|
329
|
+
readonly name: string & import("effect/Brand").Brand<"DomainName">;
|
|
330
|
+
readonly policy: "append" | "exclusive";
|
|
331
|
+
readonly ttl: number | null;
|
|
332
|
+
readonly value: string;
|
|
333
|
+
};
|
|
334
|
+
declare namespace Txt {
|
|
335
|
+
const Schema: Schema.TaggedStruct<"TXT", {
|
|
336
|
+
readonly metadata: Schema.Struct<{
|
|
337
|
+
readonly ownership: Schema.String;
|
|
338
|
+
readonly provenance: Schema.String;
|
|
339
|
+
readonly purpose: Schema.String;
|
|
340
|
+
}>;
|
|
341
|
+
readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
|
|
342
|
+
readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
|
|
343
|
+
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
344
|
+
readonly value: Schema.String;
|
|
208
345
|
}>;
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
readonly value: Schema.String;
|
|
213
|
-
}>;
|
|
214
|
-
type DnsRecord = typeof Schema$3.Type;
|
|
215
|
-
type Encoded = typeof Schema$3.Encoded;
|
|
346
|
+
}
|
|
347
|
+
type DnsRecord = typeof RecordSchema.Type;
|
|
348
|
+
type Encoded = typeof RecordSchema.Encoded;
|
|
216
349
|
/** Provider state that DomainKit cannot create but must retain for safe reconciliation. */
|
|
217
|
-
declare const
|
|
218
|
-
readonly _tag: Schema.Literal<"Opaque">;
|
|
350
|
+
declare const OpaqueSchema: Schema.TaggedStruct<"Opaque", {
|
|
219
351
|
readonly name: Schema.String;
|
|
220
352
|
readonly providerRecordId: Schema.NullOr<Schema.String>;
|
|
221
353
|
readonly providerType: Schema.String;
|
|
222
354
|
}>;
|
|
223
|
-
|
|
355
|
+
/** Constructs an opaque provider record from trusted adapter data. */
|
|
356
|
+
declare function Opaque(input: Parameters<typeof OpaqueSchema.make>[0]): {
|
|
357
|
+
readonly _tag: "Opaque";
|
|
358
|
+
readonly name: string;
|
|
359
|
+
readonly providerRecordId: string | null;
|
|
360
|
+
readonly providerType: string;
|
|
361
|
+
};
|
|
362
|
+
declare namespace Opaque {
|
|
363
|
+
const Schema: Schema.TaggedStruct<"Opaque", {
|
|
364
|
+
readonly name: Schema.String;
|
|
365
|
+
readonly providerRecordId: Schema.NullOr<Schema.String>;
|
|
366
|
+
readonly providerType: Schema.String;
|
|
367
|
+
}>;
|
|
368
|
+
}
|
|
369
|
+
interface Opaque extends Schema.Schema.Type<typeof OpaqueSchema> {}
|
|
224
370
|
/** Any DNS record observed through a provider, including non-portable record types. */
|
|
225
371
|
declare const Observed: Schema.Union<readonly [Schema.TaggedUnion<{
|
|
226
372
|
readonly A: Schema.TaggedStruct<"A", {
|
|
@@ -317,8 +463,7 @@ declare const Observed: Schema.Union<readonly [Schema.TaggedUnion<{
|
|
|
317
463
|
readonly ttl: Schema.NullOr<Schema.Int>;
|
|
318
464
|
readonly value: Schema.String;
|
|
319
465
|
}>;
|
|
320
|
-
}>, Schema.
|
|
321
|
-
readonly _tag: Schema.Literal<"Opaque">;
|
|
466
|
+
}>, Schema.TaggedStruct<"Opaque", {
|
|
322
467
|
readonly name: Schema.String;
|
|
323
468
|
readonly providerRecordId: Schema.NullOr<Schema.String>;
|
|
324
469
|
readonly providerType: Schema.String;
|
|
@@ -478,7 +623,7 @@ declare const make: typeof Value.from;
|
|
|
478
623
|
declare namespace manifest_d_exports {
|
|
479
624
|
export { AsyncOAuthSubjectResolver, IntegrationMethod, Manifest, Method$1 as Method, OAuthClientConfiguration, OAuthMethod, OAuthSubjectResolver, Schema$2 as Schema, TokenValidation, decode$3 as decode };
|
|
480
625
|
}
|
|
481
|
-
declare const
|
|
626
|
+
declare const MethodSchema: Schema.TaggedUnion<{
|
|
482
627
|
readonly integration: Schema.TaggedStruct<"integration", {
|
|
483
628
|
readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
|
|
484
629
|
readonly installUrl: Schema.String;
|
|
@@ -500,6 +645,55 @@ declare const Method$1: Schema.TaggedUnion<{
|
|
|
500
645
|
readonly instructionsUrl: Schema.String;
|
|
501
646
|
}>;
|
|
502
647
|
}>;
|
|
648
|
+
/** Provider authentication method schema and constructors for trusted manifests. */
|
|
649
|
+
declare const Method$1: {
|
|
650
|
+
Schema: Schema.TaggedUnion<{
|
|
651
|
+
readonly integration: Schema.TaggedStruct<"integration", {
|
|
652
|
+
readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
|
|
653
|
+
readonly installUrl: Schema.String;
|
|
654
|
+
readonly tokenEndpoint: Schema.String;
|
|
655
|
+
}>;
|
|
656
|
+
readonly oauth2: Schema.TaggedStruct<"oauth2", {
|
|
657
|
+
readonly authorizationServer: Schema.Struct<{
|
|
658
|
+
readonly authorization_endpoint: Schema.String;
|
|
659
|
+
readonly issuer: Schema.String;
|
|
660
|
+
readonly revocation_endpoint: Schema.optionalKey<Schema.String>;
|
|
661
|
+
readonly token_endpoint: Schema.String;
|
|
662
|
+
}>;
|
|
663
|
+
readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
|
|
664
|
+
readonly clientAuth: Schema.Literals<readonly ["none", "client_secret_basic", "client_secret_post"]>;
|
|
665
|
+
readonly scopes: Schema.$Array<Schema.String>;
|
|
666
|
+
}>;
|
|
667
|
+
readonly token: Schema.TaggedStruct<"token", {
|
|
668
|
+
readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
|
|
669
|
+
readonly instructionsUrl: Schema.String;
|
|
670
|
+
}>;
|
|
671
|
+
}>;
|
|
672
|
+
integration: (input: Parameters<typeof MethodSchema.cases.integration.make>[0]) => {
|
|
673
|
+
readonly _tag: "integration";
|
|
674
|
+
readonly capabilities: readonly ("dns:read" | "dns:write")[];
|
|
675
|
+
readonly installUrl: string;
|
|
676
|
+
readonly tokenEndpoint: string;
|
|
677
|
+
};
|
|
678
|
+
oauth2: (input: Parameters<typeof MethodSchema.cases.oauth2.make>[0]) => {
|
|
679
|
+
readonly _tag: "oauth2";
|
|
680
|
+
readonly authorizationServer: {
|
|
681
|
+
readonly authorization_endpoint: string;
|
|
682
|
+
readonly issuer: string;
|
|
683
|
+
readonly revocation_endpoint?: string;
|
|
684
|
+
readonly token_endpoint: string;
|
|
685
|
+
};
|
|
686
|
+
readonly capabilities: readonly ("dns:read" | "dns:write")[];
|
|
687
|
+
readonly clientAuth: "client_secret_basic" | "client_secret_post" | "none";
|
|
688
|
+
readonly scopes: readonly string[];
|
|
689
|
+
};
|
|
690
|
+
token: (input: Parameters<typeof MethodSchema.cases.token.make>[0]) => {
|
|
691
|
+
readonly _tag: "token";
|
|
692
|
+
readonly capabilities: readonly ("dns:read" | "dns:write")[];
|
|
693
|
+
readonly instructionsUrl: string;
|
|
694
|
+
};
|
|
695
|
+
};
|
|
696
|
+
type Method$1 = typeof MethodSchema.Type;
|
|
503
697
|
declare const Schema$2: Schema.Struct<{
|
|
504
698
|
readonly methods: Schema.$Array<Schema.TaggedUnion<{
|
|
505
699
|
readonly integration: Schema.TaggedStruct<"integration", {
|
|
@@ -683,13 +877,29 @@ declare const CapabilityEvidence: Schema.Struct<{
|
|
|
683
877
|
}>;
|
|
684
878
|
}>;
|
|
685
879
|
interface CapabilityEvidence extends Schema.Schema.Type<typeof CapabilityEvidence> {}
|
|
686
|
-
declare const
|
|
880
|
+
declare const RevocationSchema: Schema.TaggedUnion<{
|
|
687
881
|
readonly Active: Schema.TaggedStruct<"Active", {}>;
|
|
688
882
|
readonly Pending: Schema.TaggedStruct<"Pending", {
|
|
689
883
|
readonly requestedAt: Schema.DateFromString;
|
|
690
884
|
}>;
|
|
691
885
|
}>;
|
|
692
|
-
|
|
886
|
+
/** Revocation state schema and callable constructors for trusted lifecycle values. */
|
|
887
|
+
declare const Revocation: {
|
|
888
|
+
Schema: Schema.TaggedUnion<{
|
|
889
|
+
readonly Active: Schema.TaggedStruct<"Active", {}>;
|
|
890
|
+
readonly Pending: Schema.TaggedStruct<"Pending", {
|
|
891
|
+
readonly requestedAt: Schema.DateFromString;
|
|
892
|
+
}>;
|
|
893
|
+
}>;
|
|
894
|
+
Active: () => {
|
|
895
|
+
readonly _tag: "Active";
|
|
896
|
+
};
|
|
897
|
+
Pending: (input: Parameters<typeof RevocationSchema.cases.Pending.make>[0]) => {
|
|
898
|
+
readonly _tag: "Pending";
|
|
899
|
+
readonly requestedAt: Date;
|
|
900
|
+
};
|
|
901
|
+
};
|
|
902
|
+
type Revocation = typeof RevocationSchema.Type;
|
|
693
903
|
/** A provider credential authorization shared by one or more organization connections. */
|
|
694
904
|
declare const Schema$1: Schema.Struct<{
|
|
695
905
|
readonly authorizedById: Schema.String;
|
|
@@ -1383,5 +1593,5 @@ declare const start: (input: BaseInput & {
|
|
|
1383
1593
|
declare const complete: (input: CompleteInput) => Effect.Effect<ProviderConnection, Error$1 | AuthenticationFailure, Crypto.Crypto | Service>;
|
|
1384
1594
|
type Failure = AuthenticationFailure | Error$1 | CryptoError;
|
|
1385
1595
|
//#endregion
|
|
1386
|
-
export { Schema$2 as $, ConnectionStatus as A, Schema$
|
|
1387
|
-
//# sourceMappingURL=connect-
|
|
1596
|
+
export { Schema$2 as $, ConnectionStatus as A, Schema$3 as At, project as B, ConnectInput as C, Txt as Ct, Interface as D, equals as Dt, Error$1 as E, dns_record_d_exports as Et, StoredConnection as F, authorization_d_exports as G, Capability as H, StoredCredential as I, Manifest as J, AsyncOAuthSubjectResolver as K, authorizationError as L, ProviderConnection as M, parse$1 as Mt, ProviderTarget as N, Error$3 as Nt, Service as O, parse as Ot, ProviderTargetEvidence as P, invalid_input_d_exports as Pt, OAuthSubjectResolver as Q, decode$1 as R, AttachmentResult as S, Srv as St, DisconnectResult as T, data as Tt, CapabilityEvidence as U, validate as V, ProviderAuthorization as W, OAuthClientConfiguration as X, Method$1 as Y, OAuthMethod as Z, provider_context_d_exports as _, Ns as _t, Continuation as a, CreateResult as at, Aggregate as b, RecordSchema as bt, Failure as c, Service$1 as ct, Method as d, Aaaa as dt, TokenValidation as et, StartResult as f, Caa as ft, Envelope as g, Mx as gt, Codec as h, Encoded as ht, CompleteInput as i, AsyncInterface as it, DomainAttachment as j, domain_name_d_exports as jt, AuthorizationError as k, DomainName as kt, InteractiveFlow as l, provider_d_exports as lt, start as m, DnsRecord as mt, AuthenticationFailure as n, Value as nt, ContinuationStore as o, Error$2 as ot, complete as p, Cname as pt, IntegrationMethod as q, BaseInput as r, secret_d_exports as rt, Error as s, Interface$1 as st, Authentication as t, manifest_d_exports as tt, InteractiveStart as u, A as ut, CryptoError as v, Observed as vt, DetachResult as w, Type as wt, AggregateSchema as x, RequirementMetadata as xt, canonical_json_d_exports as y, Opaque as yt, encode$1 as z };
|
|
1597
|
+
//# sourceMappingURL=connect-D-X8T9W8.d.mts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { l as Revocation, s as Service, w as project } from "./canonical-json-CQYKsZw7.mjs";
|
|
2
2
|
import { Clock, Crypto, Data, Effect, Schema } from "effect";
|
|
3
3
|
//#region src/auth/connect.ts
|
|
4
4
|
const Method = Data.taggedEnum();
|
|
@@ -67,7 +67,7 @@ const connect = Effect.fn("Connection.connect")(function* (input) {
|
|
|
67
67
|
providerContext: input.authentication.providerContext,
|
|
68
68
|
providerId: input.providerId,
|
|
69
69
|
requiredCapabilities: [...input.requiredCapabilities],
|
|
70
|
-
revocation:
|
|
70
|
+
revocation: Revocation.Active(),
|
|
71
71
|
scopes: [...input.authentication.scopes]
|
|
72
72
|
} : {
|
|
73
73
|
...existing.authorization,
|
|
@@ -75,7 +75,7 @@ const connect = Effect.fn("Connection.connect")(function* (input) {
|
|
|
75
75
|
method: input.method,
|
|
76
76
|
providerContext: input.authentication.providerContext,
|
|
77
77
|
requiredCapabilities: [...input.requiredCapabilities],
|
|
78
|
-
revocation:
|
|
78
|
+
revocation: Revocation.Active(),
|
|
79
79
|
scopes: [...input.authentication.scopes]
|
|
80
80
|
};
|
|
81
81
|
const existingConnection = yield* repository.findConnection(input.ownerId, authorizationId);
|
|
@@ -182,4 +182,4 @@ function mergeEvidence(current, incoming) {
|
|
|
182
182
|
//#endregion
|
|
183
183
|
export { start as a, complete as i, Method as n, StartResult as r, Error as t };
|
|
184
184
|
|
|
185
|
-
//# sourceMappingURL=connect-
|
|
185
|
+
//# sourceMappingURL=connect-oI8hcMxc.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect-oI8hcMxc.mjs","names":["Repository.Service","Connection.project"],"sources":["../src/auth/connect.ts"],"sourcesContent":["import { Clock, Crypto, Data, Effect, Schema } from \"effect\";\n\nimport { CryptoError } from \"../plan/canonical-json.ts\";\nimport type { Error as InvalidInputError } from \"../invalid-input.ts\";\nimport type * as DnsProvider from \"../provider/provider.ts\";\nimport * as ProviderAuthorization from \"./authorization.ts\";\nimport * as Connection from \"./connection.ts\";\nimport * as Repository from \"./lifecycle-repository.ts\";\nimport type * as ProviderContext from \"./provider-context.ts\";\nimport type * as Secret from \"./secret.ts\";\n\nexport interface Authentication {\n readonly capabilityEvidence: ReadonlyArray<ProviderAuthorization.CapabilityEvidence>;\n readonly credential: Connection.StoredCredential;\n /** Provider-specific subject identity used only during authentication; targets are selected later. */\n readonly providerAccountId: string;\n readonly providerContext: ProviderContext.Envelope;\n readonly scopes: ReadonlyArray<string>;\n}\n\nexport type AuthenticationFailure = Error | InvalidInputError | DnsProvider.Error;\n\nexport interface InteractiveStart {\n readonly authorizationUrl: URL;\n readonly payload: Secret.Value;\n}\n\nexport interface Continuation extends BaseInput {\n readonly expiresAt: Date;\n readonly id: string;\n readonly method: \"integration\" | \"oauth2\";\n readonly payload: Secret.Value;\n readonly providerId: string;\n readonly requiredCapabilities: ReadonlyArray<ProviderAuthorization.Capability>;\n}\n\nexport interface ContinuationStore {\n readonly consume: (id: string, now: Date) => Effect.Effect<Continuation | null, Error>;\n readonly put: (continuation: Continuation) => Effect.Effect<void, Error>;\n}\n\nexport interface InteractiveFlow {\n readonly complete: (\n payload: Secret.Value,\n callbackUrl: URL,\n ) => Effect.Effect<Authentication, AuthenticationFailure>;\n readonly method: \"integration\" | \"oauth2\";\n readonly providerId: string;\n readonly requiredCapabilities: ReadonlyArray<ProviderAuthorization.Capability>;\n readonly start: (\n continuationId: string,\n ) => Effect.Effect<InteractiveStart, AuthenticationFailure, Crypto.Crypto>;\n}\n\nexport type Method = Data.TaggedEnum<{\n Interactive: {\n readonly continuations: ContinuationStore;\n readonly flow: InteractiveFlow;\n readonly ttlMs?: number;\n };\n Token: {\n readonly authenticate: (\n token: Secret.Value,\n ) => Effect.Effect<Authentication, AuthenticationFailure>;\n readonly providerId: string;\n readonly requiredCapabilities: ReadonlyArray<ProviderAuthorization.Capability>;\n readonly token: Secret.Value;\n };\n}>;\nexport const Method = Data.taggedEnum<Method>();\n\nexport type StartResult = Data.TaggedEnum<{\n Connected: { readonly connection: Connection.ProviderConnection };\n Redirect: { readonly authorizationUrl: URL; readonly continuationId: string };\n}>;\nexport const StartResult = Data.taggedEnum<StartResult>();\n\nexport class Error extends Schema.TaggedError<Error>()(\"ConnectionError\", {\n category: Schema.Literals([\"authorization\", \"provider\", \"validation\"]),\n message: Schema.String,\n operation: Schema.String,\n retry: Schema.Literals([\"never\", \"after-user-action\", \"safe\", \"unknown\"]),\n}) {}\n\n/** Inputs shared by token and interactive connection flows. */\nexport interface BaseInput {\n readonly authorizedById: string;\n /** Existing authorization may be supplied only after the host completed fresh provider proof. */\n readonly authorizationId?: string;\n readonly ownerId: string;\n}\n\nexport interface CompleteInput {\n readonly callbackUrl: URL;\n readonly continuationId: string;\n readonly continuations: ContinuationStore;\n readonly flow: InteractiveFlow;\n}\n\nexport interface ConnectInput extends BaseInput {\n readonly authentication: Authentication;\n readonly method: \"integration\" | \"oauth2\" | \"token\";\n readonly providerId: string;\n readonly requiredCapabilities: ReadonlyArray<ProviderAuthorization.Capability>;\n}\n\nconst missingCapability = (\n authentication: Authentication,\n requiredCapabilities: ReadonlyArray<ProviderAuthorization.Capability>,\n): ProviderAuthorization.Capability | undefined =>\n requiredCapabilities.find(\n (capability) =>\n !authentication.capabilityEvidence.some((item) => item.capability === capability),\n );\n\nconst freshId = Effect.fn(\"Connection.freshId\")(function* () {\n const crypto = yield* Crypto.Crypto;\n return yield* crypto.randomUUIDv4.pipe(\n Effect.mapError(\n (cause) =>\n new Error({\n category: \"validation\",\n message: cause.message,\n operation: \"Connection.connect\",\n retry: \"safe\",\n }),\n ),\n );\n});\n\n/** Persist one authenticated provider connection, optionally reusing a proven authorization. */\nexport const connect = Effect.fn(\"Connection.connect\")(function* (input: ConnectInput) {\n const repository = yield* Repository.Service;\n const now = new Date(yield* Clock.currentTimeMillis);\n const missing = missingCapability(input.authentication, input.requiredCapabilities);\n if (missing !== undefined) {\n return yield* new Error({\n category: \"authorization\",\n message: `Provider authorization lacks evidence for ${missing}`,\n operation: \"Connection.connect\",\n retry: \"after-user-action\",\n });\n }\n\n const existing =\n input.authorizationId === undefined ? null : yield* repository.get(input.authorizationId);\n if (input.authorizationId !== undefined && existing === null) {\n return yield* new Error({\n category: \"authorization\",\n message: \"Provider authorization does not exist\",\n operation: \"Connection.connect\",\n retry: \"after-user-action\",\n });\n }\n if (existing?.authorization.revocation._tag === \"Pending\") {\n return yield* new Error({\n category: \"authorization\",\n message: \"Provider authorization is awaiting revocation recovery\",\n operation: \"Connection.connect\",\n retry: \"after-user-action\",\n });\n }\n if (\n existing !== null &&\n (existing.authorization.providerId !== input.providerId ||\n existing.authorization.method !== input.method)\n ) {\n return yield* new Error({\n category: \"authorization\",\n message: \"Provider proof does not match the existing authorization\",\n operation: \"Connection.connect\",\n retry: \"never\",\n });\n }\n\n const authorizationId = existing?.authorization.id ?? (yield* freshId());\n const authorization: ProviderAuthorization.ProviderAuthorization =\n existing === null\n ? {\n authorizedById: input.authorizedById,\n capabilityEvidence: [...input.authentication.capabilityEvidence],\n createdAt: now,\n id: authorizationId,\n method: input.method,\n providerContext: input.authentication.providerContext,\n providerId: input.providerId,\n requiredCapabilities: [...input.requiredCapabilities],\n revocation: ProviderAuthorization.Revocation.Active(),\n scopes: [...input.authentication.scopes],\n }\n : {\n ...existing.authorization,\n capabilityEvidence: mergeEvidence(\n existing.authorization.capabilityEvidence,\n input.authentication.capabilityEvidence,\n ),\n method: input.method,\n providerContext: input.authentication.providerContext,\n requiredCapabilities: [...input.requiredCapabilities],\n revocation: ProviderAuthorization.Revocation.Active(),\n scopes: [...input.authentication.scopes],\n };\n const existingConnection = yield* repository.findConnection(input.ownerId, authorizationId);\n const connection: Connection.StoredConnection = {\n authorizationId,\n createdAt: existingConnection?.createdAt ?? now,\n id: existingConnection?.id ?? (yield* freshId()),\n method: input.method,\n ownerId: input.ownerId,\n providerId: input.providerId,\n };\n return yield* repository.connect({\n authorization,\n connection,\n credential: input.authentication.credential,\n ...(existing === null ? {} : { expectedAuthorizationId: existing.authorization.id }),\n ...(existingConnection === null ? {} : { expectedConnectionId: existingConnection.id }),\n });\n});\n\nexport const start = Effect.fn(\"Connection.start\")(function* (\n input: BaseInput & { readonly method: Method },\n) {\n if (input.method._tag === \"Interactive\") {\n const crypto = yield* Crypto.Crypto;\n const now = yield* Clock.currentTimeMillis;\n const continuationId = yield* crypto.randomUUIDv4.pipe(\n Effect.mapError(\n (cause) =>\n new Error({\n category: \"validation\",\n message: cause.message,\n operation: \"Connection.start\",\n retry: \"safe\",\n }),\n ),\n );\n const started = yield* input.method.flow.start(continuationId);\n yield* input.method.continuations.put({\n authorizedById: input.authorizedById,\n ...(input.authorizationId === undefined ? {} : { authorizationId: input.authorizationId }),\n expiresAt: new Date(now + (input.method.ttlMs ?? 10 * 60_000)),\n id: continuationId,\n method: input.method.flow.method,\n ownerId: input.ownerId,\n payload: started.payload,\n providerId: input.method.flow.providerId,\n requiredCapabilities: [...input.method.flow.requiredCapabilities],\n });\n return StartResult.Redirect({\n authorizationUrl: started.authorizationUrl,\n continuationId,\n });\n }\n const authentication = yield* input.method.authenticate(input.method.token);\n const aggregate = yield* connect({\n authentication,\n authorizedById: input.authorizedById,\n ...(input.authorizationId === undefined ? {} : { authorizationId: input.authorizationId }),\n method: \"token\",\n ownerId: input.ownerId,\n providerId: input.method.providerId,\n requiredCapabilities: input.method.requiredCapabilities,\n });\n const storedConnection = aggregate.connections.find(({ ownerId }) => ownerId === input.ownerId);\n if (storedConnection === undefined) {\n return yield* new Error({\n category: \"validation\",\n message: \"Connected provider authorization returned no organization connection\",\n operation: \"Connection.start\",\n retry: \"safe\",\n });\n }\n return StartResult.Connected({\n connection: Connection.project(storedConnection, aggregate.authorization, aggregate.credential),\n });\n});\n\nexport const complete = Effect.fn(\"Connection.complete\")(function* (input: CompleteInput) {\n const continuation = yield* input.continuations.consume(\n input.continuationId,\n new Date(yield* Clock.currentTimeMillis),\n );\n if (continuation === null) {\n return yield* new Error({\n category: \"authorization\",\n message: \"Connection continuation is expired, unknown, or already consumed\",\n operation: \"Connection.complete\",\n retry: \"after-user-action\",\n });\n }\n if (\n continuation.providerId !== input.flow.providerId ||\n continuation.method !== input.flow.method\n ) {\n return yield* new Error({\n category: \"authorization\",\n message: \"Connection continuation does not match the provider flow\",\n operation: \"Connection.complete\",\n retry: \"never\",\n });\n }\n const authentication = yield* input.flow.complete(continuation.payload, input.callbackUrl);\n const aggregate = yield* connect({\n authentication,\n authorizedById: continuation.authorizedById,\n ...(continuation.authorizationId === undefined\n ? {}\n : { authorizationId: continuation.authorizationId }),\n method: continuation.method,\n ownerId: continuation.ownerId,\n providerId: continuation.providerId,\n requiredCapabilities: continuation.requiredCapabilities,\n });\n const storedConnection = aggregate.connections.find(\n ({ ownerId }) => ownerId === continuation.ownerId,\n );\n if (storedConnection === undefined) {\n return yield* new Error({\n category: \"validation\",\n message: \"Connected provider authorization returned no organization connection\",\n operation: \"Connection.complete\",\n retry: \"safe\",\n });\n }\n return Connection.project(storedConnection, aggregate.authorization, aggregate.credential);\n});\n\nfunction mergeEvidence(\n current: ReadonlyArray<ProviderAuthorization.CapabilityEvidence>,\n incoming: ReadonlyArray<ProviderAuthorization.CapabilityEvidence>,\n): ReadonlyArray<ProviderAuthorization.CapabilityEvidence> {\n const byCapability = new Map(current.map((item) => [item.capability, item]));\n for (const item of incoming) byCapability.set(item.capability, item);\n return [...byCapability.values()];\n}\n\nexport type Requirements = Repository.Service | Crypto.Crypto;\nexport type Failure = AuthenticationFailure | Repository.Error | CryptoError;\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as ConnectionStatus, C as ConnectInput, D as Interface, E as Error, F as StoredConnection, H as Capability, I as StoredCredential, L as authorizationError, M as ProviderConnection, N as ProviderTarget, O as Service, P as ProviderTargetEvidence, S as AttachmentResult, T as DisconnectResult, U as CapabilityEvidence, V as validate, W as ProviderAuthorization, a as Continuation, b as Aggregate, c as Failure, d as Method$1, f as StartResult, i as CompleteInput, j as DomainAttachment, k as AuthorizationError, l as InteractiveFlow$1, n as AuthenticationFailure, nt as Value, r as BaseInput, s as Error$1, t as Authentication, u as InteractiveStart, w as DetachResult, z as encode } from "./connect-
|
|
1
|
+
import { A as ConnectionStatus, C as ConnectInput, D as Interface, E as Error, F as StoredConnection, H as Capability, I as StoredCredential, L as authorizationError, M as ProviderConnection, N as ProviderTarget, O as Service, P as ProviderTargetEvidence, S as AttachmentResult, T as DisconnectResult, U as CapabilityEvidence, V as validate, W as ProviderAuthorization, a as Continuation, b as Aggregate, c as Failure, d as Method$1, f as StartResult, i as CompleteInput, j as DomainAttachment, k as AuthorizationError, l as InteractiveFlow$1, n as AuthenticationFailure, nt as Value, r as BaseInput, s as Error$1, t as Authentication, u as InteractiveStart, w as DetachResult, z as encode } from "./connect-D-X8T9W8.mjs";
|
|
2
2
|
import { Data, Layer } from "effect";
|
|
3
3
|
declare namespace managed_dns_connections_d_exports {
|
|
4
4
|
export { AsyncInterface, AttachmentResult, DetachResult, DisconnectResult, Error, from, layerFromAsync, toAsync };
|
|
@@ -183,4 +183,4 @@ declare function disconnect(input: {
|
|
|
183
183
|
}): Promise<DisconnectResult>;
|
|
184
184
|
//#endregion
|
|
185
185
|
export { managed_dns_connections_d_exports as a, AsyncInterface as i, Method as n, connection_d_exports as r, InteractiveFlow as t };
|
|
186
|
-
//# sourceMappingURL=connection-
|
|
186
|
+
//# sourceMappingURL=connection-Dp6ZdSo8.d.mts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as ConnectionStatus, B as project, E as Error, L as authorizationError, M as ProviderConnection, N as ProviderTarget, O as Service, P as ProviderTargetEvidence, R as decode, S as AttachmentResult, T as DisconnectResult, V as validate, W as ProviderAuthorization, a as Continuation, c as Failure, d as Method, f as StartResult, i as CompleteInput, j as DomainAttachment, k as AuthorizationError, l as InteractiveFlow, m as start, n as AuthenticationFailure, o as ContinuationStore, p as complete, r as BaseInput, s as Error$1, t as Authentication, u as InteractiveStart, w as DetachResult, z as encode } from "./connect-
|
|
1
|
+
import { A as ConnectionStatus, B as project, E as Error, L as authorizationError, M as ProviderConnection, N as ProviderTarget, O as Service, P as ProviderTargetEvidence, R as decode, S as AttachmentResult, T as DisconnectResult, V as validate, W as ProviderAuthorization, a as Continuation, c as Failure, d as Method, f as StartResult, i as CompleteInput, j as DomainAttachment, k as AuthorizationError, l as InteractiveFlow, m as start, n as AuthenticationFailure, o as ContinuationStore, p as complete, r as BaseInput, s as Error$1, t as Authentication, u as InteractiveStart, w as DetachResult, z as encode } from "./connect-D-X8T9W8.mjs";
|
|
2
2
|
import { Effect } from "effect";
|
|
3
3
|
//#region src/auth/connection-lifecycle.d.ts
|
|
4
4
|
/** Attach one exact provider target to one organization domain. */
|
|
@@ -23,4 +23,4 @@ declare namespace connection_api_d_exports {
|
|
|
23
23
|
}
|
|
24
24
|
//#endregion
|
|
25
25
|
export { connection_api_d_exports as t };
|
|
26
|
-
//# sourceMappingURL=connection-api-
|
|
26
|
+
//# sourceMappingURL=connection-api-lqG1nBtD.d.mts.map
|