/**
 * Azure Dns API
 *
 * Generated from the Azure REST API specs.
 * DO NOT EDIT - regenerate with: bun run generate
 */
import * as Schema from "effect/Schema";
export declare const DnsResourceReferenceGetByTargetResourcesInput: Schema.Struct<{}>;
export type DnsResourceReferenceGetByTargetResourcesInput = typeof DnsResourceReferenceGetByTargetResourcesInput.Type;
export declare const DnsResourceReferenceGetByTargetResourcesOutput: Schema.Struct<{
    readonly properties: Schema.optional<Schema.Struct<{
        readonly dnsResourceReferences: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly dnsResources: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly id: Schema.optional<Schema.String>;
            }>>>;
            readonly targetResource: Schema.optional<Schema.Struct<{
                readonly id: Schema.optional<Schema.String>;
            }>>;
        }>>>;
    }>>;
}>;
export type DnsResourceReferenceGetByTargetResourcesOutput = typeof DnsResourceReferenceGetByTargetResourcesOutput.Type;
/**
 * Returns the DNS records specified by the referencing targetResourceIds.
 */
export declare const DnsResourceReferenceGetByTargetResources: import("@distilled.cloud/core/client").OperationMethod<{}, {
    readonly properties?: {
        readonly dnsResourceReferences?: readonly {
            readonly dnsResources?: readonly {
                readonly id?: string | undefined;
            }[] | undefined;
            readonly targetResource?: {
                readonly id?: string | undefined;
            } | undefined;
        }[] | undefined;
    } | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const RecordSetsCreateOrUpdateInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
    readonly relativeRecordSetName: Schema.String;
    readonly recordType: Schema.Literals<readonly ["A", "AAAA", "CAA", "CNAME", "MX", "NS", "PTR", "SOA", "SRV", "TXT"]>;
}>;
export type RecordSetsCreateOrUpdateInput = typeof RecordSetsCreateOrUpdateInput.Type;
export declare const RecordSetsCreateOrUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly etag: Schema.optional<Schema.String>;
    readonly properties: Schema.optional<Schema.Struct<{
        readonly metadata: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly TTL: Schema.optional<Schema.Number>;
        readonly fqdn: Schema.optional<Schema.String>;
        readonly provisioningState: Schema.optional<Schema.String>;
        readonly targetResource: Schema.optional<Schema.Struct<{
            readonly id: Schema.optional<Schema.String>;
        }>>;
        readonly ARecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ipv4Address: Schema.optional<Schema.String>;
        }>>>;
        readonly AAAARecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ipv6Address: Schema.optional<Schema.String>;
        }>>>;
        readonly MXRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly preference: Schema.optional<Schema.Number>;
            readonly exchange: Schema.optional<Schema.String>;
        }>>>;
        readonly NSRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly nsdname: Schema.optional<Schema.String>;
        }>>>;
        readonly PTRRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ptrdname: Schema.optional<Schema.String>;
        }>>>;
        readonly SRVRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly priority: Schema.optional<Schema.Number>;
            readonly weight: Schema.optional<Schema.Number>;
            readonly port: Schema.optional<Schema.Number>;
            readonly target: Schema.optional<Schema.String>;
        }>>>;
        readonly TXTRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly value: Schema.optional<Schema.$Array<Schema.String>>;
        }>>>;
        readonly CNAMERecord: Schema.optional<Schema.Struct<{
            readonly cname: Schema.optional<Schema.String>;
        }>>;
        readonly SOARecord: Schema.optional<Schema.Struct<{
            readonly host: Schema.optional<Schema.String>;
            readonly email: Schema.optional<Schema.String>;
            readonly serialNumber: Schema.optional<Schema.Number>;
            readonly refreshTime: Schema.optional<Schema.Number>;
            readonly retryTime: Schema.optional<Schema.Number>;
            readonly expireTime: Schema.optional<Schema.Number>;
            readonly minimumTTL: Schema.optional<Schema.Number>;
        }>>;
        readonly caaRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly flags: Schema.optional<Schema.Number>;
            readonly tag: Schema.optional<Schema.String>;
            readonly value: Schema.optional<Schema.String>;
        }>>>;
    }>>;
}>;
export type RecordSetsCreateOrUpdateOutput = typeof RecordSetsCreateOrUpdateOutput.Type;
/**
 * Creates or updates a record set within a DNS zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param relativeRecordSetName - The name of the record set, relative to the name of the zone.
 * @param recordType - The type of DNS record in this record set. Record sets of type SOA can be updated but not created (they are created when the DNS zone is created).
 * @param If-Match - The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value to prevent accidentally overwriting any concurrent changes.
 * @param If-None-Match - Set to '*' to allow a new record set to be created, but to prevent updating an existing record set. Other values will be ignored.
 */
