import * as pulumi from "@pulumi/pulumi";
/**
 * Use this data source to access information about an existing DNS SOA Record within Azure DNS.
 *
 * > **Note:** [The Azure DNS API has a throttle limit of 500 read (GET) operations per 5 minutes](https://docs.microsoft.com/azure/azure-resource-manager/management/request-limits-and-throttling#network-throttling) - whilst the default read timeouts will work for most cases - in larger configurations you may need to set a larger read timeout then the default 5min. Although, we'd generally recommend that you split the resources out into smaller Terraform configurations to avoid the problem entirely.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.dns.getSoaRecord({
 *     zoneName: "test-zone",
 *     resourceGroupName: "test-rg",
 * });
 * export const dnsSoaRecordId = example.then(example => example.id);
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Network` - 2018-05-01
 */
export declare function getSoaRecord(args: GetSoaRecordArgs, opts?: pulumi.InvokeOptions): Promise<GetSoaRecordResult>;
/**
 * A collection of arguments for invoking getSoaRecord.
 */
export interface GetSoaRecordArgs {
    /**
     * The name of the DNS SOA Record.
     */
    name?: string;
    /**
     * Specifies the resource group where the DNS Zone (parent resource) exists.
     */
    resourceGroupName: string;
    /**
     * Specifies the DNS Zone where the resource exists.
     */
    zoneName: string;
}
/**
 * A collection of values returned by getSoaRecord.
 */
export interface GetSoaRecordResult {
    /**
     * The email contact for the SOA record.
     */
    readonly email: string;
    /**
     * The expire time for the SOA record.
     */
    readonly expireTime: number;
    /**
     * The FQDN of the DNS SOA Record.
     */
    readonly fqdn: string;
    /**
     * The domain name of the authoritative name server for the SOA record.
     */
    readonly hostName: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration.
     */
    readonly minimumTtl: number;
    /**
     * The name of the DNS SOA Record.
     */
    readonly name?: string;
    /**
     * The refresh time for the SOA record.
     */
    readonly refreshTime: number;
    readonly resourceGroupName: string;
    /**
     * The retry time for the SOA record.
     */
    readonly retryTime: number;
    /**
     * The serial number for the SOA record.
     */
    readonly serialNumber: number;
    /**
     * A mapping of tags assigned to the resource.
     */
    readonly tags: {
        [key: string]: string;
    };
    /**
     * The Time To Live (TTL) of the DNS record in seconds.
     */
    readonly ttl: number;
    readonly zoneName: string;
}
/**
 * Use this data source to access information about an existing DNS SOA Record within Azure DNS.
 *
 * > **Note:** [The Azure DNS API has a throttle limit of 500 read (GET) operations per 5 minutes](https://docs.microsoft.com/azure/azure-resource-manager/management/request-limits-and-throttling#network-throttling) - whilst the default read timeouts will work for most cases - in larger configurations you may need to set a larger read timeout then the default 5min. Although, we'd generally recommend that you split the resources out into smaller Terraform configurations to avoid the problem entirely.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.dns.getSoaRecord({
 *     zoneName: "test-zone",
 *     resourceGroupName: "test-rg",
 * });
 * export const dnsSoaRecordId = example.then(example => example.id);
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Network` - 2018-05-01
 */
export declare function getSoaRecordOutput(args: GetSoaRecordOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSoaRecordResult>;
/**
 * A collection of arguments for invoking getSoaRecord.
 */
export interface GetSoaRecordOutputArgs {
    /**
     * The name of the DNS SOA Record.
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * Specifies the resource group where the DNS Zone (parent resource) exists.
     */
    resourceGroupName: pulumi.Input<string>;
    /**
     * Specifies the DNS Zone where the resource exists.
     */
    zoneName: pulumi.Input<string>;
}
//# sourceMappingURL=getSoaRecord.d.ts.map