import * as Core from 'cloudflaredev/core';
import { APIResource } from 'cloudflaredev/resource';
import * as AddressesAPI from 'cloudflaredev/resources/email-routing/addresses';
import * as DNSAPI from 'cloudflaredev/resources/email-routing/dns';
import * as RulesAPI from 'cloudflaredev/resources/email-routing/rules/rules';
export declare class EmailRouting extends APIResource {
    dns: DNSAPI.DNS;
    rules: RulesAPI.Rules;
    addresses: AddressesAPI.Addresses;
    /**
     * Disable your Email Routing zone. Also removes additional MX records previously
     * required for Email Routing to work.
     */
    disable(zoneIdentifier: string, body: EmailRoutingDisableParams, options?: Core.RequestOptions): Core.APIPromise<Settings>;
    /**
     * Enable you Email Routing zone. Add and lock the necessary MX and SPF records.
     */
    enable(zoneIdentifier: string, body: EmailRoutingEnableParams, options?: Core.RequestOptions): Core.APIPromise<Settings>;
    /**
     * Get information about the settings for your Email Routing zone.
     */
    get(zoneIdentifier: string, options?: Core.RequestOptions): Core.APIPromise<Settings>;
}
export interface Settings {
    /**
     * Email Routing settings identifier.
     */
    id?: string;
    /**
     * The date and time the settings have been created.
     */
    created?: string;
    /**
     * State of the zone settings for Email Routing.
     */
    enabled?: true | false;
    /**
     * The date and time the settings have been modified.
     */
    modified?: string;
    /**
     * Domain of your zone.
     */
    name?: string;
    /**
     * Flag to check if the user skipped the configuration wizard.
     */
    skip_wizard?: true | false;
    /**
     * Show the state of your account, and the type or configuration error.
     */
    status?: 'ready' | 'unconfigured' | 'misconfigured' | 'misconfigured/locked' | 'unlocked';
    /**
     * @deprecated: Email Routing settings tag. (Deprecated, replaced by Email Routing
     * settings identifier)
     */
    tag?: string;
}
export type EmailRoutingDisableParams = unknown;
export type EmailRoutingEnableParams = unknown;
export declare namespace EmailRouting {
    export import DNS = DNSAPI.DNS;
    export import DNSRecord = DNSAPI.DNSRecord;
    export import DNSGetResponse = DNSAPI.DNSGetResponse;
    export import Rules = RulesAPI.Rules;
    export import Action = RulesAPI.Action;
    export import EmailRoutingRule = RulesAPI.EmailRoutingRule;
    export import Matcher = RulesAPI.Matcher;
    export import EmailRoutingRulesV4PagePaginationArray = RulesAPI.EmailRoutingRulesV4PagePaginationArray;
    export import RuleCreateParams = RulesAPI.RuleCreateParams;
    export import RuleUpdateParams = RulesAPI.RuleUpdateParams;
    export import RuleListParams = RulesAPI.RuleListParams;
    export import Addresses = AddressesAPI.Addresses;
    export import Address = AddressesAPI.Address;
    export import AddressesV4PagePaginationArray = AddressesAPI.AddressesV4PagePaginationArray;
    export import AddressCreateParams = AddressesAPI.AddressCreateParams;
    export import AddressListParams = AddressesAPI.AddressListParams;
}
//# sourceMappingURL=email-routing.d.ts.map