export declare const RecordSetsCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly recordType: "A" | "AAAA" | "CAA" | "CNAME" | "MX" | "NS" | "PTR" | "SOA" | "SRV" | "TXT";
    readonly relativeRecordSetName: string;
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly etag?: string | undefined;
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly properties?: {
        readonly AAAARecords?: readonly {
            readonly ipv6Address?: string | undefined;
        }[] | undefined;
        readonly ARecords?: readonly {
            readonly ipv4Address?: string | undefined;
        }[] | undefined;
        readonly CNAMERecord?: {
            readonly cname?: string | undefined;
        } | undefined;
        readonly MXRecords?: readonly {
            readonly exchange?: string | undefined;
            readonly preference?: number | undefined;
        }[] | undefined;
        readonly NSRecords?: readonly {
            readonly nsdname?: string | undefined;
        }[] | undefined;
        readonly PTRRecords?: readonly {
            readonly ptrdname?: string | undefined;
        }[] | undefined;
        readonly SOARecord?: {
            readonly email?: string | undefined;
            readonly expireTime?: number | undefined;
            readonly host?: string | undefined;
            readonly minimumTTL?: number | undefined;
            readonly refreshTime?: number | undefined;
            readonly retryTime?: number | undefined;
            readonly serialNumber?: number | undefined;
        } | undefined;
        readonly SRVRecords?: readonly {
            readonly port?: number | undefined;
            readonly priority?: number | undefined;
            readonly target?: string | undefined;
            readonly weight?: number | undefined;
        }[] | undefined;
        readonly TTL?: number | undefined;
        readonly TXTRecords?: readonly {
            readonly value?: readonly string[] | undefined;
        }[] | undefined;
        readonly caaRecords?: readonly {
            readonly flags?: number | undefined;
            readonly tag?: string | undefined;
            readonly value?: string | undefined;
        }[] | undefined;
        readonly fqdn?: string | undefined;
        readonly metadata?: {
            readonly [x: string]: string;
        } | undefined;
        readonly provisioningState?: string | undefined;
        readonly targetResource?: {
            readonly id?: string | undefined;
        } | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const RecordSetsDeleteInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
    readonly relativeRecordSetName: Schema.String;
    readonly recordType: Schema.Literals<readonly ["A", "AAAA", "CAA", "CNAME", "MX", "NS", "PTR", "SOA", "SRV", "TXT"]>;
}>;
export type RecordSetsDeleteInput = typeof RecordSetsDeleteInput.Type;
export declare const RecordSetsDeleteOutput: Schema.Void;
export type RecordSetsDeleteOutput = typeof RecordSetsDeleteOutput.Type;
/**
 * Deletes a record set from a DNS zone. This operation cannot be undone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param relativeRecordSetName - The name of the record set, relative to the name of the zone.
 * @param recordType - The type of DNS record in this record set. Record sets of type SOA cannot be deleted (they are deleted when the DNS zone is deleted).
 * @param If-Match - The etag of the record set. Omit this value to always delete the current record set. Specify the last-seen etag value to prevent accidentally deleting any concurrent changes.
 */
export declare const RecordSetsDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly recordType: "A" | "AAAA" | "CAA" | "CNAME" | "MX" | "NS" | "PTR" | "SOA" | "SRV" | "TXT";
    readonly relativeRecordSetName: string;
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const RecordSetsGetInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
    readonly relativeRecordSetName: Schema.String;
    readonly recordType: Schema.Literals<readonly ["A", "AAAA", "CAA", "CNAME", "MX", "NS", "PTR", "SOA", "SRV", "TXT"]>;
}>;
export type RecordSetsGetInput = typeof RecordSetsGetInput.Type;
export declare const RecordSetsGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly etag: Schema.optional<Schema.String>;
    readonly properties: Schema.optional<Schema.Struct<{
        readonly metadata: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly TTL: Schema.optional<Schema.Number>;
        readonly fqdn: Schema.optional<Schema.String>;
        readonly provisioningState: Schema.optional<Schema.String>;
        readonly targetResource: Schema.optional<Schema.Struct<{
            readonly id: Schema.optional<Schema.String>;
        }>>;
        readonly ARecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ipv4Address: Schema.optional<Schema.String>;
        }>>>;
        readonly AAAARecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ipv6Address: Schema.optional<Schema.String>;
        }>>>;
        readonly MXRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly preference: Schema.optional<Schema.Number>;
            readonly exchange: Schema.optional<Schema.String>;
        }>>>;
        readonly NSRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly nsdname: Schema.optional<Schema.String>;
        }>>>;
        readonly PTRRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ptrdname: Schema.optional<Schema.String>;
        }>>>;
        readonly SRVRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly priority: Schema.optional<Schema.Number>;
            readonly weight: Schema.optional<Schema.Number>;
            readonly port: Schema.optional<Schema.Number>;
            readonly target: Schema.optional<Schema.String>;
        }>>>;
        readonly TXTRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly value: Schema.optional<Schema.$Array<Schema.String>>;
        }>>>;
        readonly CNAMERecord: Schema.optional<Schema.Struct<{
            readonly cname: Schema.optional<Schema.String>;
        }>>;
        readonly SOARecord: Schema.optional<Schema.Struct<{
            readonly host: Schema.optional<Schema.String>;
            readonly email: Schema.optional<Schema.String>;
            readonly serialNumber: Schema.optional<Schema.Number>;
            readonly refreshTime: Schema.optional<Schema.Number>;
            readonly retryTime: Schema.optional<Schema.Number>;
            readonly expireTime: Schema.optional<Schema.Number>;
            readonly minimumTTL: Schema.optional<Schema.Number>;
        }>>;
        readonly caaRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly flags: Schema.optional<Schema.Number>;
            readonly tag: Schema.optional<Schema.String>;
            readonly value: Schema.optional<Schema.String>;
        }>>>;
    }>>;
}>;
export type RecordSetsGetOutput = typeof RecordSetsGetOutput.Type;
/**
 * Gets a record set.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param relativeRecordSetName - The name of the record set, relative to the name of the zone.
 * @param recordType - The type of DNS record in this record set.
 */
