domainkit 0.0.1 → 0.1.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +115 -1
  3. package/dist/auth-Df9BuC25.mjs +460 -0
  4. package/dist/auth-Df9BuC25.mjs.map +1 -0
  5. package/dist/client-DvXfJx_E.mjs +534 -0
  6. package/dist/client-DvXfJx_E.mjs.map +1 -0
  7. package/dist/cloudflare-C_ixZsJo.mjs +46 -0
  8. package/dist/cloudflare-C_ixZsJo.mjs.map +1 -0
  9. package/dist/cloudflare-DClWuAm8.d.mts +23 -0
  10. package/dist/cloudflare.d.mts +3 -0
  11. package/dist/cloudflare.mjs +2 -0
  12. package/dist/dns-record-Dzo4flM5.mjs +259 -0
  13. package/dist/dns-record-Dzo4flM5.mjs.map +1 -0
  14. package/dist/effect-cloudflare.d.mts +2 -0
  15. package/dist/effect-cloudflare.mjs +2 -0
  16. package/dist/effect-vercel.d.mts +2 -0
  17. package/dist/effect-vercel.mjs +2 -0
  18. package/dist/effect.d.mts +63 -0
  19. package/dist/effect.mjs +28 -0
  20. package/dist/effect.mjs.map +1 -0
  21. package/dist/index-D1KtyjuI.d.mts +71 -0
  22. package/dist/index-DQAjUrZu.d.mts +94 -0
  23. package/dist/index.d.mts +128 -0
  24. package/dist/index.mjs +198 -0
  25. package/dist/index.mjs.map +1 -0
  26. package/dist/manifest-DjH3BVB9.d.mts +579 -0
  27. package/dist/receipt-C7PjnibZ.mjs +28 -0
  28. package/dist/receipt-C7PjnibZ.mjs.map +1 -0
  29. package/dist/resolver-BjZwN2JE.d.mts +2327 -0
  30. package/dist/resolver-D5nVrR10.mjs +153 -0
  31. package/dist/resolver-D5nVrR10.mjs.map +1 -0
  32. package/dist/rolldown-runtime-D7D4PA-g.mjs +13 -0
  33. package/dist/testing.d.mts +47 -0
  34. package/dist/testing.mjs +117 -0
  35. package/dist/testing.mjs.map +1 -0
  36. package/dist/vercel-BWz_9Y1v.mjs +38 -0
  37. package/dist/vercel-BWz_9Y1v.mjs.map +1 -0
  38. package/dist/vercel-Vc_K_87s.d.mts +22 -0
  39. package/dist/vercel.d.mts +3 -0
  40. package/dist/vercel.mjs +2 -0
  41. package/dist/verify-CeMW6XtK.mjs +1109 -0
  42. package/dist/verify-CeMW6XtK.mjs.map +1 -0
  43. package/dist/verify-DPB1OfZ5.d.mts +979 -0
  44. package/package.json +94 -6
  45. package/bun.lock +0 -66
  46. package/index.ts +0 -1
  47. package/tsconfig.json +0 -30
