domainkit 0.4.0 → 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.
@@ -0,0 +1,1387 @@
1
+ import { Context, Crypto, Data, Effect, Layer, Schema } from "effect";
2
+ import * as oauth from "oauth4webapi";
3
+ declare namespace invalid_input_d_exports {
4
+ export { Error$3 as Error };
5
+ }
6
+ declare const Error_base$3: Schema.Class<Error$3, Schema.TaggedStruct<"InvalidInputError", {
7
+ readonly message: Schema.String;
8
+ }>, import("effect/Cause").YieldableError>;
9
+ declare class Error$3 extends Error_base$3 {}
10
+ declare namespace domain_name_d_exports {
11
+ export { DomainName, Schema$4 as Schema, decode$5 as decode, parse$1 as parse };
12
+ }
13
+ declare const Type$1: Schema.brand<Schema.String, "DomainName">;
14
+ /** A lower-case, fully qualified DNS name without a trailing dot. */
15
+ type DomainName = typeof Type$1.Type;
16
+ /** Decodes user and wire strings into canonical domain names. */
17
+ declare const Schema$4: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
18
+ declare const decode$5: (input: unknown) => Effect.Effect<string & import("effect/Brand").Brand<"DomainName">, Error$3, never>;
19
+ declare function parse$1(input: unknown): DomainName;
20
+ declare namespace dns_record_d_exports {
21
+ export { A, Aaaa, Caa, Cname, DnsRecord, Encoded, Mx, Ns, Observed, Opaque, RequirementMetadata, Schema$3 as Schema, Srv, Txt, Type, data, decode$4 as decode, equals, parse };
22
+ }
23
+ declare const Type: Schema.Literals<readonly ["A", "AAAA", "CNAME", "TXT", "MX", "CAA", "NS", "SRV"]>;
24
+ type Type = typeof Type.Type;
25
+ declare const RequirementMetadata: Schema.Struct<{
26
+ readonly ownership: Schema.String;
27
+ readonly provenance: Schema.String;
28
+ readonly purpose: Schema.String;
29
+ }>;
30
+ interface RequirementMetadata extends Schema.Schema.Type<typeof RequirementMetadata> {}
31
+ declare const Schema$3: Schema.TaggedUnion<{
32
+ readonly A: Schema.TaggedStruct<"A", {
33
+ readonly metadata: Schema.Struct<{
34
+ readonly ownership: Schema.String;
35
+ readonly provenance: Schema.String;
36
+ readonly purpose: Schema.String;
37
+ }>;
38
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
39
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
40
+ readonly ttl: Schema.NullOr<Schema.Int>;
41
+ readonly address: Schema.String;
42
+ }>;
43
+ readonly AAAA: Schema.TaggedStruct<"AAAA", {
44
+ readonly metadata: Schema.Struct<{
45
+ readonly ownership: Schema.String;
46
+ readonly provenance: Schema.String;
47
+ readonly purpose: Schema.String;
48
+ }>;
49
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
50
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
51
+ readonly ttl: Schema.NullOr<Schema.Int>;
52
+ readonly address: Schema.String;
53
+ }>;
54
+ readonly CAA: Schema.TaggedStruct<"CAA", {
55
+ readonly metadata: Schema.Struct<{
56
+ readonly ownership: Schema.String;
57
+ readonly provenance: Schema.String;
58
+ readonly purpose: Schema.String;
59
+ }>;
60
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
61
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
62
+ readonly ttl: Schema.NullOr<Schema.Int>;
63
+ readonly flags: Schema.Int;
64
+ readonly tag: Schema.Literals<readonly ["issue", "issuewild", "iodef"]>;
65
+ readonly value: Schema.String;
66
+ }>;
67
+ readonly CNAME: Schema.TaggedStruct<"CNAME", {
68
+ readonly metadata: Schema.Struct<{
69
+ readonly ownership: Schema.String;
70
+ readonly provenance: Schema.String;
71
+ readonly purpose: Schema.String;
72
+ }>;
73
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
74
+ readonly ttl: Schema.NullOr<Schema.Int>;
75
+ readonly policy: Schema.Literal<"exclusive">;
76
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
77
+ }>;
78
+ readonly MX: Schema.TaggedStruct<"MX", {
79
+ readonly metadata: Schema.Struct<{
80
+ readonly ownership: Schema.String;
81
+ readonly provenance: Schema.String;
82
+ readonly purpose: Schema.String;
83
+ }>;
84
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
85
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
86
+ readonly ttl: Schema.NullOr<Schema.Int>;
87
+ readonly exchange: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
88
+ readonly priority: Schema.Int;
89
+ }>;
90
+ readonly NS: Schema.TaggedStruct<"NS", {
91
+ readonly metadata: Schema.Struct<{
92
+ readonly ownership: Schema.String;
93
+ readonly provenance: Schema.String;
94
+ readonly purpose: Schema.String;
95
+ }>;
96
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
97
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
98
+ readonly ttl: Schema.NullOr<Schema.Int>;
99
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
100
+ }>;
101
+ readonly SRV: Schema.TaggedStruct<"SRV", {
102
+ readonly metadata: Schema.Struct<{
103
+ readonly ownership: Schema.String;
104
+ readonly provenance: Schema.String;
105
+ readonly purpose: Schema.String;
106
+ }>;
107
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
108
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
109
+ readonly ttl: Schema.NullOr<Schema.Int>;
110
+ readonly port: Schema.Int;
111
+ readonly priority: Schema.Int;
112
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
113
+ readonly weight: Schema.Int;
114
+ }>;
115
+ readonly TXT: Schema.TaggedStruct<"TXT", {
116
+ readonly metadata: Schema.Struct<{
117
+ readonly ownership: Schema.String;
118
+ readonly provenance: Schema.String;
119
+ readonly purpose: Schema.String;
120
+ }>;
121
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
122
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
123
+ readonly ttl: Schema.NullOr<Schema.Int>;
124
+ readonly value: Schema.String;
125
+ }>;
126
+ }>;
127
+ declare const A: Schema.TaggedStruct<"A", {
128
+ readonly metadata: Schema.Struct<{
129
+ readonly ownership: Schema.String;
130
+ readonly provenance: Schema.String;
131
+ readonly purpose: Schema.String;
132
+ }>;
133
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
134
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
135
+ readonly ttl: Schema.NullOr<Schema.Int>;
136
+ readonly address: Schema.String;
137
+ }>, Aaaa: Schema.TaggedStruct<"AAAA", {
138
+ readonly metadata: Schema.Struct<{
139
+ readonly ownership: Schema.String;
140
+ readonly provenance: Schema.String;
141
+ readonly purpose: Schema.String;
142
+ }>;
143
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
144
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
145
+ readonly ttl: Schema.NullOr<Schema.Int>;
146
+ readonly address: Schema.String;
147
+ }>, Caa: Schema.TaggedStruct<"CAA", {
148
+ readonly metadata: Schema.Struct<{
149
+ readonly ownership: Schema.String;
150
+ readonly provenance: Schema.String;
151
+ readonly purpose: Schema.String;
152
+ }>;
153
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
154
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
155
+ readonly ttl: Schema.NullOr<Schema.Int>;
156
+ readonly flags: Schema.Int;
157
+ readonly tag: Schema.Literals<readonly ["issue", "issuewild", "iodef"]>;
158
+ readonly value: Schema.String;
159
+ }>, Cname: Schema.TaggedStruct<"CNAME", {
160
+ readonly metadata: Schema.Struct<{
161
+ readonly ownership: Schema.String;
162
+ readonly provenance: Schema.String;
163
+ readonly purpose: Schema.String;
164
+ }>;
165
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
166
+ readonly ttl: Schema.NullOr<Schema.Int>;
167
+ readonly policy: Schema.Literal<"exclusive">;
168
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
169
+ }>, Mx: Schema.TaggedStruct<"MX", {
170
+ readonly metadata: Schema.Struct<{
171
+ readonly ownership: Schema.String;
172
+ readonly provenance: Schema.String;
173
+ readonly purpose: Schema.String;
174
+ }>;
175
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
176
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
177
+ readonly ttl: Schema.NullOr<Schema.Int>;
178
+ readonly exchange: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
179
+ readonly priority: Schema.Int;
180
+ }>, Ns: Schema.TaggedStruct<"NS", {
181
+ readonly metadata: Schema.Struct<{
182
+ readonly ownership: Schema.String;
183
+ readonly provenance: Schema.String;
184
+ readonly purpose: Schema.String;
185
+ }>;
186
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
187
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
188
+ readonly ttl: Schema.NullOr<Schema.Int>;
189
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
190
+ }>, Srv: Schema.TaggedStruct<"SRV", {
191
+ readonly metadata: Schema.Struct<{
192
+ readonly ownership: Schema.String;
193
+ readonly provenance: Schema.String;
194
+ readonly purpose: Schema.String;
195
+ }>;
196
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
197
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
198
+ readonly ttl: Schema.NullOr<Schema.Int>;
199
+ readonly port: Schema.Int;
200
+ readonly priority: Schema.Int;
201
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
202
+ readonly weight: Schema.Int;
203
+ }>, Txt: Schema.TaggedStruct<"TXT", {
204
+ readonly metadata: Schema.Struct<{
205
+ readonly ownership: Schema.String;
206
+ readonly provenance: Schema.String;
207
+ readonly purpose: Schema.String;
208
+ }>;
209
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
210
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
211
+ readonly ttl: Schema.NullOr<Schema.Int>;
212
+ readonly value: Schema.String;
213
+ }>;
214
+ type DnsRecord = typeof Schema$3.Type;
215
+ type Encoded = typeof Schema$3.Encoded;
216
+ /** Provider state that DomainKit cannot create but must retain for safe reconciliation. */
217
+ declare const Opaque: Schema.Struct<{
218
+ readonly _tag: Schema.Literal<"Opaque">;
219
+ readonly name: Schema.String;
220
+ readonly providerRecordId: Schema.NullOr<Schema.String>;
221
+ readonly providerType: Schema.String;
222
+ }>;
223
+ interface Opaque extends Schema.Schema.Type<typeof Opaque> {}
224
+ /** Any DNS record observed through a provider, including non-portable record types. */
225
+ declare const Observed: Schema.Union<readonly [Schema.TaggedUnion<{
226
+ readonly A: Schema.TaggedStruct<"A", {
227
+ readonly metadata: Schema.Struct<{
228
+ readonly ownership: Schema.String;
229
+ readonly provenance: Schema.String;
230
+ readonly purpose: Schema.String;
231
+ }>;
232
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
233
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
234
+ readonly ttl: Schema.NullOr<Schema.Int>;
235
+ readonly address: Schema.String;
236
+ }>;
237
+ readonly AAAA: Schema.TaggedStruct<"AAAA", {
238
+ readonly metadata: Schema.Struct<{
239
+ readonly ownership: Schema.String;
240
+ readonly provenance: Schema.String;
241
+ readonly purpose: Schema.String;
242
+ }>;
243
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
244
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
245
+ readonly ttl: Schema.NullOr<Schema.Int>;
246
+ readonly address: Schema.String;
247
+ }>;
248
+ readonly CAA: Schema.TaggedStruct<"CAA", {
249
+ readonly metadata: Schema.Struct<{
250
+ readonly ownership: Schema.String;
251
+ readonly provenance: Schema.String;
252
+ readonly purpose: Schema.String;
253
+ }>;
254
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
255
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
256
+ readonly ttl: Schema.NullOr<Schema.Int>;
257
+ readonly flags: Schema.Int;
258
+ readonly tag: Schema.Literals<readonly ["issue", "issuewild", "iodef"]>;
259
+ readonly value: Schema.String;
260
+ }>;
261
+ readonly CNAME: Schema.TaggedStruct<"CNAME", {
262
+ readonly metadata: Schema.Struct<{
263
+ readonly ownership: Schema.String;
264
+ readonly provenance: Schema.String;
265
+ readonly purpose: Schema.String;
266
+ }>;
267
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
268
+ readonly ttl: Schema.NullOr<Schema.Int>;
269
+ readonly policy: Schema.Literal<"exclusive">;
270
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
271
+ }>;
272
+ readonly MX: Schema.TaggedStruct<"MX", {
273
+ readonly metadata: Schema.Struct<{
274
+ readonly ownership: Schema.String;
275
+ readonly provenance: Schema.String;
276
+ readonly purpose: Schema.String;
277
+ }>;
278
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
279
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
280
+ readonly ttl: Schema.NullOr<Schema.Int>;
281
+ readonly exchange: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
282
+ readonly priority: Schema.Int;
283
+ }>;
284
+ readonly NS: Schema.TaggedStruct<"NS", {
285
+ readonly metadata: Schema.Struct<{
286
+ readonly ownership: Schema.String;
287
+ readonly provenance: Schema.String;
288
+ readonly purpose: Schema.String;
289
+ }>;
290
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
291
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
292
+ readonly ttl: Schema.NullOr<Schema.Int>;
293
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
294
+ }>;
295
+ readonly SRV: Schema.TaggedStruct<"SRV", {
296
+ readonly metadata: Schema.Struct<{
297
+ readonly ownership: Schema.String;
298
+ readonly provenance: Schema.String;
299
+ readonly purpose: Schema.String;
300
+ }>;
301
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
302
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
303
+ readonly ttl: Schema.NullOr<Schema.Int>;
304
+ readonly port: Schema.Int;
305
+ readonly priority: Schema.Int;
306
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
307
+ readonly weight: Schema.Int;
308
+ }>;
309
+ readonly TXT: Schema.TaggedStruct<"TXT", {
310
+ readonly metadata: Schema.Struct<{
311
+ readonly ownership: Schema.String;
312
+ readonly provenance: Schema.String;
313
+ readonly purpose: Schema.String;
314
+ }>;
315
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
316
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
317
+ readonly ttl: Schema.NullOr<Schema.Int>;
318
+ readonly value: Schema.String;
319
+ }>;
320
+ }>, Schema.Struct<{
321
+ readonly _tag: Schema.Literal<"Opaque">;
322
+ readonly name: Schema.String;
323
+ readonly providerRecordId: Schema.NullOr<Schema.String>;
324
+ readonly providerType: Schema.String;
325
+ }>]>;
326
+ type Observed = typeof Observed.Type;
327
+ declare const decode$4: (input: unknown) => Effect.Effect<{
328
+ readonly _tag: "A";
329
+ readonly metadata: {
330
+ readonly ownership: string;
331
+ readonly provenance: string;
332
+ readonly purpose: string;
333
+ };
334
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
335
+ readonly policy: "append" | "exclusive";
336
+ readonly ttl: number | null;
337
+ readonly address: string;
338
+ } | {
339
+ readonly _tag: "AAAA";
340
+ readonly metadata: {
341
+ readonly ownership: string;
342
+ readonly provenance: string;
343
+ readonly purpose: string;
344
+ };
345
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
346
+ readonly policy: "append" | "exclusive";
347
+ readonly ttl: number | null;
348
+ readonly address: string;
349
+ } | {
350
+ readonly _tag: "CAA";
351
+ readonly metadata: {
352
+ readonly ownership: string;
353
+ readonly provenance: string;
354
+ readonly purpose: string;
355
+ };
356
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
357
+ readonly policy: "append" | "exclusive";
358
+ readonly ttl: number | null;
359
+ readonly flags: number;
360
+ readonly tag: "iodef" | "issue" | "issuewild";
361
+ readonly value: string;
362
+ } | {
363
+ readonly _tag: "CNAME";
364
+ readonly metadata: {
365
+ readonly ownership: string;
366
+ readonly provenance: string;
367
+ readonly purpose: string;
368
+ };
369
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
370
+ readonly ttl: number | null;
371
+ readonly policy: "exclusive";
372
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
373
+ } | {
374
+ readonly _tag: "MX";
375
+ readonly metadata: {
376
+ readonly ownership: string;
377
+ readonly provenance: string;
378
+ readonly purpose: string;
379
+ };
380
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
381
+ readonly policy: "append" | "exclusive";
382
+ readonly ttl: number | null;
383
+ readonly exchange: string & import("effect/Brand").Brand<"DomainName">;
384
+ readonly priority: number;
385
+ } | {
386
+ readonly _tag: "NS";
387
+ readonly metadata: {
388
+ readonly ownership: string;
389
+ readonly provenance: string;
390
+ readonly purpose: string;
391
+ };
392
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
393
+ readonly policy: "append" | "exclusive";
394
+ readonly ttl: number | null;
395
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
396
+ } | {
397
+ readonly _tag: "SRV";
398
+ readonly metadata: {
399
+ readonly ownership: string;
400
+ readonly provenance: string;
401
+ readonly purpose: string;
402
+ };
403
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
404
+ readonly policy: "append" | "exclusive";
405
+ readonly ttl: number | null;
406
+ readonly port: number;
407
+ readonly priority: number;
408
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
409
+ readonly weight: number;
410
+ } | {
411
+ readonly _tag: "TXT";
412
+ readonly metadata: {
413
+ readonly ownership: string;
414
+ readonly provenance: string;
415
+ readonly purpose: string;
416
+ };
417
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
418
+ readonly policy: "append" | "exclusive";
419
+ readonly ttl: number | null;
420
+ readonly value: string;
421
+ }, Error$3, never>;
422
+ declare function parse(input: unknown): DnsRecord;
423
+ declare function data(record: DnsRecord): Readonly<Record<string, number | string>>;
424
+ declare function equals(left: DnsRecord, right: DnsRecord): boolean;
425
+ declare namespace provider_d_exports {
426
+ export { AsyncInterface, CreateResult, Error$2 as Error, ErrorReason, Interface$1 as Interface, Service$1 as Service, fromAsync, layerFromAsync, toAsync };
427
+ }
428
+ interface CreateResult {
429
+ readonly providerRecordId: string | null;
430
+ }
431
+ declare const ErrorReason: Schema.Literals<readonly ["authentication", "authorization", "conflict", "not_found", "rate_limit", "request", "response", "transport", "unsupported"]>;
432
+ type ErrorReason = typeof ErrorReason.Type;
433
+ declare const Error_base$2: Schema.Class<Error$2, Schema.TaggedStruct<"ProviderError", {
434
+ readonly cause: Schema.optionalKey<Schema.Unknown>;
435
+ readonly code: Schema.optionalKey<Schema.Union<readonly [Schema.Number, Schema.String]>>;
436
+ readonly message: Schema.String;
437
+ readonly operation: Schema.String;
438
+ readonly providerId: Schema.String;
439
+ readonly reason: Schema.optionalKey<Schema.Literals<readonly ["authentication", "authorization", "conflict", "not_found", "rate_limit", "request", "response", "transport", "unsupported"]>>;
440
+ readonly retryAfterMs: Schema.optionalKey<Schema.Number>;
441
+ readonly status: Schema.optionalKey<Schema.Number>;
442
+ }>, import("effect/Cause").YieldableError>;
443
+ declare class Error$2 extends Error_base$2 {}
444
+ /** The provider capability used by DNS planning, application, and verification. */
445
+ interface Interface$1 {
446
+ readonly id: string;
447
+ readonly createRecord: (zone: DomainName, record: DnsRecord) => Effect.Effect<CreateResult, Error$2>;
448
+ readonly deleteRecord: (zone: DomainName, providerRecordId: string) => Effect.Effect<void, Error$2>;
449
+ readonly getRecord: (zone: DomainName, providerRecordId: string) => Effect.Effect<Observed | null, Error$2>;
450
+ readonly listRecords: (zone: DomainName) => Effect.Effect<ReadonlyArray<Observed>, Error$2>;
451
+ }
452
+ declare const Service_base$1: Context.ServiceClass<Service$1, "@domainkit/DnsProvider", Interface$1>;
453
+ declare class Service$1 extends Service_base$1 {}
454
+ /** Minimal Promise-shaped provider contract for hosts that do not use Effect directly. */
455
+ interface AsyncInterface {
456
+ readonly id: string;
457
+ readonly createRecord: (zone: DomainName, record: DnsRecord) => Promise<CreateResult>;
458
+ readonly deleteRecord: (zone: DomainName, providerRecordId: string) => Promise<void>;
459
+ readonly getRecord: (zone: DomainName, providerRecordId: string) => Promise<Observed | null>;
460
+ readonly listRecords: (zone: DomainName) => Promise<ReadonlyArray<Observed>>;
461
+ }
462
+ declare const fromAsync: (provider: AsyncInterface) => Interface$1;
463
+ declare const layerFromAsync: (provider: AsyncInterface) => Layer.Layer<Service$1>;
464
+ declare const toAsync: (provider: Interface$1) => AsyncInterface;
465
+ declare namespace secret_d_exports {
466
+ export { Value, make };
467
+ }
468
+ /** A deliberately non-serializable credential value. */
469
+ declare class Value {
470
+ #private;
471
+ private constructor();
472
+ static from(value: string): Value;
473
+ expose(): string;
474
+ toJSON(): string;
475
+ toString(): string;
476
+ }
477
+ declare const make: typeof Value.from;
478
+ declare namespace manifest_d_exports {
479
+ export { AsyncOAuthSubjectResolver, IntegrationMethod, Manifest, Method$1 as Method, OAuthClientConfiguration, OAuthMethod, OAuthSubjectResolver, Schema$2 as Schema, TokenValidation, decode$3 as decode };
480
+ }
481
+ declare const Method$1: Schema.TaggedUnion<{
482
+ readonly integration: Schema.TaggedStruct<"integration", {
483
+ readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
484
+ readonly installUrl: Schema.String;
485
+ readonly tokenEndpoint: Schema.String;
486
+ }>;
487
+ readonly oauth2: Schema.TaggedStruct<"oauth2", {
488
+ readonly authorizationServer: Schema.Struct<{
489
+ readonly authorization_endpoint: Schema.String;
490
+ readonly issuer: Schema.String;
491
+ readonly revocation_endpoint: Schema.optionalKey<Schema.String>;
492
+ readonly token_endpoint: Schema.String;
493
+ }>;
494
+ readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
495
+ readonly clientAuth: Schema.Literals<readonly ["none", "client_secret_basic", "client_secret_post"]>;
496
+ readonly scopes: Schema.$Array<Schema.String>;
497
+ }>;
498
+ readonly token: Schema.TaggedStruct<"token", {
499
+ readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
500
+ readonly instructionsUrl: Schema.String;
501
+ }>;
502
+ }>;
503
+ declare const Schema$2: Schema.Struct<{
504
+ readonly methods: Schema.$Array<Schema.TaggedUnion<{
505
+ readonly integration: Schema.TaggedStruct<"integration", {
506
+ readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
507
+ readonly installUrl: Schema.String;
508
+ readonly tokenEndpoint: Schema.String;
509
+ }>;
510
+ readonly oauth2: Schema.TaggedStruct<"oauth2", {
511
+ readonly authorizationServer: Schema.Struct<{
512
+ readonly authorization_endpoint: Schema.String;
513
+ readonly issuer: Schema.String;
514
+ readonly revocation_endpoint: Schema.optionalKey<Schema.String>;
515
+ readonly token_endpoint: Schema.String;
516
+ }>;
517
+ readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
518
+ readonly clientAuth: Schema.Literals<readonly ["none", "client_secret_basic", "client_secret_post"]>;
519
+ readonly scopes: Schema.$Array<Schema.String>;
520
+ }>;
521
+ readonly token: Schema.TaggedStruct<"token", {
522
+ readonly capabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
523
+ readonly instructionsUrl: Schema.String;
524
+ }>;
525
+ }>>;
526
+ readonly providerId: Schema.String;
527
+ }>;
528
+ interface Manifest extends Schema.Schema.Type<typeof Schema$2> {}
529
+ type OAuthMethod = Extract<Manifest["methods"][number], {
530
+ readonly _tag: "oauth2";
531
+ }>;
532
+ /** A provider-owned installation flow that returns a credential from a one-time code. */
533
+ type IntegrationMethod = Extract<Manifest["methods"][number], {
534
+ readonly _tag: "integration";
535
+ }>;
536
+ declare const decode$3: (input: unknown) => Effect.Effect<{
537
+ readonly methods: readonly ({
538
+ readonly _tag: "integration";
539
+ readonly capabilities: readonly ("dns:read" | "dns:write")[];
540
+ readonly installUrl: string;
541
+ readonly tokenEndpoint: string;
542
+ } | {
543
+ readonly _tag: "oauth2";
544
+ readonly authorizationServer: {
545
+ readonly authorization_endpoint: string;
546
+ readonly issuer: string;
547
+ readonly revocation_endpoint?: string;
548
+ readonly token_endpoint: string;
549
+ };
550
+ readonly capabilities: readonly ("dns:read" | "dns:write")[];
551
+ readonly clientAuth: "client_secret_basic" | "client_secret_post" | "none";
552
+ readonly scopes: readonly string[];
553
+ } | {
554
+ readonly _tag: "token";
555
+ readonly capabilities: readonly ("dns:read" | "dns:write")[];
556
+ readonly instructionsUrl: string;
557
+ })[];
558
+ readonly providerId: string;
559
+ }, Error$3, never>;
560
+ interface OAuthClientConfiguration {
561
+ readonly clientId: string;
562
+ readonly clientSecret?: Value;
563
+ }
564
+ interface TokenValidation {
565
+ readonly accountId: string;
566
+ readonly capabilities: ReadonlyArray<"dns:read" | "dns:write">;
567
+ readonly expiresAt: Date | null;
568
+ readonly scopes: ReadonlyArray<string>;
569
+ }
570
+ interface OAuthSubjectResolver {
571
+ (tokens: oauth.TokenEndpointResponse, accessToken: Value): Effect.Effect<{
572
+ readonly accountId: string;
573
+ readonly expiresAt: Date | null;
574
+ }, Error$2>;
575
+ }
576
+ interface AsyncOAuthSubjectResolver {
577
+ (tokens: oauth.TokenEndpointResponse, accessToken: Value): Promise<{
578
+ readonly accountId: string;
579
+ readonly expiresAt: Date | null;
580
+ }>;
581
+ }
582
+ declare namespace authorization_d_exports {
583
+ export { Capability, CapabilityEvidence, Evidence, EvidenceSchema, ProviderAuthorization, Revocation, Schema$1 as Schema, decode$2 as decode, encode$2 as encode, evidenceFor, validate$1 as validate };
584
+ }
585
+ declare const Capability: Schema.Literals<readonly ["dns:read", "dns:write"]>;
586
+ type Capability = typeof Capability.Type;
587
+ type Evidence = Data.TaggedEnum<{
588
+ Declared: {};
589
+ Exercised: {
590
+ readonly observedAt: Date;
591
+ };
592
+ Introspected: {
593
+ readonly observedAt: Date;
594
+ };
595
+ }>;
596
+ declare const Evidence: {
597
+ readonly $is: <Tag extends "Declared" | "Exercised" | "Introspected">(tag: Tag) => (u: unknown) => u is Extract<{
598
+ readonly _tag: "Declared";
599
+ }, {
600
+ readonly _tag: Tag;
601
+ }> | Extract<{
602
+ readonly _tag: "Exercised";
603
+ readonly observedAt: Date;
604
+ }, {
605
+ readonly _tag: Tag;
606
+ }> | Extract<{
607
+ readonly _tag: "Introspected";
608
+ readonly observedAt: Date;
609
+ }, {
610
+ readonly _tag: Tag;
611
+ }>;
612
+ readonly $match: {
613
+ <Cases extends { readonly [Tag in "Declared" | "Exercised" | "Introspected"]: (args: Extract<{
614
+ readonly _tag: "Declared";
615
+ } | {
616
+ readonly _tag: "Exercised";
617
+ readonly observedAt: Date;
618
+ } | {
619
+ readonly _tag: "Introspected";
620
+ readonly observedAt: Date;
621
+ }, {
622
+ readonly _tag: Tag;
623
+ }>) => any; }>(cases: Cases): (value: {
624
+ readonly _tag: "Declared";
625
+ } | {
626
+ readonly _tag: "Exercised";
627
+ readonly observedAt: Date;
628
+ } | {
629
+ readonly _tag: "Introspected";
630
+ readonly observedAt: Date;
631
+ }) => import("effect/Unify").Unify<ReturnType<Cases["Declared" | "Exercised" | "Introspected"]>>;
632
+ <Cases extends { readonly [Tag in "Declared" | "Exercised" | "Introspected"]: (args: Extract<{
633
+ readonly _tag: "Declared";
634
+ } | {
635
+ readonly _tag: "Exercised";
636
+ readonly observedAt: Date;
637
+ } | {
638
+ readonly _tag: "Introspected";
639
+ readonly observedAt: Date;
640
+ }, {
641
+ readonly _tag: Tag;
642
+ }>) => any; }>(value: {
643
+ readonly _tag: "Declared";
644
+ } | {
645
+ readonly _tag: "Exercised";
646
+ readonly observedAt: Date;
647
+ } | {
648
+ readonly _tag: "Introspected";
649
+ readonly observedAt: Date;
650
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Declared" | "Exercised" | "Introspected"]>>;
651
+ };
652
+ readonly Declared: Data.TaggedEnum.ConstructorFrom<{
653
+ readonly _tag: "Declared";
654
+ }, "_tag">;
655
+ readonly Exercised: Data.TaggedEnum.ConstructorFrom<{
656
+ readonly _tag: "Exercised";
657
+ readonly observedAt: Date;
658
+ }, "_tag">;
659
+ readonly Introspected: Data.TaggedEnum.ConstructorFrom<{
660
+ readonly _tag: "Introspected";
661
+ readonly observedAt: Date;
662
+ }, "_tag">;
663
+ };
664
+ declare const EvidenceSchema: Schema.TaggedUnion<{
665
+ readonly Declared: Schema.TaggedStruct<"Declared", {}>;
666
+ readonly Exercised: Schema.TaggedStruct<"Exercised", {
667
+ readonly observedAt: Schema.DateFromString;
668
+ }>;
669
+ readonly Introspected: Schema.TaggedStruct<"Introspected", {
670
+ readonly observedAt: Schema.DateFromString;
671
+ }>;
672
+ }>;
673
+ declare const CapabilityEvidence: Schema.Struct<{
674
+ readonly capability: Schema.Literals<readonly ["dns:read", "dns:write"]>;
675
+ readonly evidence: Schema.TaggedUnion<{
676
+ readonly Declared: Schema.TaggedStruct<"Declared", {}>;
677
+ readonly Exercised: Schema.TaggedStruct<"Exercised", {
678
+ readonly observedAt: Schema.DateFromString;
679
+ }>;
680
+ readonly Introspected: Schema.TaggedStruct<"Introspected", {
681
+ readonly observedAt: Schema.DateFromString;
682
+ }>;
683
+ }>;
684
+ }>;
685
+ interface CapabilityEvidence extends Schema.Schema.Type<typeof CapabilityEvidence> {}
686
+ declare const Revocation: Schema.TaggedUnion<{
687
+ readonly Active: Schema.TaggedStruct<"Active", {}>;
688
+ readonly Pending: Schema.TaggedStruct<"Pending", {
689
+ readonly requestedAt: Schema.DateFromString;
690
+ }>;
691
+ }>;
692
+ type Revocation = typeof Revocation.Type;
693
+ /** A provider credential authorization shared by one or more organization connections. */
694
+ declare const Schema$1: Schema.Struct<{
695
+ readonly authorizedById: Schema.String;
696
+ readonly capabilityEvidence: Schema.$Array<Schema.Struct<{
697
+ readonly capability: Schema.Literals<readonly ["dns:read", "dns:write"]>;
698
+ readonly evidence: Schema.TaggedUnion<{
699
+ readonly Declared: Schema.TaggedStruct<"Declared", {}>;
700
+ readonly Exercised: Schema.TaggedStruct<"Exercised", {
701
+ readonly observedAt: Schema.DateFromString;
702
+ }>;
703
+ readonly Introspected: Schema.TaggedStruct<"Introspected", {
704
+ readonly observedAt: Schema.DateFromString;
705
+ }>;
706
+ }>;
707
+ }>>;
708
+ readonly createdAt: Schema.DateFromString;
709
+ readonly id: Schema.String;
710
+ readonly method: Schema.Literals<readonly ["integration", "oauth2", "token"]>;
711
+ readonly providerContext: Schema.Struct<{
712
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
713
+ readonly version: Schema.String;
714
+ }>;
715
+ readonly providerId: Schema.String;
716
+ readonly requiredCapabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
717
+ readonly revocation: Schema.TaggedUnion<{
718
+ readonly Active: Schema.TaggedStruct<"Active", {}>;
719
+ readonly Pending: Schema.TaggedStruct<"Pending", {
720
+ readonly requestedAt: Schema.DateFromString;
721
+ }>;
722
+ }>;
723
+ readonly scopes: Schema.$Array<Schema.String>;
724
+ }>;
725
+ interface ProviderAuthorization extends Schema.Schema.Type<typeof Schema$1> {}
726
+ declare const decode$2: (input: unknown) => Effect.Effect<{
727
+ readonly authorizedById: string;
728
+ readonly capabilityEvidence: readonly {
729
+ readonly capability: "dns:read" | "dns:write";
730
+ readonly evidence: {
731
+ readonly _tag: "Declared";
732
+ } | {
733
+ readonly _tag: "Exercised";
734
+ readonly observedAt: Date;
735
+ } | {
736
+ readonly _tag: "Introspected";
737
+ readonly observedAt: Date;
738
+ };
739
+ }[];
740
+ readonly createdAt: Date;
741
+ readonly id: string;
742
+ readonly method: "integration" | "oauth2" | "token";
743
+ readonly providerContext: {
744
+ readonly value: Schema.Json;
745
+ readonly version: string;
746
+ };
747
+ readonly providerId: string;
748
+ readonly requiredCapabilities: readonly ("dns:read" | "dns:write")[];
749
+ readonly revocation: {
750
+ readonly _tag: "Active";
751
+ } | {
752
+ readonly _tag: "Pending";
753
+ readonly requestedAt: Date;
754
+ };
755
+ readonly scopes: readonly string[];
756
+ }, Error$3, never>;
757
+ declare const validate$1: (input: unknown) => Effect.Effect<{
758
+ readonly authorizedById: string;
759
+ readonly capabilityEvidence: readonly {
760
+ readonly capability: "dns:read" | "dns:write";
761
+ readonly evidence: {
762
+ readonly _tag: "Declared";
763
+ } | {
764
+ readonly _tag: "Exercised";
765
+ readonly observedAt: Date;
766
+ } | {
767
+ readonly _tag: "Introspected";
768
+ readonly observedAt: Date;
769
+ };
770
+ }[];
771
+ readonly createdAt: Date;
772
+ readonly id: string;
773
+ readonly method: "integration" | "oauth2" | "token";
774
+ readonly providerContext: {
775
+ readonly value: Schema.Json;
776
+ readonly version: string;
777
+ };
778
+ readonly providerId: string;
779
+ readonly requiredCapabilities: readonly ("dns:read" | "dns:write")[];
780
+ readonly revocation: {
781
+ readonly _tag: "Active";
782
+ } | {
783
+ readonly _tag: "Pending";
784
+ readonly requestedAt: Date;
785
+ };
786
+ readonly scopes: readonly string[];
787
+ }, Error$3, never>;
788
+ declare const encode$2: (input: {
789
+ readonly authorizedById: string;
790
+ readonly capabilityEvidence: readonly {
791
+ readonly capability: "dns:read" | "dns:write";
792
+ readonly evidence: {
793
+ readonly _tag: "Declared";
794
+ } | {
795
+ readonly _tag: "Exercised";
796
+ readonly observedAt: Date;
797
+ } | {
798
+ readonly _tag: "Introspected";
799
+ readonly observedAt: Date;
800
+ };
801
+ }[];
802
+ readonly createdAt: Date;
803
+ readonly id: string;
804
+ readonly method: "integration" | "oauth2" | "token";
805
+ readonly providerContext: {
806
+ readonly value: Schema.Json;
807
+ readonly version: string;
808
+ };
809
+ readonly providerId: string;
810
+ readonly requiredCapabilities: readonly ("dns:read" | "dns:write")[];
811
+ readonly revocation: {
812
+ readonly _tag: "Active";
813
+ } | {
814
+ readonly _tag: "Pending";
815
+ readonly requestedAt: Date;
816
+ };
817
+ readonly scopes: readonly string[];
818
+ }, options?: import("effect/SchemaAST").ParseOptions) => {
819
+ readonly authorizedById: string;
820
+ readonly capabilityEvidence: readonly {
821
+ readonly capability: "dns:read" | "dns:write";
822
+ readonly evidence: {
823
+ readonly _tag: "Declared";
824
+ } | {
825
+ readonly _tag: "Exercised";
826
+ readonly observedAt: string;
827
+ } | {
828
+ readonly _tag: "Introspected";
829
+ readonly observedAt: string;
830
+ };
831
+ }[];
832
+ readonly createdAt: string;
833
+ readonly id: string;
834
+ readonly method: "integration" | "oauth2" | "token";
835
+ readonly providerContext: {
836
+ readonly value: Schema.Json;
837
+ readonly version: string;
838
+ };
839
+ readonly providerId: string;
840
+ readonly requiredCapabilities: readonly ("dns:read" | "dns:write")[];
841
+ readonly revocation: {
842
+ readonly _tag: "Active";
843
+ } | {
844
+ readonly _tag: "Pending";
845
+ readonly requestedAt: string;
846
+ };
847
+ readonly scopes: readonly string[];
848
+ };
849
+ declare function evidenceFor(authorization: ProviderAuthorization, capability: Capability): Evidence | undefined;
850
+ //#endregion
851
+ //#region src/auth/connection.d.ts
852
+ /** A provider account and authoritative zone selected for one domain attachment. */
853
+ declare const ProviderTargetEvidence: Schema.Struct<{
854
+ /** The account display name observed during discovery, when the provider exposes one. */
855
+ readonly accountName: Schema.optionalKey<Schema.String>;
856
+ /** Nameserver and provider-state evidence observed during discovery. */
857
+ readonly nameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
858
+ readonly status: Schema.String;
859
+ /** Provider-specific authoritative-zone type, such as Cloudflare's `full` or Vercel's `external`. */
860
+ readonly zoneType: Schema.String;
861
+ }>;
862
+ interface ProviderTargetEvidence extends Schema.Schema.Type<typeof ProviderTargetEvidence> {}
863
+ declare const ProviderTarget: Schema.Struct<{
864
+ readonly accountId: Schema.String;
865
+ readonly accountKind: Schema.NullOr<Schema.Literals<readonly ["account", "personal", "team"]>>;
866
+ readonly evidence: Schema.optionalKey<Schema.Struct<{
867
+ /** The account display name observed during discovery, when the provider exposes one. */
868
+ readonly accountName: Schema.optionalKey<Schema.String>;
869
+ /** Nameserver and provider-state evidence observed during discovery. */
870
+ readonly nameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
871
+ readonly status: Schema.String;
872
+ /** Provider-specific authoritative-zone type, such as Cloudflare's `full` or Vercel's `external`. */
873
+ readonly zoneType: Schema.String;
874
+ }>>;
875
+ readonly zoneId: Schema.String;
876
+ readonly zoneName: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
877
+ }>;
878
+ interface ProviderTarget extends Schema.Schema.Type<typeof ProviderTarget> {}
879
+ /** The lifecycle state visible to a host for an organization connection. */
880
+ declare const ConnectionStatus: Schema.Literals<readonly ["active", "expired", "revocation-pending"]>;
881
+ type ConnectionStatus = typeof ConnectionStatus.Type;
882
+ /** An organization-scoped provider connection. */
883
+ declare const ProviderConnection: Schema.Struct<{
884
+ readonly createdAt: Schema.DateFromString;
885
+ readonly id: Schema.String;
886
+ readonly method: Schema.Literals<readonly ["integration", "oauth2", "token"]>;
887
+ readonly ownerId: Schema.String;
888
+ readonly providerId: Schema.String;
889
+ readonly status: Schema.Literals<readonly ["active", "expired", "revocation-pending"]>;
890
+ }>;
891
+ interface ProviderConnection extends Schema.Schema.Type<typeof ProviderConnection> {}
892
+ /** An exact provider target attached to one organization domain. */
893
+ declare const DomainAttachment: Schema.Struct<{
894
+ readonly connectionId: Schema.String;
895
+ readonly createdAt: Schema.DateFromString;
896
+ readonly domain: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
897
+ readonly id: Schema.String;
898
+ readonly target: Schema.Struct<{
899
+ readonly accountId: Schema.String;
900
+ readonly accountKind: Schema.NullOr<Schema.Literals<readonly ["account", "personal", "team"]>>;
901
+ readonly evidence: Schema.optionalKey<Schema.Struct<{
902
+ /** The account display name observed during discovery, when the provider exposes one. */
903
+ readonly accountName: Schema.optionalKey<Schema.String>;
904
+ /** Nameserver and provider-state evidence observed during discovery. */
905
+ readonly nameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
906
+ readonly status: Schema.String;
907
+ /** Provider-specific authoritative-zone type, such as Cloudflare's `full` or Vercel's `external`. */
908
+ readonly zoneType: Schema.String;
909
+ }>>;
910
+ readonly zoneId: Schema.String;
911
+ readonly zoneName: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
912
+ }>;
913
+ }>;
914
+ interface DomainAttachment extends Schema.Schema.Type<typeof DomainAttachment> {}
915
+ /** Internal connection row; the authorization id is intentionally not part of the public shape. */
916
+ declare const StoredConnection: Schema.Struct<{
917
+ readonly authorizationId: Schema.String;
918
+ readonly createdAt: Schema.DateFromString;
919
+ readonly id: Schema.String;
920
+ readonly method: Schema.Literals<readonly ["integration", "oauth2", "token"]>;
921
+ readonly ownerId: Schema.String;
922
+ readonly providerId: Schema.String;
923
+ }>;
924
+ interface StoredConnection extends Schema.Schema.Type<typeof StoredConnection> {}
925
+ /** Internal credential material retained by the host's persistence implementation. */
926
+ interface StoredCredential {
927
+ readonly accessToken: Value;
928
+ readonly expiresAt: Date | null;
929
+ readonly refreshToken: Value | null;
930
+ readonly tokenType: string;
931
+ }
932
+ declare const AuthorizationError_base: Schema.Class<AuthorizationError, Schema.TaggedStruct<"AuthorizationError", {
933
+ readonly category: Schema.Literal<"authorization">;
934
+ readonly message: Schema.String;
935
+ readonly operation: Schema.String;
936
+ readonly retry: Schema.Literals<readonly ["never", "after-user-action", "safe", "unknown"]>;
937
+ }>, import("effect/Cause").YieldableError>;
938
+ declare class AuthorizationError extends AuthorizationError_base {}
939
+ declare const authorizationError: (message: string, operation: string) => AuthorizationError;
940
+ /** Decode a public connection snapshot returned by a host. */
941
+ declare const decode$1: (input: unknown) => Effect.Effect<{
942
+ readonly createdAt: Date;
943
+ readonly id: string;
944
+ readonly method: "integration" | "oauth2" | "token";
945
+ readonly ownerId: string;
946
+ readonly providerId: string;
947
+ readonly status: "active" | "expired" | "revocation-pending";
948
+ }, Error$3, never>;
949
+ declare const validate: (input: unknown) => Effect.Effect<{
950
+ readonly createdAt: Date;
951
+ readonly id: string;
952
+ readonly method: "integration" | "oauth2" | "token";
953
+ readonly ownerId: string;
954
+ readonly providerId: string;
955
+ readonly status: "active" | "expired" | "revocation-pending";
956
+ }, Error$3, never>;
957
+ declare const encode$1: (input: {
958
+ readonly createdAt: Date;
959
+ readonly id: string;
960
+ readonly method: "integration" | "oauth2" | "token";
961
+ readonly ownerId: string;
962
+ readonly providerId: string;
963
+ readonly status: "active" | "expired" | "revocation-pending";
964
+ }, options?: import("effect/SchemaAST").ParseOptions) => {
965
+ readonly createdAt: string;
966
+ readonly id: string;
967
+ readonly method: "integration" | "oauth2" | "token";
968
+ readonly ownerId: string;
969
+ readonly providerId: string;
970
+ readonly status: "active" | "expired" | "revocation-pending";
971
+ };
972
+ /** Derive a public connection projection from its private authorization state. */
973
+ declare function project(connection: StoredConnection, authorization: ProviderAuthorization, credential: StoredCredential, now?: Date): ProviderConnection;
974
+ //#endregion
975
+ //#region src/auth/lifecycle-repository.d.ts
976
+ /** Private aggregate owned by the managed-DNS persistence capability. */
977
+ interface Aggregate {
978
+ readonly authorization: ProviderAuthorization;
979
+ readonly connections: ReadonlyArray<StoredConnection>;
980
+ readonly attachments: ReadonlyArray<DomainAttachment>;
981
+ readonly credential: StoredCredential;
982
+ }
983
+ /** Serializable durable state. Credential material is deliberately sealed separately. */
984
+ declare const AggregateSchema: Schema.Struct<{
985
+ readonly authorization: Schema.Struct<{
986
+ readonly authorizedById: Schema.String;
987
+ readonly capabilityEvidence: Schema.$Array<Schema.Struct<{
988
+ readonly capability: Schema.Literals<readonly ["dns:read", "dns:write"]>;
989
+ readonly evidence: Schema.TaggedUnion<{
990
+ readonly Declared: Schema.TaggedStruct<"Declared", {}>;
991
+ readonly Exercised: Schema.TaggedStruct<"Exercised", {
992
+ readonly observedAt: Schema.DateFromString;
993
+ }>;
994
+ readonly Introspected: Schema.TaggedStruct<"Introspected", {
995
+ readonly observedAt: Schema.DateFromString;
996
+ }>;
997
+ }>;
998
+ }>>;
999
+ readonly createdAt: Schema.DateFromString;
1000
+ readonly id: Schema.String;
1001
+ readonly method: Schema.Literals<readonly ["integration", "oauth2", "token"]>;
1002
+ readonly providerContext: Schema.Struct<{
1003
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
1004
+ readonly version: Schema.String;
1005
+ }>;
1006
+ readonly providerId: Schema.String;
1007
+ readonly requiredCapabilities: Schema.$Array<Schema.Literals<readonly ["dns:read", "dns:write"]>>;
1008
+ readonly revocation: Schema.TaggedUnion<{
1009
+ readonly Active: Schema.TaggedStruct<"Active", {}>;
1010
+ readonly Pending: Schema.TaggedStruct<"Pending", {
1011
+ readonly requestedAt: Schema.DateFromString;
1012
+ }>;
1013
+ }>;
1014
+ readonly scopes: Schema.$Array<Schema.String>;
1015
+ }>;
1016
+ readonly connections: Schema.$Array<Schema.Struct<{
1017
+ readonly authorizationId: Schema.String;
1018
+ readonly createdAt: Schema.DateFromString;
1019
+ readonly id: Schema.String;
1020
+ readonly method: Schema.Literals<readonly ["integration", "oauth2", "token"]>;
1021
+ readonly ownerId: Schema.String;
1022
+ readonly providerId: Schema.String;
1023
+ }>>;
1024
+ readonly attachments: Schema.$Array<Schema.Struct<{
1025
+ readonly connectionId: Schema.String;
1026
+ readonly createdAt: Schema.DateFromString;
1027
+ readonly domain: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
1028
+ readonly id: Schema.String;
1029
+ readonly target: Schema.Struct<{
1030
+ readonly accountId: Schema.String;
1031
+ readonly accountKind: Schema.NullOr<Schema.Literals<readonly ["account", "personal", "team"]>>;
1032
+ readonly evidence: Schema.optionalKey<Schema.Struct<{
1033
+ readonly accountName: Schema.optionalKey<Schema.String>;
1034
+ readonly nameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
1035
+ readonly status: Schema.String;
1036
+ readonly zoneType: Schema.String;
1037
+ }>>;
1038
+ readonly zoneId: Schema.String;
1039
+ readonly zoneName: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
1040
+ }>;
1041
+ }>>;
1042
+ }>;
1043
+ interface ConnectInput {
1044
+ readonly authorization: ProviderAuthorization;
1045
+ readonly connection: StoredConnection;
1046
+ readonly credential: StoredCredential;
1047
+ /** The authorization id observed before building a reuse update, if any. */
1048
+ readonly expectedAuthorizationId?: string;
1049
+ /** The owner connection id observed before building a reuse update, if any. */
1050
+ readonly expectedConnectionId?: string;
1051
+ }
1052
+ interface AttachmentResult {
1053
+ readonly attachment: DomainAttachment;
1054
+ readonly connection: ProviderConnection;
1055
+ }
1056
+ interface DetachResult {
1057
+ readonly attachment: DomainAttachment;
1058
+ readonly connection: ProviderConnection;
1059
+ readonly remainingAttachments: number;
1060
+ }
1061
+ interface DisconnectResult {
1062
+ readonly connection: ProviderConnection;
1063
+ readonly remainingConnections: number;
1064
+ readonly revokedAuthorization: boolean;
1065
+ }
1066
+ declare const Error_base$1: Schema.Class<Error$1, Schema.TaggedStruct<"ManagedDnsLifecycleError", {
1067
+ readonly category: Schema.Literal<"storage">;
1068
+ readonly message: Schema.String;
1069
+ readonly operation: Schema.String;
1070
+ readonly retry: Schema.Literals<readonly ["never", "after-user-action", "safe", "unknown"]>;
1071
+ }>, import("effect/Cause").YieldableError>;
1072
+ declare class Error$1 extends Error_base$1 {}
1073
+ /**
1074
+ * Persistence capability for the managed-DNS model.
1075
+ *
1076
+ * Implementations own the atomic aggregate containing one provider credential authorization,
1077
+ * organization connections, and exact domain attachments. Provider authorization is deliberately
1078
+ * an implementation detail of the capability; public callers operate on the projections returned
1079
+ * by the connection and attachment methods.
1080
+ */
1081
+ interface Interface {
1082
+ readonly attach: (input: {
1083
+ readonly attachment: DomainAttachment;
1084
+ readonly connectionId: string;
1085
+ readonly ownerId: string;
1086
+ }) => Effect.Effect<AttachmentResult, Error$1>;
1087
+ readonly connect: (input: ConnectInput) => Effect.Effect<Aggregate, Error$1>;
1088
+ readonly detach: (input: {
1089
+ readonly attachmentId: string;
1090
+ readonly ownerId: string;
1091
+ }) => Effect.Effect<DetachResult, Error$1>;
1092
+ readonly disconnect: <E>(input: {
1093
+ readonly connectionId: string;
1094
+ readonly ownerId: string;
1095
+ readonly revoke: (authorization: ProviderAuthorization) => Effect.Effect<void, E>;
1096
+ }) => Effect.Effect<DisconnectResult, Error$1 | E>;
1097
+ readonly findConnection: (ownerId: string, authorizationId: string) => Effect.Effect<StoredConnection | null, Error$1>;
1098
+ readonly get: (authorizationId: string) => Effect.Effect<Aggregate | null, Error$1>;
1099
+ readonly getAttachment: (attachmentId: string) => Effect.Effect<DomainAttachment | null, Error$1>;
1100
+ readonly getByConnectionId: (connectionId: string) => Effect.Effect<Aggregate | null, Error$1>;
1101
+ readonly listAttachments: (connectionId: string, ownerId: string) => Effect.Effect<ReadonlyArray<DomainAttachment>, Error$1>;
1102
+ readonly promoteEvidence: (authorizationId: string, evidence: ReadonlyArray<CapabilityEvidence>) => Effect.Effect<Aggregate, Error$1>;
1103
+ readonly recover: <E>(input: {
1104
+ readonly authorizationId: string;
1105
+ readonly revoke: (authorization: ProviderAuthorization) => Effect.Effect<void, E>;
1106
+ }) => Effect.Effect<DisconnectResult, Error$1 | E>;
1107
+ readonly rotate: (authorizationId: string, credential: StoredCredential) => Effect.Effect<Aggregate, Error$1>;
1108
+ }
1109
+ declare const Service_base: Context.ServiceClass<Service, "@domainkit/ManagedDnsConnections", Interface>;
1110
+ declare class Service extends Service_base {}
1111
+ declare namespace canonical_json_d_exports {
1112
+ export { CryptoError, Json, sha256Encoded, sha256Json, sha256Text, stringify, webCryptoLayer };
1113
+ }
1114
+ declare const CryptoError_base: Schema.Class<CryptoError, Schema.TaggedStruct<"CryptoError", {
1115
+ readonly message: Schema.String;
1116
+ }>, import("effect/Cause").YieldableError>;
1117
+ declare class CryptoError extends CryptoError_base {}
1118
+ type Json = null | boolean | number | string | ReadonlyArray<Json> | {
1119
+ readonly [key: string]: Json;
1120
+ };
1121
+ /** Deterministic JSON serialization for already schema-encoded protocol values. */
1122
+ declare function stringify(value: Json): string;
1123
+ declare const sha256Text: (value: string) => Effect.Effect<string, CryptoError, Crypto.Crypto>;
1124
+ declare const sha256Json: (value: Json) => Effect.Effect<string, CryptoError, Crypto.Crypto>;
1125
+ declare const sha256Encoded: <S extends Schema.Constraint>(schema: S, value: S["Type"]) => Effect.Effect<string, CryptoError, Crypto.Crypto | S["EncodingServices"]>;
1126
+ /** Portable Web Crypto implementation for hosts that want a ready-made Layer. */
1127
+ declare const webCryptoLayer: Layer.Layer<Crypto.Crypto>;
1128
+ declare namespace provider_context_d_exports {
1129
+ export { Codec, Envelope, codec, decode, encode };
1130
+ }
1131
+ /** A provider-owned, versioned, non-secret context value persisted by the host. */
1132
+ declare const Envelope: Schema.Struct<{
1133
+ readonly value: Schema.Codec<Schema.Json, Schema.Json, never, never>;
1134
+ readonly version: Schema.String;
1135
+ }>;
1136
+ interface Envelope extends Schema.Schema.Type<typeof Envelope> {}
1137
+ interface Codec<A> {
1138
+ readonly decode: (envelope: Envelope) => Effect.Effect<A, Error$3>;
1139
+ readonly encode: (value: A) => Effect.Effect<Envelope, Error$3>;
1140
+ readonly version: string;
1141
+ }
1142
+ /** Build an adapter-owned context codec from a schema and stable version identifier. */
1143
+ declare function codec<A, I>(version: string, schema: Schema.Codec<A, I>): Codec<A>;
1144
+ declare const decode: (input: unknown) => Effect.Effect<{
1145
+ readonly value: Schema.Json;
1146
+ readonly version: string;
1147
+ }, Error$3, never>;
1148
+ declare const encode: (input: {
1149
+ readonly value: Schema.Json;
1150
+ readonly version: string;
1151
+ }, options?: import("effect/SchemaAST").ParseOptions) => {
1152
+ readonly value: Schema.Json;
1153
+ readonly version: string;
1154
+ };
1155
+ //#endregion
1156
+ //#region src/auth/connect.d.ts
1157
+ interface Authentication {
1158
+ readonly capabilityEvidence: ReadonlyArray<CapabilityEvidence>;
1159
+ readonly credential: StoredCredential;
1160
+ /** Provider-specific subject identity used only during authentication; targets are selected later. */
1161
+ readonly providerAccountId: string;
1162
+ readonly providerContext: Envelope;
1163
+ readonly scopes: ReadonlyArray<string>;
1164
+ }
1165
+ type AuthenticationFailure = Error | Error$3 | Error$2;
1166
+ interface InteractiveStart {
1167
+ readonly authorizationUrl: URL;
1168
+ readonly payload: Value;
1169
+ }
1170
+ interface Continuation extends BaseInput {
1171
+ readonly expiresAt: Date;
1172
+ readonly id: string;
1173
+ readonly method: "integration" | "oauth2";
1174
+ readonly payload: Value;
1175
+ readonly providerId: string;
1176
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1177
+ }
1178
+ interface ContinuationStore {
1179
+ readonly consume: (id: string, now: Date) => Effect.Effect<Continuation | null, Error>;
1180
+ readonly put: (continuation: Continuation) => Effect.Effect<void, Error>;
1181
+ }
1182
+ interface InteractiveFlow {
1183
+ readonly complete: (payload: Value, callbackUrl: URL) => Effect.Effect<Authentication, AuthenticationFailure>;
1184
+ readonly method: "integration" | "oauth2";
1185
+ readonly providerId: string;
1186
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1187
+ readonly start: (continuationId: string) => Effect.Effect<InteractiveStart, AuthenticationFailure, Crypto.Crypto>;
1188
+ }
1189
+ type Method = Data.TaggedEnum<{
1190
+ Interactive: {
1191
+ readonly continuations: ContinuationStore;
1192
+ readonly flow: InteractiveFlow;
1193
+ readonly ttlMs?: number;
1194
+ };
1195
+ Token: {
1196
+ readonly authenticate: (token: Value) => Effect.Effect<Authentication, AuthenticationFailure>;
1197
+ readonly providerId: string;
1198
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1199
+ readonly token: Value;
1200
+ };
1201
+ }>;
1202
+ declare const Method: {
1203
+ readonly $is: <Tag extends "Interactive" | "Token">(tag: Tag) => (u: unknown) => u is Extract<{
1204
+ readonly _tag: "Interactive";
1205
+ readonly continuations: ContinuationStore;
1206
+ readonly flow: InteractiveFlow;
1207
+ readonly ttlMs?: number;
1208
+ }, {
1209
+ readonly _tag: Tag;
1210
+ }> | Extract<{
1211
+ readonly _tag: "Token";
1212
+ readonly authenticate: (token: Value) => Effect.Effect<Authentication, AuthenticationFailure>;
1213
+ readonly providerId: string;
1214
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1215
+ readonly token: Value;
1216
+ }, {
1217
+ readonly _tag: Tag;
1218
+ }>;
1219
+ readonly $match: {
1220
+ <Cases extends { readonly [Tag in "Interactive" | "Token"]: (args: Extract<{
1221
+ readonly _tag: "Interactive";
1222
+ readonly continuations: ContinuationStore;
1223
+ readonly flow: InteractiveFlow;
1224
+ readonly ttlMs?: number;
1225
+ } | {
1226
+ readonly _tag: "Token";
1227
+ readonly authenticate: (token: Value) => Effect.Effect<Authentication, AuthenticationFailure>;
1228
+ readonly providerId: string;
1229
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1230
+ readonly token: Value;
1231
+ }, {
1232
+ readonly _tag: Tag;
1233
+ }>) => any; }>(cases: Cases): (value: {
1234
+ readonly _tag: "Interactive";
1235
+ readonly continuations: ContinuationStore;
1236
+ readonly flow: InteractiveFlow;
1237
+ readonly ttlMs?: number;
1238
+ } | {
1239
+ readonly _tag: "Token";
1240
+ readonly authenticate: (token: Value) => Effect.Effect<Authentication, AuthenticationFailure>;
1241
+ readonly providerId: string;
1242
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1243
+ readonly token: Value;
1244
+ }) => import("effect/Unify").Unify<ReturnType<Cases["Interactive" | "Token"]>>;
1245
+ <Cases extends { readonly [Tag in "Interactive" | "Token"]: (args: Extract<{
1246
+ readonly _tag: "Interactive";
1247
+ readonly continuations: ContinuationStore;
1248
+ readonly flow: InteractiveFlow;
1249
+ readonly ttlMs?: number;
1250
+ } | {
1251
+ readonly _tag: "Token";
1252
+ readonly authenticate: (token: Value) => Effect.Effect<Authentication, AuthenticationFailure>;
1253
+ readonly providerId: string;
1254
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1255
+ readonly token: Value;
1256
+ }, {
1257
+ readonly _tag: Tag;
1258
+ }>) => any; }>(value: {
1259
+ readonly _tag: "Interactive";
1260
+ readonly continuations: ContinuationStore;
1261
+ readonly flow: InteractiveFlow;
1262
+ readonly ttlMs?: number;
1263
+ } | {
1264
+ readonly _tag: "Token";
1265
+ readonly authenticate: (token: Value) => Effect.Effect<Authentication, AuthenticationFailure>;
1266
+ readonly providerId: string;
1267
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1268
+ readonly token: Value;
1269
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Interactive" | "Token"]>>;
1270
+ };
1271
+ readonly Interactive: Data.TaggedEnum.ConstructorFrom<{
1272
+ readonly _tag: "Interactive";
1273
+ readonly continuations: ContinuationStore;
1274
+ readonly flow: InteractiveFlow;
1275
+ readonly ttlMs?: number;
1276
+ }, "_tag">;
1277
+ readonly Token: Data.TaggedEnum.ConstructorFrom<{
1278
+ readonly _tag: "Token";
1279
+ readonly authenticate: (token: Value) => Effect.Effect<Authentication, AuthenticationFailure>;
1280
+ readonly providerId: string;
1281
+ readonly requiredCapabilities: ReadonlyArray<Capability>;
1282
+ readonly token: Value;
1283
+ }, "_tag">;
1284
+ };
1285
+ type StartResult = Data.TaggedEnum<{
1286
+ Connected: {
1287
+ readonly connection: ProviderConnection;
1288
+ };
1289
+ Redirect: {
1290
+ readonly authorizationUrl: URL;
1291
+ readonly continuationId: string;
1292
+ };
1293
+ }>;
1294
+ declare const StartResult: {
1295
+ readonly $is: <Tag extends "Connected" | "Redirect">(tag: Tag) => (u: unknown) => u is Extract<{
1296
+ readonly _tag: "Connected";
1297
+ readonly connection: ProviderConnection;
1298
+ }, {
1299
+ readonly _tag: Tag;
1300
+ }> | Extract<{
1301
+ readonly _tag: "Redirect";
1302
+ readonly authorizationUrl: URL;
1303
+ readonly continuationId: string;
1304
+ }, {
1305
+ readonly _tag: Tag;
1306
+ }>;
1307
+ readonly $match: {
1308
+ <Cases extends { readonly [Tag in "Connected" | "Redirect"]: (args: Extract<{
1309
+ readonly _tag: "Connected";
1310
+ readonly connection: ProviderConnection;
1311
+ } | {
1312
+ readonly _tag: "Redirect";
1313
+ readonly authorizationUrl: URL;
1314
+ readonly continuationId: string;
1315
+ }, {
1316
+ readonly _tag: Tag;
1317
+ }>) => any; }>(cases: Cases): (value: {
1318
+ readonly _tag: "Connected";
1319
+ readonly connection: ProviderConnection;
1320
+ } | {
1321
+ readonly _tag: "Redirect";
1322
+ readonly authorizationUrl: URL;
1323
+ readonly continuationId: string;
1324
+ }) => import("effect/Unify").Unify<ReturnType<Cases["Connected" | "Redirect"]>>;
1325
+ <Cases extends { readonly [Tag in "Connected" | "Redirect"]: (args: Extract<{
1326
+ readonly _tag: "Connected";
1327
+ readonly connection: ProviderConnection;
1328
+ } | {
1329
+ readonly _tag: "Redirect";
1330
+ readonly authorizationUrl: URL;
1331
+ readonly continuationId: string;
1332
+ }, {
1333
+ readonly _tag: Tag;
1334
+ }>) => any; }>(value: {
1335
+ readonly _tag: "Connected";
1336
+ readonly connection: ProviderConnection;
1337
+ } | {
1338
+ readonly _tag: "Redirect";
1339
+ readonly authorizationUrl: URL;
1340
+ readonly continuationId: string;
1341
+ }, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Connected" | "Redirect"]>>;
1342
+ };
1343
+ readonly Connected: Data.TaggedEnum.ConstructorFrom<{
1344
+ readonly _tag: "Connected";
1345
+ readonly connection: ProviderConnection;
1346
+ }, "_tag">;
1347
+ readonly Redirect: Data.TaggedEnum.ConstructorFrom<{
1348
+ readonly _tag: "Redirect";
1349
+ readonly authorizationUrl: URL;
1350
+ readonly continuationId: string;
1351
+ }, "_tag">;
1352
+ };
1353
+ declare const Error_base: Schema.Class<Error, Schema.TaggedStruct<"ConnectionError", {
1354
+ readonly category: Schema.Literals<readonly ["authorization", "provider", "validation"]>;
1355
+ readonly message: Schema.String;
1356
+ readonly operation: Schema.String;
1357
+ readonly retry: Schema.Literals<readonly ["never", "after-user-action", "safe", "unknown"]>;
1358
+ }>, import("effect/Cause").YieldableError>;
1359
+ declare class Error extends Error_base {}
1360
+ /** Inputs shared by token and interactive connection flows. */
1361
+ interface BaseInput {
1362
+ readonly authorizedById: string;
1363
+ /** Existing authorization may be supplied only after the host completed fresh provider proof. */
1364
+ readonly authorizationId?: string;
1365
+ readonly ownerId: string;
1366
+ }
1367
+ interface CompleteInput {
1368
+ readonly callbackUrl: URL;
1369
+ readonly continuationId: string;
1370
+ readonly continuations: ContinuationStore;
1371
+ readonly flow: InteractiveFlow;
1372
+ }
1373
+ declare const start: (input: BaseInput & {
1374
+ readonly method: Method;
1375
+ }) => Effect.Effect<{
1376
+ readonly _tag: "Connected";
1377
+ readonly connection: ProviderConnection;
1378
+ } | {
1379
+ readonly _tag: "Redirect";
1380
+ readonly authorizationUrl: URL;
1381
+ readonly continuationId: string;
1382
+ }, Error$1 | AuthenticationFailure, Crypto.Crypto | Service>;
1383
+ declare const complete: (input: CompleteInput) => Effect.Effect<ProviderConnection, Error$1 | AuthenticationFailure, Crypto.Crypto | Service>;
1384
+ type Failure = AuthenticationFailure | Error$1 | CryptoError;
1385
+ //#endregion
1386
+ export { Schema$2 as $, ConnectionStatus as A, Schema$4 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, RequirementMetadata 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, Schema$3 as xt, canonical_json_d_exports as y, Opaque as yt, encode$1 as z };
1387
+ //# sourceMappingURL=connect-Db830jad.d.mts.map