export declare const RecordSetsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly recordType: "A" | "AAAA" | "CAA" | "CNAME" | "MX" | "NS" | "PTR" | "SOA" | "SRV" | "TXT";
    readonly relativeRecordSetName: string;
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly etag?: string | undefined;
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly properties?: {
        readonly AAAARecords?: readonly {
            readonly ipv6Address?: string | undefined;
        }[] | undefined;
        readonly ARecords?: readonly {
            readonly ipv4Address?: string | undefined;
        }[] | undefined;
        readonly CNAMERecord?: {
            readonly cname?: string | undefined;
        } | undefined;
        readonly MXRecords?: readonly {
            readonly exchange?: string | undefined;
            readonly preference?: number | undefined;
        }[] | undefined;
        readonly NSRecords?: readonly {
            readonly nsdname?: string | undefined;
        }[] | undefined;
        readonly PTRRecords?: readonly {
            readonly ptrdname?: string | undefined;
        }[] | undefined;
        readonly SOARecord?: {
            readonly email?: string | undefined;
            readonly expireTime?: number | undefined;
            readonly host?: string | undefined;
            readonly minimumTTL?: number | undefined;
            readonly refreshTime?: number | undefined;
            readonly retryTime?: number | undefined;
            readonly serialNumber?: number | undefined;
        } | undefined;
        readonly SRVRecords?: readonly {
            readonly port?: number | undefined;
            readonly priority?: number | undefined;
            readonly target?: string | undefined;
            readonly weight?: number | undefined;
        }[] | undefined;
        readonly TTL?: number | undefined;
        readonly TXTRecords?: readonly {
            readonly value?: readonly string[] | undefined;
        }[] | undefined;
        readonly caaRecords?: readonly {
            readonly flags?: number | undefined;
            readonly tag?: string | undefined;
            readonly value?: string | undefined;
        }[] | undefined;
        readonly fqdn?: string | undefined;
        readonly metadata?: {
            readonly [x: string]: string;
        } | undefined;
        readonly provisioningState?: string | undefined;
        readonly targetResource?: {
            readonly id?: string | undefined;
        } | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const RecordSetsListAllByDnsZoneInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
    readonly $top: Schema.optional<Schema.Number>;
    readonly $recordsetnamesuffix: Schema.optional<Schema.String>;
}>;
export type RecordSetsListAllByDnsZoneInput = typeof RecordSetsListAllByDnsZoneInput.Type;
export declare const RecordSetsListAllByDnsZoneOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly etag: Schema.optional<Schema.String>;
        readonly properties: Schema.optional<Schema.Struct<{
            readonly metadata: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
            readonly TTL: Schema.optional<Schema.Number>;
            readonly fqdn: Schema.optional<Schema.String>;
            readonly provisioningState: Schema.optional<Schema.String>;
            readonly targetResource: Schema.optional<Schema.Struct<{
                readonly id: Schema.optional<Schema.String>;
            }>>;
            readonly ARecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ipv4Address: Schema.optional<Schema.String>;
            }>>>;
            readonly AAAARecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ipv6Address: Schema.optional<Schema.String>;
            }>>>;
            readonly MXRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly preference: Schema.optional<Schema.Number>;
                readonly exchange: Schema.optional<Schema.String>;
            }>>>;
            readonly NSRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly nsdname: Schema.optional<Schema.String>;
            }>>>;
            readonly PTRRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ptrdname: Schema.optional<Schema.String>;
            }>>>;
            readonly SRVRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly priority: Schema.optional<Schema.Number>;
                readonly weight: Schema.optional<Schema.Number>;
                readonly port: Schema.optional<Schema.Number>;
                readonly target: Schema.optional<Schema.String>;
            }>>>;
            readonly TXTRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly value: Schema.optional<Schema.$Array<Schema.String>>;
            }>>>;
            readonly CNAMERecord: Schema.optional<Schema.Struct<{
                readonly cname: Schema.optional<Schema.String>;
            }>>;
            readonly SOARecord: Schema.optional<Schema.Struct<{
                readonly host: Schema.optional<Schema.String>;
                readonly email: Schema.optional<Schema.String>;
                readonly serialNumber: Schema.optional<Schema.Number>;
                readonly refreshTime: Schema.optional<Schema.Number>;
                readonly retryTime: Schema.optional<Schema.Number>;
                readonly expireTime: Schema.optional<Schema.Number>;
                readonly minimumTTL: Schema.optional<Schema.Number>;
            }>>;
            readonly caaRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly flags: Schema.optional<Schema.Number>;
                readonly tag: Schema.optional<Schema.String>;
                readonly value: Schema.optional<Schema.String>;
            }>>>;
        }>>;
    }>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type RecordSetsListAllByDnsZoneOutput = typeof RecordSetsListAllByDnsZoneOutput.Type;
