import { APIResource } from "../../core/resource.js"; import * as AddressesAPI from "./addresses.js"; import { Address, AddressCreateParams, AddressDeleteParams, AddressEditParams, AddressGetParams, AddressListParams, Addresses, AddressesV4PagePaginationArray, BaseAddresses } from "./addresses.js"; import * as DNSAPI from "./dns.js"; import { BaseDNS, DNS, DNSCreateParams, DNSDeleteParams, DNSEditParams, DNSGetParams, DNSGetResponse, DNSRecord, DNSRecordsSinglePage } from "./dns.js"; import * as RulesAPI from "./rules/rules.js"; import { Action, BaseRules, EmailRoutingRule, Matcher, RuleCreateParams, RuleDeleteParams, RuleGetParams, RuleUpdateParams, Rules } from "./rules/rules.js"; import { APIPromise } from "../../core/api-promise.js"; import { RequestOptions } from "../../internal/request-options.js"; export declare class BaseEmailRouting extends APIResource { static readonly _key: readonly ['emailRouting']; /** * Disable your Email Routing zone. Also removes additional MX records previously * required for Email Routing to work. * * @deprecated */ disable(params: EmailRoutingDisableParams, options?: RequestOptions): APIPromise; /** * Enable you Email Routing zone. Add and lock the necessary MX and SPF records. * * @deprecated */ enable(params: EmailRoutingEnableParams, options?: RequestOptions): APIPromise; /** * Get information about the settings for your Email Routing zone. * * @example * ```ts * const settings = await client.emailRouting.get({ * zone_id: '023e105f4ecef8ad9ca31a8372d0c353', * }); * ``` */ get(params: EmailRoutingGetParams, options?: RequestOptions): APIPromise; /** * Unlock MX records previously locked by Email Routing. Deprecated - use PATCH * /zones/{zone_id}/email/routing/dns instead. * * @deprecated This endpoint is deprecated. Use PATCH /zones/{zone_id}/email/routing/dns instead. */ unlock(params: EmailRoutingUnlockParams, options?: RequestOptions): APIPromise; } export declare class EmailRouting extends BaseEmailRouting { dns: DNSAPI.DNS; rules: RulesAPI.Rules; addresses: AddressesAPI.Addresses; } export interface Settings { /** * Email Routing settings identifier. */ id: string; /** * State of the zone settings for Email Routing. */ enabled: true | false; /** * Domain of your zone. */ name: string; /** * The date and time the settings have been created. */ created?: string; /** * The date and time the settings have been modified. */ modified?: 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'; /** * Whether subaddressing (plus-addressing) is honored when matching incoming mail * against routing rules. */ support_subaddress?: true | false; /** * @deprecated Email Routing settings tag. (Deprecated, replaced by Email Routing * settings identifier) */ tag?: string; } export interface EmailRoutingDisableParams { /** * Path param: Identifier. */ zone_id: string; /** * Body param */ body: unknown; } export interface EmailRoutingEnableParams { /** * Path param: Identifier. */ zone_id: string; /** * Body param */ body: unknown; } export interface EmailRoutingGetParams { /** * Identifier. */ zone_id: string; } export interface EmailRoutingUnlockParams { /** * Path param: Identifier. */ zone_id: string; /** * Body param: Domain of your zone. */ name?: string; } export declare namespace EmailRouting { export { type Settings as Settings, type EmailRoutingDisableParams as EmailRoutingDisableParams, type EmailRoutingEnableParams as EmailRoutingEnableParams, type EmailRoutingGetParams as EmailRoutingGetParams, type EmailRoutingUnlockParams as EmailRoutingUnlockParams, }; export { DNS as DNS, BaseDNS as BaseDNS, type DNSRecord as DNSRecord, type DNSGetResponse as DNSGetResponse, type DNSRecordsSinglePage as DNSRecordsSinglePage, type DNSCreateParams as DNSCreateParams, type DNSDeleteParams as DNSDeleteParams, type DNSEditParams as DNSEditParams, type DNSGetParams as DNSGetParams, }; export { Rules as Rules, BaseRules as BaseRules, type Action as Action, type EmailRoutingRule as EmailRoutingRule, type Matcher as Matcher, type RuleCreateParams as RuleCreateParams, type RuleUpdateParams as RuleUpdateParams, type RuleDeleteParams as RuleDeleteParams, type RuleGetParams as RuleGetParams, }; export { Addresses as Addresses, BaseAddresses as BaseAddresses, type Address as Address, type AddressesV4PagePaginationArray as AddressesV4PagePaginationArray, type AddressCreateParams as AddressCreateParams, type AddressListParams as AddressListParams, type AddressDeleteParams as AddressDeleteParams, type AddressEditParams as AddressEditParams, type AddressGetParams as AddressGetParams, }; } //# sourceMappingURL=email-routing.d.ts.map