import { APIResource } from "../../resource.js"; import * as Core from "../../core.js"; import { SinglePage } from "../../pagination.js"; export declare class Domains extends APIResource { /** * Update individual domain. * * @example * ```ts * const domain = await client.registrar.domains.update( * 'cloudflare.com', * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ update(domainName: string, params: DomainUpdateParams, options?: Core.RequestOptions): Core.APIPromise; /** * List domains handled by Registrar. * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const domain of client.registrar.domains.list({ * account_id: '023e105f4ecef8ad9ca31a8372d0c353', * })) { * // ... * } * ``` */ list(params: DomainListParams, options?: Core.RequestOptions): Core.PagePromise; /** * Show individual domain. * * @example * ```ts * const domain = await client.registrar.domains.get( * 'cloudflare.com', * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ get(domainName: string, params: DomainGetParams, options?: Core.RequestOptions): Core.APIPromise; } export declare class DomainsSinglePage extends SinglePage { } export interface Domain { /** * Domain identifier. */ id?: string; /** * Shows if a domain is available for transferring into Cloudflare Registrar. */ available?: boolean; /** * Indicates if the domain can be registered as a new domain. */ can_register?: boolean; /** * Shows time of creation. */ created_at?: string; /** * Shows name of current registrar. */ current_registrar?: string; /** * Shows when domain name registration expires. */ expires_at?: string; /** * Shows whether a registrar lock is in place for a domain. */ locked?: boolean; /** * Shows contact information for domain registrant. */ registrant_contact?: Domain.RegistrantContact; /** * A comma-separated list of registry status codes. A full list of status codes can * be found at * [EPP Status Codes](https://www.icann.org/resources/pages/epp-status-codes-2014-06-16-en). */ registry_statuses?: string; /** * Whether a particular TLD is currently supported by Cloudflare Registrar. Refer * to [TLD Policies](https://www.cloudflare.com/tld-policies/) for a list of * supported TLDs. */ supported_tld?: boolean; /** * Statuses for domain transfers into Cloudflare Registrar. */ transfer_in?: Domain.TransferIn; /** * Last updated. */ updated_at?: string; } export declare namespace Domain { /** * Shows contact information for domain registrant. */ interface RegistrantContact { /** * Address. */ address: string; /** * City. */ city: string; /** * The country in which the user lives. */ country: string | null; /** * User's first name */ first_name: string | null; /** * User's last name */ last_name: string | null; /** * Name of organization. */ organization: string; /** * User's telephone number */ phone: string | null; /** * State. */ state: string; /** * The zipcode or postal code where the user lives. */ zip: string | null; /** * Contact Identifier. */ id?: string; /** * Optional address line for unit, floor, suite, etc. */ address2?: string; /** * The contact email address of the user. */ email?: string; /** * Contact fax number. */ fax?: string; } /** * Statuses for domain transfers into Cloudflare Registrar. */ interface TransferIn { /** * Form of authorization has been accepted by the registrant. */ accept_foa?: 'needed' | 'ok'; /** * Shows transfer status with the registry. */ approve_transfer?: 'needed' | 'ok' | 'pending' | 'trying' | 'rejected' | 'unknown'; /** * Indicates if cancellation is still possible. */ can_cancel_transfer?: boolean; /** * Privacy guards are disabled at the foreign registrar. */ disable_privacy?: 'needed' | 'ok' | 'unknown'; /** * Auth code has been entered and verified. */ enter_auth_code?: 'needed' | 'ok' | 'pending' | 'trying' | 'rejected'; /** * Domain is unlocked at the foreign registrar. */ unlock_domain?: 'needed' | 'ok' | 'pending' | 'trying' | 'unknown'; } } export type DomainUpdateResponse = unknown; export type DomainGetResponse = unknown; export interface DomainUpdateParams { /** * Path param: Identifier */ account_id: string; /** * Body param: Auto-renew controls whether subscription is automatically renewed * upon domain expiration. */ auto_renew?: boolean; /** * Body param: Shows whether a registrar lock is in place for a domain. */ locked?: boolean; /** * Body param: Privacy option controls redacting WHOIS information. */ privacy?: boolean; } export interface DomainListParams { /** * Identifier */ account_id: string; } export interface DomainGetParams { /** * Identifier */ account_id: string; } export declare namespace Domains { export { type Domain as Domain, type DomainUpdateResponse as DomainUpdateResponse, type DomainGetResponse as DomainGetResponse, DomainsSinglePage as DomainsSinglePage, type DomainUpdateParams as DomainUpdateParams, type DomainListParams as DomainListParams, type DomainGetParams as DomainGetParams, }; } //# sourceMappingURL=domains.d.ts.map