/**
 * Lists all record sets in a DNS zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param $top - The maximum number of record sets to return. If not specified, returns up to 100 record sets.
 * @param $recordsetnamesuffix - The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with .<recordSetNameSuffix>
 */
export declare const RecordSetsListAllByDnsZone: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $recordsetnamesuffix?: string | undefined;
    readonly $top?: number | undefined;
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {
        readonly etag?: string | undefined;
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly properties?: {
            readonly AAAARecords?: readonly {
                readonly ipv6Address?: string | undefined;
            }[] | undefined;
            readonly ARecords?: readonly {
                readonly ipv4Address?: string | undefined;
            }[] | undefined;
            readonly CNAMERecord?: {
                readonly cname?: string | undefined;
            } | undefined;
            readonly MXRecords?: readonly {
                readonly exchange?: string | undefined;
                readonly preference?: number | undefined;
            }[] | undefined;
            readonly NSRecords?: readonly {
                readonly nsdname?: string | undefined;
            }[] | undefined;
            readonly PTRRecords?: readonly {
                readonly ptrdname?: string | undefined;
            }[] | undefined;
            readonly SOARecord?: {
                readonly email?: string | undefined;
                readonly expireTime?: number | undefined;
                readonly host?: string | undefined;
                readonly minimumTTL?: number | undefined;
                readonly refreshTime?: number | undefined;
                readonly retryTime?: number | undefined;
                readonly serialNumber?: number | undefined;
            } | undefined;
            readonly SRVRecords?: readonly {
                readonly port?: number | undefined;
                readonly priority?: number | undefined;
                readonly target?: string | undefined;
                readonly weight?: number | undefined;
            }[] | undefined;
            readonly TTL?: number | undefined;
            readonly TXTRecords?: readonly {
                readonly value?: readonly string[] | undefined;
            }[] | undefined;
            readonly caaRecords?: readonly {
                readonly flags?: number | undefined;
                readonly tag?: string | undefined;
                readonly value?: string | undefined;
            }[] | undefined;
            readonly fqdn?: string | undefined;
            readonly metadata?: {
                readonly [x: string]: string;
            } | undefined;
            readonly provisioningState?: string | undefined;
            readonly targetResource?: {
                readonly id?: string | undefined;
            } | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const RecordSetsListByDnsZoneInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
    readonly $top: Schema.optional<Schema.Number>;
    readonly $recordsetnamesuffix: Schema.optional<Schema.String>;
}>;
export type RecordSetsListByDnsZoneInput = typeof RecordSetsListByDnsZoneInput.Type;
export declare const RecordSetsListByDnsZoneOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly etag: Schema.optional<Schema.String>;
        readonly properties: Schema.optional<Schema.Struct<{
            readonly metadata: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
            readonly TTL: Schema.optional<Schema.Number>;
            readonly fqdn: Schema.optional<Schema.String>;
            readonly provisioningState: Schema.optional<Schema.String>;
            readonly targetResource: Schema.optional<Schema.Struct<{
                readonly id: Schema.optional<Schema.String>;
            }>>;
            readonly ARecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ipv4Address: Schema.optional<Schema.String>;
            }>>>;
            readonly AAAARecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ipv6Address: Schema.optional<Schema.String>;
            }>>>;
            readonly MXRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly preference: Schema.optional<Schema.Number>;
                readonly exchange: Schema.optional<Schema.String>;
            }>>>;
            readonly NSRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly nsdname: Schema.optional<Schema.String>;
            }>>>;
            readonly PTRRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ptrdname: Schema.optional<Schema.String>;
            }>>>;
            readonly SRVRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly priority: Schema.optional<Schema.Number>;
                readonly weight: Schema.optional<Schema.Number>;
                readonly port: Schema.optional<Schema.Number>;
                readonly target: Schema.optional<Schema.String>;
            }>>>;
            readonly TXTRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly value: Schema.optional<Schema.$Array<Schema.String>>;
            }>>>;
            readonly CNAMERecord: Schema.optional<Schema.Struct<{
                readonly cname: Schema.optional<Schema.String>;
            }>>;
            readonly SOARecord: Schema.optional<Schema.Struct<{
                readonly host: Schema.optional<Schema.String>;
                readonly email: Schema.optional<Schema.String>;
                readonly serialNumber: Schema.optional<Schema.Number>;
                readonly refreshTime: Schema.optional<Schema.Number>;
                readonly retryTime: Schema.optional<Schema.Number>;
                readonly expireTime: Schema.optional<Schema.Number>;
                readonly minimumTTL: Schema.optional<Schema.Number>;
            }>>;
            readonly caaRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly flags: Schema.optional<Schema.Number>;
                readonly tag: Schema.optional<Schema.String>;
                readonly value: Schema.optional<Schema.String>;
            }>>>;
        }>>;
    }>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type RecordSetsListByDnsZoneOutput = typeof RecordSetsListByDnsZoneOutput.Type;
