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 Vtaps in Oracle Cloud Infrastructure Core service.
 *
 * Lists the virtual test access points (VTAPs) in the specified compartment.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testVtaps = oci.core.getVtaps({
 *     compartmentId: compartmentId,
 *     displayName: vtapDisplayName,
 *     isVtapEnabled: vtapIsVtapEnabled === "true",
 *     source: vtapSource,
 *     state: vtapState,
 *     targetId: testTarget.id,
 *     targetIp: vtapTargetIp,
 *     vcnId: testVcn.id,
 * });
 * ```
 */
export declare function getVtaps(args: GetVtapsArgs, opts?: pulumi.InvokeOptions): Promise<GetVtapsResult>;
/**
 * A collection of arguments for invoking getVtaps.
 */
export interface GetVtapsArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId: string;
    /**
     * A filter to return only resources that match the given display name exactly.
     */
    displayName?: string;
    filters?: inputs.Core.GetVtapsFilter[];
    /**
     * Indicates whether to list all VTAPs or only running VTAPs.
     * * When `FALSE`, lists ALL running and stopped VTAPs.
     * * When `TRUE`, lists only running VTAPs (VTAPs where isVtapEnabled = `TRUE`).
     */
    isVtapEnabled?: boolean;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VTAP source.
     */
    source?: string;
    /**
     * A filter to return only resources that match the given VTAP administrative lifecycle state. The state value is case-insensitive.
     */
    state?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VTAP target.
     */
    targetId?: string;
    /**
     * The IP address of the VTAP target.
     */
    targetIp?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VCN.
     */
    vcnId?: string;
}
/**
 * A collection of values returned by getVtaps.
 */
export interface GetVtapsResult {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment containing the `Vtap` resource.
     */
    readonly compartmentId: string;
    /**
     * A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information.
     */
    readonly displayName?: string;
    readonly filters?: outputs.Core.GetVtapsFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Used to start or stop a `Vtap` resource.
     * * `TRUE` directs the VTAP to start mirroring traffic.
     * * `FALSE` (Default) directs the VTAP to stop mirroring traffic.
     */
    readonly isVtapEnabled?: boolean;
    readonly source?: string;
    /**
     * The VTAP's administrative lifecycle state.
     */
    readonly state?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the destination resource where mirrored packets are sent.
     */
    readonly targetId?: string;
    /**
     * The IP address of the destination resource where mirrored packets are sent.
     */
    readonly targetIp?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VCN containing the `Vtap` resource.
     */
    readonly vcnId?: string;
    /**
     * The list of vtaps.
     */
    readonly vtaps: outputs.Core.GetVtapsVtap[];
}
/**
 * This data source provides the list of Vtaps in Oracle Cloud Infrastructure Core service.
 *
 * Lists the virtual test access points (VTAPs) in the specified compartment.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testVtaps = oci.core.getVtaps({
 *     compartmentId: compartmentId,
 *     displayName: vtapDisplayName,
 *     isVtapEnabled: vtapIsVtapEnabled === "true",
 *     source: vtapSource,
 *     state: vtapState,
 *     targetId: testTarget.id,
 *     targetIp: vtapTargetIp,
 *     vcnId: testVcn.id,
 * });
 * ```
 */
export declare function getVtapsOutput(args: GetVtapsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVtapsResult>;
/**
 * A collection of arguments for invoking getVtaps.
 */
export interface GetVtapsOutputArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId: pulumi.Input<string>;
    /**
     * A filter to return only resources that match the given display name exactly.
     */
    displayName?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.Core.GetVtapsFilterArgs>[] | undefined>;
    /**
     * Indicates whether to list all VTAPs or only running VTAPs.
     * * When `FALSE`, lists ALL running and stopped VTAPs.
     * * When `TRUE`, lists only running VTAPs (VTAPs where isVtapEnabled = `TRUE`).
     */
    isVtapEnabled?: pulumi.Input<boolean | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VTAP source.
     */
    source?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources that match the given VTAP administrative lifecycle state. The state value is case-insensitive.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VTAP target.
     */
    targetId?: pulumi.Input<string | undefined>;
    /**
     * The IP address of the VTAP target.
     */
    targetIp?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the VCN.
     */
    vcnId?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getVtaps.d.ts.map