import { APIResource } from "../../core/resource.js";
import { APIPromise } from "../../core/api-promise.js";
import { RequestOptions } from "../../internal/request-options.js";
export declare class BaseSubdomains extends APIResource {
    static readonly _key: readonly ['workers', 'subdomains'];
    /**
     * Creates a Workers subdomain for an account.
     *
     * @example
     * ```ts
     * const subdomain = await client.workers.subdomains.update({
     *   account_id: '023e105f4ecef8ad9ca31a8372d0c353',
     *   subdomain: 'my-subdomain',
     * });
     * ```
     */
    update(params: SubdomainUpdateParams, options?: RequestOptions): APIPromise<SubdomainUpdateResponse>;
    /**
     * Deletes a Workers subdomain for an account.
     *
     * @example
     * ```ts
     * await client.workers.subdomains.delete({
     *   account_id: '023e105f4ecef8ad9ca31a8372d0c353',
     * });
     * ```
     */
    delete(params: SubdomainDeleteParams, options?: RequestOptions): APIPromise<void>;
    /**
     * Returns a Workers subdomain for an account.
     *
     * @example
     * ```ts
     * const subdomain = await client.workers.subdomains.get({
     *   account_id: '023e105f4ecef8ad9ca31a8372d0c353',
     * });
     * ```
     */
    get(params: SubdomainGetParams, options?: RequestOptions): APIPromise<SubdomainGetResponse>;
}
export declare class Subdomains extends BaseSubdomains {
}
export interface SubdomainUpdateResponse {
    subdomain: string;
}
export interface SubdomainGetResponse {
    subdomain: string;
}
export interface SubdomainUpdateParams {
    /**
     * Path param: Identifier.
     */
    account_id: string;
    /**
     * Body param
     */
    subdomain: string;
}
export interface SubdomainDeleteParams {
    /**
     * Identifier.
     */
    account_id: string;
}
export interface SubdomainGetParams {
    /**
     * Identifier.
     */
    account_id: string;
}
export declare namespace Subdomains {
    export { type SubdomainUpdateResponse as SubdomainUpdateResponse, type SubdomainGetResponse as SubdomainGetResponse, type SubdomainUpdateParams as SubdomainUpdateParams, type SubdomainDeleteParams as SubdomainDeleteParams, type SubdomainGetParams as SubdomainGetParams, };
}
//# sourceMappingURL=subdomains.d.ts.map