import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This data source provides the list of RRsets in Oracle Cloud Infrastructure DNS service.
 *
 * Gets a list of all rrsets in the specified zone.
 *
 * You can optionally filter the results using the listed parameters. When accessing a private zone by name, the `viewId` parameter is required.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testRrsets = oci.dns.getRrsets({
 *     zoneNameOrId: testZone.id,
 *     domain: rrsetDomain,
 *     domainContains: rrsetDomain,
 *     rtype: rrsetRtype,
 *     viewId: testView.id,
 * });
 * ```
 */
export declare function getRrsets(args: GetRrsetsArgs, opts?: pulumi.InvokeOptions): Promise<GetRrsetsResult>;
/**
 * A collection of arguments for invoking getRrsets.
 */
export interface GetRrsetsArgs {
    /**
     * The target fully-qualified domain name (FQDN) within the target zone.
     */
    domain?: string;
    /**
     * Matches any rrset whose fully-qualified domain name (FQDN) contains the provided value.
     */
    domainContains?: string;
    filters?: inputs.Dns.GetRrsetsFilter[];
    /**
     * Search by record type. Will match any record whose [type](https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4) (case-insensitive) equals the provided value.
     */
    rtype?: string;
    scope?: string;
    /**
     * The OCID of the view the zone is associated with. Required when accessing a private zone by name.
     */
    viewId?: string;
    /**
     * The name or OCID of the target zone.
     */
    zoneNameOrId: string;
}
/**
 * A collection of values returned by getRrsets.
 */
export interface GetRrsetsResult {
    /**
     * The fully qualified domain name where the record can be located.
     */
    readonly domain?: string;
    readonly domainContains?: string;
    readonly filters?: outputs.Dns.GetRrsetsFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The list of rrsets.
     */
    readonly rrsets: outputs.Dns.GetRrsetsRrset[];
    /**
     * The type of DNS record, such as A or CNAME. For more information, see [Resource Record (RR) TYPEs](https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4).
     */
    readonly rtype?: string;
    readonly scope?: string;
    readonly viewId?: string;
    readonly zoneNameOrId: string;
}
/**
 * This data source provides the list of RRsets in Oracle Cloud Infrastructure DNS service.
 *
 * Gets a list of all rrsets in the specified zone.
 *
 * You can optionally filter the results using the listed parameters. When accessing a private zone by name, the `viewId` parameter is required.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testRrsets = oci.dns.getRrsets({
 *     zoneNameOrId: testZone.id,
 *     domain: rrsetDomain,
 *     domainContains: rrsetDomain,
 *     rtype: rrsetRtype,
 *     viewId: testView.id,
 * });
 * ```
 */
export declare function getRrsetsOutput(args: GetRrsetsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetRrsetsResult>;
/**
 * A collection of arguments for invoking getRrsets.
 */
export interface GetRrsetsOutputArgs {
    /**
     * The target fully-qualified domain name (FQDN) within the target zone.
     */
    domain?: pulumi.Input<string | undefined>;
    /**
     * Matches any rrset whose fully-qualified domain name (FQDN) contains the provided value.
     */
    domainContains?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.Dns.GetRrsetsFilterArgs>[] | undefined>;
    /**
     * Search by record type. Will match any record whose [type](https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-4) (case-insensitive) equals the provided value.
     */
    rtype?: pulumi.Input<string | undefined>;
    scope?: pulumi.Input<string | undefined>;
    /**
     * The OCID of the view the zone is associated with. Required when accessing a private zone by name.
     */
    viewId?: pulumi.Input<string | undefined>;
    /**
     * The name or OCID of the target zone.
     */
    zoneNameOrId: pulumi.Input<string>;
}
//# sourceMappingURL=getRrsets.d.ts.map