/**
 * Lists all record sets in a DNS zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param $top - The maximum number of record sets to return. If not specified, returns up to 100 record sets.
 * @param $recordsetnamesuffix - The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with .<recordSetNameSuffix>
 */
export declare const RecordSetsListByDnsZone: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $recordsetnamesuffix?: string | undefined;
    readonly $top?: number | undefined;
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {
        readonly etag?: string | undefined;
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly properties?: {
            readonly AAAARecords?: readonly {
                readonly ipv6Address?: string | undefined;
            }[] | undefined;
            readonly ARecords?: readonly {
                readonly ipv4Address?: string | undefined;
            }[] | undefined;
            readonly CNAMERecord?: {
                readonly cname?: string | undefined;
            } | undefined;
            readonly MXRecords?: readonly {
                readonly exchange?: string | undefined;
                readonly preference?: number | undefined;
            }[] | undefined;
            readonly NSRecords?: readonly {
                readonly nsdname?: string | undefined;
            }[] | undefined;
            readonly PTRRecords?: readonly {
                readonly ptrdname?: string | undefined;
            }[] | undefined;
            readonly SOARecord?: {
                readonly email?: string | undefined;
                readonly expireTime?: number | undefined;
                readonly host?: string | undefined;
                readonly minimumTTL?: number | undefined;
                readonly refreshTime?: number | undefined;
                readonly retryTime?: number | undefined;
                readonly serialNumber?: number | undefined;
            } | undefined;
            readonly SRVRecords?: readonly {
                readonly port?: number | undefined;
                readonly priority?: number | undefined;
                readonly target?: string | undefined;
                readonly weight?: number | undefined;
            }[] | undefined;
            readonly TTL?: number | undefined;
            readonly TXTRecords?: readonly {
                readonly value?: readonly string[] | undefined;
            }[] | undefined;
            readonly caaRecords?: readonly {
                readonly flags?: number | undefined;
                readonly tag?: string | undefined;
                readonly value?: string | undefined;
            }[] | undefined;
            readonly fqdn?: string | undefined;
            readonly metadata?: {
                readonly [x: string]: string;
            } | undefined;
            readonly provisioningState?: string | undefined;
            readonly targetResource?: {
                readonly id?: string | undefined;
            } | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const RecordSetsListByTypeInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
    readonly recordType: Schema.Literals<readonly ["A", "AAAA", "CAA", "CNAME", "MX", "NS", "PTR", "SOA", "SRV", "TXT"]>;
    readonly $top: Schema.optional<Schema.Number>;
    readonly $recordsetnamesuffix: Schema.optional<Schema.String>;
}>;
export type RecordSetsListByTypeInput = typeof RecordSetsListByTypeInput.Type;
export declare const RecordSetsListByTypeOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly etag: Schema.optional<Schema.String>;
        readonly properties: Schema.optional<Schema.Struct<{
            readonly metadata: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
            readonly TTL: Schema.optional<Schema.Number>;
            readonly fqdn: Schema.optional<Schema.String>;
            readonly provisioningState: Schema.optional<Schema.String>;
            readonly targetResource: Schema.optional<Schema.Struct<{
                readonly id: Schema.optional<Schema.String>;
            }>>;
            readonly ARecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ipv4Address: Schema.optional<Schema.String>;
            }>>>;
            readonly AAAARecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ipv6Address: Schema.optional<Schema.String>;
            }>>>;
            readonly MXRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly preference: Schema.optional<Schema.Number>;
                readonly exchange: Schema.optional<Schema.String>;
            }>>>;
            readonly NSRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly nsdname: Schema.optional<Schema.String>;
            }>>>;
            readonly PTRRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly ptrdname: Schema.optional<Schema.String>;
            }>>>;
            readonly SRVRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly priority: Schema.optional<Schema.Number>;
                readonly weight: Schema.optional<Schema.Number>;
                readonly port: Schema.optional<Schema.Number>;
                readonly target: Schema.optional<Schema.String>;
            }>>>;
            readonly TXTRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly value: Schema.optional<Schema.$Array<Schema.String>>;
            }>>>;
            readonly CNAMERecord: Schema.optional<Schema.Struct<{
                readonly cname: Schema.optional<Schema.String>;
            }>>;
            readonly SOARecord: Schema.optional<Schema.Struct<{
                readonly host: Schema.optional<Schema.String>;
                readonly email: Schema.optional<Schema.String>;
                readonly serialNumber: Schema.optional<Schema.Number>;
                readonly refreshTime: Schema.optional<Schema.Number>;
                readonly retryTime: Schema.optional<Schema.Number>;
                readonly expireTime: Schema.optional<Schema.Number>;
                readonly minimumTTL: Schema.optional<Schema.Number>;
            }>>;
            readonly caaRecords: Schema.optional<Schema.$Array<Schema.Struct<{
                readonly flags: Schema.optional<Schema.Number>;
                readonly tag: Schema.optional<Schema.String>;
                readonly value: Schema.optional<Schema.String>;
            }>>>;
        }>>;
    }>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type RecordSetsListByTypeOutput = typeof RecordSetsListByTypeOutput.Type;