@@ -0,0 +1,979 @@
1
+ import { C as DnsRecord, H as Error, R as DomainName, _ as Service, a as OAuthClientConfiguration, d as Value, h as Error$1, o as OAuthMethod, w as Encoded } from "./manifest-DjH3BVB9.mjs";
2
+ import { A as Service$3, B as Connection, E as Service$1, I as Error$2, P as Service$2, R as AuthorizationError$1, V as Grant, a as Interface, c as Service$4, g as DnsPlan, m as ApplyReceipt, n as AsyncInterface, v as PlanAuthorization } from "./resolver-BjZwN2JE.mjs";
3
+ import { Cause, Crypto, Effect, Layer, Schema } from "effect";
4
+ import * as oauth from "oauth4webapi";
5
+ declare namespace canonical_json_d_exports {
6
+ export { CryptoError, Json, sha256Encoded, sha256Json, sha256Text, stringify, webCryptoLayer };
7
+ }
8
+ declare const CryptoError_base: Schema.Class<CryptoError, Schema.TaggedStruct<"CryptoError", {
9
+ readonly message: Schema.String;
10
+ }>, import("effect/Cause").YieldableError>;
11
+ declare class CryptoError extends CryptoError_base {}
12
+ type Json = null | boolean | number | string | ReadonlyArray<Json> | {
13
+ readonly [key: string]: Json;
14
+ };
15
+ /** Deterministic JSON serialization for already schema-encoded protocol values. */
16
+ declare function stringify(value: Json): string;
17
+ declare const sha256Text: (value: string) => Effect.Effect<string, CryptoError, Crypto.Crypto>;
18
+ declare const sha256Json: (value: Json) => Effect.Effect<string, CryptoError, Crypto.Crypto>;
19
+ declare const sha256Encoded: <S extends Schema.Constraint>(schema: S, value: S["Type"]) => Effect.Effect<string, CryptoError, Crypto.Crypto | S["EncodingServices"]>;
20
+ /** Portable Web Crypto implementation for hosts that want a ready-made Layer. */
21
+ declare const webCryptoLayer: Layer.Layer<Crypto.Crypto>;
22
+ declare namespace oauth_d_exports {
23
+ export { BeginInput, Fetch$1 as Fetch, OAuthError, OAuthSubjectResolver, begin, complete, refresh, revoke };
24
+ }
25
+ type Fetch$1 = (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
26
+ interface BeginInput {
27
+ readonly client: OAuthClientConfiguration;
28
+ readonly grant: Grant;
29
+ readonly method: OAuthMethod;
30
+ readonly redirectUri: string;
31
+ readonly subjectId: string;
32
+ readonly ttlMs?: number;
33
+ }
34
+ interface OAuthSubjectResolver {
35
+ (tokens: oauth.TokenEndpointResponse, accessToken: Value): Effect.Effect<{
36
+ readonly accountId: string;
37
+ readonly expiresAt: Date | null;
38
+ }, Error | Error$1>;
39
+ }
40
+ type OAuthError = AuthorizationError$1 | CryptoError | Error | Error$1 | Error$2;
41
+ declare const begin: (input: BeginInput) => Effect.Effect<{
42
+ readonly authorizationUrl: URL;
43
+ }, CryptoError | Error$2, Crypto.Crypto | Service$1>;
44
+ declare const complete: (input: {
45
+ readonly callbackUrl: URL;
46
+ readonly client: OAuthClientConfiguration;
47
+ readonly fetch?: Fetch$1;
48
+ readonly providerId: string;
49
+ readonly resolveSubject: OAuthSubjectResolver;
50
+ }) => Effect.Effect<Connection, OAuthError, Crypto.Crypto | Service$2 | Service$3 | Service$1>;
51
+ declare const refresh: (input: {
52
+ readonly client: OAuthClientConfiguration;
53
+ readonly connection: Connection;
54
+ readonly fetch?: Fetch$1;
55
+ readonly method: OAuthMethod;
56
+ }) => Effect.Effect<void, OAuthError, Service$3>;
57
+ declare const revoke: (input: {
58
+ readonly client: OAuthClientConfiguration;
59
+ readonly connection: Connection;
60
+ readonly fetch?: Fetch$1;
61
+ readonly method: OAuthMethod;
62
+ }) => Effect.Effect<void, OAuthError, Service$3>;
63
+ declare namespace selection_d_exports {
64
+ export { ConnectedZone, Evidence, Selection, select };
65
+ }
66
+ interface ConnectedZone {
67
+ readonly accountId: string;
68
+ readonly connection: Connection;
69
+ readonly nameservers: ReadonlyArray<string>;
70
+ readonly providerId: string;
71
+ readonly zone: string;
72
+ }
73
+ declare const Evidence: Schema.Struct<{
74
+ readonly accountId: Schema.String;
75
+ readonly connectionId: Schema.String;
76
+ readonly decisiveNameserverMatch: Schema.Boolean;
77
+ readonly matchedNameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
78
+ readonly providerId: Schema.String;
79
+ readonly zone: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
80
+ }>;
81
+ interface Evidence extends Schema.Schema.Type<typeof Evidence> {}
82
+ declare const Selection: Schema.TaggedUnion<{
83
+ readonly manual: Schema.TaggedStruct<"manual", {
84
+ readonly evidence: Schema.$Array<Schema.Struct<{
85
+ readonly accountId: Schema.String;
86
+ readonly connectionId: Schema.String;
87
+ readonly decisiveNameserverMatch: Schema.Boolean;
88
+ readonly matchedNameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
89
+ readonly providerId: Schema.String;
90
+ readonly zone: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
91
+ }>>;
92
+ readonly reason: Schema.Literals<readonly ["ambiguous", "unsupported"]>;
93
+ }>;
94
+ readonly selected: Schema.TaggedStruct<"selected", {
95
+ readonly candidate: Schema.Struct<{
96
+ readonly accountId: Schema.String;
97
+ readonly connectionId: Schema.String;
98
+ readonly decisiveNameserverMatch: Schema.Boolean;
99
+ readonly matchedNameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
100
+ readonly providerId: Schema.String;
101
+ readonly zone: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
102
+ }>;
103
+ readonly evidence: Schema.$Array<Schema.Struct<{
104
+ readonly accountId: Schema.String;
105
+ readonly connectionId: Schema.String;
106
+ readonly decisiveNameserverMatch: Schema.Boolean;
107
+ readonly matchedNameservers: Schema.$Array<Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>>;
108
+ readonly providerId: Schema.String;
109
+ readonly zone: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
110
+ }>>;
111
+ readonly reason: Schema.Literals<readonly ["explicit", "unique-nameserver-match"]>;
112
+ }>;
113
+ }>;
114
+ type Selection = typeof Selection.Type;
115
+ declare function select(input: {
116
+ readonly authoritativeNameservers: ReadonlyArray<string>;
117
+ readonly connectedZones: ReadonlyArray<ConnectedZone>;
118
+ readonly domain: string;
119
+ readonly explicit?: {
120
+ readonly accountId: string;
121
+ readonly providerId: string;
122
+ readonly zone: string;
123
+ };
124
+ readonly now?: Date;
125
+ }): Selection;
126
+ declare namespace zones_d_exports {
127
+ export { candidates };
128
+ }
129
+ declare function candidates(input: string): ReadonlyArray<DomainName>;
130
+ declare namespace plan_d_exports {
131
+ export { ApplyError, ApplyInput, AuthorizationError, AuthorizeError, ConflictError, CreateError, CreateInput, PartialApplyError, StaleError, apply, authorize, create, renderManualInstructions };
132
+ }
133
+ declare const ConflictError_base: Schema.Class<ConflictError, Schema.TaggedStruct<"PlanConflictError", {
134
+ readonly operationIds: Schema.$Array<Schema.String>;
135
+ }>, Cause.YieldableError>;
136
+ declare class ConflictError extends ConflictError_base {}
137
+ declare const AuthorizationError_base: Schema.Class<AuthorizationError, Schema.TaggedStruct<"AuthorizationError", {
138
+ readonly message: Schema.String;
139
+ }>, Cause.YieldableError>;
140
+ declare class AuthorizationError extends AuthorizationError_base {}
141
+ declare const StaleError_base: Schema.Class<StaleError, Schema.TaggedStruct<"StalePlanError", {
142
+ readonly approvedPlanDigest: Schema.String;
143
+ readonly currentPlanDigest: Schema.String;
144
+ }>, Cause.YieldableError>;
145
+ declare class StaleError extends StaleError_base {}
146
+ declare const PartialApplyError_base: Schema.Class<PartialApplyError, Schema.TaggedStruct<"PartialApplyError", {
147
+ readonly causeTag: Schema.Literals<readonly ["CryptoError", "InvalidInputError", "Interrupted", "ProviderError", "StalePlanError"]>;
148
+ readonly failedOperationId: Schema.String;
149
+ readonly message: Schema.String;
150
+ readonly receipt: Schema.Struct<{
151
+ readonly appliedAt: Schema.DateFromString;
152
+ readonly operations: Schema.$Array<Schema.Struct<{
153
+ readonly operationId: Schema.String;
154
+ readonly providerRecordId: Schema.NullOr<Schema.String>;
155
+ }>>;
156
+ readonly planDigest: Schema.String;
157
+ readonly providerId: Schema.String;
158
+ readonly status: Schema.Literals<readonly ["complete", "partial"]>;
159
+ readonly version: Schema.Literal<"domainkit.apply-receipt.v1">;
160
+ readonly zone: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
161
+ }>;
162
+ }>, Cause.YieldableError>;
163
+ declare class PartialApplyError extends PartialApplyError_base {}
164
+ interface CreateInput {
165
+ readonly requirements: ReadonlyArray<Encoded | DnsRecord>;
166
+ readonly zone: string;
167
+ }
168
+ interface ApplyInput {
169
+ readonly authorization: PlanAuthorization;
170
+ readonly plan: DnsPlan;
171
+ }
172
+ type CreateError = Error | Error$1 | CryptoError;
173
+ type AuthorizeError = AuthorizationError | CryptoError;
174
+ type ApplyError = Error | Error$1 | CryptoError | AuthorizationError | ConflictError | StaleError | PartialApplyError;
175
+ /** Builds a deterministic DNS plan through the provider in the Effect environment. */
176
+ declare const create: (input: CreateInput) => Effect.Effect<{
177
+ operations: readonly ({
178
+ readonly _tag: "conflict";
179
+ readonly existing: readonly ({
180
+ readonly _tag: "Opaque";
181
+ readonly name: string;
182
+ readonly providerRecordId: string | null;
183
+ readonly providerType: string;
184
+ } | {
185
+ readonly _tag: "A";
186
+ readonly metadata: {
187
+ readonly ownership: string;
188
+ readonly provenance: string;
189
+ readonly purpose: string;
190
+ };
191
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
192
+ readonly policy: "append" | "exclusive";
193
+ readonly ttl: number | null;
194
+ readonly address: string;
195
+ } | {
196
+ readonly _tag: "AAAA";
197
+ readonly metadata: {
198
+ readonly ownership: string;
199
+ readonly provenance: string;
200
+ readonly purpose: string;
201
+ };
202
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
203
+ readonly policy: "append" | "exclusive";
204
+ readonly ttl: number | null;
205
+ readonly address: string;
206
+ } | {
207
+ readonly _tag: "CAA";
208
+ readonly metadata: {
209
+ readonly ownership: string;
210
+ readonly provenance: string;
211
+ readonly purpose: string;
212
+ };
213
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
214
+ readonly policy: "append" | "exclusive";
215
+ readonly ttl: number | null;
216
+ readonly flags: number;
217
+ readonly tag: "iodef" | "issue" | "issuewild";
218
+ readonly value: string;
219
+ } | {
220
+ readonly _tag: "CNAME";
221
+ readonly metadata: {
222
+ readonly ownership: string;
223
+ readonly provenance: string;
224
+ readonly purpose: string;
225
+ };
226
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
227
+ readonly ttl: number | null;
228
+ readonly policy: "exclusive";
229
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
230
+ } | {
231
+ readonly _tag: "MX";
232
+ readonly metadata: {
233
+ readonly ownership: string;
234
+ readonly provenance: string;
235
+ readonly purpose: string;
236
+ };
237
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
238
+ readonly policy: "append" | "exclusive";
239
+ readonly ttl: number | null;
240
+ readonly exchange: string & import("effect/Brand").Brand<"DomainName">;
241
+ readonly priority: number;
242
+ } | {
243
+ readonly _tag: "NS";
244
+ readonly metadata: {
245
+ readonly ownership: string;
246
+ readonly provenance: string;
247
+ readonly purpose: string;
248
+ };
249
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
250
+ readonly policy: "append" | "exclusive";
251
+ readonly ttl: number | null;
252
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
253
+ } | {
254
+ readonly _tag: "SRV";
255
+ readonly metadata: {
256
+ readonly ownership: string;
257
+ readonly provenance: string;
258
+ readonly purpose: string;
259
+ };
260
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
261
+ readonly policy: "append" | "exclusive";
262
+ readonly ttl: number | null;
263
+ readonly port: number;
264
+ readonly priority: number;
265
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
266
+ readonly weight: number;
267
+ } | {
268
+ readonly _tag: "TXT";
269
+ readonly metadata: {
270
+ readonly ownership: string;
271
+ readonly provenance: string;
272
+ readonly purpose: string;
273
+ };
274
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
275
+ readonly policy: "append" | "exclusive";
276
+ readonly ttl: number | null;
277
+ readonly value: string;
278
+ })[];
279
+ readonly id: string;
280
+ readonly reason: string;
281
+ readonly requirement: {
282
+ readonly _tag: "A";
283
+ readonly metadata: {
284
+ readonly ownership: string;
285
+ readonly provenance: string;
286
+ readonly purpose: string;
287
+ };
288
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
289
+ readonly policy: "append" | "exclusive";
290
+ readonly ttl: number | null;
291
+ readonly address: string;
292
+ } | {
293
+ readonly _tag: "AAAA";
294
+ readonly metadata: {
295
+ readonly ownership: string;
296
+ readonly provenance: string;
297
+ readonly purpose: string;
298
+ };
299
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
300
+ readonly policy: "append" | "exclusive";
301
+ readonly ttl: number | null;
302
+ readonly address: string;
303
+ } | {
304
+ readonly _tag: "CAA";
305
+ readonly metadata: {
306
+ readonly ownership: string;
307
+ readonly provenance: string;
308
+ readonly purpose: string;
309
+ };
310
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
311
+ readonly policy: "append" | "exclusive";
312
+ readonly ttl: number | null;
313
+ readonly flags: number;
314
+ readonly tag: "iodef" | "issue" | "issuewild";
315
+ readonly value: string;
316
+ } | {
317
+ readonly _tag: "CNAME";
318
+ readonly metadata: {
319
+ readonly ownership: string;
320
+ readonly provenance: string;
321
+ readonly purpose: string;
322
+ };
323
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
324
+ readonly ttl: number | null;
325
+ readonly policy: "exclusive";
326
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
327
+ } | {
328
+ readonly _tag: "MX";
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 exchange: string & import("effect/Brand").Brand<"DomainName">;
338
+ readonly priority: number;
339
+ } | {
340
+ readonly _tag: "NS";
341
+ readonly metadata: {
342
+ readonly ownership: string;
343
+ readonly provenance: string;
344
+ readonly purpose: string;
345
+ };
346
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
347
+ readonly policy: "append" | "exclusive";
348
+ readonly ttl: number | null;
349
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
350
+ } | {
351
+ readonly _tag: "SRV";
352
+ readonly metadata: {
353
+ readonly ownership: string;
354
+ readonly provenance: string;
355
+ readonly purpose: string;
356
+ };
357
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
358
+ readonly policy: "append" | "exclusive";
359
+ readonly ttl: number | null;
360
+ readonly port: number;
361
+ readonly priority: number;
362
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
363
+ readonly weight: number;
364
+ } | {
365
+ readonly _tag: "TXT";
366
+ readonly metadata: {
367
+ readonly ownership: string;
368
+ readonly provenance: string;
369
+ readonly purpose: string;
370
+ };
371
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
372
+ readonly policy: "append" | "exclusive";
373
+ readonly ttl: number | null;
374
+ readonly value: string;
375
+ };
376
+ } | {
377
+ readonly _tag: "create";
378
+ readonly id: string;
379
+ readonly requirement: {
380
+ readonly _tag: "A";
381
+ readonly metadata: {
382
+ readonly ownership: string;
383
+ readonly provenance: string;
384
+ readonly purpose: string;
385
+ };
386
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
387
+ readonly policy: "append" | "exclusive";
388
+ readonly ttl: number | null;
389
+ readonly address: string;
390
+ } | {
391
+ readonly _tag: "AAAA";
392
+ readonly metadata: {
393
+ readonly ownership: string;
394
+ readonly provenance: string;
395
+ readonly purpose: string;
396
+ };
397
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
398
+ readonly policy: "append" | "exclusive";
399
+ readonly ttl: number | null;
400
+ readonly address: string;
401
+ } | {
402
+ readonly _tag: "CAA";
403
+ readonly metadata: {
404
+ readonly ownership: string;
405
+ readonly provenance: string;
406
+ readonly purpose: string;
407
+ };
408
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
409
+ readonly policy: "append" | "exclusive";
410
+ readonly ttl: number | null;
411
+ readonly flags: number;
412
+ readonly tag: "iodef" | "issue" | "issuewild";
413
+ readonly value: string;
414
+ } | {
415
+ readonly _tag: "CNAME";
416
+ readonly metadata: {
417
+ readonly ownership: string;
418
+ readonly provenance: string;
419
+ readonly purpose: string;
420
+ };
421
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
422
+ readonly ttl: number | null;
423
+ readonly policy: "exclusive";
424
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
425
+ } | {
426
+ readonly _tag: "MX";
427
+ readonly metadata: {
428
+ readonly ownership: string;
429
+ readonly provenance: string;
430
+ readonly purpose: string;
431
+ };
432
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
433
+ readonly policy: "append" | "exclusive";
434
+ readonly ttl: number | null;
435
+ readonly exchange: string & import("effect/Brand").Brand<"DomainName">;
436
+ readonly priority: number;
437
+ } | {
438
+ readonly _tag: "NS";
439
+ readonly metadata: {
440
+ readonly ownership: string;
441
+ readonly provenance: string;
442
+ readonly purpose: string;
443
+ };
444
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
445
+ readonly policy: "append" | "exclusive";
446
+ readonly ttl: number | null;
447
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
448
+ } | {
449
+ readonly _tag: "SRV";
450
+ readonly metadata: {
451
+ readonly ownership: string;
452
+ readonly provenance: string;
453
+ readonly purpose: string;
454
+ };
455
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
456
+ readonly policy: "append" | "exclusive";
457
+ readonly ttl: number | null;
458
+ readonly port: number;
459
+ readonly priority: number;
460
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
461
+ readonly weight: number;
462
+ } | {
463
+ readonly _tag: "TXT";
464
+ readonly metadata: {
465
+ readonly ownership: string;
466
+ readonly provenance: string;
467
+ readonly purpose: string;
468
+ };
469
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
470
+ readonly policy: "append" | "exclusive";
471
+ readonly ttl: number | null;
472
+ readonly value: string;
473
+ };
474
+ } | {
475
+ readonly _tag: "noop";
476
+ readonly id: string;
477
+ readonly requirement: {
478
+ readonly _tag: "A";
479
+ readonly metadata: {
480
+ readonly ownership: string;
481
+ readonly provenance: string;
482
+ readonly purpose: string;
483
+ };
484
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
485
+ readonly policy: "append" | "exclusive";
486
+ readonly ttl: number | null;
487
+ readonly address: string;
488
+ } | {
489
+ readonly _tag: "AAAA";
490
+ readonly metadata: {
491
+ readonly ownership: string;
492
+ readonly provenance: string;
493
+ readonly purpose: string;
494
+ };
495
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
496
+ readonly policy: "append" | "exclusive";
497
+ readonly ttl: number | null;
498
+ readonly address: string;
499
+ } | {
500
+ readonly _tag: "CAA";
501
+ readonly metadata: {
502
+ readonly ownership: string;
503
+ readonly provenance: string;
504
+ readonly purpose: string;
505
+ };
506
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
507
+ readonly policy: "append" | "exclusive";
508
+ readonly ttl: number | null;
509
+ readonly flags: number;
510
+ readonly tag: "iodef" | "issue" | "issuewild";
511
+ readonly value: string;
512
+ } | {
513
+ readonly _tag: "CNAME";
514
+ readonly metadata: {
515
+ readonly ownership: string;
516
+ readonly provenance: string;
517
+ readonly purpose: string;
518
+ };
519
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
520
+ readonly ttl: number | null;
521
+ readonly policy: "exclusive";
522
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
523
+ } | {
524
+ readonly _tag: "MX";
525
+ readonly metadata: {
526
+ readonly ownership: string;
527
+ readonly provenance: string;
528
+ readonly purpose: string;
529
+ };
530
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
531
+ readonly policy: "append" | "exclusive";
532
+ readonly ttl: number | null;
533
+ readonly exchange: string & import("effect/Brand").Brand<"DomainName">;
534
+ readonly priority: number;
535
+ } | {
536
+ readonly _tag: "NS";
537
+ readonly metadata: {
538
+ readonly ownership: string;
539
+ readonly provenance: string;
540
+ readonly purpose: string;
541
+ };
542
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
543
+ readonly policy: "append" | "exclusive";
544
+ readonly ttl: number | null;
545
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
546
+ } | {
547
+ readonly _tag: "SRV";
548
+ readonly metadata: {
549
+ readonly ownership: string;
550
+ readonly provenance: string;
551
+ readonly purpose: string;
552
+ };
553
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
554
+ readonly policy: "append" | "exclusive";
555
+ readonly ttl: number | null;
556
+ readonly port: number;
557
+ readonly priority: number;
558
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
559
+ readonly weight: number;
560
+ } | {
561
+ readonly _tag: "TXT";
562
+ readonly metadata: {
563
+ readonly ownership: string;
564
+ readonly provenance: string;
565
+ readonly purpose: string;
566
+ };
567
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
568
+ readonly policy: "append" | "exclusive";
569
+ readonly ttl: number | null;
570
+ readonly value: string;
571
+ };
572
+ readonly ttlDrift: boolean;
573
+ })[];
574
+ providerId: string;
575
+ version: "domainkit.dns-plan.v1";
576
+ zone: string & import("effect/Brand").Brand<"DomainName">;
577
+ digest: string;
578
+ }, CryptoError | Error | Error$1, Crypto.Crypto | Service>;
579
+ /** Authorizes all or a selected subset of create operations in a digest-bound plan. */
580
+ declare const authorize: (plan: DnsPlan, operationIds?: readonly string[] | undefined, options?: {
581
+ readonly allowPartial?: boolean;
582
+ } | undefined) => Effect.Effect<{
583
+ allowPartial: boolean;
584
+ operationIds: string[];
585
+ planDigest: string;
586
+ version: "domainkit.plan-authorization.v1";
587
+ }, AuthorizeError, Crypto.Crypto>;
588
+ /** Applies approved creates sequentially after full and per-operation revalidation. */
589
+ declare const apply: (input: ApplyInput) => Effect.Effect<ApplyReceipt, AuthorizationError | ConflictError | CryptoError | Error | Error$1 | PartialApplyError | StaleError, Crypto.Crypto | Service>;
590
+ declare function renderManualInstructions(plan: DnsPlan): ReadonlyArray<string>;
591
+ declare namespace doh_d_exports {
592
+ export { Fetch, Options$1 as Options, layer$1 as layer, make$1 as make, toAsync$1 as toAsync };
593
+ }
594
+ type Fetch = (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
595
+ interface Options$1 {
596
+ readonly endpoint: string;
597
+ readonly fetch?: Fetch;
598
+ readonly timeoutMs?: number;
599
+ }
600
+ declare function make$1(options: Options$1): Interface;
601
+ declare const layer$1: (options: Options$1) => Layer.Layer<Service$4>;
602
+ declare const toAsync$1: (options: Options$1) => AsyncInterface;
603
+ declare namespace cloudflare_doh_d_exports {
604
+ export { Options, layer, make, toAsync };
605
+ }
606
+ interface Options extends Omit<Options$1, "endpoint"> {
607
+ readonly endpoint?: string;
608
+ }
609
+ declare function make(options?: Options): Interface;
610
+ declare const layer: (options?: Options) => Layer.Layer<Service$4>;
611
+ declare const toAsync: (options?: Options) => AsyncInterface;
612
+ declare namespace verify_d_exports {
613
+ export { ProviderObservation, PublicDnsObservation, Result, record };
614
+ }
615
+ declare const ProviderObservation: Schema.TaggedUnion<{
616
+ readonly failure: Schema.TaggedStruct<"failure", {
617
+ readonly message: Schema.String;
618
+ }>;
619
+ readonly match: Schema.TaggedStruct<"match", {}>;
620
+ readonly mismatch: Schema.TaggedStruct<"mismatch", {
621
+ readonly records: Schema.$Array<Schema.TaggedUnion<{
622
+ readonly A: Schema.TaggedStruct<"A", {
623
+ readonly metadata: Schema.Struct<{
624
+ readonly ownership: Schema.String;
625
+ readonly provenance: Schema.String;
626
+ readonly purpose: Schema.String;
627
+ }>;
628
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
629
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
630
+ readonly ttl: Schema.NullOr<Schema.Int>;
631
+ readonly address: Schema.String;
632
+ }>;
633
+ readonly AAAA: Schema.TaggedStruct<"AAAA", {
634
+ readonly metadata: Schema.Struct<{
635
+ readonly ownership: Schema.String;
636
+ readonly provenance: Schema.String;
637
+ readonly purpose: Schema.String;
638
+ }>;
639
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
640
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
641
+ readonly ttl: Schema.NullOr<Schema.Int>;
642
+ readonly address: Schema.String;
643
+ }>;
644
+ readonly CAA: Schema.TaggedStruct<"CAA", {
645
+ readonly metadata: Schema.Struct<{
646
+ readonly ownership: Schema.String;
647
+ readonly provenance: Schema.String;
648
+ readonly purpose: Schema.String;
649
+ }>;
650
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
651
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
652
+ readonly ttl: Schema.NullOr<Schema.Int>;
653
+ readonly flags: Schema.Int;
654
+ readonly tag: Schema.Literals<readonly ["issue", "issuewild", "iodef"]>;
655
+ readonly value: Schema.String;
656
+ }>;
657
+ readonly CNAME: Schema.TaggedStruct<"CNAME", {
658
+ readonly metadata: Schema.Struct<{
659
+ readonly ownership: Schema.String;
660
+ readonly provenance: Schema.String;
661
+ readonly purpose: Schema.String;
662
+ }>;
663
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
664
+ readonly ttl: Schema.NullOr<Schema.Int>;
665
+ readonly policy: Schema.Literal<"exclusive">;
666
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
667
+ }>;
668
+ readonly MX: Schema.TaggedStruct<"MX", {
669
+ readonly metadata: Schema.Struct<{
670
+ readonly ownership: Schema.String;
671
+ readonly provenance: Schema.String;
672
+ readonly purpose: Schema.String;
673
+ }>;
674
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
675
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
676
+ readonly ttl: Schema.NullOr<Schema.Int>;
677
+ readonly exchange: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
678
+ readonly priority: Schema.Int;
679
+ }>;
680
+ readonly NS: Schema.TaggedStruct<"NS", {
681
+ readonly metadata: Schema.Struct<{
682
+ readonly ownership: Schema.String;
683
+ readonly provenance: Schema.String;
684
+ readonly purpose: Schema.String;
685
+ }>;
686
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
687
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
688
+ readonly ttl: Schema.NullOr<Schema.Int>;
689
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
690
+ }>;
691
+ readonly SRV: Schema.TaggedStruct<"SRV", {
692
+ readonly metadata: Schema.Struct<{
693
+ readonly ownership: Schema.String;
694
+ readonly provenance: Schema.String;
695
+ readonly purpose: Schema.String;
696
+ }>;
697
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
698
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
699
+ readonly ttl: Schema.NullOr<Schema.Int>;
700
+ readonly port: Schema.Int;
701
+ readonly priority: Schema.Int;
702
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
703
+ readonly weight: Schema.Int;
704
+ }>;
705
+ readonly TXT: Schema.TaggedStruct<"TXT", {
706
+ readonly metadata: Schema.Struct<{
707
+ readonly ownership: Schema.String;
708
+ readonly provenance: Schema.String;
709
+ readonly purpose: Schema.String;
710
+ }>;
711
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
712
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
713
+ readonly ttl: Schema.NullOr<Schema.Int>;
714
+ readonly value: Schema.String;
715
+ }>;
716
+ }>>;
717
+ }>;
718
+ readonly missing: Schema.TaggedStruct<"missing", {}>;
719
+ }>;
720
+ type ProviderObservation = typeof ProviderObservation.Type;
721
+ declare const PublicDnsObservation: Schema.TaggedUnion<{
722
+ readonly failure: Schema.TaggedStruct<"failure", {
723
+ readonly message: Schema.String;
724
+ }>;
725
+ readonly mismatch: Schema.TaggedStruct<"mismatch", {
726
+ readonly answers: Schema.$Array<Schema.String>;
727
+ }>;
728
+ readonly missing: Schema.TaggedStruct<"missing", {}>;
729
+ readonly propagated: Schema.TaggedStruct<"propagated", {}>;
730
+ readonly timeout: Schema.TaggedStruct<"timeout", {}>;
731
+ }>;
732
+ type PublicDnsObservation = typeof PublicDnsObservation.Type;
733
+ declare const Result: Schema.Struct<{
734
+ readonly provider: Schema.TaggedUnion<{
735
+ readonly failure: Schema.TaggedStruct<"failure", {
736
+ readonly message: Schema.String;
737
+ }>;
738
+ readonly match: Schema.TaggedStruct<"match", {}>;
739
+ readonly mismatch: Schema.TaggedStruct<"mismatch", {
740
+ readonly records: Schema.$Array<Schema.TaggedUnion<{
741
+ readonly A: Schema.TaggedStruct<"A", {
742
+ readonly metadata: Schema.Struct<{
743
+ readonly ownership: Schema.String;
744
+ readonly provenance: Schema.String;
745
+ readonly purpose: Schema.String;
746
+ }>;
747
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
748
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
749
+ readonly ttl: Schema.NullOr<Schema.Int>;
750
+ readonly address: Schema.String;
751
+ }>;
752
+ readonly AAAA: Schema.TaggedStruct<"AAAA", {
753
+ readonly metadata: Schema.Struct<{
754
+ readonly ownership: Schema.String;
755
+ readonly provenance: Schema.String;
756
+ readonly purpose: Schema.String;
757
+ }>;
758
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
759
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
760
+ readonly ttl: Schema.NullOr<Schema.Int>;
761
+ readonly address: Schema.String;
762
+ }>;
763
+ readonly CAA: Schema.TaggedStruct<"CAA", {
764
+ readonly metadata: Schema.Struct<{
765
+ readonly ownership: Schema.String;
766
+ readonly provenance: Schema.String;
767
+ readonly purpose: Schema.String;
768
+ }>;
769
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
770
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
771
+ readonly ttl: Schema.NullOr<Schema.Int>;
772
+ readonly flags: Schema.Int;
773
+ readonly tag: Schema.Literals<readonly ["issue", "issuewild", "iodef"]>;
774
+ readonly value: Schema.String;
775
+ }>;
776
+ readonly CNAME: Schema.TaggedStruct<"CNAME", {
777
+ readonly metadata: Schema.Struct<{
778
+ readonly ownership: Schema.String;
779
+ readonly provenance: Schema.String;
780
+ readonly purpose: Schema.String;
781
+ }>;
782
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
783
+ readonly ttl: Schema.NullOr<Schema.Int>;
784
+ readonly policy: Schema.Literal<"exclusive">;
785
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
786
+ }>;
787
+ readonly MX: Schema.TaggedStruct<"MX", {
788
+ readonly metadata: Schema.Struct<{
789
+ readonly ownership: Schema.String;
790
+ readonly provenance: Schema.String;
791
+ readonly purpose: Schema.String;
792
+ }>;
793
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
794
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
795
+ readonly ttl: Schema.NullOr<Schema.Int>;
796
+ readonly exchange: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
797
+ readonly priority: Schema.Int;
798
+ }>;
799
+ readonly NS: Schema.TaggedStruct<"NS", {
800
+ readonly metadata: Schema.Struct<{
801
+ readonly ownership: Schema.String;
802
+ readonly provenance: Schema.String;
803
+ readonly purpose: Schema.String;
804
+ }>;
805
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
806
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
807
+ readonly ttl: Schema.NullOr<Schema.Int>;
808
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
809
+ }>;
810
+ readonly SRV: Schema.TaggedStruct<"SRV", {
811
+ readonly metadata: Schema.Struct<{
812
+ readonly ownership: Schema.String;
813
+ readonly provenance: Schema.String;
814
+ readonly purpose: Schema.String;
815
+ }>;
816
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
817
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
818
+ readonly ttl: Schema.NullOr<Schema.Int>;
819
+ readonly port: Schema.Int;
820
+ readonly priority: Schema.Int;
821
+ readonly target: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
822
+ readonly weight: Schema.Int;
823
+ }>;
824
+ readonly TXT: Schema.TaggedStruct<"TXT", {
825
+ readonly metadata: Schema.Struct<{
826
+ readonly ownership: Schema.String;
827
+ readonly provenance: Schema.String;
828
+ readonly purpose: Schema.String;
829
+ }>;
830
+ readonly name: Schema.decodeTo<Schema.brand<Schema.String, "DomainName">, Schema.String, never, never>;
831
+ readonly policy: Schema.Literals<readonly ["exclusive", "append"]>;
832
+ readonly ttl: Schema.NullOr<Schema.Int>;
833
+ readonly value: Schema.String;
834
+ }>;
835
+ }>>;
836
+ }>;
837
+ readonly missing: Schema.TaggedStruct<"missing", {}>;
838
+ }>;
839
+ readonly publicDns: Schema.TaggedUnion<{
840
+ readonly failure: Schema.TaggedStruct<"failure", {
841
+ readonly message: Schema.String;
842
+ }>;
843
+ readonly mismatch: Schema.TaggedStruct<"mismatch", {
844
+ readonly answers: Schema.$Array<Schema.String>;
845
+ }>;
846
+ readonly missing: Schema.TaggedStruct<"missing", {}>;
847
+ readonly propagated: Schema.TaggedStruct<"propagated", {}>;
848
+ readonly timeout: Schema.TaggedStruct<"timeout", {}>;
849
+ }>;
850
+ readonly status: Schema.Literals<readonly ["verified", "pending", "mismatch", "unavailable"]>;
851
+ }>;
852
+ interface Result extends Schema.Schema.Type<typeof Result> {}
853
+ declare const record: (input: {
854
+ readonly record: DnsRecord;
855
+ readonly zone: DomainName;
856
+ }) => Effect.Effect<{
857
+ provider: {
858
+ readonly _tag: "failure";
859
+ readonly message: string;
860
+ } | {
861
+ readonly _tag: "match";
862
+ } | {
863
+ readonly _tag: "mismatch";
864
+ readonly records: readonly ({
865
+ readonly _tag: "A";
866
+ readonly metadata: {
867
+ readonly ownership: string;
868
+ readonly provenance: string;
869
+ readonly purpose: string;
870
+ };
871
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
872
+ readonly policy: "append" | "exclusive";
873
+ readonly ttl: number | null;
874
+ readonly address: string;
875
+ } | {
876
+ readonly _tag: "AAAA";
877
+ readonly metadata: {
878
+ readonly ownership: string;
879
+ readonly provenance: string;
880
+ readonly purpose: string;
881
+ };
882
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
883
+ readonly policy: "append" | "exclusive";
884
+ readonly ttl: number | null;
885
+ readonly address: string;
886
+ } | {
887
+ readonly _tag: "CAA";
888
+ readonly metadata: {
889
+ readonly ownership: string;
890
+ readonly provenance: string;
891
+ readonly purpose: string;
892
+ };
893
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
894
+ readonly policy: "append" | "exclusive";
895
+ readonly ttl: number | null;
896
+ readonly flags: number;
897
+ readonly tag: "iodef" | "issue" | "issuewild";
898
+ readonly value: string;
899
+ } | {
900
+ readonly _tag: "CNAME";
901
+ readonly metadata: {
902
+ readonly ownership: string;
903
+ readonly provenance: string;
904
+ readonly purpose: string;
905
+ };
906
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
907
+ readonly ttl: number | null;
908
+ readonly policy: "exclusive";
909
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
910
+ } | {
911
+ readonly _tag: "MX";
912
+ readonly metadata: {
913
+ readonly ownership: string;
914
+ readonly provenance: string;
915
+ readonly purpose: string;
916
+ };
917
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
918
+ readonly policy: "append" | "exclusive";
919
+ readonly ttl: number | null;
920
+ readonly exchange: string & import("effect/Brand").Brand<"DomainName">;
921
+ readonly priority: number;
922
+ } | {
923
+ readonly _tag: "NS";
924
+ readonly metadata: {
925
+ readonly ownership: string;
926
+ readonly provenance: string;
927
+ readonly purpose: string;
928
+ };
929
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
930
+ readonly policy: "append" | "exclusive";
931
+ readonly ttl: number | null;
932
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
933
+ } | {
934
+ readonly _tag: "SRV";
935
+ readonly metadata: {
936
+ readonly ownership: string;
937
+ readonly provenance: string;
938
+ readonly purpose: string;
939
+ };
940
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
941
+ readonly policy: "append" | "exclusive";
942
+ readonly ttl: number | null;
943
+ readonly port: number;
944
+ readonly priority: number;
945
+ readonly target: string & import("effect/Brand").Brand<"DomainName">;
946
+ readonly weight: number;
947
+ } | {
948
+ readonly _tag: "TXT";
949
+ readonly metadata: {
950
+ readonly ownership: string;
951
+ readonly provenance: string;
952
+ readonly purpose: string;
953
+ };
954
+ readonly name: string & import("effect/Brand").Brand<"DomainName">;
955
+ readonly policy: "append" | "exclusive";
956
+ readonly ttl: number | null;
957
+ readonly value: string;
958
+ })[];
959
+ } | {
960
+ readonly _tag: "missing";
961
+ };
962
+ publicDns: {
963
+ readonly _tag: "missing";
964
+ } | {
965
+ readonly _tag: "failure";
966
+ readonly message: string;
967
+ } | {
968
+ readonly _tag: "mismatch";
969
+ readonly answers: readonly string[];
970
+ } | {
971
+ readonly _tag: "propagated";
972
+ } | {
973
+ readonly _tag: "timeout";
974
+ };
975
+ status: "mismatch" | "pending" | "unavailable" | "verified";
976
+ }, never, Service | Service$4>;
977
+ //#endregion
978
+ export { canonical_json_d_exports as _, Options$1 as a, CreateInput as c, zones_d_exports as d, selection_d_exports as f, CryptoError as g, oauth_d_exports as h, cloudflare_doh_d_exports as i, plan_d_exports as l, Fetch$1 as m, verify_d_exports as n, doh_d_exports as o, BeginInput as p, Options as r, AuthorizeError as s, Result as t, renderManualInstructions as u };
979
+ //# sourceMappingURL=verify-DPB1OfZ5.d.mts.map