2025-11-13 13:13:34 -07:00

224 lines
6.2 KiB
TypeScript

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<DomainUpdateResponse | null>;
/**
* 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<DomainsSinglePage, Domain>;
/**
* 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<DomainGetResponse | null>;
}
export declare class DomainsSinglePage extends SinglePage<Domain> {
}
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