/**
 * Lists the record sets of a specified type in a DNS zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param recordType - The type of record sets to enumerate.
 * @param $top - The maximum number of record sets to return. If not specified, returns up to 100 record sets.
 * @param $recordsetnamesuffix - The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is specified, Enumeration will return only records that end with .<recordSetNameSuffix>
 */
export declare const RecordSetsListByType: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $recordsetnamesuffix?: string | undefined;
    readonly $top?: number | undefined;
    readonly recordType: "A" | "AAAA" | "CAA" | "CNAME" | "MX" | "NS" | "PTR" | "SOA" | "SRV" | "TXT";
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {
        readonly etag?: string | undefined;
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly properties?: {
            readonly AAAARecords?: readonly {
                readonly ipv6Address?: string | undefined;
            }[] | undefined;
            readonly ARecords?: readonly {
                readonly ipv4Address?: string | undefined;
            }[] | undefined;
            readonly CNAMERecord?: {
                readonly cname?: string | undefined;
            } | undefined;
            readonly MXRecords?: readonly {
                readonly exchange?: string | undefined;
                readonly preference?: number | undefined;
            }[] | undefined;
            readonly NSRecords?: readonly {
                readonly nsdname?: string | undefined;
            }[] | undefined;
            readonly PTRRecords?: readonly {
                readonly ptrdname?: string | undefined;
            }[] | undefined;
            readonly SOARecord?: {
                readonly email?: string | undefined;
                readonly expireTime?: number | undefined;
                readonly host?: string | undefined;
                readonly minimumTTL?: number | undefined;
                readonly refreshTime?: number | undefined;
                readonly retryTime?: number | undefined;
                readonly serialNumber?: number | undefined;
            } | undefined;
            readonly SRVRecords?: readonly {
                readonly port?: number | undefined;
                readonly priority?: number | undefined;
                readonly target?: string | undefined;
                readonly weight?: number | undefined;
            }[] | undefined;
            readonly TTL?: number | undefined;
            readonly TXTRecords?: readonly {
                readonly value?: readonly string[] | undefined;
            }[] | undefined;
            readonly caaRecords?: readonly {
                readonly flags?: number | undefined;
                readonly tag?: string | undefined;
                readonly value?: string | undefined;
            }[] | undefined;
            readonly fqdn?: string | undefined;
            readonly metadata?: {
                readonly [x: string]: string;
            } | undefined;
            readonly provisioningState?: string | undefined;
            readonly targetResource?: {
                readonly id?: string | undefined;
            } | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const RecordSetsUpdateInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
    readonly relativeRecordSetName: Schema.String;
    readonly recordType: Schema.Literals<readonly ["A", "AAAA", "CAA", "CNAME", "MX", "NS", "PTR", "SOA", "SRV", "TXT"]>;
}>;
export type RecordSetsUpdateInput = typeof RecordSetsUpdateInput.Type;
export declare const RecordSetsUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly etag: Schema.optional<Schema.String>;
    readonly properties: Schema.optional<Schema.Struct<{
        readonly metadata: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly TTL: Schema.optional<Schema.Number>;
        readonly fqdn: Schema.optional<Schema.String>;
        readonly provisioningState: Schema.optional<Schema.String>;
        readonly targetResource: Schema.optional<Schema.Struct<{
            readonly id: Schema.optional<Schema.String>;
        }>>;
        readonly ARecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ipv4Address: Schema.optional<Schema.String>;
        }>>>;
        readonly AAAARecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ipv6Address: Schema.optional<Schema.String>;
        }>>>;
        readonly MXRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly preference: Schema.optional<Schema.Number>;
            readonly exchange: Schema.optional<Schema.String>;
        }>>>;
        readonly NSRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly nsdname: Schema.optional<Schema.String>;
        }>>>;
        readonly PTRRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly ptrdname: Schema.optional<Schema.String>;
        }>>>;
        readonly SRVRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly priority: Schema.optional<Schema.Number>;
            readonly weight: Schema.optional<Schema.Number>;
            readonly port: Schema.optional<Schema.Number>;
            readonly target: Schema.optional<Schema.String>;
        }>>>;
        readonly TXTRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly value: Schema.optional<Schema.$Array<Schema.String>>;
        }>>>;
        readonly CNAMERecord: Schema.optional<Schema.Struct<{
            readonly cname: Schema.optional<Schema.String>;
        }>>;
        readonly SOARecord: Schema.optional<Schema.Struct<{
            readonly host: Schema.optional<Schema.String>;
            readonly email: Schema.optional<Schema.String>;
            readonly serialNumber: Schema.optional<Schema.Number>;
            readonly refreshTime: Schema.optional<Schema.Number>;
            readonly retryTime: Schema.optional<Schema.Number>;
            readonly expireTime: Schema.optional<Schema.Number>;
            readonly minimumTTL: Schema.optional<Schema.Number>;
        }>>;
        readonly caaRecords: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly flags: Schema.optional<Schema.Number>;
            readonly tag: Schema.optional<Schema.String>;
            readonly value: Schema.optional<Schema.String>;
        }>>>;
    }>>;
}>;
export type RecordSetsUpdateOutput = typeof RecordSetsUpdateOutput.Type;
/**
 * Updates a record set within a DNS zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param relativeRecordSetName - The name of the record set, relative to the name of the zone.
 * @param recordType - The type of DNS record in this record set.
 * @param If-Match - The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value to prevent accidentally overwriting concurrent changes.
 */
