import * as Core from 'cloudflaredev/core';
import { APIResource } from 'cloudflaredev/resource';
import * as DomainsAPI from 'cloudflaredev/resources/pages/projects/domains';
import { SinglePage } from 'cloudflaredev/pagination';
export declare class Domains extends APIResource {
    /**
     * Add a new domain for the Pages project.
     */
    create(projectName: string, params: DomainCreateParams, options?: Core.RequestOptions): Core.APIPromise<DomainCreateResponse | null>;
    /**
     * Fetch a list of all domains associated with a Pages project.
     */
    list(projectName: string, params: DomainListParams, options?: Core.RequestOptions): Core.PagePromise<DomainListResponsesSinglePage, DomainListResponse>;
    /**
     * Delete a Pages project's domain.
     */
    delete(projectName: string, domainName: string, params: DomainDeleteParams, options?: Core.RequestOptions): Core.APIPromise<unknown>;
    /**
     * Retry the validation status of a single domain.
     */
    edit(projectName: string, domainName: string, params: DomainEditParams, options?: Core.RequestOptions): Core.APIPromise<DomainEditResponse | null>;
    /**
     * Fetch a single domain.
     */
    get(projectName: string, domainName: string, params: DomainGetParams, options?: Core.RequestOptions): Core.APIPromise<DomainGetResponse | null>;
}
export declare class DomainListResponsesSinglePage extends SinglePage<DomainListResponse> {
}
export type DomainCreateResponse = unknown | Array<unknown> | string;
export type DomainListResponse = unknown;
export type DomainDeleteResponse = unknown;
export type DomainEditResponse = unknown | Array<unknown> | string;
export type DomainGetResponse = unknown | Array<unknown> | string;
export interface DomainCreateParams {
    /**
     * Path param: Identifier
     */
    account_id: string;
    /**
     * Body param:
     */
    body: unknown;
}
export interface DomainListParams {
    /**
     * Identifier
     */
    account_id: string;
}
export interface DomainDeleteParams {
    /**
     * Identifier
     */
    account_id: string;
}
export interface DomainEditParams {
    /**
     * Path param: Identifier
     */
    account_id: string;
    /**
     * Body param:
     */
    body: unknown;
}
export interface DomainGetParams {
    /**
     * Identifier
     */
    account_id: string;
}
export declare namespace Domains {
    export import DomainCreateResponse = DomainsAPI.DomainCreateResponse;
    export import DomainListResponse = DomainsAPI.DomainListResponse;
    export import DomainDeleteResponse = DomainsAPI.DomainDeleteResponse;
    export import DomainEditResponse = DomainsAPI.DomainEditResponse;
    export import DomainGetResponse = DomainsAPI.DomainGetResponse;
    export import DomainListResponsesSinglePage = DomainsAPI.DomainListResponsesSinglePage;
    export import DomainCreateParams = DomainsAPI.DomainCreateParams;
    export import DomainListParams = DomainsAPI.DomainListParams;
    export import DomainDeleteParams = DomainsAPI.DomainDeleteParams;
    export import DomainEditParams = DomainsAPI.DomainEditParams;
    export import DomainGetParams = DomainsAPI.DomainGetParams;
}
//# sourceMappingURL=domains.d.ts.map