import type { DomainManagementTypes } from "@cargo-ai/types"; import { z } from "zod"; import type { ApiType } from "../types.js"; export declare namespace DomainManagement { type DomainRegistrar = DomainManagementTypes.DomainRegistrar; type DomainStatus = DomainManagementTypes.DomainStatus; type DnsRecordType = DomainManagementTypes.DnsRecordType; type DmarcPolicy = DomainManagementTypes.DmarcPolicy; type DnsRecord = ApiType; type Domain = ApiType; type DomainAvailability = ApiType; const domainKeys: { all: readonly ["domainManagement", "domains"]; list: () => readonly ["domainManagement", "domains", "list"]; get: (uuid: string) => readonly ["domainManagement", "domains", "get", string]; search: (name: string) => readonly ["domainManagement", "domains", "search", string]; suggestions: (name: string) => readonly ["domainManagement", "domains", "suggestions", string]; }; namespace Api { type SearchDomainsPayload = { name: string; }; /** Exact-match availability; alternatives come from the suggestions endpoint. */ type SearchDomainsResult = { result: DomainAvailability; }; type SearchDomainSuggestionsPayload = { name: string; }; type SearchDomainSuggestionsResult = { results: DomainAvailability[]; }; type ListDomainsPayload = { limit?: number; offset?: number; }; type ListDomainsResult = { domains: Domain[]; }; type GetDomainResult = { domain: Domain; }; type PurchaseDomainPayload = { name: string; }; type PurchaseDomainResult = { domain: Domain; }; /** Failure reasons returned by `POST /domainManagement/domains`. */ type PurchaseDomainFailureReason = "domainAlreadyExists" | "domainNotAvailable" | "subscriptionNotFound" | "notEnoughCredits" | "purchaseFailed"; type ConnectDomainPayload = { name: string; }; type ConnectDomainResult = { domain: Domain; }; /** Failure reasons returned by `POST /domainManagement/domains/connect`. */ const zodConnectDomainErrorReason: z.ZodEnum<{ domainAlreadyExists: "domainAlreadyExists"; connectFailed: "connectFailed"; }>; type ConnectDomainFailureReason = z.infer; type RefreshDomainStatusPayload = { uuid: string; }; type RefreshDomainStatusResult = { domain: Domain; }; /** * DNS record sent to the backend, which expects explicit `null` for * unset `ttl` / `priority` (unlike responses, where `null` becomes * `undefined`). */ type DnsRecordInput = { type: DnsRecordType; name: string; value: string; ttl: number | null; priority: number | null; }; type UpdateDomainPayload = { uuid: string; dnsRecords?: DnsRecordInput[]; redirectUrl?: string; dmarcEmail?: string; dmarcPolicy?: DmarcPolicy; }; type UpdateDomainResult = { domain: Domain; }; type CancelDomainPayload = { uuid: string; }; type CancelDomainResult = { domain: Domain; }; } } //# sourceMappingURL=domainManagement.d.ts.map