export declare const RecordSetsUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly recordType: "A" | "AAAA" | "CAA" | "CNAME" | "MX" | "NS" | "PTR" | "SOA" | "SRV" | "TXT";
    readonly relativeRecordSetName: string;
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly etag?: string | undefined;
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly properties?: {
        readonly AAAARecords?: readonly {
            readonly ipv6Address?: string | undefined;
        }[] | undefined;
        readonly ARecords?: readonly {
            readonly ipv4Address?: string | undefined;
        }[] | undefined;
        readonly CNAMERecord?: {
            readonly cname?: string | undefined;
        } | undefined;
        readonly MXRecords?: readonly {
            readonly exchange?: string | undefined;
            readonly preference?: number | undefined;
        }[] | undefined;
        readonly NSRecords?: readonly {
            readonly nsdname?: string | undefined;
        }[] | undefined;
        readonly PTRRecords?: readonly {
            readonly ptrdname?: string | undefined;
        }[] | undefined;
        readonly SOARecord?: {
            readonly email?: string | undefined;
            readonly expireTime?: number | undefined;
            readonly host?: string | undefined;
            readonly minimumTTL?: number | undefined;
            readonly refreshTime?: number | undefined;
            readonly retryTime?: number | undefined;
            readonly serialNumber?: number | undefined;
        } | undefined;
        readonly SRVRecords?: readonly {
            readonly port?: number | undefined;
            readonly priority?: number | undefined;
            readonly target?: string | undefined;
            readonly weight?: number | undefined;
        }[] | undefined;
        readonly TTL?: number | undefined;
        readonly TXTRecords?: readonly {
            readonly value?: readonly string[] | undefined;
        }[] | undefined;
        readonly caaRecords?: readonly {
            readonly flags?: number | undefined;
            readonly tag?: string | undefined;
            readonly value?: string | undefined;
        }[] | undefined;
        readonly fqdn?: string | undefined;
        readonly metadata?: {
            readonly [x: string]: string;
        } | undefined;
        readonly provisioningState?: string | undefined;
        readonly targetResource?: {
            readonly id?: string | undefined;
        } | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ZonesCreateOrUpdateInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
}>;
export type ZonesCreateOrUpdateInput = typeof ZonesCreateOrUpdateInput.Type;
export declare const ZonesCreateOrUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly location: Schema.String;
    readonly tags: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
}>;
export type ZonesCreateOrUpdateOutput = typeof ZonesCreateOrUpdateOutput.Type;
/**
 * Creates or updates a DNS zone. Does not modify DNS records within the zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param If-Match - The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent accidentally overwriting any concurrent changes.
 * @param If-None-Match - Set to '*' to allow a new DNS zone to be created, but to prevent updating an existing zone. Other values will be ignored.
 */
export declare const ZonesCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly id?: string | undefined;
    readonly location: string;
    readonly name?: string | undefined;
    readonly tags?: {
        readonly [x: string]: string;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ZonesDeleteInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
}>;
export type ZonesDeleteInput = typeof ZonesDeleteInput.Type;
export declare const ZonesDeleteOutput: Schema.Void;
export type ZonesDeleteOutput = typeof ZonesDeleteOutput.Type;
/**
 * Deletes a DNS zone. WARNING: All DNS records in the zone will also be deleted. This operation cannot be undone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param If-Match - The etag of the DNS zone. Omit this value to always delete the current zone. Specify the last-seen etag value to prevent accidentally deleting any concurrent changes.
 */
export declare const ZonesDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const ZonesGetInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
}>;
export type ZonesGetInput = typeof ZonesGetInput.Type;
export declare const ZonesGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly location: Schema.String;
    readonly tags: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
}>;
export type ZonesGetOutput = typeof ZonesGetOutput.Type;
/**
 * Gets a DNS zone. Retrieves the zone properties, but not the record sets within the zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 */
export declare const ZonesGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly id?: string | undefined;
    readonly location: string;
    readonly name?: string | undefined;
    readonly tags?: {
        readonly [x: string]: string;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ZonesListInput: Schema.Struct<{
    readonly $top: Schema.optional<Schema.Number>;
}>;
export type ZonesListInput = typeof ZonesListInput.Type;
export declare const ZonesListOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly location: Schema.String;
        readonly tags: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
    }>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type ZonesListOutput = typeof ZonesListOutput.Type;
/**
 * Lists the DNS zones in all resource groups in a subscription.
 *
 * @param $top - The maximum number of DNS zones to return. If not specified, returns up to 100 zones.
 */
export declare const ZonesList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $top?: number | undefined;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {
        readonly id?: string | undefined;
        readonly location: string;
        readonly name?: string | undefined;
        readonly tags?: {
            readonly [x: string]: string;
        } | undefined;
        readonly type?: string | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ZonesListByResourceGroupInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly $top: Schema.optional<Schema.Number>;
}>;
export type ZonesListByResourceGroupInput = typeof ZonesListByResourceGroupInput.Type;
export declare const ZonesListByResourceGroupOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly location: Schema.String;
        readonly tags: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
    }>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type ZonesListByResourceGroupOutput = typeof ZonesListByResourceGroupOutput.Type;
/**
 * Lists the DNS zones within a resource group.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param $top - The maximum number of record sets to return. If not specified, returns up to 100 record sets.
 */
export declare const ZonesListByResourceGroup: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $top?: number | undefined;
    readonly resourceGroupName: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {
        readonly id?: string | undefined;
        readonly location: string;
        readonly name?: string | undefined;
        readonly tags?: {
            readonly [x: string]: string;
        } | undefined;
        readonly type?: string | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ZonesUpdateInput: Schema.Struct<{
    readonly resourceGroupName: Schema.String;
    readonly zoneName: Schema.String;
}>;
export type ZonesUpdateInput = typeof ZonesUpdateInput.Type;
export declare const ZonesUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly location: Schema.String;
    readonly tags: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
}>;
export type ZonesUpdateOutput = typeof ZonesUpdateOutput.Type;
/**
 * Updates a DNS zone. Does not modify DNS records within the zone.
 *
 * @param resourceGroupName - The name of the resource group.
 * @param zoneName - The name of the DNS zone (without a terminating dot).
 * @param If-Match - The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent accidentally overwriting any concurrent changes.
 */
export declare const ZonesUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly resourceGroupName: string;
    readonly zoneName: string;
}, {
    readonly id?: string | undefined;
    readonly location: string;
    readonly name?: string | undefined;
    readonly tags?: {
        readonly [x: string]: string;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
//# sourceMappingURL=dns.d.ts.map